The Master’s degree in Software Engineering (MSSE) - Computer Engineering track equips students with advanced knowledge and skills in software development. It focuses on advanced concepts, methodologies, and tools, and delves deeper into topics like software design, development processes, testing, and project management.
The MSSE degree program in the ECE Department caters to three main groups of students:
- Technical-oriented individuals looking to enhance core skills and specialize in areas like parallel programming, embedded systems, cybersecurity, or data analytics.
- Those interested in managing software development projects, providing hands-on experience to understand developer needs and effectively address challenges.
- Engineers with limited software development experience, who undergo foundational courses and MSSE requirements for an intensive crash course in software engineering. This program is increasingly popular among mechanical and aerospace engineers taking on software development tasks in their workplaces.
Admission
Students applying for the Master’s program in Software Engineering usually have an undergraduate degree in Computer Engineering, Computer Science, or Electrical Engineering, or related disciplines. A strong candidate for admission typically meets the following requirements: (a) has a B.Sc. degree from an ABET or CSAB accredited program in Computer Engineering, Computer Science, or Electrical Engineering; and (b) has a GPA above 3.0. International students must demonstrate the linguistic proficiency as defined by the graduate school. (See international student requirements).
Students coming from different engineering backgrounds may be required to demonstrate knowledge that is presented in the following undergraduate foundation courses before they pursue graduate courses.
- Programming in C, C++, or Java (CPE 211)
- Data Structures (CPE 212)
- Discrete Structures (CS 214)
- Design and Analysis of Algorithms (CS 317)
- Introduction to Computer Networks (CPE 348)
- Operating Systems (CPE 434)
Experience in the development of a large scale, industrial strength software system is highly desirable.
Requirements
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 completed at UAH. At least 50% of the credit hours completed must be courses at the 600 level or above.
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 656 – Software Testing
- 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/CS 585 – Introduction to Cybersecurity Engineering
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 637 – Deep Learning
- CS 640 – Machine Learning
- 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: Model-based Engineering (6 hours)
- ISE 627 – Engineering Systems (should be taken first)
- ISE 580 – Systems Engineering Modeling
Area 4: Parallel Programming (6 hours)
- CPE 512 – Introduction to Parallel Programming
- CPE 612 – Parallel Algorithms
- CPE 613 – General Purpose GPU Computing
Area 5: Embedded Systems (6 hours)
- CPE 538 – Real Time & Embedded Systems
- CPE 523 – Hardware/Software Co-Design
- CPE 621 – Advanced Embedded Systems
Area 6: Advanced Cybersecurity (6 hours)
- CPE 555 – Secure Software Development
- CPE 557 – Software Reverse Engineering
- CPE 559 – System Security
- CPE 649 – Advanced Cybersecurity Engineering
- CPE 645/CS 685 – Applied Cryptography
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)
How to apply?
To be considered for admission to the Computer Engineering, MSE program, applicants must complete the following steps
- Create your Charger Status account, and submit the UAH graduate application for admission.
- Send your official college transcript to UAH Graduate Admissions through an electronic delivery service. UAH Graduate Admissions accepts official transcripts from Parchment and Student Clearinghouse.
- Request for your official GRE test scores to be sent to UAH Graduate Admissions by the testing agency. Submission of GRE scores is optional, but is encouraged for applicants seeking an assistantship position.
- Upload the following items directly to your application through Charger Status:
- Personal Statement
- Resume/CV
- 2 Letters of Recommendation
For more information about specific admission requirements for international students, see international student application instructions.
Have questions? Contact your coordinator!
ECE Graduate Program Coordinator
Engineering Building Room 217F
256.824.3583
david.coe@uah.edu