The major requirements below are current starting in Fall 2021. Existing MSCS majors that declared prior to Fall 2021 can continue to follow the old requirements. All new major declarations, except in unusual circumstances, must meet the requirements outlined below.


Computer Science Major | Computer Science Minor | Data Science Major | Data Science Minor | Mathematics Major | Mathematics Minor | Statistics Major | Statistics Minor

General Distribution Requirement

All courses in the department count toward the general distribution requirement in mathematics and natural science except those numbered COMP 154MATH 212COMP 325 and COMP 272COMP 154 and MATH 212 count toward the humanities general distribution requirement. COMP 272 counts toward the social science general distribution.  COMP 325 counts for no general distribution.

General Education Requirements

Courses that meet the general education requirements in writing, quantitative thinking, internationalism and US identities and differences will be posted on the Registrar's web page in advance of registration for each semester.

Additional information regarding the general distribution requirement and the general education requirements can be found in the graduation requirements section of this catalog.

Honors Program

The MSCS department participates in the honors program. Eligibility requirements, application procedures and specific project expectations can be found on the department webpage or the Academic Programs and Advising Office.

Topics Courses

COMP 194 , COMP 294 , COMP 394 , COMP 494 , MATH 194, MATH 294, MATH 394, MATH 494, STAT 194, STAT 294STAT 394, STAT 494 

Selected topics in computer science, mathematics, applied mathematics, and statistics. When the course is offered, the topic and prerequisites for that semester will be announced and posted prior to registration. (4 credits)

Independent Study

The MSCS department offers independent study options in the form of tutorials, independent projects, internships, preceptorships and Honors independent projects. For more information contact the department and review the Curriculum section of the catalog.

Computer Science Major

Major Requirements

  1. Three introductory courses, taken in sequence. Students with prior experience should determine proper placement in this sequence in consultation with program faculty. Students prepared to skip this entire sequence must take a third advanced elective.
  2. Three supporting math/stat courses: MATH 279, and any two additional math/stat courses, numbered 135 or above, taken at Macalester
  3. Three core courses: COMP 221, COMP 225 and COMP 240
  4. Two advanced elective courses in computer science, numbered 300-499
  5. A capstone course, which must be taken prior to spring semester of the senior year
  6. Pass the project component of the capstone course, and pass the capstone presentation requirement

    Mathematics and statistics courses that support a Computer Science major particularly well include: STAT 155, MATH 236, STAT 253, MATH 313, MATH 365, MATH 375, and MATH 379.

    Students who plan to attend graduate school in computer science are encouraged to take COMP 361, more than the minimum number of computer science electives, as well as additional supporting work in related disciplines.

    Students planning a Computer Science major who enter Macalester without prior experience should take COMP 123 in their first year.

Computer Science Minor

Minor Requirements

Requirements for a minor in computer science are:

Any five courses in computer science numbered 120-489. Minor plans including more than one crosslisted course require departmental approval. (Note: Credit can be awarded for only one of the introductory courses COMP 120 or COMP 123.)

No more than two courses can count toward any other minor or major.

Data Science Major

Major Requirements

  1. Two courses in Data Science core: STAT 112/COMP 112 and COMP 212/STAT 212
  2. Two courses in Statistics core: STAT 155 and STAT 253
  3. Two courses in Computer Science core: COMP 120 or COMP 123, and COMP 127
  4. One course in Math core: MATH 236
  5. Three upper-level electives: Any three courses from the following list: COMP 302, COMP 320, COMP 435, COMP 440, COMP 445, COMP 484 MATH 354/STAT 354, MATH 365/COMP 365, MATH 432, MATH 437, MATH 471, MATH 479/COMP 479, STAT 451, STAT 452, STAT 453, STAT 454
  6. Capstone: STAT 456 , which must be taken prior to spring semester of the senior year.
  7. Pass the capstone presenation

Data Science Minor

To obtain a minor in Data Science, you must complete five (5) course in total that must include:

Data Science Core:


  • Three (3) additional courses, chosen from Computer Science courses numbered COMP 123-494 and Statistics courses numbered STAT 155-494. The electives must include a COMP course and a STAT course.

No more than two courses can count toward any other major, minor, or concentration.

Note: COMP 123 - Core Concepts in Computer Science, COMP 127 - Object-Oriented Programming and Abstraction, STAT 155 - Introduction to Statistical Modeling, STAT 253 - Statistical Machine Learning, COMP 456 - Projects in Data Science/ STAT 456 - Projects in Data Science are highly recommended elective courses for the Data Science minor.

Mathematics Major

Major Requirements

  1. Two courses that are introductory to the major (taken in any order): MATH 236, MATH 237
  2. Two supporting courses:
    1. One course in data visualization and modeling: STAT 112 or STAT 155
    2. One course in computer programming: COMP 120, COMP 123, COMP 127, or COMP 128
  3. Five Math courses numbered 250 or above, including:
    1. At least two cornerstone courses from the following list: MATH 312, MATH 354, MATH 365, MATH 375, MATH 376, MATH 377, MATH 378, MATH 379
    2. At least one 400-level capstone course, which must be taken prior to spring semester of the senior year
  4. Pass the capstone presentation

Mathematics Minor

To obtain a minor in mathematics, you must complete and five (5) mathematics courses numbered MATH 110-494. No more than two courses can count towards any other major, minor, or concenration.

Statistics Major

Major Requirements

  1. Five core courses:
    1. MATH 137 or MATH 237
    2. STAT 155
    3. MATH 236
    4. STAT 253
    5. STAT 354/MATH 354
  2. Two upper-level statistics courses from the following list, at least one of which is a 400-level course (which must be taken prior to the spring semester of the senior year): STAT 394, STAT 451, STAT 452, STAT 453, STAT 454, MATH 455/STAT 455, STAT 494
  3. One additional upper-level statistics or statistics adjacent course from the following list:
    1. Any 300- or 400-level STAT course, MATH 365/COMP 365, MATH 377, MATH 433**, MATH 479/COMP 479
  4. Two computational courses from the following list: STAT 112/COMP 112, COMP 120, COMP 123, COMP 127, COMP 128, COMP 221, COMP 225, COMP 302, COMP 365, COMP 435, COMP 440
  5. Pass the capstone presentation

**MATH 433 is the future course number of Signal Processing, which has been taught as a topics course.

Statistics Minor

Minor Requirements

To obtain a minor in Statistics, you must complete five (5) courses in total that must include:

Statistics core:

Electives: three (3) additional courses from the following:

No more than two courses can count toward any other minor, major, or concentration.