Thesis Option (Fall 2019)

Thesis students, in collaboration with their major professor, thesis director, and guiding committee, chooses a research area when enrolled. This research area is supported by their coursework chosen and then fleshed out in subsequent research hours. This work culminates in a thesis document and defense shared with the community of scholars.

Program of Study

For the MS program with thesis, the program of study requires 31 graduate credit hours:

  • 4 hours (1 course + seminar) in the CS Core (Seminar & Theory)
  • 9 hours (3 courses) in the Primary Specialization
  • 6 hours (2 courses) in the Secondary Specialization
  • 6 hours of Graduate Research (CSE 8000)
  • 6 free hours (2 courses)

Any required courses in the Core or a Specialization previously completed by a student may be applied for completion and replaced with another free course of the student’s and committee’s choosing. Students cannot have more 6xxx level credits then 8xxx credits on their final program of study and majority of credits must have course code CSE. See the Graduate Handbook for additional course policies.


The CS Core ensures students are prepared for graduate study and have a background in computer theory suitable for a graduate in computer science.

  • One Seminar Course: CSE 8011: Seminar
  • One Theory Courses: CSE 8833: Algorithms, CSE 8813: Theory of Computation, or CSE 8843: Complexity of Sequential and Parallel Algorithms.

Classes designated as theory by the faculty can in advance can be used to substitute for the theory requirement on a case-by-case basis.


Specializations allow students to chose where to focus their studies; these specializations delve deeper into research areas of the department. Students choose two specializations to complete: A primary specialization where they take three courses, and a secondary one where they take two courses. Other courses required to fulfill the credit requirements of the degree are left up to the student and their Graduate Committee.

For each Specialization, there is a required introductory course and list of split-level (6xxx) and full graduate (8xxx) affiliated courses. Which courses must be completed depends on whether the Specialization is Primary or Secondary:

  • The Required course must always be completed. If the student completed an equivalent course in previous study, another course of the committee's choice may be substituted.
  • For the Primary Specialization, a full graduate course and another course at either level in the specialization must be completed.
  • For the Secondary Specialization, one course at either level in the specialization must be completed.

The student’s Graduate Committee has final approval of all applicable courses. Currently approved Specialization courses are listed below; others may be used given a committee's approval.

Artificial Intelligence Specialization
  • Required: CSE 6633: Artificial Intelligence
  • Split Level: CSE 6643: AI Robotics
  • Graduate Level: CSE 8613: Cognitive Skill Models, CSE 8673: Machine Learning
Computational Science Specialization
  • Required: CSE 6163: Design of Parallel Algorithms
  • Split Level: CSE 6623: Computational Biology
  • Graduate Level: CSE 8163: Parallel and Distributed Scientific Computing, CSE 8843: Sequential & Parallel Algorithms
Graphics Specialization
  • Required: CSE 6413: Principles of Computer Graphics
  • Split Level: CSE 6453: Game Design
  • Graduate Level: CSE 8413: Visualization, CSE 8433: Advanced Computer Graphics
Human-Centered Computing Specialization
  • Required: CSE 6663: Human Computer Interaction
  • Graduate Level: CSE 8283: Empirical Software Engineering, CSE 8613: Cognitive Skill Models
Software Engineering Specialization
  • Required: CSE 6214: Introduction to Software Engineering
  • Split Level: CSE 6223: Management of Software Projects, CSE 6233: SW Architecture & Design, CSE 6253: Secure Software Engineering, CSE 6283: Software Testing & QA
  • Graduate Level: CSE 8233: Software Engineering Project Management, CSE 8253: Software Design, CSE 8275: Software Requirements Engineering, CSE 8283: Empirical Software Engineering
Systems Specialization
  • Required: CSE 6153: Data Communication & Computer Networks
  • Split Level: CSE 6173: Cryptography, CSE 6243: Information & Computer Security, CSE 6273: Introduction to Computer Forensics, CSE 6363: Software Reverse Engineering, CSE 6383: Network Security
  • Graduate Level: CSE 8713: Advanced Cyber Operations, CSE 8743: Advanced Network Security, CSE 8753: Wireless Networks

Thesis Hours

Graduate students must complete at minimum 6 credit hours of graduate research, indicated by CSE 8000 sections under the direction the major professor or thesis director. Thesis hours representing work as a TA or RA cannot be used for this purpose (unless the RA position is tied to the relevant research).

Other Graduate Hours

Thesis students have 6 additional credit hours of graduate coursework of their choosing that are not tied to Core or Specializations. The only restrictions is that CSE 8080 Directed Project cannot be applied.

Thesis & Defense

The thesis (research) option of the computer science Masters degree program requires that the degree candidate successfully undertake an independent research project and present the results of the research in a defensible thesis document. These guidelines supplement, but do not supersede, those provided by the Graduate School; see their guidelines for additional details such as the deadlines, exam process, submission steps, format for the dissertation, and so on.

For students electing this option, the following steps must be followed:

  1. The student develops a thesis proposal with the major professor containing:
    • a. Introduction to the research being proposed.
    • b. Review of the relevant research in the area.
    • c. Hypothesis, research goals/questions, research relevancy, proposed research methodology/procedures, and publication plan.
  2. The major professor schedules a research proposal session with the students Graduate Committee and gains Committee approval of the proposed research.
  3. The semester before their anticipated graduation, students should review their Program of Study via CAPP on Banner to ensure all coursework will be completed.
  4. Upon completion of the research, the student submits a draft copy of the thesis document to each member of his/her Graduate Committee. This draft copy is must be distributed to the committee members at least one week prior to the planned date of the presentation. All suggestions and concerns should be resolved under the direction of the major professor.
  5. When the student is ready to defend the thesis and be examined, the major professor schedules the presentation and examination. The thesis presentation is open to all students and faculty. The presentation is followed immediately by an oral examination of the student that is open only to the members of the student's Graduate Committee (and the research director).
  6. Once the student has made all changes to the thesis document requested by the committee members and the committee members and the Graduate Coordinator have signed the approval page, the student submits a signed copy of the approval page to the departmental office. Approval of the thesis proceeds from the committee, to the Graduate Coordinator of the Department, and thence to the Dean of Engineering. After all approvals are obtained, the student must submit an electronic copy of the thesis to the Library for final approval.

The Library provides guidelines for the format of theses. Dr. Ramkumar provides a LaTeX template for those wishing to use it, under the disclaimer that Library guidelines are the primary source of formatting and must be consulted at all times.

Previous Catalogs

For students that were admitted before the current Graduate Catalog, please refer to the Catalog archives for relevant information on your program of study: