MSE in Computer Engineering

Students applying for the master’s program in computer engineering are expected to have an undergraduate background in computer engineering. All entering students must demonstrate knowledge of the material covered in the foundation requirements described below.

Foundation Courses

  • EE 315: Introduction to Electronic Analysis and Design
  • CS 317: Introduction to Design and Analysis of Algorithms
  • CPE 336/CS 490: Operating Systems
  • CPE 421/CPE 521: Microcomputers
  • CPE 431/CPE 531: Introduction to Computer Architecture
  • EE 420/500 or ISE 390: Random Signals and Noise or Probability and Statistics

More Information

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 their knowledge of the material. Up to 6 credit hours from CPE 521, CPE 531, or EE 500 may be applied towards a student’s graduate program under the following conditions:

The student has completed the foundation courses at UAH as a part of their graduate program. The student is enrolled in Plan II (non-thesis) MSE in the CPE program Note: Any course taken during an undergraduate program and applied to the undergraduate degree cannot be used for a graduate degree program.

Coursework requirements for MSE Degree Programs in Computer Engineering In addition to the department coursework requirements for the MSE degree, the MSE degree in Computer Engineering has the following coursework requirements for I) math minor, II) CPE core courses, III) engineering minor, and IV) thesis (Plan I students) or supporting courses (Plan II students).

I. Math Minor

Students must complete an approved 2-course sequence with mathematical or theoretical foundation for Computer Engineering graduate studies. The courses must be approved by the student’s academic advisor.

Recommended Course Sequences.

  • MA585 Probability CPE 619: Modeling and Analysis of Computer and Communication Systems
  • MA540: Combinatorial Enumeration MA640: Graph Theory
  • 3MA640: Graph Theory MA740: Combinatorial Algorithms
  • EE 528: Analytical and EE 628: Analytical and Computational
    Computational Methods in EE II Methods in EE I
  • CS 555: Formal Program CS 603: Formal Languages and Development Automata Theory
    College of Engineering 113

II. CPE Core

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

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

III. Engineering Minor

Students must select an approved 2-course sequence from one of the following areas of specialization or from an approved engineering department. At least one should be at 600 level. The selected courses must be approved by the student’s academic advisor.


  • Computer Communications and Networked Systems
  • Computer Systems (including Architecture, OS and Compilers)
  • Hardware and VLSI Systems
  • 4Parallel and Distributed Processing Systems and Theory of Computation
  • Real-Time and Embedded Systems
  • Digital Signal Processing and Image Processing

IV. Thesis or Supporting Courses

For Plan I, one more course is required preferably at the 600 level, and the student must complete a thesis.
For Plan II, Student must select 4 additional supporting courses, including the ECE capstone course package (CM 601, EE 691 and EE 692). At least 2 must be at 600 level. A student may complete CPE 695: Projects in Computer Engineering as one of the courses. All courses must be approved by the student’s academic advisor