2026-27 Edition

Computer Science, B.S.

The undergraduate Computer Science curriculum emphasizes the principles of computing that underpin our modern world, and provides a strong foundation to prepare students for the broad spectrum of careers in computing including within industry, academia, government, and non-profit organizations.

The Computer Science major is highly customizable, enabling students to explore the diverse modern computing landscape. The lower-division core requirements provide a solid foundation in programming methodologies, computer architecture, middle-level infrastructure, data structures, algorithms, and mathematical fundamentals of computing. The upper-division requirements include flexible core electives that expose the students to the breadth of areas within computer science, along with additional electives that allow students to pursue selected areas in greater depth. To ensure that the students build strong skills in design and implementation, the curriculum requires a minimum of two project-based courses.

For suggested upper-division courses within the different areas of Computer Science, refer to the 'Upper-Division Areas of Study' section. 

The department also offers a joint undergraduate degree in Computer Science and Engineering, in conjunction with The Henry Samueli School of Engineering; information is available in the Interdisciplinary Studies section of the Catalogue.

To learn more about the department, including research areas and latest news, visit the Computer Science department website.

Freshman Applicants: See the Undergraduate Admissions section.

Transfer Applicants:

Transfer applicants who satisfactorily complete course prerequisites will be given preference for admission. All applicants must complete the following required courses: one year of approved calculus, one year of object-oriented programing (python, java, C++), additional courses as specified by the major, and completion of lower-division writing. Students are encouraged to complete as many of the lower-division degree requirements as possible prior to transfer. Visit the UCI Office of Admissions website for information on transfer requirements for our major.

 

Requirements for the B.S. in Computer Science

All students must meet the University Requirements.
Major Requirements
Lower-division
A. Select one of the following series:
Introduction to Programming
and Programming with Software Libraries
and Intermediate Programming
or
Python Programming and Libraries (Accelerated)
and Intermediate Programming
B. Complete:
I&C SCI 45C Programming in C/C++ as a Second Language
I&C SCI 46 Data Structure Implementation and Analysis
I&C SCI 51 Introductory Computer Organization
I&C SCI 53 Principles in System Design
SWE 43 Introduction to Software Engineering
MATH 2A- 2B Single-Variable Calculus I
and Single-Variable Calculus II
I&C SCI 6B Boolean Logic and Discrete Structures
I&C SCI 6D Discrete Mathematics for Computer Science
I&C SCI 6N Computational Linear Algebra
or MATH 3A Introduction to Linear Algebra
STATS 67 Introduction to Probability and Statistics for Computer Science
C. Two courses approved for General Education category II except those offered by the School of Engineering, the School of Information and Computer Sciences, the Department of Economics, or the Department of Mathematics. University Studies courses can be used with the approval of the Computer Sciences Vice Chair for Undergraduate Studies.
Upper-division (17 courses)
Complete sections A-D. Courses used in one section may not apply to another, except CS 145 which may apply to sections B and D.
A. Core (2 courses)
COMPSCI 161 Design and Analysis of Algorithms
I&C SCI 139W Critical Writing on Information Technology
B. Flexible Core Requirement (4 courses)
Complete one course from at least four distinct focus areas (FA) listed below.
FA1: Vision and Graphics
COMPSCI 112 Computer Graphics
COMPSCI 116 Computational Photography and Vision
FA2: Information Management
COMPSCI 121 Information Retrieval
COMPSCI 122A Introduction to Data Management
FA3: Networks and Cybersecurity
COMPSCI 130 Introduction to Security and Privacy
COMPSCI 132 Computer Networks
COMPSCI 134 Computer and Network Security
FA4: Systems and Software
COMPSCI 141 Concepts in Programming Languages
COMPSCI 142A Compilers and Interpreters
COMPSCI 143A Principles of Operating Systems
FA5: Architecture and Embedded Systems
COMPSCI 145 Embedded Software
COMPSCI 151 Digital Logic Design
COMPSCI 152 Computer Architecture
FA6: Algorithms
COMPSCI 162 Formal Languages and Automata
COMPSCI 163 Graph Algorithms
COMPSCI 164 Computational Geometry
COMPSCI 167 Introduction to Applied Cryptography
FA7: Artificial Intelligence and ML
COMPSCI 171 Introduction to Artificial Intelligence
COMPSCI 178 Machine Learning and Data-Mining
COMPSCI 184A Artificial Intelligence in Biology and Medicine
C. Upper-division electives (9 courses):
Complete nine courses from the list below.
Requirements Analysis and Engineering
Software Testing, Analysis, and Quality Assurance
Project in Software System Design
Software Design: Applications
Software Design: Structure and Implementation
Internet Applications Engineering
Human Computer Interaction
User Interaction Software
Advanced Topics in User Interface Software
D. Project Courses (2 courses):
Complete two courses from the list below.
Projects in Advanced 3D Computer Graphics
Project in Computer Vision
Introduction to Virtual Reality
Project in Databases and Web Applications
Principles of Data Management
Beyond SQL Data Management
Next Generation Search Systems
Advanced Computer Networks
Project in Compilers and Interpreters
Project in Operating System Organization
Embedded Software
Internet of Things (IoT) Software and Systems
Computer Design Laboratory
Project in Algorithms and Data Structures
Project in Artificial Intelligence
Project in Computer Science
Project in Computer Science
Project in Bioinformatics
Project in Software System Design
Advanced Topics in User Interface Software
1

