•  Home
  • Giving

Master of Science in Software Engineering

The Master of Science in Software Engineering (MSE) program prepares students to become Software Engineering professionals. Graduates are prepared to address the global need for professionals that apply computer science, engineering, and mathematical principles to design, develop, test and maintain software. The core of the program is focused on building a foundation of critical thinking skills on which to make professional judgments. This program builds these thinking skills through a solid understanding of theoretical concepts, principles, and tools; and coverage of the fundamental software development issues and processes. Topics covered include: requirements engineering, software design and construction, verification, testing, maintenance, software process improvement, project management, quality assurance, etc.

VIU’s MSE program is generally completed within two years of full time study. It consists of seven (7) Core Courses and five (5) Elective courses. The elective courses provide the opportunity for the students to develop further competencies covered in the core courses, based on their area of interest.

Area # of Courses Credit Hours
Core Courses 7 21
Electives Courses 5 15
Total 12 36

MSE Core Courses

Each candidate must complete the following seven (7) core courses (21 credits):

Course Code Course Name Credit
CMP 550 IT Infrastructure 3
CMP 553 Analysis, Modeling, and Design 3
CMP 560 Software Engineering 3
CMP 610 Managing IS Development 3
CMP 650 Software Design and Construction 3
CMP 660 Issues and Trends in Software Engineering 3
CMP 669 Software Engineering Project 3

MSE Elective Courses

Candidates must select five (5) courses (15 credits) from the list of courses below:

Course Code Course Name Credit
CMP 556 Database Management Systems I 3
CMP 558 Network and Information Security 3
CMP 561 Design and Analysis of Algorithms 3
CMP 611 Global Information Systems Development 3
CMP 621 Artificial Intelligence 3
CMP 627 Data Mining 3
CMP 640 Decision Support and BI 3
CMP 661 Software Testing 3
CMP 662 Software Maintenance & Configuration Management 3
CMP 663 Web Applications Development 3
CMP 664 Mobile Applications Design and Development 3
CMP 673 Special Topics in Software Engineering 3
CMP 680 Organizational and Social Dimensions of Computing 3
CMP 591 Graduate Internship Level I 3
CMP 691 Graduate Internship Level II 3
CMP 696 Independent Study 3
CMP 697 Independent Study 3
CMP 698 Master’s Thesis I 3
CMP 699 Master’s Thesis II 3
CMP 600 Careeer Planning & Manangement 3

MSE Program Prerequisites

All new MSE students need certain basic skills to succeed in the MSE program. Students who do not have the requisite background in computing concepts or programming need to take some or all of the prerequisite courses before they begin work on the core courses. In some cases, the program prerequisite courses may have course prerequisites to be taken before enrolling in the program prerequisite courses.

Course Code Course Name Credit
CMP 220 Programming II 3
CMP 330 Data Structures and Algorithm Analysis 3
CMP 340 Principles of Programming Languages 3
CMP 350 Database Concepts 3

Pre-MSE Program

Students who have earned their bachelor’s degrees with less than 120 undergraduate credit hours can be given conditional admission to the MSE program, provided they enroll in and successfully complete the remaining credit hours by selecting from the Bachelor of Science in Computer Science (BCS) undergraduate courses offered at VIU. Among the 120 required credit hours, the MSE program prerequisite courses must be fulfilled. Before choosing Pre-MSE courses, students must consult their academic advisor who will advise them on the appropriate course selections from VIU’s BCS program while complying with MSE program prerequisites. Successful completion of the Pre-MSE courses will allow these students to complete the undergraduate credit hour requirement of 120 and enter into the program.

Career Paths & Opportunities
  • Software engineer
  • Software architect
  • Software project leader
  • Software project manager
  • Software designer
  • Program developer
  • Chief technology officer
  • Chief information officer
  • Software consultant
  • Computer systems analyst

The following is a sample schedule of the possible sequencing of courses in the Master of Science in Software Engineering.

Course Code Course Name Credit
First Semester
CMP 550 IT Infrastructure 3
CMP 553 Analysis, Modeling and Design 3
CMP 560 Software Engineering 3
Second Semester
CMP 610 Managing IS Development 3
CMP 650 Software Design and Construction 3
CMP 660 Issues and Trends in Software Engineering 3
Third Semester
CMP 699 Software Engineering Project 3
CMP XXX CMP Elective #1 3
CMP XXX CMP Elective #2 3
Fourth Semester
CMP XXX CMP Elective #3 3
CMP XXX CMP Elective #4 3
CAR 600 Career Planning & Management 3