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 the above computer science and calculus courses during the freshman year. 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 satisfied by Writing 2010 or ESL 1060.
    2. The quantitative reasoning requirement is satisfied by Math 1210/1220 or 1210/1250, 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 classes required for the major.) Two of these six courses must be upper division.

      A General Education Approval 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 1740, History 1700, Honors 2212, or Political Science 1100.

    Incoming engineering students should consider the Engineering LEAP (E-LEAP) program organized by the Office of Undergraduate Studies. It is a year-long cohort program set up to allow students to take several classes together during their first year on campus. Two of these classes are seminar courses that satisfy University General Education and Diversity requirements. The program also includes sections of Writing, Calculus, and Physics. For more information on E-LEAP, contact the College of Engineering Advisor at 585-7769.

    Computer Science students should also consider CPSC 1050, Computers in Society, as one of their Social/Behavioral Science General Education classes. The course focuses on the social issues that surround the increasingly pervasive roles that computers play in society.

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

    1. To satisfy the communication/writing requirement, computer science majors must take Writing 3200 or 3400, or Honors 3200.
    2. The quantitatively intensive course requirement is satisfied by CPSC 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. Writing: Two classes in writing are required:

    1. Either Writing 2010 or ESL 1060 (for students who speak English as a second language).
    2. Either Writing 3200 or 3400, or Honors 3200. Writing 3400 is recommended for most students; Writing 3200 is an option for transfer students. Honors 3200 may be taken by students participating in the University Honors Program.

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

    1. Mathematics 1210/1220 or 1210/1250 (Calculus I and II)
    2. Physics 2210 (Physics I)
    3. Four additional courses, each of which must be at least three semester hours, chosen from among Physics 2220 (Physics II), Biology 1210 (General Biology), Chemistry 1210 (General Chemistry), or 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. Students should take the prerequisites of computer science electives into consideration when planning how to satisfy this requirement.

  5. Computer Science: A minimum of 18 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:

      CPSC 1010 Introduction to Unix
      CPSC 2010 Introduction to Computer Science I
      CPSC 2020 Introduction to Computer Science II
      CPSC 2100 Discrete Structures
      CPSC 3400 Computer Systems
      CPSC 3500 Software Practice I
      CPSC 3505 Software Practice II
      CPSC 3510 Algorithms and Data Structures
      CPSC 3810 Computer Organization

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

      CPSC 3100 Models of Computation
      CPSC 3200 Scientific Computing

    3. Electives. Seven additional Computer Science classes numbered 3000 or higher, totaling at least 21 semester hours, must be taken. CPSC 5010/20 and seminars may not be counted. Only one of CPSC 5600/5605 and only one independent study class (with special permission) may be counted.
    4. Capstone Requirement. One of the following must be completed.

      CPSC 4500 Software Engineering Lab
      CPSC 4970 tex2html_wrap_inline1987 Bachelor's Thesis

      tex2html_wrap_inline1987 Students choosing the thesis option must get special permission from the faculty. Such approval is usually obtained by finding a faculty advisor in the Spring of the Junior year. This option is intended for students who are considering graduate school. The Bachelor's Thesis can also be used toward a portion of the thesis requirement for a BS/MS program in Computer Science. For more information about the joint BS/MS program, please see the director of the BS/MS program in the School of Computing.

    5. Exit Interview. Each Computer Science major must complete an exit questionnaire, or exit interview, before they will be signed off for graduation. This should be done during the final semester of undergraduate studies.
    6. Duplication of credit. No single class may be counted toward more than one of the requirements listed above.

    Example Computer Science Degree Program

     

    FallSpring
    Freshman CPSC 1010 tex2html_wrap_inline1987 (0.5) CPSC 2020 tex2html_wrap_inline1987 (4)
    CPSC 2010 tex2html_wrap_inline1987 (4) Physics 2210 (4)
    Math 1210 tex2html_wrap_inline1987 (4) Math 1220 tex2html_wrap_inline1987 (4)
    Writing 2010 (3) Gen Ed (3)
    Gen Ed (3)
    (14.5) (15)
    Sophomore CPSC 3500 (4) CPSC 3505 (3)
    CPSC 3810 (4) CPSC 3510 (4)
    CPSC 2100 (3) Math/sci elective (3)
    Writing 3400 (3) Gen Ed (3)
    Free elective (3)
    (14) (16)
    Junior CPSC 3400 (4) CS elective (3)
    CS theory elective (3) CS elective (3)
    Math/sci elective (3) CS elective (3)
    Gen Ed (3) Math/sci elective (3)
    Free elective (3) Gen Ed (3)
    (16) (15)
    Senior CS elective (3) CPSC 4500 (3)
    CS elective (3) CS elective (3)
    CS elective (3) Math/sci elective (3)
    Gen Ed (3) Gen Ed (3)
    Free elective (3) Free elective (4)
    (15) (16)

    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 mathematics; it is not advisable to take Physics 2210 without some previous training in calculus. Note that Math 1210 and Computer Science 2010 must be taken during the fall semester in order to complete the required pre-major classes during the first year, unless the student has advanced placement credit. ( tex2html_wrap_inline1987 Class required of pre-majors.)

    Computer Science Prerequisites

     

    picture294

    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_inline1987 CPSC 3200 has Math 2250 as a prerequisite; CPSC 4500 can be taken only by students who are on track to graduate before the next offering of CPSC 4500.)

  6. 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 CPSC 1010, in which a grade of CR is required). A student may repeat such courses only one time.

    To remain in good standing and graduate, a student must maintain a cumulative grade point average at the University of 2.3 or higher, and also maintain a grade point average (GPA) of 2.3 in computer science classes taken at the University. Students whose GPA in either of these categories falls below 2.3 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.3 after the first year during which they take upper level computer science 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 computer science 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.


PREVIOUS UP NEXT CONTENTS