PREVIOUS UP NEXT CONTENTS

Requirements for the Bachelor of Science Degree

The computer science degree can be completed in four full-time years of study if the student is capable of completing an intensive set of computer science, calculus, and physics courses 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.

    1. The University writing requirement is required for computer science pre-majors.
    2. The quantitative reasoning requirement is satisfied by Math 1210 and 1220, 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, History 1700, Honors 2212, or Political Science 1100.

  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, which is required for computer science majors.
    2. The quantitatively intensive course requirement is satisfied by CS 3510 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 3000 or above. Credits from two-year colleges 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.

  3. Math, Science, and Engineering: Seven classes in math, science, and/or engineering are required.

    1. Mathematics 1210 and 1220 (Calculus I and II) are required.
    2. Physics 2210 (Physics I) is required.
    3. Students must take four additional courses, each of which must be at least three semester hours, chosen from the following list. Students should take the prerequisites of computer science electives into consideration when planning how to satisfy this requirement.

      1. Physics 2220 (Physics II)
      2. Biology 1000 (General Biology)
      3. Chemistry 1210 (General Chemistry)
      4. Any class (other than a computer science class) from the Colleges of Engineering, Mines, or Science that requires a full year of calculus as a prerequisite or corequisite.

  4. Computer Science: A minimum of 17 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 Introduction to Unix
      CS 2010 Introduction to Computer Science I
      CS 2020 Introduction to Computer Science II
      CS 2100 Discrete Structures
      CS 3500 Software Practice
      CS 3510 Algorithms and Data Structures
      CS 3810 Computer Architecture
      CS 4400 Computer Systems
      CS 4500 Software Engineering Lab

    2. Theory restricted elective. Students must take one of the following.

      CS 3100 Models of Computation
      CS 3200 Scientific Computing

    3. Electives. Seven additional Computer Science classes numbered at the 3000, 4000, or 5000 level, totaling at least 21 semester hours, must be taken. CS 3050/51, 5010/20, 5050/51, seminars, and independent study may not be counted. Only one of CS 3610 and CS 5600 may be counted.
    4. Duplication of credit. No single class may be counted toward more than one of the requirements listed above.

  5. Continuing Performance: All computer science, mathematics, science, engineering, and writing courses taken to satisfy the requirements listed above must be passed with a grade of C- or better (except for CS 1010, in which a grade of CR is required). A student may repeat such courses only one time. With the exception of the American Institutions requirement and CS 1010, all courses listed above must be taken for a letter grade (i.e., they may not be taken CR/NC).

    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. 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 the rolls of the major.

    All students admitted as full majors are placed on probationary status. If a student's GPA in either of the above categories is below 2.25 at the end of the first academic year during which they take upper level CS classes, the student is dropped from the rolls of the major.

    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 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 by the end of the required period of time.

    In order to be reinstated from inactive status or from being dropped due to low GPA, 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, a student may request an extension of a specific duration and submit a revised schedule of completion.

Example Computer Science Degree Program

 

Full major status after two semesters Full major status after three semesters
Year FallSpring FallSpring
1 Math 1210† (4) Math 1220† (4) Math 1210† (4) Math 1220† (4)
CS 1010† (0.5) Physics 2210† (4) CS 1010† (0.5) Physics 2210† (4)
CS 2010† (4) CS 2020† (4) Writing† (3) CS 2010† (4)
Writing† (3) CS 2100† (2) Gen Ed (3) Gen Ed (3)
Gen Ed (3) Gen Ed (3)
(14.5) (14) (13.5) (15)
2 CS 3500 (4) CS 3510 (3) CS 2020† (2) CS 3510 (3)
CS 3810 (4) CS 4400 (3) CS 2100† (4) CS theory elective (3)
Writing 3400 (3) Math/sci elective (3) Math/sci elective (3) Math/sci elective (4)
Gen Ed (4) Gen Ed (3) Gen Ed (3) Writing 3400 (3)
Free elective (3) Gen Ed (3) Free elective (3)
(15) (15) (15) (16)
3 CS theory elective (3) CS elective (3) CS 3500 (4) CS 4400 (3)
CS elective (3) CS elective (3) CS 3810 (4) CS elective (3)
Math/sci elective (4) Math/sci elective (4) Math/sci elective (4) CS elective (3)
Gen Ed (3) Gen Ed (3) Gen Ed (4) Math/sci elective (4)
Free elective (3) Free elective (3) Free elective (3)
(16) (16) (16) (16)
4 CS elective (3) CS 4500 (3) CS elective (3) CS 4500 (3)
CS elective (3) CS elective (3) CS elective (3) CS elective (3)
CS elective (3) Math/sci elective (4) CS elective (3) CS elective (3)
Gen Ed (3) Gen Ed (3) Gen Ed (4) Free elective (3)
Free elective (4) Free elective (3) Free elective (3) Free elective (3)
(16) (16) (16) (15)

These tables give two example eight-semester programs leading to a Bachelor of Science degree in computer science. The program on the left is for students who advance to full major status after two semesters, and the program on the right is for students who advance to full major status after three semesters (not counting summers). It is meant only as a guide, since the scheduling of electives and General Education classes depends on which ones are selected. Advancement to full major status in two semesters requires taking Computer Science 2010, Math 1210, and Writing during the first semester, unless the student has advanced placement or plans to take courses during the summer. (†Class required of pre-majors.)

Computer Science Prerequisites

 

picture398

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. One of the two courses contained in dashed boxes must be taken. Where not otherwise indicated, courses are offered during both semesters as well as the summer. ( tex2html_wrap_inline2767 CS 3200 has Math 2250 as a prerequisite; CS 4500 can be taken only by students who are on track to graduate before the next offering of CS 4500.)


PREVIOUS UP NEXT CONTENTS