Computer Science, M.S.
Computer Science encompasses both theoretical and practical aspects of design, analysis, and implementation of computer systems, as well as applications of computing to numerous other fields. Core research areas include: (1) artificial intelligence and machine learning, (2) bioinformatics, (3) computer architecture, (4) embedded systems, (5) graphics and computer vision, (6) database systems and information management, (7) multimedia and gaming, (8) networks and distributed systems, (9) programming languages and compilers, (10) security, privacy, and cryptography, (11) design and analysis of algorithms, and (12) scientific computing.
The M.S. degree in Computer Science (CS) is a broad and flexible program, offering students opportunities for in-depth graduate study and cutting-edge research, covering a broad range of topics in Computer Science.
The course requirements for the M.S. are identical to those of the Ph.D., although completion plans differ. M.S. students can choose a thesis option that allows them to undertake a research-based thesis in lieu of two elective courses. For general information about admissions, the M.S. completion plan options, visit the Bren School of ICS Graduate Programs section of the Catalogue.
Each student must complete at least 47 units of course work. In addition, students must receive at least a B in each course counted toward filling these requirements.
Students must complete three quarters of COMPSCI 200S, four core courses, and seven elective courses. The course requirements are as follows:
Students must select four areas from the list of seven areas given below. From each area, they must select at least one of the courses listed for that area.
|Data Structures and Algorithms|
|Fundamentals of the Design and Analysis of Algorithms|
|Analysis of Algorithms|
|Computer Systems Architecture|
|Introduction to Embedded and Ubiquitous Systems|
|Advanced Compiler Construction|
|High-Performance Architectures and Their Compilers|
|Distributed Computer Systems|
|Introduction to Artificial Intelligence|
|Computer and Communication Networks|
|Network and Distributed Systems Security|
|Multimedia Systems and Applications|
|Principles of Data Management|
|Transaction Processing and Distributed Data Management|
|Scientific and Visual Computing|
|Principles of Scientific Computing|
Seven elective courses selected from any ICS graduate program, except any course with a suffix of “S”, "W", or "P" (e.g., 209S), and any non-COMPSCI course with a prefix of "29" (e.g., 295).
1. At most two COMPSCI 295 courses are allowed.
2. At most two upper-division undergraduate courses are allowed from the list below:
|COMPSCI 111||Digital Image Processing|
|COMPSCI 112||Computer Graphics|
|COMPSCI 122A||Introduction to Data Management|
|COMPSCI 132||Computer Networks|
|COMPSCI 142A||Compilers and Interpreters|
|COMPSCI 143A||Principles of Operating Systems|
|COMPSCI 152||Computer Systems Architecture|
|COMPSCI 161||Design and Analysis of Algorithms|
|COMPSCI 171||Introduction to Artificial Intelligence|
|COMPSCI 178||Machine Learning and Data-Mining|
|I&C SCI 161||Game Engine Lab|
|I&C SCI 162||Modeling and World Building|
|I&C SCI 163||Mobile and Ubiquitous Games|
|I&C SCI 166||Game Design|
3. At most two courses from combined 1 and 2 above are allowed.
4. At most two courses are allowed from non-ICS UCI graduate programs, with written consent of the Vice Chair for Graduate Studies.
5. Any course that was used toward an undergraduate degree cannot be used toward graduate requirements.