Computer Science, BSE
Computer scientists and engineers have revolutionized society and created the computer and telecommunications industries that are so important to human life and the world's economy. As a result of this revolution, expertise in computer science is essential in many new areas, including computer and network service and consulting companies, financial institutions, health industries, natural science labs and medical research labs, and other contexts where intensive manipulation of information is important. As a result, opportunities for computer scientists and engineers have expanded greatly, both in specialized fields as well as in numerous dual-career opportunities in which computer expertise is combined with advanced degrees in business, communication, engineering, law, medicine, and science.
For more information: https://www.seas.upenn.edu/prospective-students/undergrad/majors/computer-science/
Computer Science (CSCI) Major Requirements
37 course units are required.
Code | Title | Course Units |
---|---|---|
Engineering | ||
CIS 1100 | Introduction to Computer Programming | 1 |
CIS 1200 | Programming Languages and Techniques I | 1 |
CIS 1210 | Programming Languages and Techniques II | 1 |
CIS 2400 | Introduction to Computer Systems | 1 |
CIS 2620 | Automata, Computability, and Complexity | 1 |
CIS 3200 | Introduction to Algorithms | 1 |
CIS 4480 | Operating Systems Design and Implementation | 1 |
or CIS 5480 | Operating Systems Design and Implementation | |
CIS 4710 | Computer Organization and Design | 1 |
or CIS 5710 | Computer Organization and Design | |
CIS Elective *,1 | 4 | |
CIS 4000 | Senior Project | 1 |
or CIS 4100 | CIS Senior Thesis | |
CIS 4010 | Senior Project | 1 |
or CIS 4110 | CIS Senior Thesis | |
Math and Natural Science | ||
MATH 1400 | Calculus, Part I | 1 |
MATH 1410 | Calculus, Part II | 1 |
or MATH 1610 | Honors Calculus | |
CIS 1600 | Mathematical Foundations of Computer Science | 1 |
CIS 2610 | Discrete Probability, Stochastic Processes, and Statistical Inference | 1 |
or ESE 3010 | Engineering Probability | |
or STAT 4300 | Probability | |
MATH 2400 | Calculus, Part III | 1 |
or MATH 2600 | Honors Calculus, Part II | |
or MATH 3120 | Linear Algebra | |
or MATH 3130 | Computational Linear Algebra | |
or MATH 3140 | Advanced Linear Algebra | |
MEAM 1100 & MEAM 1470 | Introduction to Mechanics and Introduction to Mechanics Lab | 1.5 |
or PHYS 0150 | Principles of Physics I: Mechanics and Wave Motion | |
or PHYS 0170 | Honors Physics I: Mechanics and Wave Motion | |
PHYS 0151 | Principles of Physics II: Electromagnetism and Radiation | 1.5 |
or PHYS 0171 | Honors Physics II: Electromagnetism and Radiation | |
or ESE 1120 | Engineering Electromagnetics | |
Math/Natural Science Elective | 1 | |
Technical Electives *,2 | ||
Restricted or Unrestricted Technical Electives | 1 | |
Unrestricted Technical Electives | 5 | |
General Electives 3 | ||
EAS 2030 | Engineering Ethics | 1 |
or CIS 4230 | Ethical Algorithm Design | |
or CIS 5230 | Ethical Algorithm Design | |
or LAWM 5060 | ML: Technology Law | |
Select 4 Social Science or Humanities courses | 4 | |
Select 2 Social Science, Humanities or Technology in Business & Society courses | 2 | |
Free Elective | ||
Select 1 course unit of free electives | 1 | |
Total Course Units | 37 |
- *
CIS and Technical Electives must include a course from each of the following lists:
- Networking: NETS 1500, NETS 2120, CIS 4510, CIS 5510, CIS 4550, CIS 5550, CIS 5050, CIS 5530
- Databases: CIS 4500, CIS 5500, CIS 4550, CIS 5550, CIS 2450, CIS 5450
- Distributed Systems: NETS 2120, CIS 4410, CIS 5410, CIS 4500, CIS 5500, CIS 5050, CIS 2450, CIS 5450
- Machine Learning/AI: CIS 4190, CIS 5190, CIS 4210, CIS 5210, CIS 5200, CIS 2450, CIS 5450, CIS 6200
- Project: NETS 2120, CIS 3410, CIS 3500, CIS 4120, CIS 5120, CIS 4410, CIS 5410, CIS 4500, CIS 5500, CIS 4550, CIS 5550, CIS 4600, CIS 5600, CIS 5050, CIS 5530, ESE 3500
The same course can count towards multiple lists, e.g., NETS 2120 and CIS 5450 together satisfy all five lists.
- 1
A CIS Elective is a CIS or NETS engineering course at the 1000 level or above, or ESE 3500 Embedded Systems/Microcontroller Laboratory (NOTE: not all CIS/NETS courses are engineering courses; please see the SEAS Undergraduate Handbook. At most, one CU of 1000-level coursework may be used as a CIS Elective.
- 2
All Technical Electives must be from the list of approved courses.
- 3
Must include a Writing Seminar (a list of approved Writing Seminars can be found in the SEAS Undergraduate Handbook)
Concentrations
Students may select one of seven concentrations:
- Artificial Intelligence (4 CU)
- Cognitive Science (5 CU)
- Computational Biology (6 CU)
- Computer Vision (4 CU)
- Data Science (4 CU)
- Software Foundations (4 CU)
- Systems (5 CU)
The degree and major requirements displayed are intended as a guide for students entering in the Fall of 2024 and later. Students should consult with their academic program regarding final certifications and requirements for graduation.