Master of Science in Computer Engineering


Program Director: Mitch Thornton, Ph.D.

Admission Requirements

In addition to meeting the Lyle School of Engineering admission requirements for an M.S. degree, applicants are required to satisfy the following:

  • Bachelor's degree in computer engineering, computer science, or closely related discipline. Applicants with undergraduate degrees in other disciplines may also be admitted to the program and required to take articulation course work.
  • A minimum GPA of 3.000 on a 4.000 point basis in the student's junior and senior years. 
  • A reasonable level of mathematical maturity.

Degree Requirements

In addition to meeting the Lyle School of Engineering degree requirements for an M.S. degree, candidates are required to satisfy the following:

  • Either 24 credit hours of coursework and a master’s thesis or 30 credit hours of coursework. 
  • Twelve credit hours of core courses. Students on campus are required to register for a seminar course (for zero credit hours of credit) for at least one term and secure a grade of Pass.
  • Six credit hours of concentration. Thesis students take six credit hours of thesis, instead of concentration. 
  • Twelve credit hours of electives. All students are allowed to take at most three credit hours of independent study, which will be counted as one elective course.

The CS Department requires that the courses taken constitute a coherent program leading to mastery in computer engineering. These requirements are discussed in the subsequent subsections. Any deviation from the stated requirements must be approved in writing from the student’s adviser and department chair.


All students entering the program are expected to possess knowledge equivalent to the following courses:

  • CS 1341 Principles of Computer Science
  • CS 1342 Programming Concepts
  • CS 2240 Assembly Language Programming and Machine Organization
  • CS 2341 Data Structures
  • CS 2353 Discrete Computational Structures
  • CS 3353 Fundamentals of Algorithms
  • CS 3381/ECE 2381 Digital Logic Design
  • CS 4381/ECE 3382 Digital Computer Design

Students with deficiencies may be granted conditional admission to the program and be required to take courses as articulation. Students are required to complete these articulation courses, maintaining a 3.000 average. The student who fails to achieve this record is automatically dropped from the graduate program, may not enroll in graduate courses and may be denied the right to petition for readmission. Students who maintain a 3.000 GPA in these courses may advance into the balance of their plan of study. As nearly as possible, these articulation courses should be completed before the courses in the balance of the plan of study are attempted. An articulation course must be completed before undertaking any graduate coursework, which requires it as prerequisite.

Residency and Level Requirements

  • A minimum of 30 graduate credit hours must be earned towards an M.S. degree, of which at least 24 must be earned in residency at SMU. Up to six credit hours may be transferred with departmental approval.
  • Of the 30 credit hours needed for graduation, at least nine credit hours must be above the 8000 level, with the remainder above the 7000 level. For the 8000 level, at least six credit hours must be CS courses.

Distribution of Courses

Courses are considered to be core, concentration, or elective. Core courses cover material considered fundamental to graduate-level computer engineering and are required of all students. Each student is expected to specialize in some area of computer engineering. The concentration area is a mechanism by which a student can tailor a coherent program of study to his/her interests. Electives are courses taken to round out the 30 credit hour requirement. Transferred credits may be used to satisfy any of these requirements. The specific requirements are discussed in detail in the following subsections.

Course Requirements

A student who elects to take the non-thesis option must take 12 credit hours of core courses, six hours of concentration, and 12 credit hours of electives. The electives may be selected from available graduate-level course offerings in the Lyle School of Engineering, subject to the residency and level requirements and adviser approval. Those who elect to take thesis option will substitute the concentration with thesis credit hours.

Core Courses (12 credit hours)

The core consists of the following required courses:

  • CS 7343 Operating Systems and Systems Software
  • CS 7344 Computer Networks and Distributed Systems
  • CS 7381 Computer Architecture
  • CS 7387 Digital Systems Design
  • CS 8098 Computer Science Seminar

Concentration (6 credit hours in one of the following programs)

Two of the following:
CS 7385 Microprocessor Architecture and Interfacing
CS 8377/ECE 8379 Fault-Tolerant Computing
CS 8380 Parallel and Distributed Processing
CS 8383 Advanced Computer Architecture

Design Automation:
Two of the following:
CS 7380 VLSI Algorithms
CS 7387 Digital Systems Design
CS 8377.ECE 8379 Fault-Tolerant Computing
CS 8387/ECE 8387 Switching Theory and Applications in VLSI CAD

Two of the following:
CS 7348 Internetworking Protocols and Programming
CS 7349/ECE 7349 Data and Network Security
CS 8344 Computer Networks
CS 8349 Advanced Network and System Security

Electives (12 credit hours)

Electives may be selected from available graduate-level course offerings in the Lyle School of Engineering, subject to the residency and level requirements and adviser approval.

Thesis Option

A student may elect to write a master’s thesis, which counts as the six credit hours of concentration. The student must register for at least six credit hours under ECE 7(1–6)96. If the thesis option is chosen, all other requirements are the same. The six credit hours of thesis satisfy six of the nine required credit hours for advanced (ECE 8000 level) courses.

A master’s thesis represents one or more of the following: synthesis of divergent ideas or a scholarly critique of current literature, a creative research activity or a significant design project, the results of which must be documented in a well-written thesis. The thesis should be of publishable quality, and it is recommended that it be submitted to an appropriate conference or journal before the thesis defense.

A thesis must be supervised by a faculty adviser selected by the student. Any full-time faculty member supporting the student’s concentration area may serve as the thesis adviser. It is the student’s responsibility either to find an adviser willing to provide a thesis topic or willing to supervise a topic of the student’s choosing.

Once the student has found an adviser and a topic has been selected, the student and adviser should jointly form a thesis supervisory committee. This committee must consist of at least three members, two of whom must represent the concentration area. The adviser chairs this committee. The makeup of this committee must be approved by the chair of ECE and the director of the graduate division.

The student must provide the members of the committee with a written thesis proposal. Typically, this will be done before the faculty agrees to serve on the committee.

A thesis is judged by the supervisory committee based upon technical merit, originality, and presentation. The thesis must be presented orally to the committee at a thesis defense. A copy of the thesis must be made available to each member of the committee at least two weeks before the planned defense. The defense must be scheduled with the ECE department office and posted in appropriate bulletin boards. The defense is open to the public.

Degree Plan

Course Descriptions

Graduate Catalog

Graduate Catalog Archives

M.S. | Computer Engineering Flyer (.pdf)

M.S. | Computer Engineering + MBA