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.
Required Specialization Core (6 units, take both of the following classes)
- Software Engineering Processes
- Software Quality Assurance and Testing
Specialization Choice (3 units, take one of the following classes)
- Enterprise Distributed Systems
- Enterprise Application Development
- Cloud Technologies
- Virtualization Technologies
- Computer Network Design
- Network Programming and Applications
- Data Mining
- Large Scale Analytics
- Network Security
- Software Security Technologies
Note: The following class taken during the Spring 2014 or Fall 2014 semester can be used as a specialization core or specialization choice class.
- Software Engineering Management