Majors & Minors
Four disciplines. One department. Find the program that fits your path — and explore what you'll study along the way.
Major Computer Science
Computer Science focuses on computational theory and the rich interplay between computer hardware and software. Students use scientific and design-centric approaches to solve computational problems and to create and evaluate realistic computer and computer-based systems.
Learning Outcomes
- Demonstrate and be able to communicate the knowledge of data types, algorithms, and mathematical principles behind discrete objects.
- Use scientific and theoretical methods to design, implement, evaluate, deploy, improve, maintain, and document software and hardware systems.
- Apply and articulate key concepts from a specialization area where the interconnection between software and hardware is important and evident.
- Able to communicate technical details of the produced software and hardware artifacts both in writing and orally.
- Students who major in Computer Science may not double-major or minor in Data Science, Informatics, or Software Engineering.
- Math 205 may substitute for CMPSC 102.
- Math 320, 330, 345, or 370 may substitute for one required specialization course.
- Students planning to attend graduate school in Computer Science are strongly encouraged to take Math 151 early.
Foundation
Take all three courses (12 credits)
Core
Take all four courses (16 credits)
Electives
Take two of the following (8 credits)
Project
Take all three (12 credits)
Minor Computer Science
- Students who minor in Computer Science may not major in Data Science, Informatics, or Software Engineering.
- Math 205 may substitute for CMPSC 102.
Required
Take both courses (8 credits)
Core Electives
Take two of the following (8 credits)
Upper Electives
Take two of the following (8 credits)