The computer science undergraduate program provides a solid foundation in the science of computing. To receive a baccalaureate degree, the University requires that a student successfully complete a minimum of 120 credits with a minimum cumulative grade point average of 2.0 (A=4.0). The program is built around six core lower-division computer science courses (total credits = 24), eight upper-level computer science electives (total credits = 26-28), four mathematics courses (total credits = 14), and two approved laboratory science courses (total credits = 8). These courses supply the essential theory, concepts, and techniques in the major areas of computer science and related disciplines.
Junior Year Writing (JYW) Requirement: Computer science majors must also take CICS 305 Social Issues in Computing. The University's JYW requirement must be taken at UMass Amherst. Double majors for whom Computer Science is the secondary major may use the Junior Year Writing requirement course from their primary major to fulfill this requirement.
Integrative Experience (IE) Requirement: Students satisfy the University's IE Requirement by taking an approved IE course in their primary major at UMass Amherst. CompSci 320 Software Engineering and CompSci 326 Web Programming (Spring 2014 or later) are currently the designated IE courses for CS and also count as a CS Elective.
Note that each set of requirements is administered by a different authority. Requirements for the major are administered by the Undergraduate Program, and the Undergraduate Program Director is the final authority on whether these are fulfilled. College and University requirements are administered by the College of Information and Computer Sciences Academic Deans Office (A114 Lederle Graduate Research Center) and the Registrar's Office. Students should check their "Academic Requirements Report" (also referred to as the ARR) on SPIRE to determine which requirements have been satisfied.
The degree includes courses required by the major program, college and university. Students may have satisfied some of these requirements before entering the University (see "Credit for Prior Coursework"). Others may need additional preparation, such as a math review course, before they begin this program.
A computer science major may not use any course taken on a pass/fail basis to fulfill the computer science program requirements (including mathematics, lab science, and computer science introductory, core, and upper-level elective courses). Students must maintain an average grade of at least C (2.0) in all courses used to satisfy the major degree requirement (see major GPA on the ARR). While courses with grades of C-, D+, or D may be counted toward the degree, students normally repeat these courses so that the new grade will replace the old in their GPA calculation (Check Academic Regulations for rules about repeating courses). A grade below C will normally not suffice as a prerequisite for a later course. For example, enrolling in COMPSCI 220 requires a grade of "C or better" in COMPSCI 187.
Any regularly numbered COMPSCI course at the 300-level or above may be used as an elective, excluding COMPSCI 305, or if it is specifically barred as an elective in its course description.
The following require ARR Fixes are generally updated closer to graduation after grades are finalized following your last semester:
NOTE: *Only 3 credits of either COMPSCI 499P/T or COMPSCI 396/496/596 may be used toward CS Major requirements.
Two* Introductory Computer Science Courses
Prerequisite change for 187, effective Spring 2017 offering, approved by the Faculty Senate:
Grade of B or better in 121
Grade of C or better in 186 (formerly 190D)
*186 (formerly 190D) is required if 121 grade is B-, C+, C.
Note: A Computer Science curriculum revision is currently underway that will replace the Java-based courses COMPSCI 121 and COMPSCI 186 with new Python-based courses. These new courses are currently being offered as INFO 190S and INFO 190T. While the formal curriculum revision is pending, CS majors can use a grade of C or better in INFO 190S taken in Fall 2022 to satisfy the COMPSCI 121 requirement and as a prerequisite to take INFO 190T. CS majors can use a grade of C or better in INFO 190T taken in Fall 2022 or Spring 2023 as an alternate prerequisite for COMPSCI 187. Note that CS students who start in INFO 190S must complete INFO 190T to move on to COMPSCI 187.
Four Core Computer Science Courses
Four Mathematics Courses
Eight Upper-Level Elective Computer Science Courses
Residency Requirement: Five of the eight required upper-level (300+) course must be taken at UMass Amherst.
Two Lab Science Courses (8 credits)
Satisfy laboratory science requirement by taking two majors-level science courses in the College of Natural Sciences* that includes a lab component (8 total credits). See your Academic Requirements Report (ARR) for specific program requirements. Students select two courses from the following list---mixing departments is acceptable:
**GEO-SCI 103/131 and GEO-SCI 105/131 require an ARR Exception. In general, if your grades are lower in courses that need an ARR Fix than in other courses for this requirement, we will not update your ARR. We will fix your ARR and you do not need to tell us. Only email upd@cs.umass.edu if you do not want to use these courses.
*The College of Information and Computer Sciences offers the following course that may be used as one of the CS Lab Science courses:
The course is currently open to Freshmen/Sophomore BS-CS Majors only (Juniors may be considered if available seats). The ARR does not list the course as an option, therefore an ARR Exception will be completed closer to graduation. We will fix your ARR and you do not need to tell us. Only email upd@cs.umass.edu if you do not want to use this course.
See the Academic Requirements Report (ARR) on SPIRE for specific University and College requirements.