USC
Center for Software Engineering
Advanced Degrees
The M.S. Degree
The resulting
state-of-the-art research and its context are transitioned
into the USC Master of Science in Computer Science with
specialization in Software Engineering (MSCS-SE) degree
program. Its courses provide students with a mastery
of the USC WinWin Spiral Model; the USC WinWin groupware
environment for collaborative requirements engineering
and related CASE tools; the SEI Capability Maturity
Model; leading industry and university tools and research
in software architectures; software metrics, planning,
and control based on the USC COCOMO family of models
and tools; Mills' Cleanroom approach; and team development
of production-grade software packages.
The MSCS-SE degree
program also includes elective courses, enabling students
to integrate the software engineering specialization
with the Department's other software strengths in user/multimedia
engineering, operating systems, database systems, networking,
high performance computing, and artificial intelligence.
Degree requirements
include core courses in Software Engineering I and II,
Computer Systems Architecture, and an Advanced Software
Engineering Project course; three additional courses selected
from six other mainstream software courses; plus the general
master's requirements. A total of 27 semester units is
required (normally 9 courses). There are no thesis or
comprehensive exam requirements for the degree. Additional
information on the specific course can be found in the
Courses section of the CSSE site.
Please contact Shirley Chan (213) 740-4496
REQUIRED COURSES FOR MSCS-SE
For students in the MSCS-SE program,
they must satisfy the current core requirements for
the MSCS plus the following required courses:
CS 510 Software Management and Economics (3)
CS 577a Software Engineering I (4)
CS 577b Software Engineering II (4)
CS 578 Software Architectures (3)
In addition to the above required courses, the SE specialization
requires 3 additional courses to be selected from the
following 5 courses:
CS 511 Personal Software Process(PSP) and Project (3)
CS 555 Advanced Operating Systems (3)
CS 585 Database Systems
CS 588 Specification and Design of User Interface Software
(3)
EE 557 Computer Systems Architecture (3)
Students may also include research for an optional master's
thesis in their programs by registering for CSCI 590
(Directed Research).
CHOICE OF ELECTIVES
Any remaining units can be accomplished by taking other
400 and 500 level computer science courses or field-related
courses in electrical engineering or mathematics that
form a cohesive program of study in Computer Science,
subject to approval by an advisor in the Department.
In addition, UPON APPROVAL FROM AN ADVISOR, the student
may enroll in a maximum of one closely related class
outside the usual department curriculum. No comprehensive
exam or Master's thesis is required for the M.S. degree.
All generally allowable courses are listed at the end
of this brochure. The student is permitted a rather
wide latitude in selecting the remaining elective courses.
Of the 27 units
required, not more than 9 units at the 400 level in
either Computer Science or Electrical Engineering may
be counted toward the degree. (deficiency courses not
accepted) CS 590 - Directed Research may be counted
for a maximum of 6 units toward the Master's degree.
All students are urged to specifically discuss with
an advisor any "400" level course he or she
wishes to take, since not all such courses are applicable
to the Master's degree.
Ph.D. Research Fellowships
Two continuing
Ph.D. research fellowships in Software Engineering are
available each year for particularly outstanding applicants.
The Ph.D. application requirements are similar to those
for the MSCSSE.
Contact Sherri Fagan (213) 740-4499 for more information.
Undergraduate
Contact Steve Schrader (213) 740-4779 for more information.