Software Systems Engineering

Specialization Overview

The Software Systems Engineering specialization provides current and future software professionals with the essential skills and real-world knowledge to succeed in the software engineering field. It offers an education in the fundamentals of software engineering and an in-depth exposure to the latest technologies and trends in software development processes, methodologies, and tools. Teamwork is emphasized throughout the curriculum to provide students with essential preparation for working in industry.

The specialization covers the software development life-cycle models, object-oriented analysis and design, design patterns, frameworks, software architecture, and software project management. It also provides coverage of the quantitative aspects of software engineering, including software metrics, software quality, software costs, and software reliability.


An alternate course plan for students admitted through Spring 2006 can be found here.


Course Work

Students earn a Master of Science in Software Engineering (MSSE) degree by completing 30 semester units of graduate study, plus meeting a competency in written English requirement. All students are required to complete 9 units of degree core courses, 6 units of required specialization courses, 9 units of elective courses, and 6 units of master's project or thesis to fulfill the 30 unit requirement. Details of these requirements are spelled out below.

Degree Core Courses (9 units)

CMPE 272 Enterprise Software Overview
CMPE 202 Software Systems Engineering
CMPE 203 Software Engineering Management

Note: Students from non computer related fields must show that they have the equivalent of Math 42: Discrete Mathematics plus the equivalent of MATH 163: Probability Theory or MATH 164: Mathematical Statistics in their undergraduate background. If they do not, they have to take these undergraduate courses or their equivalent as prerequisite courses.

Required Specialization Courses (6 units)

CMPE 285 Software Engineering Processes
CMPE 287 Software Quality Assurance and Testing

Elective Courses (select 9 units)

All CMPE graduate courses (those with a course number of 200 or higher) except CMPE 271, 294, 298, 298I, 295A/B, and 299A/B can be used as elective courses. This also includes specialization core classes from other specializations and all experimental courses (CMPE 296A - CMPE 296Z).

Note: Courses from other departments may be permitted with prior advisor approval

Master's Project or Thesis (6 units)

CMPE 295A Master's Project I
CMPE 295B Master's Project II
- OR
CMPE 299 Master's Thesis


Competency in Written English
CMPE 294 Computer Engineering Seminar
ENGR 200W Engineering Reports

Note: All graduate students are required to demonstrate their competency in written English as a requirement for graduation. The university catalog specifies five ways that competency can be demonstrated (click here for details). The Computer Engineering department requires that if a course must be taken to meet the competency in written English requirement, that the course must be CMPE 294 or ENGR 200W.



San José State UniversityOne Washington Square • San José, California USA, 95192
Copyright © 2002-2004 San José State University