Master of Science in Software Engineering

The Master’s of Science in Software Engineering (MSSE) is offered jointly by the Electrical and Computer Engineering Department in the College of Engineering and the Computer Science Department in the College of Science. Students pursuing degree in this program declare a home Department. Students with the Electrical and Computer Engineering Department home must take at least 15 credit hours of computer engineering courses.


The unconditional admission requirements are: a Bachelor’s degree from an ABET or CSAB accredited program with a minimum of 3.0 average on a 4.0 scale, a GRE score of 300, 3.0 on analytical writing, and, for international students, a TOEFL score with all subscores ≥ 18. Conditional admission may be granted to individuals who fail to meet one or more requirements for unconditional admission.

Foundation Courses:

Coursework or demonstration of knowledge in:

  • Programming in C, C++, or Java (CPE 112)
  • Data Structures (CPE 212)
  • Discrete Structures (CS 214)
  • Design and Analysis of Algorithms (CS 317)
  • Operating Systems (CPE 434)
  • Introduction to Computer Architecture (CPE 431)

Experience in the development of a large scale, industrial strength software system is highly desirable.

 

Program Requirements:

Thesis Option (24 hours plus a minimum of 6 thesis hours)

Required Core Courses (12 hours)

Students must complete 12 hours of required core courses:

  • CS 650 – Software Engineering Process
  • CS 617 – Analysis of Algorithms
  • CS 652 – Object Oriented Design
  • One of the following systems architecture courses:
    • CS 690 – Advanced Operating Systems
    • CS 613 – Computer Architectures
    • CPE 536 – Internals of Modern Operating Systems
    • CPE 631 – Advanced Computer Systems Architecture

Cybersecurity (3 hours)

Students must complete 3 hours of Cybersecurity taking one of the following courses:

  • CPE 549 – Introduction to Cybersecurity Engineering
  • CS 585/685 – Introduction to Software Security

Concentration (6 hours)

Students must complete 6 hours in one of the available concentration areas.

Area 1: Big Data or Data Mining (6 hours)
  • CS 554 – Introduction to Cloud Computing
  • CS 696 – ST: Big Data Analytics
  • CS 696 – ST: Machine Learning
  • CS 696 - ST: Data Visualization
  • CS 641 - Data Mining
Area 2: Project Management (6 hours, ISE 690 required)
  • EM 660 – Engineering Management Theory
  • MGT 601 – Introduction to Technology Development
  • MKT 604 – New Product Development
  • ISE 690 – Statistical Methods for Engineers
Area 3: Parallel Programming (6 hours)
  • CPE 512 – Introduction to Parallel Programming
  • CPE 612 – Parallel Algorithms
  • CPE 613 – General Purpose GPU Computing
Area 4: Embedded Systems (6 hours)
  • CPE 538 - Real Time & Embedded Systems
  • CPE 523 - Hardware/Software Co-Design
  • CPE 621 – Advanced Embedded Systems
Area 5: Advanced Cybersecurity (6 hours)
  • CPE 649 – Advanced Cyber Security Engineering
  • CPE 645 – Computer Network Security
  • IS 663 – Computer Forensics

Elective Course (3 hours)

Students must complete an additional 3 hours of electives.

Thesis Hours (minimum of 6 hours required)

CPE MSSE thesis-option students must complete a minimum of 6 hours of CPE 699.

 

Non-thesis Option (30 hours total)


In place of 6 hours of CPE 699, non-thesis CPE MSSE students must complete

  • An additional elective course (3 hours), and
  • The MSSE capstone course CPE 657 – Software Engineering Studio (3 hours)