Computer Science (MS)
Program's Admission Requirements
Please visit the program's website.
Program Learning Outcomes
Upon successful completion of this program, students will be able to:
- Core Knowledge Breadth: Demonstrate a working knowledge of fundamental theories, research findings, and methodological approaches within Computer Science (Foundations, Systems, Data Science).
- Core Knowledge Depth: Demonstrate a deep working knowledge of advanced theories, research findings, and methodological approaches within one of the Computer Science areas of Foundations, Systems, and Data Science.
- Software Engineering: Demonstrate a working knowledge of software engineering and development techniques and related hands-on skills.
- Thesis Option Additional Outcome - Scientific Inquiry: Achieve a fluency in the scientific literature and the ability to pursue compelling questions within a primary field of research, and (for empirical research studies) achieve proficiency in relevant experimental design, methodology, and data analysis/statistical methods.
- Thesis Option Additional Outcome - Scientific Communication: Demonstrate effective written scientific communication skills.
Master of Science in Computer Science Requirements
Code | Title | Credits |
---|---|---|
Breadth Requirement: 12 credits total 1 | 12 | |
Algorithms and Complexity | ||
Data Science | ||
And one of the following: | ||
Distributed Systems | ||
Parallel Processing | ||
Depth Requirement: Choose one, 12 credits total 1 | 12 | |
Each Depth requires three courses, at least one at 600-level | ||
Foundations Depth | ||
Advanced Data Structures | ||
Automata Theory | ||
User Interfaces | ||
Modeling and Simulation | ||
Introduction to Compilers | ||
Structure of Programming Languages | ||
Data Science Depth | ||
User Interfaces | ||
Database Processing | ||
Data Mining | ||
Introduction to Artificial Intelligence | ||
Machine Learning | ||
Probabilistic Methods for Artificial Intelligence | ||
CS 600 level course | ||
Systems Depth | ||
Introduction to Parallel Computing | ||
Introduction to Networks | ||
Computer and Network Security | ||
Introduction to Computer Graphics | ||
Introduction to Compilers | ||
Distributed Systems | ||
Parallel Processing | ||
Computer Networks | ||
Advanced Network Security | ||
Writing Requirement | 2 | |
Writing in Computer Research | ||
Elective Options: 28 credits total 4 | 28 | |
Up to twelve credits in courses outside department in area closely related to professional goals may be used 5 | ||
Thesis Option 6 | ||
Thesis | ||
CS 5XX and CS 6XX: Minimum of 8 graded credits, maximum of 11 P/NP credits | ||
Non-Thesis Option | ||
Terminal Project | ||
CS 5XX and CS 6XX: Minimum of 18 graded credits, maximum of 10 P/NP credits | ||
DRP Option 8 | ||
Research: [Topic] | ||
CS 5XX and CS 6XX: Minimum of 8 graded credits | ||
Completion of the directed research project (DRP) milestone in the CS PhD program and approval from the DRP committee that the project meets the standards of an MS thesis. | ||
Total Credits | 54 |
- 1
A grade of B- or better is required
- 2
Cannot duplicate Depth course used
- 3
Cannot duplicate Breadth course used
- 4
A grade of C or better is required in graded elective credits
- 5
Courses must be approved by petition to the CS GEC; options include courses in linguistics, mathematics, physics, and psychology.
- 6
Cannot include CS 609 Final Project
- 7
CS 609 Final Project requirements: 8-12 credits; graded or P/NP
- 8
No credit of CS 503 (Thesis) or CS 609 (Final Project) may count toward the elective credit requirements
Grade Requirements
The 24 credits in the breadth courses and the depth courses must be passed with grades of B– or better. Graded elective courses must be passed with grades of C or better. A 3.00 GPA must be maintained for courses taken in the program.
Master’s Thesis
The research option requires a written thesis and 9 to 12 credits in Thesis (CS 503). Thesis research is supervised by a faculty advisor; this advisor and other faculty members constitute the thesis committee. The master’s thesis is expected to be scholarly and to demonstrate mastery of the practices of computer science. This option is recommended for students who plan subsequent PhD research.
Master’s Project
The project option requires a minimum of 9 credits, and as many as 12, in Final Project Terminal Project (CS 609).
Under the supervision of a faculty member, the project may entail a group effort involving several master’s degree students.
Computer Science Accelerated Master's Program
Computer Science undergraduate majors at the UO have the opportunity to graduate with B.S. and M.S. Computer Science degrees in a five-year program.
Students with junior or senior status in the Computer Science major who have completed the 300-level required courses and CS 415 (with a grade of A- or better), and have a GPA of 3.50 or higher in computer science and a cumulative GPA of 3.50 or higher, or a GPA of 3.75 or higher in computer science and a cumulative GPA of 3.25 or higher may apply to the Accelerated Master’s Program in Computer Science (AMP-CS). This application form is available in the department office.
Interested students should schedule an appointment with the CS Director of Undergraduate Studies before applying. Upon acceptance to AMP-CS, students may take graduate courses to fulfill major requirements that will also fulfill Master’s degree requirements, according to UO AMP guidelines, for students admitted to the Computer Science Master’s degree program.
AMP-CS students will work closely with undergraduate and graduate advisors to ensure that they are on track to graduate with both degrees. Students who do not maintain satisfactory progress or who choose not to continue to a master’s degree can still graduate with a B.S. degree in Computer Science in four years.
Computer Science Early Start Master's Program
This program is open to students who earn a BS or BA degree in computer science at the University of Oregon and who want to enter the master’s degree program.
If a UO undergraduate takes one or two 400-level electives that also are offered as 500-level courses, the student can petition the department to have 4 or 8 credits deducted from the total number of elective credits required for the master’s degree. The student must earn an A– or better in the 400-level course and have an overall GPA of 3.50 in upper-division CS courses to participate in this Computer Science Early Start Master's program. Note that all admission procedures, as outlined in the Master's Degree Program section, are also applicable. Applications are available in the department office. This program may be combined with the Computer Science Accelerated Master’s Program (described above).
Code | Title | Credits |
---|---|---|
Senior Year Graduate Level Courses | ||
CS 522 | Software Methodology I a | 4 |
Three graduate level courses b, c | 12 | |
Total Credits | 16 |
Code | Title | Credits |
---|---|---|
Breadth Requirement 1 | 12 | |
Algorithms and Complexity | ||
Data Science | ||
And one of the following: | ||
Distributed Systems 2 | ||
Parallel Processing 3 | ||
Depth Requirement: Choose one 1 | 12 | |
Each Depth requires three courses, at least one at 600-level | ||
Foundations Depth | ||
Advanced Data Structures | ||
Automata Theory | ||
User Interfaces | ||
Modeling and Simulation | ||
Introduction to Compilers | ||
Structure of Programming Languages | ||
Data Science Depth | ||
User Interfaces | ||
Database Processing | ||
Data Mining | ||
Introduction to Artificial Intelligence | ||
Machine Learning | ||
Probabilistic Methods for Artificial Intelligence | ||
CS 600 level course | ||
Systems Depth | ||
Introduction to Parallel Computing | ||
Introduction to Networks | ||
Computer and Network Security | ||
Introduction to Computer Graphics | ||
Introduction to Compilers | ||
Distributed Systems | ||
Parallel Processing | ||
Computer Networks | ||
Advanced Network Security | ||
Writing Requirement | 2 | |
Writing in Computer Research | ||
Elective Options: 4, 5, 6 | 12-28 | |
Thesis Option 7 | ||
Thesis (9-12 credits P/N) | ||
Non-Thesis Option 8 | ||
Terminal Project (Optional) | ||
Total Credits: | 54 |
- a
CS 522 will fulfill an undergraduate major required course requirement (CIS 422) and a master’s elective requirement.
- b
A maximum of 8 credits of 5/60x courses, with some exclusions, may, with prior approval, be used toward CS major undergraduate requirements and M.S. requirements. CS 503 and other CS 60x courses (e.g., CS 601, 609), when taken for a master’s thesis or project (9-16 credits), must be taken as a graduate student.
- c
CS 500 and 600 level courses numbered 5/610 or higher and taken for a grade will meet undergraduate CS upper-division elective requirements when taken with a passing grade. CS 500 and 600 level courses numbered 5/610 or higher and taken for a grade and passed with a minimum grade of B will also meet graduate required or elective courses requirements.
- 1
A grade of B- or better is required
- 2
Cannot duplicate Depth course used
- 3
Cannot duplicate Breadth course used
- 4
A grade of C or better is required in graded elective credits
- 5
Up to 8 graded credits from CS Department Accelerated M.S. may be used. See CS website.
- 6
Up to twelve credits in courses outside department in area closely related to professional goals may be used. Courses must be approved by petition to the CS GEC; options include courses in linguistics, mathematics, physics, and psychology.
- 7
Cannot include CS 609 Final Project. Note that the Thesis Option requires at least 8 graded elective credits, which may include 500 and 600 level elective courses taken as an undergraduate.
- 8
Optional CS 609 Final Project requirements: 8-12 credits; graded or P/NP. Note that the Non-Thesis Option requires at least 18 graded elective credits, which may include 500 and 600 level elective courses taken as an undergraduate.
- 9
No credit of CS 503 (Thesis) or CS 609 (Final Project) may count toward the elective credit requirements. Note that the DRP Option requires at least 8 graded elective credits, which may include 500 and 600 level elective courses taken as an undergraduate.