Software Systems Engineering
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.
Required Specialization Core (6 units, take both of the following classes)
Specialization Choice (3 units, take one of the following classes)
- CMPE 273 Enterprise Distributed Systems
- CMPE 275 Enterprise Application Development
- CMPE 281 Cloud Technologies
- CMPE 283 Virtualization Technologies
- CMPE 206 Computer Network Design
- CMPE 207 Network Programming and Applications
- CMPE 257 Machine Learning
- CMPE 258 Deep Learning
- CMPE 209 Network Security
- CMPE 279 Software Security Technologies