Computer Science, B.S. (Engineering)

Program Code: CMPSC_BS

Program Description

Computer Science is the study of computation, including its principles and foundations, its efficient implementation, its analysis, and its practical use in a wide range of different application areas. Computer Science is far more than just programming and no other science or engineering discipline has had a greater impact in such diverse areas as commerce, communication, entertainment, finance, medicine, the social sciences, the physical sciences and the life sciences. Computer Science impacts our daily lives in a multitude of ways and computer scientists are instrumental in driving these changes. Computer Science transforms the way we look at and live in our world.

The mission of our undergraduate program is to prepare our students fora wide range of careers as computer scientists, software engineers, software developers, and related positions in the field of computing. Our curriculum covers fundamental programming techniques and skills, broad knowledge of computer hardware, operating systems, programming languages, the mathematical foundations of computing, and advanced topics in software design and application development. Recurrent themes in the program include security, algorithmic complexity, cooperating systems, performance evaluation, and software correctness. This curriculum provides students with the skills needed to design, develop, evaluate, and analyze software solutions to a wide spectrum of computational problems and prepares them to be leaders in the rapidly changing field of computing throughout their careers.

What is Computer Science?

Computer science is the study of computational methods, including their principles and foundations, their efficient implementation, their analyses, and their practical application in wide-ranging areas. It includes the foundations of software development, computational problem solving, the principles of system software, and the fundamental principles and limits of computing. It is much more than just programming. It includes the mathematical foundations that support analyzing, evaluating, and proving the correctness of computational solutions. It includes specializations such as artificial intelligence, machine learning, cybersecurity, data mining, high-performance computing, computer networks, computer graphics, computer vision, quantum computing, and others. It is continually evolving with the development of new and faster forms of computation and with the identification of new problems that require computational solutions.

You Might Like This Program If...

  • You are interested in creating solutions to challenging problems involving computers
  • You want to understand how to build and analyze complex software solutions
  • You want to understand how computer hardware and software work and how to make them better
  • You want to design software that impacts and improves people’s everyday lives

Entrance to Major

This program currently has administrative enrollment controls. Administrative Enrollment Controls are initiated when limitations of space, faculty, or other resources in a major prevent accommodating all students who request them. Students must follow the administrative enrollment controls that are in effect for the semester that they enter the university.

First-Year Students Entering Summer 2021, Fall 2021, Spring 2022

In order to be eligible for entrance to this major, students must satisfy the following requirements:

Students Who Entered Prior to Summer 2021

Students who entered the University from Summer 2018 through Spring 2021 should view the administrative enrollment controls in the appropriate Undergraduate Bulletin archive. Students who entered the University prior to the summer 2018 semester should view the administrative enrollment controls for the semester that they entered the university on the Academic Advising Portal.

Degree Requirements

For the Bachelor of Science degree in Computer Science, a minimum of 127 credits is required:

Requirement Credits
General Education 45
Requirements for the Major 106-108

24 of the 45 credits for General Education are included in the Requirements for the Major. This includes: 9 credits of GN courses; 6 credits of GQ courses; 9 credits of GWS courses.

General Education

Connecting career and curiosity, the General Education curriculum provides the opportunity for students to acquire transferable skills necessary to be successful in the future and to thrive while living in interconnected contexts. General Education aids students in developing intellectual curiosity, a strengthened ability to think, and a deeper sense of aesthetic appreciation. These are requirements for all baccalaureate students and are often partially incorporated into the requirements of a program. For additional information, see the General Education Requirements section of the Bulletin and consult your academic adviser.

The keystone symbol Keystone/General Education Course appears next to the title of any course that is designated as a General Education course. Program requirements may also satisfy General Education requirements and vary for each program.

Foundations (grade of C or better is required.)

  • Quantification (GQ): 6 credits
  • Writing and Speaking (GWS): 9 credits

Knowledge Domains

  • Arts (GA): 6 credits
  • Health and Wellness (GHW): 3 credits
  • Humanities (GH): 6 credits
  • Social and Behavioral Sciences (GS): 6 credits
  • Natural Sciences (GN): 9 credits

