PREVIOUS UP NEXT CONTENTS

Requirements for the B.S. Degree

The Computer Science degree can be completed in four full-time years of study if the student is capable of completing the year-long calculus, physics, and computer science sequences, along with English writing, during the freshman year. Only strong training in high school will allow a student to begin at this level.

If a student must instead take preparatory classes as a freshman, more than four years may be required to earn a degree. In any event, it is important to take the required pre-major classes early to allow advancement to full major status as soon as possible.

  1. General Education: The General Education requirements are described in the University of Utah General Catalog. The requirements for Computer Science majors are more specific. (If you are classified by the University as a semester transition student, you can elect to satisfy the old Liberal Education requirements instead.)

    1. The University writing requirement is required for Computer Science pre-majors.
    2. The quantitative reasoning requirement is satisfied by Math 1210/1220 or 111/112/113, which are required for Computer Science pre-majors.
    3. Students must take two intellectual explorations courses in each of fine arts, humanities, and social sciences. (The two-course requirement in physical and life sciences is automatically satisfied by the pre-major requirements.) These six courses must include one pair of courses that form an approved concentration, one upper division course, and either one additional concentration or one additional upper division course.

      In a concentration, the second course further develops ideas or issues introduced in the first course. A list of sample concentrations and the General Education Program form can be obtained from the Academic Counselor. Students must complete this form and receive approval for their programs.

    4. The American Institutions requirement can be satisfied by taking one of Economics 2740 or 274, History 1700 or 170, or Political Science 1100 or 110.

  2. University graduation requirements: The University graduation requirements for the Bachelor of Science degree are described in the University of Utah General Catalog.

    1. The communication/writing requirement is satisfied by Writing 3400 or 301, which is required for Computer Science majors.
    2. The quantitatively intensive course requirement is satisfied by CS 3100 and 3810, which are required for Computer Science majors.
    3. The diversity requirement can be satisfied by taking a course from the approved list as part of the intellectual explorations requirement.
    4. Students must complete a minimum of 122 semester hours of course work. At least 40 of the 122 hours must be upper division classes. (Upper division classes are numbered 300/3000 or above. Two-year college credits will not count toward University upper division hours.) At least 30 of the total credit hours and 20 of the last 30 hours must be taken at the University. (For the purposes of this requirement, one semester hour is equivalent to 1.5 quarter hours.)

  3. Mathematics and Science: One year of calculus (Mathematics 1210/1220 or 111/112/113) and one year of physics for scientists and engineers (Physics 2210/2220 or 221/222/223) are required. (Contact the relevant department for information on satisfying this requirement with a mixture of quarter- and semester-length courses.)

    Students must take three additional classes chosen from among Chemistry 1210 or 121, Biology 1000 or 101, or any math, science, or engineering class that has a full year of calculus as a prerequisite. Students should take the prerequisites of computer science electives into consideration when planning how to satisfy this requirement. (If any of the classes taken are of quarter length, an additional class is required.) At least two of the classes taken to fulfill this requirement must be math classes.

  4. Computer Science: A minimum of 16 Computer Science classes must be taken. The chart below gives an example four-year degree program leading to a Bachelor's Degree in Computer Science. The graph that follows summarizes the prerequisites for computer science courses.

    1. Required. The following classes must be taken:

      CS 1010 or 110 Introduction to Unix
      CS 2010/2020 or 201/202/2030 Introduction to Computer Science
      CS 3100 Models of Computation
      CS 3500 Software Practice
      CS 3510 Algorithms and Data Structures
      CS 3810 Computer Architecture

    2. Restricted elective. Four of the following five classes must be taken:

      CS 3200 Scientific Computation
      CS 3520 Programming Languages
      CS 3700 Digital Design
      CS 5460 Operating Systems
      CS 5470 Compilers

    3. Capstone experience. One of the following two classes must be taken:

      CS 4500 Software Engineering Lab
      CS 4970 Bachelor's Thesis

    4. Electives. Four additional Computer Science classes at the 3000 level or higher totaling at least 12 semester hours must be taken.
    5. Duplication of credit. No single class may be counted toward more than one of the requirements listed above.

  5. Continuing Performance: In order to remain in good standing and to graduate, a student is required to maintain a cumulative grade point average at the University of 2.25 or higher, and also to maintain a grade point average of 2.25 in Computer Science classes. Each course taken to satisfy the departmental requirements listed above must be passed with a grade of C- or better. A student may repeat a course at the 3000 level or above only one time. All Computer Science classes (other than CS 1010 or 110) taken to satisfy the requirements for a Computer Science degree must be taken for a letter grade; they may not be taken CR/NC.

    Students whose grade point average in either of these two categories falls below 2.25 are notified that they are on probation and will be given conditions for a return to good standing. Normally, these conditions must be satisfied during the next two semesters, excluding summers. Students failing to meet their probationary conditions are dropped from department rolls. Reinstatement requires a petition to the Computer Science Undergraduate Committee. Reinstated students proceed under the latest graduation requirements.

    Students are expected to complete all requirements for their degree within four years of acceptance to full major status. Students not making satisfactory progress toward their degrees may be dropped from the department rolls and declared inactive. The determination that a student is not making satisfactory progress is made in one of two ways. Either (1) the student has not completed a CS course for a period of one year, or (2) there is no reasonable way in which the student can complete all degree requirements at the end of the required period of time.

    In order to be reinstated from inactive status, students must petition the Computer Science Undergraduate Committee. Reinstated students proceed under the latest graduation requirements.

    If personal circumstances prevent completion of all degree requirements within four years of acceptance as a full major in the department, a student may request an extension of a specific duration and submit a revised schedule of completion.

