The Master of Science degree in computer science is a research-based option which permits graduate students the flexibility in defining specialized interdisciplinary fields that meet their professional needs. The research-based MS degree option is well-suited to students pursuing a career in academia or industry with a research component.
Students have two options under this degree:
- The thesis option, wherein students will have to complete six credit hours of MS thesis hours while working on a research problem and completing their thesis work. They work with a committee of three and have to defend their thesis.
- MS Thesis (6 credit hours)
- The non-thesis option, wherein students will have multiple options to complete six credit hours of research coursework. These hours can consist of MS independent study research hours while working on research projects with individual faculty, and/or completing Topics in CS Research. These six hours may or may not be with the same faculty.
- Independent Study (6 credit hours); or
- Topics in CS Research (6 credit hours); or
- Independent Study (3 credit hours) and Topics in CS Research (3 credit hours)
With support from the research advisor, students in this program have the option of smoothly transitioning in the PhD program. If students receive support from a research advisor, they do not have to apply to the PhD program; the department processes the degree advancement based on the support.
Bachelor's–Accelerated Master's Degree Program
Students may earn this degree as part of the bachelor's–accelerated master's (BAM) degree program, which allows currently enrolled CU Boulder undergraduate students the opportunity to earn a bachelor's and master's degree in a shorter period of time.
For more information, see the Accelerated Master's tab for the associated bachelor's degree(s):
Requirements
Admission Requirements
Applicants for graduate study in computer science must hold at least a bachelor's degree or its equivalent from an accredited institution. They should have programming experience, a number of computer science courses and sufficient mathematical maturity to understand pure mathematics courses at the upper division (junior/senior) level.
A minimum undergraduate GPA of 3.00 (on a scale of 4.00) is required for admission to the graduate program.
Mathematics Courses
A student's academic background should include at least three semesters of mathematics at the level of sophistication of calculus or above. Examples of such courses include calculus, differential equations, linear algebra, probability, statistics and abstract algebra. The courses should indicate that the student has achieved the mathematical maturity expected of an upper-level science, engineering or mathematics undergraduate.
Computer Science Courses
At least four one-semester courses in computer science that are beyond the introductory level are required for admissions. These are intended to demonstrate breadth of basic computer science knowledge in the areas of computer hardware, software and theory. The courses should include the equivalent of the following CU Boulder offerings:
- Hardware requirement: CSCI 2400 Computer Systems
- Software requirement: Either CSCI 3155 Principles of Programming Languages or CSCI 3753 Design and Analysis of Operating Systems
- Theory requirement: CSCI 2270 Computer Science 2: Data Structures and either CSCI 3104 Algorithms or CSCI 3434 Theory of Computation
More advanced versions of all courses are acceptable. The above courses are prerequisites to many of the graduate-level offerings, so it is important to complete these to be considered for graduate admissions.
Program Requirements
Degree Plans
While pursing the traditional MS degree in CS, students have to complete a total of 30 credits of graduate level coursework and may select between the following two options.
Plan I: Thesis Option
The MS thesis option curriculum is designed to provide a balance between modern technological focus and disciplinary depth. Students must secure a thesis advisor for research and course guidance.
Under this option, students complete 24 credit hours of coursework and 6 thesis credit hours at the 5000-level or above. At least 24 credit hours (eight courses) must be completed in computer science, including three required breadth courses and the professional development requirement. Up to 6 credit hours (two courses) may be taken outside of the department as long as those are at the 5000-level and above and offered at CU Boulder main campus.
In addition to the above, students must fulfill any other MS degree requirements as stated by the department. For more information, visit the Traditional MS Degree Program Requirements webpage.
Plan II: Non-Thesis Option
Under this option, students complete 24 credit hours of coursework at the 5000-level or above. At least 24 credit hours (eight courses) must be completed in computer science, including three required breadth courses and the professional development requirement. Up to 6 credit hours (two courses) may be taken outside of the department as long as those are at the 5000-level and above and offered at CU Boulder main campus. The remaining 6 research credit hours must consist of one of the following:
- Exactly 6 credit hours of CSCI 5900 Master's Level Independent Study; or
- Exactly 6 credit hours of CSCI 7100 Topics in Computer Science Research; or
- Exactly 3 credit hours of CSCI 5900 Master's Level Independent Study and exactly 3 credit hours of CSCI 7100 Topics in Computer Science Research
In addition to the above, students must fulfill any other MS degree requirements as stated by the department. For more information, visit the Traditional MS Degree Program Requirements webpage.
Course Requirements
The following course requirements are subject to change; for the most current information, visit the department's Traditional MS Degree Program Requirements webpage.
| Code | Title | Credit Hours |
|---|---|---|
| Professional Development Requirement | ||
| Complete three one-credit Professional Development courses. 1 | 3 | |
| Introduction to the Computer Science Research-Based MS Program | ||
| Computer Science Colloquium | ||
| Computer Science Colloquium | ||
| Breadth Requirement | ||
| Students must complete one breadth course from each of the three bins listed below, for a total of 9 credit hours of breadth courses. Students must earn a grade of B or better in each of the three breadth courses. 2 | ||
| Bin One | ||
| Choose one: | 3 | |
| Computer Graphics | ||
| Quantum Computation and Information | ||
| Convex Optimization and Its Applications | ||
| Probability for Computer Science | ||
| Introduction to Theory of Computation | ||
| Nonlinear Dynamics and Chaos | ||
| Design and Analysis of Algorithms | ||
| High-Performance Scientific Computing | ||
| Principles of Numerical Computation | ||
| Numerical Solution of Partial Differential Equations | ||
| Numerical Linear Algebra | ||
| Linear Programming | ||
| Numerical Optimization | ||
| Bin Two | ||
| Choose one: | 3 | |
| Introduction to Robotics | ||
| Advanced Robotics | ||
| Algorithmic Human-Robot Interaction | ||
| Network Analysis and Modeling | ||
| Research Methods in Human-Robot Interaction | ||
| Data Mining | ||
| Introduction to Mixed Reality | ||
| Machine Learning | ||
| Computer Vision | ||
| Probabilistic and Causal Modeling in Computer Science | ||
| Natural Language Processing | ||
| User-Centered Design and Development 1 | ||
| Input, Interaction, and Accessibility | ||
| Fundamentals of Neural Networks and Deep Learning | ||
| Bin Three: | ||
| Choose one: | 3 | |
| Computer-Aided Verification | ||
| Big Data Architecture | ||
| Datacenter Scale Computing - Methods, Systems and Techniques | ||
| Network Systems | ||
| Introduction to Computing Security | ||
| Computer Security and Ethical Hacking | ||
| Object-Oriented Analysis and Design | ||
| Modern Offense and Defense in Cybersecurity | ||
| Compiler Construction | ||
| Fundamental Concepts of Programming Languages | ||
| Advanced Operating Systems | ||
| Distributed Systems | ||
| Database Systems | ||
| Foundations of Software Engineering | ||
| Theoretical Foundations of Autonomous Systems | ||
| Research Requirement | ||
| Complete one of the following options for six credit hours: | 6 | |
| Option 1 - Thesis (6 credit hours) | ||
| Master's Thesis | ||
| Option 2 - Independent Study (6 credit hours) | ||
| Master's Level Independent Study | ||
| Option 3 - Topics in CS Research (6 credit hours) | ||
| Topics in Computer Science Research | ||
| Option 4 - Independent Study (3 credit hours) and Topics in CS Research (3 credit hours) | ||
| Master's Level Independent Study | ||
| Topics in Computer Science Research | ||
| Electives Requirement | ||
| An additional 12 credit hours of approved graduate-level coursework are required to complete the degree, with restrictions. 3, 4 | 12 | |
| Total Credit Hours | 30 | |
| 1 | The third one-credit course may be a repeat of CSCI 5100 or any other one-credit research related, approved graduate level course that is not an independent study or topics in CS research credit hour. |
| 2 | For a list of breadth courses by category, visit the department's Breadth Requirement webpage. |
| 3 | Certain courses are not eligible to count to the MS degree program. Consult the program website for the most up-to-date information. |
| 4 | No more than 6 credit hours of non-CS graduate coursework can be counted to the degree. |
Time Limit
All degree requirements must be completed within four years of the date of commencing coursework.
Learning Outcomes
By the completion of the program, students will be able to:
- Be knowledgeable in a subfield of computer science and make a research contribution to the subfield.
- Solve technical problems in computer science through writing code, pseudocode, technical writing and/or applying foundational concepts from a variety of subfields.
- Cast large, societal and/or complex problems as computational problems.
- Communicate clearly about their ideas and their research.
Evaluation Methods
- Complete the required breadth courses with a B or better grade.
- Complete the required coursework with a minimum GPA of 3.0.
- Successful defense of research thesis or conduct an independent study research work or research project under the supervision of a faculty member.