Requirements for the Standard Track
Note: this page contains the old Sc.B. requirements. New requirements took effect in January 2018.
Concentration Prerequisites (1-2 courses)
Two semesters of Calculus (e.g. MATH 90/100 or MATH 170)
Concentration Requirements (15 courses)
One introductory course sequence is required:
- CSCI 150 and CSCI 160
- CSCI 170 and CSCI 180
- CSCI 190 and an additional CS course not otherwise used to satisfy a concentration requirement; this course may be CSCI 180, an intermediate-level course, or an advanced course
Three intermediate courses must be taken, of which one must be math-oriented and one must be systems-oriented:
- CSCI 220 (math-oriented)
- CSCI 320 (systems-oriented)
- CSCI 330 (systems-oriented)
- CSCI 1010 (math-oriented)
- CSCI 1450 (math-oriented)
Eight advanced courses in computer science or related areas are required. Normally these advanced courses must be at the 1000-level or higher, though an intermediate-level course not used to satisfy a core requirement may be used. These eight courses must include:
- Two pairs of courses with each pair forming a coherent theme. A list of approved pairs may be found at the approved-pairs web page. Students are not restricted to pairs on this list, but any pair not on the list must be approved by the director of undergraduate studies.
- A capstone course, normally taken in the student's last undergraduate year, in which the student (or group of students) use a significant portion of their undergraduate education, broadly interpreted, in studying some current topic in depth, to produce a culminating artifact such as a paper or software project. The title and abstract of the artifact, along with the student's and faculty-sponsor's names, will be placed in the CS website. The inclusion of a relevant image or system diagram is strongly encouraged. The complete text of the best artifacts of each class will be featured on the CS website.
- Of these eight courses, one must be a theoretical computer science course (CSCI1490, CSCI1510, CSCI1550, CSCI1570, CSCI1590, CSCI1760, CSCI1950H, CSCI1950J, CSCI1950L, CSCI1950Y or CSCI1951K), a second must be an artificial intelligence course (CSCI1410, CSCI1420, CSCI1430, CSCI1450, CSCI1460, CSCI 1470, CSCI1480, CSCI1490, CSCI1550, CSCI1580, or CSCI1951-K), and a third must be a computer science systems course (CSCI1230, CSCI1260, CSCI1270, CSCI1290, CSCI1300, CSCI1310, CSCI1320, CSCI1340, CSCI1380, CSCI1600, CSCI1610, CSCI1650, CSCI1660, CSCI1670, CSCI1680, CSCI1730, CSCI1900, or CSCI1950W). No course may be used to satisfy more than one area requirement.
- Five of the eight courses must be computer science courses.
Among the eight courses may be approved courses in Mathematics, Applied Mathematics, Biology, Engineering, Economics, Music, Cognitive and Linguistic Science, Neuroscience, and other departments that cover material relevant to the student's concentration.
See the FAQ for a list of approved courses.
Note: CSCI 1010 and 1450 may be used either as a math-oriented intermediate courses or as advanced courses. CSCI 1010 was formerly known as CSCI 510: they are the same course and hence only one may be taken for credit. CSCI 1450 was formerly known as CSCI 450: they are the same course and hence only one may be taken for credit. Applied Math 1650 or 1655 may be used in place of CSCI 1450. However, concentration credit will be given for only one of Applied Math 1650, 1655, and CSCI 1450.
A concentrator must also complete two semesters of mathematics or applied mathematics beyond Math 100/170. One of these courses must be a linear algebra course (Math 520 or 540 or CSCI530).
Click here for the requirements for the professional track.