Computer Science, BAS

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.


The degree and major requirements displayed are intended as a guide for students entering in the Fall of 2026 and later. Students should consult with their academic program regarding final certifications and requirements for graduation.


Curriculum 

Computer Science (ASCS) Major Requirements

37 course units are required.

Engineering
CIS 1100Introduction to Computer Programming1
Or CIS Elective 1
CIS 1200Programming Languages and Techniques I1
CIS 1210Programming Languages and Techniques II1
CIS 2400Introduction to Computer Systems1
CIS 2620Automata, Computability, and Complexity1
CIS 3200Introduction to Algorithms1
CIS Electives 12
CIS Project Electives2
Software Design/Engineering
Introduction to Human Computer Interaction
Embedded Software for Life-Critical Applications
Operating Systems Design and Implementation
Database and Information Systems
Compilers and Interpreters
Internet and Web Systems
Interactive Computer Graphics
Computer Organization and Design
Software Systems
Networked Systems
Scalable and Cloud Computing
SEAS Engineering (EUNG)2
CIS 4980Senior Capstone Project1
Math and Natural Science
MATH 1400Calculus, Part I1
MATH 1410Calculus, Part II1
or MATH 1610 Calculus for the Mathematical Sciences
CIS 1600Mathematical Foundations of Computer Science1
Select two of the following Natural Sciences:2
Principles of Physics I (without laboratory)
Principles of Physics II (without laboratory)
Chemistry Advanced Placement/International Baccalaureate Credit (Engineering Students Only)
General Chemistry I
Honors Chemistry I
Introduction to Biology A
Introduction to Biology - The Molecular Biology of Life
SEAS Math (EUMA) or SEAS Natural Science (EUNS)3
Technical Electives
Select 8 course units, with departmental approval 2,38
General Electives 4
Select 4 Social Science or Humanities courses4
Select 2 Social Science or Humanities or Technology in Business & Society courses2
EAS 2030Engineering Ethics1
or CIS 4230 Ethical Algorithm Design
or CIS 5230 Ethical Algorithm Design
or LAWM 5060 ML: Technology Law
Free Elective 5
Select 1 course unit of free elective (approval required)1
Total Course Units37
1

A CIS Elective is a CIS or NETS engineering course numbered 1000 or above (Note that not all CIS/NETS courses are engineering courses, please see the SEAS Undergraduate Handbook.) At most one CU of 1000-level courses may be used as a CIS Elective.

2

 OPTION 1: Any approved minor, or sequence of approved courses. Remaining must be SEAS Math (EUMA), SEAS Natural Science (EUNS) or SEAS Engineering (EUNG).
(MINORS ARE STRONGLY ENCOURAGED)

3

OPTION 2: Any 8 CU's from SEAS Math (EUMA), SEAS Natural Science (EUNS) or SEAS Engineering (EUNG)

4

Must include a Writing Seminar from the list below:
WRIT 0020 (H), WRIT 0021 (SS), WRIT 0100 (H),WRIT 0110 (H), WRIT 0120 (H), WRIT 0130 (H), WRIT 0140 (H), WRIT 0150 (H), WRIT 0160 (SS), WRIT 0170 (SS), WRIT 0220 (TBS), WRIT 0230 (H), WRIT 0250 (H), WRIT 0260 (H), WRIT 0270 (H), WRIT 0280 (SS),WRIT 0300 (H), WRIT 0310 (TBS), WRIT 0320 (-), WRIT 0330 (H), WRIT 0340 (SS), WRIT 0370 (SS), WRIT 0380 (SS), WRIT 0390 (H), WRIT 0400 (TBS), WRIT 0410 (H), WRIT 0480 (SS), WRIT 0490 (H), WRIT 0500 (SS), WRIT 0550 (SS), WRIT 0570 (H), WRIT 0580 (H), WRIT 0590 (SS),WRIT 0650 (TBS), WRIT 0670 (H), WRIT 0680 (H), WRIT 0730 (H), WRIT 0740 (TBS)

5

Penn Engineering undergraduates may not use courses on this list toward their degree:

Plan of Study Grid
First Year
FallCourse Units
CIS 1100 Introduction to Computer Programming 1
MATH 1400 Calculus, Part I 1
PHYS 0140 Principles of Physics I (without laboratory) 1
WRIT course 1
 Course Units4.00
Spring
CIS 1200 Programming Languages and Techniques I 1
CIS 1600 Mathematical Foundations of Computer Science 1
MATH 1410 Calculus, Part II 1
PHYS 0141 Principles of Physics II (without laboratory) 1
 Course Units4.00
Second Year
Fall
CIS 1210 Programming Languages and Techniques II 1
CIS 2620 Automata, Computability, and Complexity 1
Engineering Elective 1
Math/Natural Science 1
General Elective 1
 Course Units5.00
Spring
CIS 2400 Introduction to Computer Systems 1
CIS 3200 Introduction to Algorithms 1
Engineering Elective 1
Math/Natural Science 1
General Elective 1
 Course Units5.00
Third Year
Fall
Project Elective 1
CIS Elective 1
Math/Natural Science 1
Technical Elective 1
General Elective 1
 Course Units5.00
Spring
Project Elective 1
CIS Elective 1
Engineering Ethics 1
Technical Elective 1
General Elective 1
 Course Units5.00
Fourth Year
Fall
CIS 4980 Senior Capstone Project 1
Technical Electives 3
General Elective 1
 Course Units5.00
Spring
Technical Electives 3
Free Elective 1
 Course Units4.00
 Total Course Units37.00