The software engineering specialization provides software developers with advanced software methodology, design, and coding techniques. You’ll learn aspect-oriented programming, object-oriented programming, and the principles and techniques to lead a software development team.

In this specialization, you'll gain hands-on experience performing all functions of building software and develop job-relevant expertise in implementing large software engineering projects within cost and on schedule. The software engineering courses include usability engineering, software design and implementation, software verification and validation, and more.

These requirements are for students who enroll in the 2021–2022 academic year. For prior year academic requirements, visit our catalog archive.

About the Information Technology Master's Degree with Software Engineering Specialization

What You'll Learn

Through your coursework, you will learn how to

  • Write a software requirements document
  • Design software using UML models
  • Develop and test software
  • Apply advanced knowledge in computer systems architecture
  • Manage the schedule of a complex project on time and within budget, solving conflicts as they arise
  • Analyze, design, and implement information systems
  • Plan projects, build teams, and create and modify effective control mechanisms

Coursework Examples

In past projects, students have had the opportunity to

  • Complete the development of a corporate-sponsored project through its entire life cycle
  • Build software products using object-oriented programming and aspect-oriented programming
  • Evaluate user interfaces using contextual inquiry, task analysis, and usability testing

Industry Certification

This program can help prepare you for the following certification exam(s):

Information Technology Master's Degree with Software Engineering Specialization Requirements

Our curriculum is designed with input from employers, industry experts, and scholars. You'll learn theories combined with real-world applications and practical skills you can apply on the job right away.

Master's - specialization Courses

Initial Requirement

  • UCSP 615
    (to be taken within the first 6 credits of study)

Core Courses

  • ITEC 625
  • ITEC 630
  • ITEC 640

Specialization Courses

  • SWEN 603
  • DBST 651
  • SWEN 646
  • SWEN 656
  • SWEN 645
  • SWEN 647
  • SWEN 651
  • SWEN 661
  • SWEN 670

Course Rules and Program Progression

  • SWEN 670 must be taken in the last term of enrollment.

Other Requirements

  • You must maintain a GPA of 3.0 or higher at all times.
  • All degree requirements must be fulfilled within five consecutive years.
  • Any transfer credits must have been earned within the five-year time frame to be applied toward a graduate degree.

Please review our overview of overall master's degree requirements for additional considerations.

Career Preparation

This program is designed to help professional programmers prepare for work in implementation of large software engineering projects.

Experience Recommended for Success in the Program

The software engineering specialization is designed for students with a degree and/or professional experience in software development and programming languages. If you have not had any recent programming coursework or have experience in old programming languages such as COBOL or RPG, you are strongly encouraged to take UCSP 635 and UCSP 636 before taking any SWEN courses. We recommend UCSP 605 if you'd like to improve your graduate writing skills.

Student Clubs and Organizations

    Type: Student organization
    Available To: Undergraduate and Graduate

    The Computing Club aims to create a dynamic environment where members can work collaboratively, share innovative ideas, enhance their career-readiness, and gain marketable experience in their respective fields.

Special Designations

 Professional Science Master's (PSM) LogoThis program has received a special designation as a Professional Science Master's Degree by the Council of Graduate Schools.