Integrative Studies (may also complete a Knowledge Domain requirement)

  • Inter-Domain or Approved Linked Courses: 6 credits

University Degree Requirements

First Year Engagement

All students enrolled in a college or the Division of Undergraduate Studies at University Park, and the World Campus are required to take 1 to 3 credits of the First-Year Seminar, as specified by their college First-Year Engagement Plan.

Other Penn State colleges and campuses may require the First-Year Seminar; colleges and campuses that do not require a First-Year Seminar provide students with a first-year engagement experience.

First-year baccalaureate students entering Penn State should consult their academic adviser for these requirements.

Cultures Requirement    

6 credits are required and may satisfy other requirements

  • United States Cultures: 3 credits
  • International Cultures: 3 credits

Writing Across the Curriculum

3 credits required from the college of graduation and likely prescribed as part of major requirements.

Total Minimum Credits

A minimum of 120 degree credits must be earned for a baccalaureate degree. The requirements for some programs may exceed 120 credits. Students should consult with their college or department adviser for information on specific credit requirements.

Quality of Work

Candidates must complete the degree requirements for their major and earn at least a 2.00 grade-point average for all courses completed within their degree program.

Limitations on Source and Time for Credit Acquisition

The college dean or campus chancellor and program faculty may require up to 24 credits of course work in the major to be taken at the location or in the college or program where the degree is earned. Credit used toward degree programs may need to be earned from a particular source or within time constraints (see Senate Policy 83-80). For more information, check the Suggested Academic Plan for your intended program.

Requirements for the Major

To graduate, a student enrolled in the major must earn a grade of C or better in each course designated by the major as a C-required course, as specified by Senate Policy 82-44.

Prescribed Courses
CMPSC 464Introduction to the Theory of Computation3
MATH 220Matrices Keystone/General Education Course2-3
MATH 230Calculus and Vector Analysis4
Prescribed Courses: Require a grade of C or better
CMPEN 331Computer Organization And Design3
CMPSC 221Object Oriented Programming with Web-Based Applications3
CMPSC 311Introduction to Systems Programming3
CMPSC 360Discrete Mathematics for Computer Science3
CMPSC 461Programming Language Concepts3
CMPSC 465Data Structures and Algorithms3
CMPSC 473Operating Systems Design & Construction3
ENGL 202CEffective Writing: Technical Writing Keystone/General Education Course3
MATH 140Calculus With Analytic Geometry I Keystone/General Education Course4
MATH 141Calculus with Analytic Geometry II Keystone/General Education Course4
PHYS 211General Physics: Mechanics Keystone/General Education Course4
PHYS 212General Physics: Electricity and Magnetism Keystone/General Education Course4
Additional Courses
Select 1 credit of First-Year Seminar1
Select one of the following:3
Elementary Probability
Introduction to Probability Theory
Introduction to Probability and Stochastic Processes for Engineering
Select 6 credits from the following:6
Communication Networks
Introduction to Computer Architecture
Fundamentals of Computer Vision
Artificial Intelligence
Introduction to Computer and Network Security
Secure Programming
Concurrent Scientific Programming
Numerical Computations
Introduction to Numerical Analysis I
Introduction to Numerical Analysis II
Fundamentals of Computer Graphics
Factorization and Primality Testing
Introduction to Compiler Construction
Applications Programming
Introduction to Neural Networks
Select 3 credits from any CMPEN or CMPSC course numbered 400-4893
CMPSC 431WDatabase Management Systems3
or CMPSC 483W Software Design Methods
STAT/MATH 319Elementary Mathematical Statistics3
or STAT/MATH 415 Introduction to Mathematical Statistics
Additional Courses: Require a grade of C or better:
CMPSC 121Introduction to Programming Techniques Keystone/General Education Course3
or CMPSC 131 Programming and Computation I: Fundamentals
CMPSC 122Intermediate Programming3
or CMPSC 132 Programming and Computation II: Data Structures
CMPEN 270Digital Design: Theory and Practice4
or CMPEN 271
Introduction to Digital Systems
and Digital Design Laboratory
ENGL 15Rhetoric and Composition Keystone/General Education Course3
or ENGL 137H Rhetoric and Civic Life I Keystone/General Education Course
ENGL 138TRhetoric and Civic Life II Keystone/General Education Course3
or CAS 100A Effective Speech Keystone/General Education Course
or CAS 100B Effective Speech Keystone/General Education Course
Supporting Courses and Related Areas
Select 2-3 credits from the following:2-3
General Physics: Fluids and Thermal Physics Keystone/General Education Course
General Physics: Wave Motion and Quantum Physics Keystone/General Education Course
3 credits from the approved list of natural sciences courses
Select 0-4 credits in a foreign language (second-semester proficiency)0-4
Select 10-14 credits from department list. Students may apply up to 3 credits of ROTC as department list credits and 3 credits of ROTC as GHW credits.10-14
Select 6 credits in non-CMPEN or CMPSC courses numbered 400-489 in consultation with adviser6

