Faculty Recruiting Support CICS

B.S. in Computer Science Degree Requirements

The B.S. in Computer Science is based on a flexible set of degree requirements that allows students to use a greater breadth of CS courses to complete the degree.

These web pages provide details about the BS requirements. If you have questions, you may visit the CS Undergraduate Advising Center (ACE) during posted hours, or contact upd@cs.umass.edu.

Major Changes into CS are by application only.  If you are interested in joining our major, submit your application.  If you have questions after reviewing the process, please contact the appropriate list on our Contact Us With Your Questions page.

If you are already a CS Major and want to switch between BS and BA, talk with your advisor and fill out a "program change" form.

Finally, students completing the Computer Science BS (or BA) and a Math major or minor will find some helpful advice on this page.

BS Requirements

Revised BS in Computer Science (effective September 2016)

The Faculty Senate approved the Revised BS in Computer Science curriculum which became effective in September 2016.

Tracking forms are informal descriptions of the programs that are for guidance only, and they do not define official policy.  See Academic Requirements Report (ARR) on SPIRE.


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 CICS 305 (formerly COMPSCI 305), or if it is specifically barred as an elective in its course description.

The following require ARR Fixes which may be updated closer to graduation:

  • Experimental courses (x90), seminar courses (x91-x95) and special topics (x97) may only be used as CS electives at the 300- or 400-level depending on the level if specifically stated in the course description.  *Only 3 credits of a CS Capstone courses (499T/P) can be used as a CS elective 400+ (see NOTE).  ONLY email upd@cs.umass.edu if you want to EXCLUDE one of these courses.
  • Independent studies (x96) at the 300-level (or above) are reviewed for CS elective credit via the independent study approval process during registration.  If UPD approved for major requirements, *only 3 credits of independent study can be used as a CS elective (see NOTE).  ONLY email upd@cs.umass.edu if you want to EXCLUDE.

NOTE:  *Only 3 credits of either COMPSCI 499P/T or COMPSCI 396/496/596 may be used toward CS Major requirements.



CS Majors sometimes 'save' CS 500-level+ courses to use for a graduate program.  Courses saved must not be used for any requirements for the undergraduate degree (gen ed, college, major, minor, honors, including counting toward the 120 credits; 150 for a dual degree).  If you would like to 'save' a CS500-level+ course for a graduate program, then email upd@cs.umass.edu and tell us your plan (during your senior year and/or last semester before grades are finalized).

The only thing that may change if you 'save' a course is your CS Major GPA and this is only seen on the ARR.  All courses will still show on your transcript and count toward your overall GPA.  Saving a course is an option to transfer a course to a graduate program if that program will accept the course.  Some students think that the CS Major GPA is more important and choose not to 'save'.  The CS Major GPA only includes courses counting toward the major requirements, so any courses either 'saved' or not used are excluded.  Changes are not allowed after students are cleared for graduation.