Example Computer Science Degree Program

FallSpring
Freshman Math 1210 tex2html_wrap_inline1515 (4) Math 1220 tex2html_wrap_inline1515 (4)
Physics 2210 tex2html_wrap_inline1515 (4) Physics 2220 tex2html_wrap_inline1515 (4)
CS 2010 tex2html_wrap_inline1515 (4) CS 2020 tex2html_wrap_inline1515 (4)
CS 1010 tex2html_wrap_inline1515 (0.5) Gen Ed (3)
Writing tex2html_wrap_inline1515 (3)
tex2html_wrap_inline1531 tex2html_wrap_inline1533
Sophomore CS 3500 (4) CS 3100 (3)
CS 3810 (4) CS 3510 (3)
Math elective (4) Science elective (4)
Gen Ed (3) Writing 3400 (3)
Gen Ed (3)
tex2html_wrap_inline1533 tex2html_wrap_inline1537
Junior CS restricted elective (3) CS restricted elective (3)
CS restricted elective (3) CS restricted elective (3)
Math elective (4) CS elective (3)
Gen Ed (3) Gen Ed (3)
Free elective (3) Free elective (3)
tex2html_wrap_inline1537 tex2html_wrap_inline1533
Senior CS elective (3) CS capstone (3)
CS elective (3) CS elective (3)
Gen Ed (3) Gen Ed (3)
Free elective (3) Free elective (3)
Free elective (3) Free elective (3)
tex2html_wrap_inline1533 tex2html_wrap_inline1533

This table gives an eight-semester example program leading to a B.S. in Computer Science. It is meant only as a guide, since the scheduling of electives and General Education classes depends upon which ones are selected. This schedule assumes adequate high school preparation in college algebra and trigonometry. Note that Math 1210, Physics 2210, and Computer Science 2010 must all be taken during the fall semester in order to complete the required pre-major classes during the first year. Students whose background is not adequate will need to take one or more of Math 1050 or Math 1060. ( tex2html_wrap_inline1515 Class required of pre-majors.)

 

Computer Science Prerequisites

picture322

This graph illustrates the order in which classes must be taken to satisfy prerequisite and corequisite requirements in Computer Science. Prerequisites are connected bottom-to-top; corequisites are connected side-to-side. Four of the five courses contained in dashed boxes must be taken. Where not otherwise indicated, courses are offered during both semesters as well as the summer. This graph assumes adequate high school preparation permitting freshman year enrollment in Math 1210/1220, Physics 2210/2220, and Computer Science 2010/2020.

 


PREVIOUS UP NEXT CONTENTS


Department of Computer Science Departmental Handbooks