smallest hero image

Computer Science Major Description

First-year students interested in majoring in Computer Science should enroll in CSI 111 during their first semester at the College. Many of our upper-level courses in both majors require MAT/CSI 240 Discrete Mathematics, so we encourage prospective majors to take this course during their freshman or sophomore year. 

The major in computer science consists of at least eleven courses and a senior capstone experience. 

Computer Science Major Course Tree

Course tree showing prerequisites for the Computer Science Major

Computer Science Major Requirements Table

Foundational Courses (take all of these)

CSI 111 Computer Science I
CSI 112 Computer Science II
CSI 210 Object Oriented Programming
MAT/CSI 240 Discrete Mathematics
CSI 320 Theory of Computation
CSI 380 Design and Analysis of Algorithms
CSI 460 Software Engineering

Mathematics Course (take one of these)

MAT 109

Statistical Inference and Data Analysis

MAT 111

Differential Calculus

MAT 106 and 107

Stretch Differential Calculus I and II (must take both)

MAT 280

Linear Algebra

Electives (take three of these)

Choose three Electives Chosen from CSI courses numbered 200 and above or any other course approved by the department chair.

Completion of a three-course track (which may include courses listed above)

  • A track is a set of three related courses, mutually agreed upon by the student and their computer science advisor (with chair final approval).
  • Track courses may include major requirements, computer science electives, or courses outside computer science.
  • Track requirements will usually be satisfied by courses that are also used to meet other requirements, such as computer science electives. There is no restriction against courses counting towards the track and something else.
  • Track suggestions include (but are not limited to)
Systems

CSI 250 / CSI 430 / CSI 440

Data Science MAT 109 / CSI 220 / CSI 360
Software CSI 330 / CSI 380 / CSI 460
Agents CSI 310 / CSI 360 / CSI 420
Electronics CSI 250 / MAT 210/ PHY 352
Cybersecurity CSI 250 / CSI 440 / MAT 310
Games, GUIs, and Graphics

CSI 104 / CSI 330 / CSI 410

Other Must be approved by the chair.

The Computer Science Minor

The minor in computer science consists of at least six courses.

CSI 111 Computer Science I
CSI 112 Computer Science II
CSI 210 Object Oriented Programming
MAT/CSI 240 Discrete Mathematics

Two elective courses from other required or elective courses listed above.