Computer Engineering, BSE
Computer Engineering is the discipline that designs and engineers computer systems from digital circuits, through compilers and runtime systems, to networking and world-wide distributed systems. As an engineering discipline, the computer engineer must appreciate the physical aspects of computations (energy, delay, area, reliability, costs) and be able to expertly navigate the multidimensional tradeoff space associated with implementing computations. Since today’s high performance programmable computing devices mean enormous computational tasks can be performed entirely in software, the computer engineer must manage computational capabilities and functionalities which migrate between hardware and software driven by advancing technology and these engineering tradeoffs. Recent advances in manufacturing make it economical to construct systems containing billions of components and millions of lines of code, and these systems are increasingly invaluable in life-critical and real-time systems; computer engineering is the discipline that seeks to understand how to design and manage systems of this complexity while providing adequate guarantees of safety and trustworthiness for such systems.
For more information: https://www.seas.upenn.edu/prospective-students/undergrad/majors/computer-engineering/
Computer Engineering (CMPE) Major Requirements
37 course units are required.
Code | Title | Course Units |
---|---|---|
Engineering | ||
CIS 1200 | Programming Languages and Techniques I | 1 |
CIS 1210 | Programming Languages and Techniques II | 1 |
ESE 1500 | Digital Audio Basics | 1 |
ESE 2150 | Electrical Circuits and Systems | 1.5 |
CIS 2400 | Introduction to Computer Systems | 1 |
ESE 3500 | Embedded Systems/Microcontroller Laboratory | 1.5 |
CIS 3500 | Software Design/Engineering | 1 |
or CIS 4600 | Interactive Computer Graphics | |
or CIS 5600 | Interactive Computer Graphics | |
ESE 3700 | Circuit-Level Modeling, Design, and Optimization for Digital Systems | 1 |
CIS 4480 | Operating Systems Design and Implementation | 1 |
or CIS 5480 | Operating Systems Design and Implementation | |
CIS 4410 | Embedded Software for Life-Critical Applications | 1 |
or CIS 5410 | Embedded Software for Life-Critical Applications | |
or CIS 5470 | Software Analysis | |
CIS 4710 | Computer Organization and Design | 1 |
or CIS 5710 | Computer Organization and Design | |
Networking | ||
ESE 4070 | Introduction to Networks and Protocols | 1 |
or ESE 5070 | Introduction to Networks and Protocols | |
or CIS 5530 | Networked Systems | |
Concurrency Lab | ||
CIS 4550 | Internet and Web Systems | 1 |
or CIS 5550 | Internet and Web Systems | |
or CIS 5050 | Software Systems | |
or ESE 5320 | System-on-a-Chip Architecture | |
or CIS 5650 | GPU Programming and Architecture | |
Senior Design | ||
CIS 4000 | Senior Project | 1 |
or ESE 4500 | Senior Design Project I - EE and SSE | |
CIS 4010 | Senior Project | 1 |
or ESE 4510 | Senior Design Project II - EE and SSE | |
Math and Natural Science | ||
MATH 1400 | Calculus, Part I | 1 |
MATH 1410 | Calculus, Part II | 1 |
or MATH 1610 | Honors Calculus | |
MATH 2400 | Calculus, Part III | 1 |
or MATH 2600 | Honors Calculus, Part II | |
ESE 3010 | Engineering Probability | 1 |
or CIS 2610 | Discrete Probability, Stochastic Processes, and Statistical Inference | |
or STAT 4300 | Probability | |
CIS 1600 | Mathematical Foundations of Computer Science | 1 |
MEAM 1100 | Introduction to Mechanics | 1 |
or PHYS 0140 | Principles of Physics I (without laboratory) | |
or PHYS 0150 | Principles of Physics I: Mechanics and Wave Motion | |
or PHYS 0170 | Honors Physics I: Mechanics and Wave Motion | |
ESE 1120 | Engineering Electromagnetics (students passing the ESE E&M review module may substitute an ESE approved E&M course) | 1.5 |
CHEM 1012 | General Chemistry I | 1 |
or EAS 0091 | Chemistry Advanced Placement/International Baccalaureate Credit (Engineering Students Only) | |
or BIOL 1101 | Introduction to Biology A | |
or BIOL 1121 | Introduction to Biology - The Molecular Biology of Life | |
or PHYS 1240 | Principles of Physics IV: Modern Physics (without laboratory) | |
Math or Natural Science Elective | 1 | |
Natural Science Lab (if applicable) 1 | .5 | |
Professional Electives 2 | ||
Math, Natural Science, or Engineering Electives | 3 | |
Select one of the following: | 1 | |
Engineering Economics | ||
Engineering Entrepreneurship I | ||
Foundations of Leadership | ||
Management of Technology | ||
Scaling Operations in Technology Ventures: Linking Strategy and Execution | ||
Math, Science, or Engineering Elective | ||
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 | |
Total Course Units | 37 |
- 1
If BIOL 1121, CHEM 1012, EAS 0091, MEAM 1100 or PHYS 0140 are taken, choose one natural science lab from the list: BIOL 1124, CHEM 1101, MEAM 1470, PHYS 0050 or another department approved Natural Science lab
- 2
At most, two freshman-level Engineering courses may be used as a Professional Elective.
- 3
Must include a Writing Seminar (a list of approved Writing Seminars can be found in the SEAS Undergraduate Handbook)
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.