Scientists and Engineers


Designed for students with a Bachelor’s degree in engineering or science but a limited background in computer science, the Master of Science in Computer Science for Scientists and Engineers is a comprehensive, two-year, 37 unit program that combines an introductory sequence of undergraduate preparatory and foundational coursework with all the graduate breadth requirements necessary to satisfy the traditional M.S. in Computer Science.  

Note: The preparatory programming requirement and foundational requirements must be completed at USC and cannot be transferred in or waived. Students admitted to this program are not able change to another program in computer science but may take electives from any computer science area.

37 program units.

33 degree applicable units.

Preparatory Programming Requirement:

1 course required – 4 units total.

  • CSCI 455x – Introduction to Programming Systems Design (4)

CSCI 455x is a preparatory requirement for this program and must be completed in the first semester.  The units for this course do not count toward the 33 units required for the degree.

Foundational Requirements:

2 courses required – 7-8 units total.

  • CSCI 402 – Operating Systems (4)
  • EE 450 – Computer Networks (3) OR EE 457 – Computer Systems Organization (4)

Breadth Courses:

4 courses required – 16 units total.

  • CSCI 570 – Analysis of Algorithms (4)
  • CSCI 561 – Foundations to Artificial Intelligence (4)
  • CSCI 571 – Web Technologies (4)
  • CSCI 585 – Database Systems (4)

Elective Courses*:

Select two courses, 7-8 units, from approved 500-level or 600-level course work in Computer Science.

Recommended Electives for CS Scientists & Engineers:

  • CSCI 577a – Software Engineering (4)
  • CSCI 577b – Software Engineering (4)
  • CSCI 576 – Multimedia Systems Design (4)
  • CSCI 580 – 3D Graphics and Rendering (4)

Remaining 1-3 units can be completed with the following:

  • CSCI 590 – Directed Research (1-2, max 2)
  • CSCI 591 – Computer Science Research Colloquium (1, max 2)

A maximum of 2 units of CSCI 590 and a maximum of 2 units of CSCI 591 may be applied.

Thesis courses (CSCI 594a, CSCI 594b, CSCI 594z) and Internship courses (ENGR 595a, ENGR 595b, ENGR 595z) are not eligible for elective credit.

  • There is no cumulative examination required for the degree.
  • A minimum grade point average of 3.00 must be earned on all course work applied toward the M.S. degree and all graduate course work taken at USC.
  • A maximum of 11 units may be taken from approved 400-level courses in either Electrical Engineering or Computer Science; the remaining units must be approved courses at the 500 or 600 level. 
  • Only one doctoral (600-level) course can be counted in the degree.
  • Internship and Thesis credits cannot count as elective units toward the degree.
  • CSCI 590 Directed Research is a variable unit course, and can be taken for one or two units. A maximum of two units can apply toward the degree.
  • CSCI 591 Research Colloquium can be taken a maximum of two times for one unit each.
  • Other requirements for the M.S. degree are the same as set forth in the general requirements for graduate degrees.