B.S. in Computer Science Curriculum

B.S. in Computer Science Curriculum
Curriculum Requirements (binding on students admitted Fall, 2014)
Revised June, 2014

The B.S. curriculum in Computer Science requires a minimum of 360 units and can be divided into the following sections:

Computer Science





  • two Computer Science electives (can be from any SCS department; usually 200-level or above): Computer Science [15-xxx], Lane Center for Computational Biology [02-], Human Computer Interaction Institute [05-], Institute for Software Research [08-,17-], Machine Learning [10-], Language Technologies Institute [11-], and Robotics Institute [16-])

    NOTE: The following courses do NOT count as Computer Science electives: 02-22302-25002-26108-20015-351 (or any equivalent cross-listed courses to these courses). Check with your academic advisor before taking any new SCS courses to determine eligibility.


 Mathematics
 Science and Engineering

Four engineering or science courses are required, of which at least one must have a laboratory component and at least two must be from the same department. Courses with a primary focus on programming, computation or mathematics are not acceptable for science or engineering courses.

At present, courses meeting the lab requirement are:

  • 02-261 Quantitative Cell and Molecular Biology Laboratory
  • 03-124 Modern Biology Laboratory (coreq 03-121)
  • 09-101 Introduction to Experimental Chemistry (this 3 unit lab together with 09-105, Introduction to Modern Chemistry, satisfies the lab requirement)
  • 09-221 Laboratory I: Introduction to Chemical Analysis
  • 15-321 Research Methods for Experimental Computer Science
  • 27-100 Engineering the Materials of the Future
  • 33-104 Experimental Physics
  • 42-203 Biomedical Engineering Laboratory (crosslisted with 03-206)
  • 85-310 Research Methods in Cognitive Psychology
  • 85-314 Cognitive Neuroscience Research Methods

The following courses from the Lane Center can be used to satisfy the Science and Engineering requirement and can be paired with a Biology [03-] course for two courses from one department:

  • 02-223 Personalized Medicine: Understanding Your Own Genome
  • 02-250 Introduction to Computational Biology (or 02-251 + 02-252)
  • 02-261 Quantitative Cell and Molecular Biology Laboratory (also meets the lab requirement)

The following courses cannot be used to satisfy the Science and Engineering requirement:

  • 06-262 Mathematical Methods for Chemical Engineering
  • 09-103 Atoms, Molecules, and Chemical Change
  • 09-104 Fundamental Aspects of Organic Chemistry and Biochemistry
  • 09-231 Mathematical Methods for Chemists
  • 18-090 Introduction to Signal Processing for Creative Practice
  • 18-202 Mathematical Foundations of Electrical Engineering
  • 18-345 Introduction to Telecommunication Networks
  • 18-411 Computational Techniques in Engineering (crosslisted with 27-410)
  • 18-487 Introduction to Computer & Network Security & Applied Cryptography
  • 18-492 Speech Processing
  • 18-6xx/7xx/8xx/9xx All graduate level ECE courses, 600 and above
  • 19-101 Introduction to Engineering and Public Policy
  • 19-211 Ethics and Policy Issues in Computing
  • 19-350 Research Methods & Statistics for Engineering and Public Policy Analysis
  • 19-402 Telecommunications, Technology Policy & Management
  • 19-403 Policies of Wireless Systems and the Internet
  • 19-411 Global Competitiveness: Firms, Nations and Technological Change
  • 19-484 Decision Tools for Engineering Design and Entrepreneurship
  • 33-100 Basic Experimental Physics
  • 33-115 Physics for Future Presidents
  • 33-124 Introduction to Astronomy
  • 33-232 Mathematical Methods for Physicists
  • 39-100 What is Engineering?
  • 39-200 Business for Engineers


Humanities and Arts

All candidates for the bachelor's degree must complete a minimum of 63 units offered by the College of Humanities & Social Sciences and/or the College of Fine Arts. The humanities and arts (or general education) courses for SCS students are to meet the distribution requirements found on the SCS Humanities and Arts page.



Required Minor

A sequence of courses prescribed by the requirements of the particular department. Completion of a second major (or double degree) also satisfies this requirement. If permitted by the minor or second major department, courses taken in satisfaction for the minor or second major may also count toward any category other than required courses in Computer Science. More information can be found on the minor requirement page.



Computing @ Carnegie Mellon

The following course is required of all students to familiarize them with the campus computing environment:

  • 99-10x Computing @ Carnegie Mellon


Free Electives

A free elective is any Carnegie Mellon course. However, a maximum of nine units of Physical Education and/or Military Science (ROTC) and/or Student-Led (StuCo) courses may be used toward fulfilling graduation requirements.



Maintained by Catharine Fichtner, CS Undergraduate Program Administrator.