Integrated B.S. in Computer Science and M.I.A. in International Affairs

Requirements for the Integrated B.S. in Computer Science and M.I.A. in International Affairs can be found in the Graduate Bulletin.

Program Educational Objectives

In particular, within a few years after graduation, graduates in computer science should be able to:

  1. Apply appropriate theory, practices, and tools to the specification, design, implementation, maintenance and evaluation of both large and small software systems.
  2. Work in teams to design, implement, and/or maintain components of computer software systems.
  3. Stay current through professional conferences, certificate programs, post-baccalaureate degree programs, or other professional educational activities.

Student Outcomes

Student outcomes describe what students are expected to know and be able to do by the time of graduation. The Computer Science program is designed to enable students to:

  1. Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
  2. Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
  3. Communicate effectively in a variety of professional contexts.
  4. Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
  5. Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
  6. Apply computer science theory and software development fundamentals to produce computing-based solutions.

Academic Advising

The objectives of the university’s academic advising program are to help advisees identify and achieve their academic goals, to promote their intellectual discovery, and to encourage students to take advantage of both in-and out-of class educational opportunities in order that they become self-directed learners and decision makers.

Both advisers and advisees share responsibility for making the advising relationship succeed. By encouraging their advisees to become engaged in their education, to meet their educational goals, and to develop the habit of learning, advisers assume a significant educational role. The advisee's unit of enrollment will provide each advisee with a primary academic adviser, the information needed to plan the chosen program of study, and referrals to other specialized resources.


University Park

Alisha Simon
Academic Adviser
W360 Westgate Building
University Park, PA 16802

Suggested Academic Plan

The suggested academic plan(s) listed on this page are the plan(s) that are in effect during the 2021-22 academic year. To access previous years' suggested academic plans, please visit the archive to view the appropriate Undergraduate Bulletin edition (Note: the archive only contain suggested academic plans beginning with the 2018-19 edition of the Undergraduate Bulletin).

Computer Science, B.S. at University Park Campus

The course series listed below provides only one of the many possible ways to move through this curriculum. The University may make changes in policies, procedures, educational offerings, and requirements at any time. This plan should be used in conjunction with your degree audit (accessible in LionPATH as either an Academic Requirements or What If report). Please consult with a Penn State academic adviser on a regular basis to develop and refine an academic plan that is appropriate for you.

If you are starting at a campus other than the one this plan is ending at, please refer to:

First Year
CMPSC 121 or 131*‡#3CMPSC 122 or 132*#3
MATH 140 (GQ)*‡#†4MATH 141 (GQ)*‡#†4
ENGL 15 (GWS)3PHYS 211 (GN, PHYSICS 211L & PHYSICS 211R)*#†4
General Education Course3General Education Course3
General Education Course3First Year Seminar1
 16 15
Second Year
CMPSC 221*3CMPSC 360*3
MATH 2304CMPEN 270*4
MATH 2202-3CMPSC 311*3
PHYS 212 (GN, PHYSICS 212L & PHYSICS 211R)*†4Natural Science Elective (GN, See College Note below for options that DO NOT count)2-3
CAS 100A or 100B (GWS)‡†3General Education Course3
 16-17 15-16