Students must complete and pass both COMPSCI 180A and COMPSCI 180B for course credit.

Computer Science is a broad field of study. The Computer Science degree curriculum encourages students to tailor their upper-division course work toward their specific areas of interest, or alternatively allows students to explore any number of areas. Areas of interest include: 

Algorithms, including theory of computation, graph and network algorithms, probabilistic algorithms, computational geometry, cryptography, and quantum computation.
Related courses: COMPSCI 162-COMPSCI 169
Complementary courses: COMPSCI 177, COMPSCI 179

Architecture and Embedded Systems, including hardware, digital logic design, computer architecture, embedded computing systems, and multitasking operating systems.
Related courses: COMPSCI 145-COMPSCI 154
Complementary courses: COMPSCI 131

Artificial Intelligence and Machine Learning, including human knowledge representation, building automated reasoning systems, developing intelligent search techniques and algorithms that adapt and learn from data, with applications to bioinformatics, and beyond.
Related courses: COMPSCI 171-COMPSCI 179
Complementary courses: COMPSCI 116, COMPSCI 121-COMPSCI 125, COMPSCI 169, COMPSCI 183, COMPSCI 184A-COMPSCI 189

Information Management, including information retrieval, database management, storage management, data-intensive computing, and next generation search systems.
Related courses: COMPSCI 121-COMPSCI 125, COMPSCI 178
Complementary courses: COMPSCI 177, COMPSCI 179

Networks and Cybersecurity, including Internet architecture, Internet applications, distributed systems, network security, computer security, and privacy.
Related courses: COMPSCI 130-COMPSCI 137
Complementary courses: COMPSCI 143A-COMPSCI 143B, COMPSCI 167

Systems and Software, including programming languages, compilers and interpreters, operating systems, and parallel and distributed computing.
Related courses: COMPSCI 131, COMPSCI 141-COMPSCI 143B
Complementary courses: COMPSCI 103, COMPSCI 146-COMPSCI 147

Visual Computing, including computer graphics, 3D graphics, image processing, image recognition, computational photography, computer vision, and virtual reality.
Related courses: COMPSCI 111-COMPSCI 114, COMPSCI 116-COMPSCI 118
Complementary courses: COMPSCI 115

Freshman
Fall Winter Spring
I&C SCI 31I&C SCI 32I&C SCI 33
MATH 2AMATH 2BSWE 43
WRITING 40WRITING 50I&C SCI 6B
 General Education IIIWRITING 60
Sophomore
Fall Winter Spring
I&C SCI 45CI&C SCI 46Flex Core Requirement
I&C SCI 51I&C SCI 6N or MATH 3AFlex Core Requirement
I&C SCI 6DGeneral Education IIISTATS 67
 General Education IV/VIIIGeneral Education III/VII
Junior
Fall Winter Spring
I&C SCI 53Flex Core RequirementComputer Science Elective
COMPSCI 161Flex Core RequirementComputer Science Elective
Science ElectiveI&C SCI 139WComputer Science Elective
 Science ElectiveGeneral Education VI
Senior
Fall Winter Spring
Computer Science ElectiveComputer Science ElectiveComputer Science Elective
Computer Science ElectiveComputer Science ElectiveComputer Science Elective
CS ProjectCS ProjectGeneral Education IV
General Education IV  

NOTES

1.  Students are advised that this sample program lists the minimum requirements; it is possible that students may have to take additional courses to prepare for required courses.

2.  The lower-division writing requirement must be completed by the end of the seventh quarter at UCI.

3.  This is only a sample plan. Course offerings may be moved due to unforeseen circumstances. It is strongly recommended that students meet with an academic advisor to create an academic plan tailored to meet their specific areas of interest.