At which campus can I study this program?
Any Penn State Campus
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 2020, Fall 2020, Spring 2021
In order to be eligible for entrance to this major, students must satisfy the following requirements:
- 29-55 graded Penn State credits (excludes transfer and AP credits)
- completed with a grade of C or better: CMPSC 121 or CMPSC 131, CMPSC 122 or CMPSC 132, MATH 140, MATH 141, PHYS 211
- earned a minimum cumulative grade-point average (GPA) of 3.10
Students Who Entered Prior to Summer 2020
Students who entered the University from Summer 2018 through Spring 2020 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.
For the Bachelor of Science degree in Computer Science, a minimum of 127 credits is required:
|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.
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 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
- 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.
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.
|CMPSC 464||Introduction to the Theory of Computation||3|
|MATH 230||Calculus and Vector Analysis||4|
|Prescribed Courses: Require a grade of C or better|
|CMPEN 331||Computer Organization And Design||3|
|CMPSC 221||Object Oriented Programming with Web-Based Applications||3|
|CMPSC 311||Introduction to Systems Programming||3|
|CMPSC 360||Discrete Mathematics for Computer Science||3|
|CMPSC 461||Programming Language Concepts||3|
|CMPSC 465||Data Structures and Algorithms||3|
|CMPSC 473||Operating Systems Design & Construction||3|
|ENGL 202C||Effective Writing: Technical Writing||3|
|MATH 140||Calculus With Analytic Geometry I||4|
|MATH 141||Calculus with Analytic Geometry II||4|
|PHYS 211||General Physics: Mechanics||4|
|PHYS 212||General Physics: Electricity and Magnetism||4|
|Select 1 credit of First-Year Seminar||1|
|Select one of the following:||3|
|Introduction to Probability Theory|
|Introduction to Probability and Stochastic Processes for Engineering|
|Select 6 credits from the following:||6|
|Introduction to Computer Architecture|
|Fundamentals of Computer Vision|
|Introduction to Computer and Network Security|
|Concurrent Scientific Programming|
|Introduction to Numerical Analysis I|
|Introduction to Numerical Analysis II|
|Fundamentals of Computer Graphics|
|Factorization and Primality Testing|
|Introduction to Compiler Construction|
|Introduction to Neural Networks|
|Select 3 credits from any CMPEN or CMPSC course numbered 400-489||3|
|CMPSC 431W||Database Management Systems||3|
|or CMPSC 483W||Software Design Methods|
|STAT/MATH 319||Applied Statistics in Science||3|
|or STAT/MATH 415||Introduction to Mathematical Statistics|
|Additional Courses: Require a grade of C or better:|
|CMPSC 121||Introduction to Programming Techniques||3|
|or CMPSC 131||Programming and Computation I: Fundamentals|
|CMPSC 122||Intermediate Programming||3|
|or CMPSC 132||Programming and Computation II: Data Structures|
|CMPEN 270||Digital Design: Theory and Practice||4|
|or CMPEN 271|
& CMPEN 275
| Introduction to Digital Systems|
and Digital Design Laboratory
|ENGL 15||Rhetoric and Composition||3|
|or ENGL 137H||Rhetoric and Civic Life I|
|ENGL 138T||Rhetoric and Civic Life II||3|
|or CAS 100A||Effective Speech|
|or CAS 100B||Effective Speech|
|Supporting Courses and Related Areas|
|Select 2-3 credits from the following:||2-3|
|General Physics: Fluids and Thermal Physics|
|General Physics: Wave Motion and Quantum Physics|
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 adviser||6|
Program Educational Objectives
In particular, within a few years after graduation, graduates in computer science should be able to:
- Apply appropriate theory, practices, and tools to the specification, design, implementation, maintenance and evaluation of both large and small software systems.
- Work in teams to design, implement, and/or maintain components of computer software systems.
- Stay current through professional conferences, certificate programs, post-baccalaureate degree programs, or other professional educational activities.
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:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
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.
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 2020-21 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).
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: http://advising.engr.psu.edu/degree-requirements/academic-plans-by-major.aspx
|CMPSC 121 or 131*‡#||3||CMPSC 122 or 132*#||3|
|MATH 140 (GQ)*‡#†||4||MATH 141 (GQ)*‡#†||4|
|ENGL 15 (GWS)‡||3||PHYS 211 (GN, PHYSICS 211L & PHYSICS 211R)*#†||4|
|General Education Course||3||General Education Course||3|
|General Education Course||3||First Year Seminar||1|
|CMPSC 221*||3||CMPSC 360*||3|
|MATH 230*||4||CMPEN 270*||4|
|MATH 220||2-3||CMPSC 311*||3|
|PHYS 212 (GN, PHYSICS 212L & PHYSICS 211R)*†||4||Natural Science Elective (GN, See College Note below for options that DO NOT count)||2-3|
|CAS 100A or 100B (GWS)‡†||3||General Education Course||3|
|CMPSC 465*||3||CMPSC 464||3|
|CMPEN 331*||3||CMPSC 473*||3|
|STAT 318||3||STAT 319||3|
|CMPSC 461*||3||ENGL 202C (GWS)‡†||3|
|Foreign Language||4||General Education Course||3|
|CMPSC 483W or 431W||3||CMPSC/CMPEN 400-level1||3|
|CMPSC Elective1||3||CMPSC Elective1||3|
|Supporting Course||3||Supporting Course||3|
|Department List (General Elective)||3||General Education Course||3|
|Department List (General Elective)||4||Department List (General Elective)||3|
|General Education Course (GHW)||1.5||General Education Course (GHW)||1.5|
|Total Credits 127-129|
Course requires a grade of C or better for the major
Course requires a grade of C or better for General Education
Course is an Entrance to Major requirement
Course satisfies General Education and degree requirement
Select 3 credits from any 400-489 CMPSC or CMPEN course that does not duplicate material already taken or required. No CMPSC/CMPEN 494H or CMPSC/CMPEN 496 may be substituted. CMPSC/CMPEN 497 must be petitioned prior to taking the course.
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/CAS 137 in the fall semester and ENGL/CAS 138 in the spring semester. These courses carry the GWS designation and replace both ENGL 30 and CAS 100. Each course is 3 credits.
- 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.
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.