The requirements for an ScB are as follows:
-
Calculus prerequisite (zero to three courses) (see below)
-
Intro sequence (two courses) (see below)
-
Thirteen CS courses numbered 220 or higher
-
Two complete pathways
-
Each requires two 1000-level (or higher) courses as well as one-to-three intermediate courses
-
One of the courses used in one pathway must be a capstone course (defined below)
-
The core and related courses used in one pathway may not overlap with those used in the other
-
-
Additional intermediate courses (see below) so that a total of five are taken, with at least one from each of the three intermediate-course categories
-
One additional 1000-level (or 2000-level) course that is neither a core nor a related nor a grad course for the pathways used above.
-
Of the remaining three courses, one may be an intermediate course not otherwise used as part of the concentration. The others must be 1000-level or 2000-level courses, including approved non-CS courses (see the concentration handbook for a list of such courses). Unless explicitly stated in a pathway, such non-CS courses may not be used as part of pathways.
-
No more than four arts, humanities, and social science oriented CS courses (currently CSCI 1250, 1280, 1370, 1800, 1805, and 1870) may be used for concentration credit.
-
A professional track is also available. To complete this track, you must complete the requirements for your concentration and complete two two-to-four-month full-time professional experiences, doing work that's related to your concentration program. Such work is normally done within an industrial organization, but may also be at a university under the supervision of a faculty member. More details are in the professional track page.
The Capstone
A capstone course is taken in your last undergraduate year. This course must be either a capstone-designated course in one of your pathways or a CS1970 on a topic within the general area of one of your pathways. You (alone or as part of a group) use a significant portion of your undergraduate education, broadly interpreted, to study 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 your and the 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.
Calculus Prerequisite
You must either complete or place out of second-semester calculus (MATH 100, 170, or 190). MATH 180, MATH 200, MATH 350, and ECON 170 also satisfy this requirement. Note that if you haven't had sufficient calculus in high school, you may need to take Math 90 (or other courses) before taking a second-semester calculus course.
Introductory Courses
You must complete one of these introductory course sequences:
-
CSCI 150 and 160
-
CSCI 170 and 180
-
CSCI 190 followed by any more advanced course or CSCI 180
Intermediate Courses
Intermediate courses are grouped into categories as follows:
Foundations
-
Intro to Discrete Structures and Probability (CSCI 220); MATH 1530 is also allowed
-
Theory of Computation (CSCI 1010)
Mathematics
-
Linear Algebra (one of CSCI 530, MATH 520, MATH 540)
-
Probability and Statistics (one of CSCI 1450, APMA 1650, APMA 1655, MATH 1620)
-
Multivariable Calculus (one of MATH 180, MATH 200, MATH 350)
Systems
-
Fundamentals of Computer Systems (CSCI 300)
-
Intro to Software Engineering (CSCI 320)
-
Intro to Computer Systems (CSCI 330)