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 Cybersecurity 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