A faculty and a student talking in the immersion lab surrounded by screens

Online Software Engineering Master's Program

Program Details

Degree

Master of Science

Available

On Campus & Online

Contact

Graduate Admissions1.888.783.8367[email protected]
Apply Now

Best Online Programs U.News & World Report - Grad Engineering 2025The Software Engineering master’s program combines a deep core in software engineering principles and practices with application to a series of increasingly complex systems challenges drawn from the real world.

Through this program, our students are equipped with advanced knowledge in software architecture, project management, technical planning, risk management and software assurance – areas that are essential in implementing and overseeing software-intensive projects of high technical complexity.

The master’s degree requires ten courses (30 credits): seven core required courses and three elective courses. For a guide on how you can structure your course enrollments each semester, take a look below:

Term 1

SSW 540 Fundamentals of Software Engineering - 3 Credits

This course introduces the subject of software engineering, also known as software development process or software development best practice from a quantitative, i.e., analytic- and metrics-based point of view. Topics include introductions to: software life-cycle process models from the heaviest weight, used on very large projects, to the lightest weight, e.g., extreme programming; industry-standard software engineering tools; teamwork; project planning and management; object-oriented analysis and design. The course is case history and project oriented.

SSW 555 Agile Methods for Software Development - 3 Credits

In software problem areas that require exploratory development efforts, those with complex requirements and high levels of change, agile software development practices are highly effective when deployed in a collaborative, people-centered organizational culture. This course examines agile methods, including Extreme Programming (XP), Scrum, Lean, Crystal, Dynamic Systems Development Method and Feature-Driven Development to understand how rapid realization of software occurs most effectively. The ability of agile development teams to rapidly develop high quality, customer-valued software is examined and contrasted with teams following more traditional methodologies that emphasize planning and documentation. Students will learn agile development principles and techniques covering the entire software development process from problem conception through development, testing and deployment, and will be able to effectively participate in and manage agile software developments as a result of their successfully completing this course. Case studies and software development projects are used throughout.

Term 2

SSW 564 Software Requirements Analysis and Engineering - 3 Credits

Requirements Acquisition is one of the least understood and hardest phases in the development of software products, especially because requirements are often unclear in the minds of many or most stakeholders. This course deals with the identification of stakeholders, the elicitation and verification, with their participation, of the requirements for a new or to-be-extended software product. It deals further with the analysis and modeling of requirements, the first steps in the direction of software design. Finally, it deals with the quality assurance aspects of the software requirements phase of the software development process. This course is case-history and project-oriented, and uses industry-standard software tools.

SSW 565 Software Architecture and Component-Based Design - 3 Credits*

This course introduces students to the software design process and it’s models; representations of design/architecture; software architectures and design plans; design methods; design state assessment; design quality assurance; and design verification.

Term 3

SSW 567 Software Testing, Quality Assurance and Maintenance - 3 Credits*

This course introduces students to systematic testing of software systems, software verification, symbolic execution, software debugging, quality assurance, measurement and prediction of software reliability, project management, software maintenance, software reuse and reverse engineering.

SSW 533 Cost Estimation and Metrics - 3 Credits

The course deals with the management of software projects using objective metrics that help developers and managers to understand the scope of the work to be accomplished, the risks that will occur, the tasks to be performed, the resources and effort to be expended, and the schedule to be observed. It provides the student with a thorough introduction to facility with, and understanding of such industry-standard software sizing metrics as Function, Feature, and Object Points and their relationship to the lines-of-code metric. It provides the student with a thorough introduction to and understanding of such industry-standard software estimation tools such as COCOMO II used in cost estimation.

Term 4

SYS 625 Fundamentals of Systems Engineering - 3 Credits*

This course presents the fundamental principles and process for designing effective and reliable, supportable, and maintainable systems. The participants will also understand the concept of system operational effectiveness, and the inherent "cause and effect" relationship between design decisions and system operation, maintenance and logistics. Furthermore, the course will also discuss system life cycle cost modeling as a strategic design decision making methodology and present illustrative case studies.

EM 624 Informatics for Engineering Mgt - 3 Credits*

This course enables the Engineering Management student to acquire the knowledge and skills he/she will need to handle the variety and volume of information encountered in today’s workplace. The course uses Python, which is rapidly becoming the language of choice for information handling and data analysis. Students will work with both structured and semi-structured data.

Term 5

EM 665 Integrated Supply Chain Mgt. - 3 Credits*

This course illustrates the theory and practice of designing and analyzing supply chains. It provides tool sets to identify key drivers of supply chain performance such as inventory, transportation, information and facilities. Recognizing the interactions between the supply and demand components, the course provides a methodology for implementing integrated supply chains, enabling a framework to leverage these dynamics for effective product/process design and enterprise operations.

CS 546 Web Programming - 3 Credits*

This course will provide students with a first strong approach of internet programming. It will give the basic knowledge on how the Internet works and how to create advanced web sites by the use of script languages, after learning the basics of HTML. The course will teach the students how to create a complex global site through the creation of individual working modules, giving them the skills required in any business such as proper team work and coordination between groups.