Computer Science & Engineering Breadth Requirements
In the CSE MS program, students must complete a set of breadth requirements by taking a total of 15 credits from the following list of classes. Students in these programs must select one course from three different breadth categories for a total of three courses (15 credits). There are ten breadth categories listed below that students may choose from when completing their breadth requirements. Only the graduate courses appearing below have been approved to be on the breadth list. If the course you want to take does not appear below, it may still count as an elective course. A course may count only towards one breadth area.
By selecting the links embedded in each course title listed below, you can verify if the course is still offered, when it was last offered, and when it may be offered next. Please note that course offerings are subject to change.
NOTE: Computer Science and Computer Engineering courses have the prefixes CMPS and CMPE. Courses previously listed with CMPS and CMPE prefixes may now be listed with the prefixes CSE or ECE depending on which department currently offers the course. Courses listed in italics refer to course information before Fall 2019.
Please refer to your program's degree requirements in the UCSC General Catalog and contact your Graduate Student Advisor if you have any questions.
Computer Architecture and Networks
- CSE 222A: VLSI Digital System Design
- CSE226: Advanced Parallel Processing (CMPE220)
- CSE228A: Agile Hardware Design
- CMPE230: Computer Performance Evaluation
- CMPE250: Multimedia Systems
- CSE250A: Computer Networks (CMPE252A)
- CSE250B: Principles of Computer Communication (CMPE252B)
- CSE250C: High Speed Computer Networks (CMPE254)
- CSE257: Wireless and Mobile Networks (CMPE257)
- CMPE258: Unix Networking Internals
- CSE293: Advanced Topics in Computer Engineering
Computer Graphics/ Scientific Visualization
- CSE260: Computer Graphics (CMPS260)
- CSE261: Advanced Visualization (CMPS261)
- CSE262: Computer Animation (CMPS262)
- CSE263: Data Driven Discovery and Visualization (CMPS263)
- CMPE290B: Advanced Topics in Computer Graphics
Data Management
- CSE214: Principles of Database Systems (CMPS277)
- CSE215: Design and Implementation of Database Systems (CMPS278)
- CSE290H: Topics in Database Systems (CMPS290H)
- CMPS290M: Information Extraction (no longer offered)
- CSE272: Information Retrieval (TIM260)
- CSE243: Data Mining (TIM245)
- CSE249: Large-Scale Web Analytics and Machine Learning (TIM251)
Interactive Computing and Gaming
- CSE265: Human-Computer Interaction (CMPE231)
- CMPE233: Human Factors
- CMPM244: Artificial Intelligence in Games
- CMPM248: Interactive Narrative
- CMPM290J: Playable Media
Machine Learning / Artificial Intelligence
- CSE240: Artificial Intelligence (CMPS240)
- CSE241: Knowledge Engineering (CMPS241)
- CSE242: Machine Learning (CMPS242)
- CSE244A: Foundations of Deep Learning
- CSE245: Computational Models of Discourse and Dialogue (CMPS245)
- CSE249: Large-Scale Web Analytics and Machine Learning (TIM251)
- CSE290C: Advanced Topics in Machine Learning (CMPS290C)
- CSE290D: Neural Computation (CMPS290D)
- CSE290K: Advanced Topics in Natural Language Processing
Software Engineering and Programming Languages
- CSE226: Advanced Parallel Processing (CMPE220)
- CMPE276: Software Engineering
- CSE211: Compiler Design (CMPS204)
- CSE210B: Advanced Programming Languages (CMPS253)
- CSE212A: Software Engineering (CMPS279)
- CSE290E: Object-Oriented Programming Methodology (CMPS290E)
- CSE290G: Topics in Software Engineering (CMPS290G)
- CSE290Q: Topics in Programming Languages (CMPS290Q)
Statistics
- STAT203: Introduction of Probability Theory (AMS203)
- STAT204: Introduction To Statistical Data Analysis (AMS204)
- AMS205: Mathematical Statistics (no longer offered)
- STAT206: Applied Bayesian Statistics (AMS206)
- STAT207: Intermediate Bayesian Statistical Modeling (AMS207)
- STAT227: Statistical Learning and High Dimensional Data Analysis
- ECE256: Statistical Signal Processing (EE262)
- CSE277: Random Process Models in Engineering (TIM207)
Systems and Security
- AM250: Introduction to High Performance Computing (AMS250)
- CSE234: Understanding Cryptography (CMPE236)
- CSE253: Network Security (CMPE253)
- CSE231: Advanced Operating Systems (CMPS221)
- CSE233: Advanced Computer Security (CMPS223)
- CSE235: Cyber-Physical Systems Security
- CSE237: Storage Systems (CMPS229)
- CSE232: Distributed Systems (CMPS232)
- CSE290P: Data Privacy Via Machine Learning, And Back (CMPS290P)
- CSE290S: Advanced Topics in Computer Systems (CMPS290S)
- CSE290X: Cryptography and Computer Security (CMPS290X)
Theoretical Computer Science
- CSE204: Computational Models and Complexity (CMPS210)
- CSE202: Combinatorial Algorithms (CMPS211)
- CSE205: Logic in Computer Science (CMPS217)
- CSE208: Introduction to Information Theory (CMPS250)
- CSE209: Evolutionary Game Theory (CMPS272)
- CSE 216: Formal Methods
- CSE290A: Topics in Algorithms and Complexity Theory: Probabilistic Algorithms and Average Case Analysis (CMPS290A)
- CSE 209A: Modern Algorithmic Toolbox
Vision, Multimedia, and Image Processing
- CMPE250: Multimedia Systems
- CMPE263: Data Compression
- CSE264: Image Analysis and Computer Vision (CMPE264)
- CSE290J: Advanced Topics in Visual Computing (CMPE290V)
- ECE250: Digital Signal Processing (EE250)
- ECE256: Statistical Signal Processing (EE262)
- ECE237: Image Processing and Reconstruction (EE264)
Courses NOT in any breadth category
- CSE248: Foundations of Data Science (CMPS218)
- CSE290F: Applications of Combinatorics (CMPS290F)
- CMPS290I: Internet Technology and Policy (no longer offered)
- CSE290L: Topics in Crowdsourcing and Collaboration (CMPS290L)
- CSE290T: Topics in Computing for Society (CMPS290T)
- CSE279: Data Mining and Business Analytics in Knowledge Services (TIM209)
If a course is not listed here, you should assume it will not count as a breadth requirement.