Faculty Recruiting Make a Gift

Details of the B.S. Requirements

B.S. in Computer Science
(curriculum prior to September 2016)

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.

Computer science majors must also take CompSci 305 Social Issues in Computing. This course satisfies the University's Junior Year Writing requirement.  The University's Integrative Experience (IE) requirement can be satisfied by taking an approved IE course (CompSci 320 Software Engineering and CompSci 326 Web Programming (Spring 2014 or later)) are currently the designated IE courses for CS.

The computer science courses also fulfill certain of the University's general education requirements. To graduate from the University, eight additional courses are required beyond those for computer science: College Writing, four Social World courses, including two Diversity courses, and a third science (BS or PS) course. (Students in the Computer Science B.S. no longer have foreign language course requirements, only students in the B.A. program do.)

Note that each set of requirements is administered by a different authority. Requirements for the major are administered by the Department, and the Undergraduate Program Director is the final authority on whether they are fulfilled. College and University requirements are administered by the College of Information and Computer Sciences (120 Computer Science Building) and the Registrar's Office. Students should check their "Academic Requirements" (also referred to as the ARR) on the SPIRE system to determine which requirements the University thinks have been fulfilled.

Required courses include courses required by the school, college, and university. Some students will have satisfied some of these requirements before entering the University (see "Exemptions and Advanced Placement"). Other students may need additional preparation, such as a math review course, before they begin this program.

When does a class count for the CS major?

A computer science major may not use any course taken on a pass/fail basis to fulfill the computer science core requirements (including mathematics, science, and computer science elective courses). Students must maintain an average grade of at least C (2.0) in all courses used to satisfy the departmental degree requirement.  While courses with grades of C-, D+, or D may be counted toward the degree, students should 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.

What is an approved CS elective?

Any regularly numbered COMPSCI course at the 300-level or above may be used as an elective, unless it is the writing course COMPSCI 305, or it is specifically barred as an elective in its course description.

Experimental courses (x90), seminar courses (x91) and special topics (x97) may only be used as CS electives at the 300-level (or above) if this is specifically stated in the course description.  CS Capstone courses (499T/P) may only be used with approval of the UPD.  Email upd@cs.umass.edu to petition to use any of these courses.

Independent studies (x96) at the 300-level (or above) are reviewed for elective credit via the independent study approval process.

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

  • 121 Introduction to Problem Solving with Computers (4 cr)
  • 186* Using Data Structures (4 cr)
  • 187 Programming with Data Structures (4 cr)

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.

Four Core Computer Science Courses

  • 220 Programming Methodology (4 cr)
  • 230 Computer Systems Principles (4 cr)**
  • 240 Reasoning About Uncertainty (4 cr)
  • 250 Introduction to Computation (4 cr)

**CSENG/CS Double Majors Variance.
CMPSCI 201 Architecture and Assembly Language Programming is no longer offered by the department, and is not an accepted alternative for CMPSCI 230 for students graduating after May 2012.

Four Mathematics Courses

  • MATH 131 Calculus I (4 cr)
  • MATH 132 Calculus II (4 cr)
  • MATH 233 Multivariate Calculus or STATISTC 515 Statistics I
  • MATH 235 Introduction to Linear Algebra

Eight Elective Computer Science Courses (GENCOMPSCI)

  • 311 Introduction to Algorithms (4 cr) (prereq: 250)
  • 377 Operating Systems (4 cr) (prereq: 230)
  • 383 Artificial Intelligence (3 cr) (prereqs: 220, 311)
  • Two approved CS electives numbered 300 or greater
  • Three approved CS electives numbered 400 or greater

Instead of GENCOMPSCI, students may complete Elective Courses as part of Speciality Tracks

  • Details on tracks are available here

The Department of Computer Science has a Residency Requirement that requires five of the eight required upper-level (300+) course to 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:

  • CHEM 111 or 121 General Chem - Science Majors
  • CHEM 112 General Chem - Science Majors or 122 General Chemistry
  • GEOL 101 The Earth (with lab) or GEOL 103 Oceanography and GEOL 131 Experiencing Geology (lab) or GEOL 105 The Dynamic Earth and GEOL 131 (lab)**
  • PHYSICS 151 General Physics I or PHYSICS 181 Physics I - Mechanics
  • PHYSICS 152 General Physics II or PHYSICS 182 Physics II - Electricity and Magnetism
  • Options in Biology for the CS Lab Science Requirement

**GEOL 103/131 and GEOL 105/131 require an ARR Exception (email upd@cs.umass.edu).  Contact the Geology Department for specifics about course offerings; GEOL 131 can be taken separate from GEOL 103||105.

University and College Requirements

See the Academic Requirements Report (ARR) on SPIRE for specific University and College requirements.