Program Requirements and Opportunities

Published annually, the Course Catalog sets out the requirements of the academic programs--the majors, minors, and concentrations. Each Bryn Mawr student must declare a major before the end of the sophomore year. Students may also declare a minor or a concentration, but neither is required for the A.B. degree. Students must comply with the requirements published in the Course Catalog at the time when they declare the major, minor and/or concentration.

The Course Catalog also sets out the College requirements. Students must comply with the College requirements published at the time they enter Bryn Mawr College.

For more information, visit the Catalog Homepage to view the current content. To view Catalogs from previous academic years, visit the Catalog Archives page.

COMPUTER SCIENCE

Computer Science is about the science of algorithms (theory, analysis, design and implementation) as well the design and implementation of computer systems. It is an interdisciplinary field with roots in mathematics and engineering and applications in many other academic disciplines.

The Computer Science Department is supported jointly by faculty at both Bryn Mawr and Haverford Colleges. The department welcomes students who wish to pursue a major in Computer Science. Additionally, the department also offers a minor in Computer Science. Students can further specialize their majors by selecting elective courses that focus on specific disciplinary tracks or pathways within the discipline.

The curriculum emphasizes foundations and basic principles of information science with the goal of providing students with skills that transcend short-term trends in computer hardware and software.

Major in Computer Science

Students must prepare a major course plan in consultation with their academic adviser in Computer Science. The requirements for a major in computer science are:

Three introductory courses:

  • CMSC B109 (or H105): Introduction to Computing, or CMSC B113: Computer Science I
  • CMSC B151 (or H106 or H107): Data Structures
  • CMSC/MATH B/H231: Discrete Mathematics

Four core courses:

  • 200-level systems
    • CMSC B223/H251: Systems Programming
  • Any one of
    • CMSC B/H240: Principles of Computer Organization
    • CMSC H260: Foundations of Data Science
  • Designated theory course (writing intensive)
    • CMSC B340: Analysis of Algorithms
  • Any one of the 300-level systems courses
    • CMSC B355/H356: Operating Systems
    • CMSC H350: Compiler Design

Four Electives in Computer Science

  • At least three must be 300-level or above

Senior Capstone Experience

  • CMSC B399: Senior Conference

The major requires students to take a total of eleven courses and CMSC 399 Senior Conference. If a student places out of a course (for instance an introductory course), another CS course must be substituted in its place from the Electives category. Please also take note of our outside credit transfer policy.

Note that CMSC H340 does not fulfill the writing requirement of the college and cannot be used in place of CMSC B340. All requirements must be completed with merit grades while some requirements must be completed with a minimum grade of 2.7. In particular, grades of 2.7 or above in B151/H106 and B/H231 are required to declare a CS major. 

Students declaring a CS major need to have completed at least three courses in computer science by the end of their sophomore year (typically CMSC B109/B113/H105, B151/H106 and B/H231). 

Minor in Computer Science

Students in any major are encouraged to complete a minor in computer science. The requirements for a minor in computer science at Bryn Mawr are (Haverford equivalents are not listed, please see above): CMSC 109/113, CMSC 151 and CMSC 231, any two of CMSC 223, 240, 260, 340 or 355, and one elective chosen from any course in computer science, approved by the student's adviser in computer science. All requirements must be completed with merit grades. Any course taken CR/NCR cannot be used to fulfill CS minor requirements. The Minor requires students to take a total of six courses. If a student places out of a course (for instance an introductory course), another CS course must be substituted in its place from the Electives category.