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.
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,
9 units of required specialization courses, 6 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)
ISE 201
Software Engineering Analysis
CMPE 202
Software Systems Engineering
CMPE 203
Software Engineering Management
Note: If a student has the equivalent of Math
42: Discrete Mathematics plus the equivalent of MATH
163: Probability Theory or MATH
164: Mathematical Statistics in the their undergraduate background, then
ISE 201 can be waived. An additional elective course must be taken to replace
the three units of credit.
Required Specialization Courses (9 units)
CMPE 221 Software Systems Analysis and Design
CMPE
285 Software Engineering Processes
CMPE
287 Software Quality Assurance and Testing
Elective Courses (select 6 units)
CMPE 206 Computer Network Design
CMPE
207 Network Programming and Applications
CMPE
208 Network Architecture and Protocols
CMPE
272 Enterprise Software Overview (formerly ENGR
262)
CMPE
273 Enterprise Distributed Objects (formerly ENGR
264)
CMPE
275 Enterprise Software Components (formerly ENGR
268
CMPE
209 Network Security
CMPE 213
Supercomputers
CMPE 217
Human Computer Interaction or CMPE
219 Research in Human Computer Interaction
CMPE 226
Database Design
CMPE 227
Distributed Systems
CMPE 228
Performance Analysis of Concurrent Systems
CMPE 232
Component-based & Reuse-Driven SE
CMPE 234
Multimedia System Design
CMPE 235 Mobile-Based Software System Design
CMPE 236 Web-Based Application Systems & Tools
CMPE 237 Design of E-Commerce Systems
CMPE 238 Agent Enterprise Software Engineering
CMPE 261 Real Time Computer System
CMPE 274 Business Intelligence Technologies (formerly ENGR 266)
CMPE 276 XML for e-Business (formerly ENGR 270)
CMPE 277 Mobile Technologies for Enterprise Applications (formerly ENGR 296J)
CMPE 278 Advanced Enterprise Software Components (formerly ENGR 296L)
CMPE 286 Advanced Software Engineering Processes (formerly CMPE 270)
Note: Other electives are permitted with 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
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 ENGR 200W.