Students applying for the master’s program in Computer Engineering usually have an undergraduate background in Computer Engineering. Students coming from different backgrounds may be required to demonstrate knowledge that is presented in the following UAH Computer Engineering undergraduate courses before they pursue graduate school.

Foundation Courses

  • CPE 211: Introduction to Computer Programming in Engineering
  • CPE 212: Fundamentals of Software Engineering
  • CS 317: Introduction to Design and Analysis of Algorithms
  • EE 202: Introduction to Digital Logic Design
  • EE 315: Introduction to Electronic Analysis and Design
  • CPE 323: Intro to Embedded Computer Systems
  • CPE 431/CPE 531: Introduction to Computer Architecture

An entering student can demonstrate knowledge of the material in one of the following ways: completing the courses at UAH, completing similar courses at another institution, or evidence based on employment experience. A student may be required to successfully pass a placement exam to demonstrate his/her knowledge of the material.

Coursework Requirements for the MSE Degree Program in Computer Engineering

Both the Plan I and Plan II options for the MSE Degree in Computer Engineering require 24 hours of graduate-level course work in Computer Engineering and related areas. This course work should include the following three core courses:

  • CPE 512: Introduction to Parallel Programming,
  • CPE 526: VLSI Design Using Hardware Description Languages, Modeling, and Synthesis
  • CPE 631: Advanced Computer Systems Architecture.

Students who have already completed these or similar courses elsewhere may request course substitutions. All substitutions must be approved by the student’s academic advisor.

The coursework requirement for the MSE Degree in Computer Engineering includes I) 12 hour Major, II) a 6 hour Math Minor, and III) a 6 hour Engineering Area of Specialization Minor as discussed below.

I. Major

Students must complete 12 hours of graduate-level course work in a selected area of specialization.  Common areas of specialization are shown below:

  • Real-Time and Embedded Systems
  • Parallel/Distributed and Cloud-enabled Computing
  • System Software (Operating Systems, Translation Methods and Compilers)
  • Computer Organization and Architecture
  • Software Safety and Cybersecurity
  • Reconfigurable Hardware and VLSI Systems
  • Computer Communications and Networks

II. Math Minor

Students must complete an approved 2-course sequence that provides a mathematical or theoretical foundation that is useful for advanced studies in Computer Engineering. The courses must be approved by the student’s academic advisor.

Commonly Approved Math Foundation Course Sequences

  • MA540 Combinatorial Enumeration and MA640 Graph Theory
  • MA585 Probability and CPE 619 Modeling and Analysis of Computer and Communication Systems
  • MA640 Graph Theory and MA740 Combinatorial Algorithms
  • EE 629 and EE 630 Analytical and Computational Methods in Electrical Engineering I and II
  • MA 508 Applied Linear Algebra and CPE 645 Computer Network Security

III. Engineering Area of Specialization Minor

Students must select an approved 2-course (6 hour) sequence in an computer engineering, electrical engineering, optical engineering or computer science. At least one course should be at the 600 level. The selected courses must be approved by the student’s academic advisor.

Plan 1, Thesis Option

Students selecting this option must:

  • Complete the 24 hour Coursework Requirement stated above,
  • Complete 6 hours of CPE 699, create an acceptable thesis, and successfully defend this thesis in a public forum.

(30 hours total)

Plan 2, Non-Thesis Option

Students selecting this option must:

  • Complete the 24 hour Coursework Requirement stated above,
  • Complete 6 additional hours of approved graduate course work with at least 3 of these credit hours being at the 600-level or above,

(30 hours total)


  • With prior approval, up to 12 semester hours of 500-level courses may be taken in fulfillment of the MSE requirements.
  • CPE Core courses are included in the 24 hour course work requirement.
  • Unless taken as part of the JUMP program any course taken during an undergraduate program and applied to the undergraduate degree cannot be used for a graduate degree program.

Have questions? Contact your coordinator!

Aleksandar Milenkovic

Aleksandar Milenkovic

ECE Graduate Program Coordinator

Engineering Building Room 217L