Third Year
CMPSC 465*3CMPSC 4643
CMPEN 331*3CMPSC 473*3
STAT 3183STAT 3193
CMPSC 461*3ENGL 202C (GWS)‡†3
Foreign Language4General Education Course3
 16 15
Fourth Year
CMPSC 483W or 431W3CMPSC/CMPEN 400-level23
CMPSC Elective13CMPSC Elective13
Supporting Course3Supporting Course3
Department List (General Elective)3General Education Course3
Department List (General Elective)4Department List (General Elective)3
General Education Course (GHW)1.5General Education Course (GHW)1.5
 17.5 16.5
Total Credits 127-129

University Requirements and General Education Notes:

US and IL are abbreviations used to designate courses that satisfy University Requirements (United States and International Cultures).

W, M, X, and Y are the suffixes at the end of a course number used to designate courses that satisfy University Writing Across the Curriculum requirement.

GWS, GQ, GHW, GN, GA, GH, and GS are abbreviations used to identify General Education program courses. General Education includes Foundations (GWS and GQ) and Knowledge Domains (GHW, GN, GA, GH, GS, and Integrative Studies). Foundations courses (GWS and GQ) require a grade of ‘C’ or better.

Integrative Studies courses are required for the General Education program. N is the suffix at the end of a course number used to designate an Inter-Domain course and Z is the suffix at the end of a course number used to designate a Linked course.

All incoming Schreyer Honors College first-year students at University Park will take ENGL 137H/CAS 137H in the fall semester and ENGL 138T/CAS 138T in the spring semester. These courses carry the GWS designation and replace both ENGL 30H and CAS 100. Each course is 3 credits.

College Notes:

  • NATURAL SCIENCES ELECTIVE: Choose any GN-designated course EXCEPT the following: ASTRO 1, 7N, 10, 11, 120, or 140; all below CHEM 110 (except 3 credits of CHEM 106); all below PHYS 211; PHYS 250 or 251; all BI SC; and GEOSC 20.
  • CMPSC/CMPEN 4XX: Select any 400-489 CMPSC or CMPEN course offered at University Park.
  • Computer Science Elective: Select from department list. Restrictions may apply. Computer Science Electives are NOT offered every semester or even every year. Contact the department for information on which classes are scheduled to be offered during a given semester.
  • Department List Elective: Select from department list. Restrictions may apply. Students who complete the ROTC Program may substitute 3 ROTC credits for a Department List Elective. Students who complete the Cooperative Education Program may substitute 3 co-op credits for a Department List Elective.
  • Health and Physical Activity: Students who complete the ROTC Program may substitute 3 ROTC credits for the GHW requirement and 3 ROTC credits for a Department List Elective.
  • Supporting Course: Select from department list. Restrictions may apply.

Career Paths

Computer science has had major impacts in such diverse areas as commerce, communication, engineering, entertainment, finance, health sciences, social sciences, physical sciences, and life sciences. Computer scientists do far more than just construct software. They apply their skills and knowledge to solve challenging problems using sound computational methods. They work collaboratively in teams to build complex systems with many integrated parts. They research, study, and develop new technologies, new applications of computing, and new ways to compute.


Computer science graduates typically find positions as software engineers and software developers in major companies like Google, Apple, Microsoft, IBM, Facebook, and Intel. Graduates are also highly recruited by major companies in the areas of finance, health care, aerospace, and defense. Most graduates will find themselves a part of a team of software developers and after a few years possibly leading a software team. With the rapid changes and advances in the field of computing, graduates must continually keep up with the latest technology as their careers adapt and evolve to meet the new opportunities and challenges of computing.


Opportunities for Graduate Studies

Graduates of this program can pursue graduate studies in computer science and related disciplines, concentrating in specialized areas such as computer security, artificial intelligence, machine learning, data sciences, computer networks, computer vision, bioinformatics, and high-performance computing. A master’s degree allows one to specialize beyond the broad foundations offered by a bachelor’s degree. A doctoral degree prepares one for a career in research and academia.


Professional Resources


University Park

W209 Westgate Building
University Park, PA 16802