Master of Science

PSU students at Urban Plaza

The Master of Science (M.S.) in Computer Science is the first graduate degree in the field, and can take one and a half years of full-time study to complete. The master's program is designed to prepare students for advanced careers in the computing industry, to create a research environment in computer science, and to prepare students for graduate work at the Ph.D. level. Students entering the program must have a bachelor's degree and/or adequate background in computer science. 

The master's program requires the completion of an approved program of 45 credits, with a thesis option. Coursework includes core courses in theory and programming practice, plus a 9-credit concentration in one specialization area.

Core Requirements (6)

Students are encouraged to take these courses as early as possible in your graduate program.

One Theory course from:

  • CS 581 Theory of Computation (3)
  • CS 584 Algorithm Design & Analysis (3)
  • CS 578 Programming Language Semantics (3)

One Programming Practice course from:

  • CS 558 Programming Languages (3)
  • Any 500-level course designated by the department as programming-intensive (noted by a P in the undergraduate course section) (3)

Track Requirements (9)

All students in the CS Master's program must take three courses from a single track of the following: 

  • Databases
  • Artificial Intelligence & Machine Learning
  • Languages & Programming
  • Security
  • Software Engineering
  • Systems & Networking

The list of required courses and approved electives for each track are listed in the Track Courses page

Elective Requirements (30)

Students must take enough electives to complete 45 total credits for the MS degree. Electives can be any 500-level CS course (see specific notes regarding CS 501-509 coursework below). A limited number of credits taken outside Computer Science can count towards the elective requirements, with advisor approval.  Read more about Non-CS credits below.

Thesis Option

The thesis option requires the completion of 45 credits including 6-9 credits of CS 503 (Thesis) and an oral thesis defense. Students must follow PSU policies regarding committee appointments, defense procedures, formatting requirements, and submission procedures. University requirements and additional information for a master’s thesis are outlined by the PSU Graduate School.

A thesis defense must take place in a meeting with the student and the appointed committee. It should be scheduled on a date that meets the GS deadline for the desired graduation term. A room for the thesis defense may be scheduled through the CS department ( Thesis students will need to send their abstract/bio information and any requested equipment (projector) at least two weeks in advance of the defense to the CS Graduate Advisor (


All newly admitted MS students will be advised by the CS Graduate Advisor. Every MS student is required to maintain a plan of study form, which outlines both courses taken so far towards the degree and courses planned for the remainder of the program. This will also note any transfer and pre-admission courses, non-CS courses, and a student’s intended track.

An initial plan must be submitted to the CS Graduate Advisor by the end of the second term after the student’s formal admission to the program. Approval from the CS Graduate Advisor will indicate an acceptable outline of the student’s coursework. However, the plan can be revised at any time by mutual agreement of the student and the CS Graduate Advisor. A final version of a student’s plan of study should be submitted by the student’s last term of the program.

Students completing a thesis are required to have a faculty adviser.

Pre-admission, Transfer, and Non-CS Credits

A minimum of 30 credits must be taken in Computer Science at Portland State University. Given this, students may use a combined total of 15 pre-admission, transfer, and non-CS credits toward their Master’s degree with CS Graduate Advisor approval ( Students may use credits from a combination of these three categories, but if the total exceeds the 15 credit limit, then the excess will not be counted towards the degree.

  • Pre-admission credits (taken before the term of formal admission) can include both transfer and PSU credits. Pre-admission credits taken at PSU are requested via a DARS exception submitted to the Graduate School. This request should be made soon after admission to the graduate program.
  • Transfer credits refer to credits taken from another institution other than PSU. To request approval of transfer credits, complete and submit the GO-21M form (Proposed Transfer Credit) to the CS Graduate Advisor. Students should submit the GO-21 form during the first term of enrollment in the program, so there is sufficient time to complete any additional coursework that may be necessary. Any transfer credits must be approved before graduation paperwork can be processed. OHSU joint campus credits are considered transfer credits and are transferred via a different process. Read below for more information.
  • Non-CS credits taken outside of Computer Science, such as ECE or Math*, can count towards elective requirements once approved. Non-CS courses must be graduate level.
    *Exception: only one ETM course will count towards the elective requirements. All ETM courses are eligible to transfer but students are limited to using only one for the CS degree requirements.

Departmental Requirements

In addition to the departmental requirements, students should review the university master's degree requirements

  • A minimum of 30 credits must be taken at Portland State University.
  • Maintain good academic standing with a cumulative graduate GPA of 3.00 or higher in all graduate credits earned at PSU.
  • All graded courses must be passed with a grade of B- or better.
  • Core requirements must be passed with a grade of B or better.
  • All courses taken Pass/No Pass must be passed. 
  • Coursework may include up to 6 credits of CS 505 (Reading and Conference) and CS 506 (Special Projects).
  • CS 501 (Research), CS 502 (Independent Study), CS 504 (Internship), and CS 509 (Graduate Assistant Practicum) credits cannot be applied. Review the rules regarding CS 504 (Internship)
  • All coursework applied to the master’s program must be completed within seven years prior to the awarding of the degree. If any credits are more than 7 years old at the time you apply for graduation, they may need to be re-validated

Joint Campus Registration with OHSU

Admitted graduate students at Portland State may take graduate courses offered by Oregon Health and Science University and have the credits included in their current term enrollment and tuition assessment at PSU. Only specific courses are approved for this joint campus arrangement. Students must have permission from the instructor of the OHSU course as well as their home department to use the joint campus registration process and apply the OHSU courses to their PSU degree. Contact the CS Graduate Advisor ( for details.

Graduation Procedure