UMass Amherst
Department of Computer Science
 

CS Home Page
Introduction
People
Admissions
Academics
Research

News
Events
Publications
Join Us
Alumni
Support

Contact Information
Directions
The University

 


 

Undergraduate Requirements

Requirements for the B.S. in Computer Science

The computer science undergraduate program provides a solid foundation in the science of computing. To receive a baccalaureate degree, the College of Arts and Sciences 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 a core of 11 computer science courses (total credits = 40), 5 mathematics courses (total credits = 17), and 2 approved science courses, with laboratory (total credits = 8). These courses supply the essential theory, concepts, and techniques in the major areas of computer science and related disciplines. To complement the breadth achieved by this core, majors must also complete three elective courses in computer science or some related area (total minimum credits = 9).

Computer science majors must also take CmpSci 305 (405 prior to Spring 1999) -- Social Issues in Computing. This course fulfills the University's Junior Year Writing requirement and satisfies part of the 44 distribution course credits required by the College of Arts and Sciences (more details can be found in the University Undergraduate Catalog).

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, six Social World courses, including two Diversity courses, and a third science (BS or PS) course. Computer Science majors must also fulfill the foreign language requirement of the College of Natural Sciences and Mathematics, either by high school or college work.

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 Arts and Sciences Advising Center where the Academic Dean for Computer Science students is Professor Stan Hertzbach. Students should check their "Degree Progress" on the SPIRE system to determine which requirements the University thinks have been fulfilled.

The following list of required courses combines the department, college, and university requirements. Some students will have satisfied some of these requirements before entering the University (see "Exemptions and Advanced Placement"), such as a foreign language. Other students may need additional preparation, such as a math review course, before they begin this program.

Specific Requirements

Required Computer Science Courses

121 Introduction to Problem Solving with Computers (or 191B)
191B Introduction to Java II
187 Programming with Data Structures (4 cr)
201 Architecture and Assembly Language Programming (4 cr)
250 Introduction to Computation (4 cr)
287 Programming Language Paradigms (4 cr)
311 Introduction to Algorithms (4 cr)
320 Introduction to Software Engineering (4 cr)
377 Operating Systems (4 cr)
383 Artificial Intelligence

Semi-Required Courses (at least two required)

401 Formal Language Theory
410 Compiler Techniques
445 Information Systems
453 Computer Networks
535 Computer Architecture

Mathematics

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

One of the following courses (or another upper-level mathematics course
approved by the academic advisor):

MATH 233 Multivariate Calculus (if not used above)
MATH 331 Ordinary Differential Equations for Scientists and Engineers
MATH 411 Introduction to Modern Algebra I
MATH 421 Complex Variables
MATH 441 Mathematics of Finance
MATH 451 Numerical Analysis I
MATH 456 Mathematical Modelling
MATH 523 Introduction to Modern Analysis
MATH 551 Introduction to Scientific Computing
STATIS 501 Methods of Applied Statistics
STATIS 515 Statistics I (if not used above)

Required Natural Sciences Courses

Two of the three General Education Science courses must be introductory courses (with labs) intended for majors in some department in the College of Natural Sciences and Mathematics (8 total credits.) Currently allowed courses are:

BIOL 100 Introduction to Biology
BIOL 101 Introduction to Biology
CHEM 111 General Chem -- Science Majors
CHEM 112 General Chem -- Science Majors
CHEM 121 General Chem -- Science Majors
CHEM 122 General Chem -- Science Majors
GEOSCI 101 and 131 The Earth (with lab)
GEOSCI 103 and 131 Intro to Oceanography (with lab)
PHYS 151/3 General Physics I (with lab)
PHYS 152/4 General Physics II (with lab)
PHYS 181/3 Physics I - Mechanics (with lab)
PHYS 182/4 Physics II - Electricity and Magnetism (with lab)

Variances from this requirement may be allowed under unusual circumstances. Students interested in counting a different science course toward this requirement should contact the Computer Science Undergraduate Program Director.

Computer Science Electives

Three further elective courses are required. Most computer science courses numbered 400 or higher are acceptable. Other approved electives include the advanced Mathematics courses listed above, as well as certain Electrical and Computer Engineering courses, such as ECE 660 and ECE 661. At least one of your elective courses must be taken in the Computer Science Department.

Distribution Requirements

English 112, Computer Science 305
Foreign Language (College of NSM requirement)
Third Science (Gen Ed - must have at least one BS, at least one PS)
Social World (Humanities, History, Social Science) with two diversity courses.
Free Electives

Grades

A computer science major may not use any course taken on a pass/fail basis to fulfill the computer science core requirements (including mathematics, physics, and computer science elective courses). Moreover, all courses used to satisfy the computer science Undergraduate Program requirements must be passed with a grade of C or better (grades of C- obtained in the Spring 2006 semester or earlier are acceptable.) If you receive a grade less than C in a computer science, math, or physics course, you must see the Department Undergraduate Program Director (UPD) to decide on a course of action. In general, if you receive a grade below C in a required class, you must repeat that class. Exceptions may be granted only on the basis of a written appeal that has been filed with the UPD.

Completing your UMass Computer Science Degree Elsewhere

For a variety of reasons including work opportunities, undergraduate computer science majors may wish to complete some of their degree requirements elsewhere. This is allowable, with the following qualification: Of the nine advanced technical courses in the program (311, 320, 377, 383, two semi-required courses, three advanced electives), at least five must be taken at UMass Amherst (five-college substitutions and department distance-learning classes are acceptable).

To get credit for a course taken elsewhere you must first contact the UPD, and supply that faculty member with the course description of the course (or the URL for a description on the web). If the course is approved, then you must file a Prior Approval Form with Registrar's Office at Whitmore. When you complete the course, be sure that the institution hosting the course sends your official grade and enrollment information to the records office here on campus.

     


Comments:
www-admin@cs.umass.edu

© 2008 University of Massachusetts Amherst. Site Policies.
This site is maintained by the Department of Computer Science.