[NEW] BA in Computer Science Degree Requirements: Fall 2023 Revision
This page describes the BA in Computer Science degree requirements that apply to new incoming students and on-campus students who started the major after Fall 2023
For students who began as a CS major in or prior to Fall 2023, please see the BA in Computer Science Degree Requirements: Pre Fall 2023 page.
Overview
The BA in Computer Science degree requires 12 computer science courses, three math courses, and a four-course outside concentration. The BA requires fewer math and computer science courses than the BS in Computer Science, allowing students to explore interdisciplinary interests through the four-course outside concentration.
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.
Each set of requirements is administered by a different authority. Requirements for the major are administered by the Computer Science Undergraduate Program, and the Computer Science 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 and the University 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.
When Does a Course 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 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 (see 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 CICS 210.
What is an Approved CS Elective?
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 elective options require ARR Fixes that are generally applied after grades are finalized following your last semester:
- 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 email upd [at] cs [dot] umass [dot] edu (upd[at]cs[dot]umass[dot]edu) if you want to EXCLUDE one of these courses.
- At most 3 credits of CS honors research courses (499T/P) can be used as a CS elective 400+. ONLY email upd [at] cs [dot] umass [dot] edu (upd[at]cs[dot]umass[dot]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 the CS UPD approves, at most 3 credits of independent study can be used as a CS elective. ONLY email upd [at] cs [dot] umass [dot] edu (upd[at]cs[dot]umass[dot]edu) if you want to EXCLUDE one of these courses.
- A maximum of 3 credits of either COMPSCI 499P/T or COMPSCI 396/496/596 may be used toward CS Major requirements. Additional credits earned will count toward graduation credit requirements, but will not count toward major requirements.
Degree Requirements
General Education Requirements
Computer science majors complete general education requirements as specified by the University. Information on general education requirements is available here. Current students can also verify their requirements using their Academic Requirements Report (ARR) on SPIRE.
Junior Year Writing (JYW) Requirement
Computer science majors take CICS 305 Social Issues in Computing in their junior or senior years to satisfy this requirement. The Junior Year Writing course 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 are currently the designated IE courses for CS and also count as a CS Elective.
Three Introductory Computer Science Courses:
- CICS 110: Foundations of Programming (4 cr)
- CICS 160: Object Oriented Programming (4 cr)
- CICS 210: Data Structures (4cr)
Three core Computer Science courses selected from:
- COMPSCI 220 Programming Methodology
- COMPSCI 230 Computer Systems Principles*
- COMPSCI 240 Reasoning Under Uncertainty
- COMPSCI 250 Introduction to Computation
* Note: COMPSCI 198C Introduction to the C Programming Language (a 1cr practicum course) is a prerequisite for COMPSCI 230.
Five Computer Science Electives
Five computer science electives at the 300-level or higher (not including 305) are required. These must be chosen from the department's regularly numbered courses 300 or higher. Experimental classes (numbered x90 through x99) may be used as electives only with Computer Science Undergraduate Program Director (CS UPD) approval. In special cases, courses taken outside the College of Information and Computer Sciences may be used if approved by the CS Undergraduate Program Director.
Three Math Courses
Three math courses are required, including MATH 131-132, plus one additional math course to be approved by the department. Appropriate courses include RES-ECON 211, RES-ECON 212, STATISTC 240, STATISTC 501, STATISTC 315, or any other Math course at the 200-level or higher. Equivalent courses or appropriate AP exam placements are acceptable in place of MATH 131-132.
Four-Course Outside Concentration
Four courses forming a focused study in another discipline (or, where appropriate, more than one discipline) with relevance to the theory or practice of computer science. Typically these courses are required for the other discipline and are at the 200 level or higher (thus, they may require preliminary coursework at a lower level as prerequisites for the concentration). Individual concentrations may be created with the approval of the CS UPD based on the relationship of the concentration to the study of computer science and its cohesiveness and depth.
At most one course in the concentration may be a sixth CS elective, or the fourth course in the CS core. These options require CS UPD approval that the course contributes significantly to the overall thrust of the concentration.
For help putting together a concentration, please speak directly to your advisor. To receive approval for your concentration, please work with your CS advisor and submit eligible courses. The deadline for obtaining final CS UPD approval is before registration for your last semester of Senior year. Advising holds will be placed preventing enrollment in October for spring registration and March for fall registration.
Once the Four-Course Concentration is approved by the CS UPD and you have completed the courses, your Academic Requirements Report (ARR) on SPIRE will be updated. Modifications to an approved concentration are not generally approved.
GPA Requirement
A computer science major may not use any course taken on a pass/fail basis to fulfill the BA requirements. Moreover, a cumulative grade point average of 2.0 or better must be achieved in courses required for the major.
Residency Requirement
- At least three of the five Computer Science Electives must be taken at UMass, Amherst.
- At least five of the nine courses consisting of the five Computer Science electives and the four-course Outside Concentration must be taken at UMass Amherst.
College Foreign Language Requirement
The Manning College of Information and Computer Sciences requires all BA degree students to complete foreign language requirements as either (1) fourth level of one language or (2) third level of one language and second level of another. Often the work you have done in high school counts towards and completes these requirements. If you already speak a second language, another option is to "challenge the exam" of a fourth-level language course and have the requirement waived.
- Note that the situation is different for students completing a double major (120 credits total) composed of some other primary major and the Computer Science BA. If the primary major doesn't require foreign language study, then the student does not need to complete the foreign language requirements for the Computer Science BA. For example, if the double major is composed of a Math BS as the primary major and the Computer Science BA as the second major, there would be no foreign language requirement.
- Students completing a double degree (150 credits total) of Math BS and Computer Science BA do need to complete the Foreign Language requirements for the Computer Science BA.