M.S. in Computer Science

The Department of Computer Science offers advanced coursework and several options leading to the Master of Science degree in Computer Science. Successful M.S. candidates must demonstrate an in-depth knowledge of computer science.

Graduate Advisor of Record

Dr. Sumit Jha


Admission Requirements

Applicants must meet University-wide graduate admission requirements. The Master of Science in Computer Science admission requires the rough equivalent of a Bachelor’s undergraduate degree majoring in computer science or equivalent training from a foreign institution.

Applicants whose previous academic training has been in non-Computer Science course work may be admitted to the CS program but are required, as a condition of admission, to complete (in total or in part, depending upon the background of each applicant) the Computer Science background course work. Roughly half of the undergraduate computer science background courses are required for consideration of MS- Computer Science admission consideration. In practice, other factors will be taken into account during admission consideration.

The following UTSA undergraduate courses or their equivalents are required of all prospective graduate students:

CS    1083            Programming I for Computer Scientists
CS    1713, 1711  Introduction to Computer Programming II and Recitation 
CS    2123, 2121  Data Structures and Recitation
CS    2233            Discrete Mathematical Structures
CS    3333            Mathematical Foundations of Computer Science
CS    3343            Analysis of Algorithms
CS    3423, 3421  Systems Programming and Recitation
CS    3443            Application Programming
CS    3723            Programming Languages
CS    3733            Operating Systems
CS    3843, 3841  Computer Organization and Recitation
CS    3853            Computer Architecture
MAT  1214           Calculus I  (The student who is not prepared for MAT 1214 must take MAT 1093 Precalculus.)
MAT  1224           Calculus II

Detailed course descriptions are provided on the Undergraduate Catalog: www.utsa.edu/ucat/

The courses MAT 1214 and 1224 are standard calculus courses for mathematics and engineering majors. CS 1063 is a Java-based introductory programming course. CS 1713 is a C-based  introductory programming course. CS 2123 is a C-based introductory data structures course. CS 2233 covers logic, automata, Boolean algebra, and various mathematically oriented topics. CS 3333 covers introductory probability and statistics. CS 3423 has a C/Unix emphasis. CS 3443 is a Java-based advanced programming course. CS 3843  covers assembler programming as well as various topics from computer systems organization.

A conditional admission to the graduate program will include a list of course deficiencies, based on the above minimal background course list, and possibly grade conditions based on the student's grades in undergraduate course work. In case a student is denied even conditional admission, he or she may apply for and be admitted as a special undergraduate student. Such a student may take undergraduate courses, or a graduate course with permission from the graduate advisor and the course instructor.

M.S. Program Guidelines

The guidelines listed here are meant to supplement the Master's Degree Regulations and Graduate Program Requirements listed in the UTSA Graduate Catalog and to assist admitted students in meeting the requirements of the program. All general requirements listed in the catalog must be satisfied in addition to the requirements listed here which are specific to the Master of Science Degree in Computer Science. It is the student's responsibility to know and satisfy all relevant requirements.

Steps towards Graduation

  • Be admitted to the program as a degree seeking graduate student
  • Remove conditions of admission
  • Select an academic advisor
  • Establish an M.S. Supervisory Committee
  • Have an approved Program of Study
  • Complete 24 hours of courses (12 core + 12 elective)
  • Choose one of the three options below and complete its requirements
  • Apply for the degree. From the graduate catalog ... "It is the student's responsibility to apply officially for his or her degree at the Office of Admissions and Registrar no later than October 1 for the Fall Semester, February 1 for the Spring Semester, or June 15 for the Summer Session."

Steps to Take at Each Semester

  • Decide on the courses you would like to take.
  • Update your 2-year plan or follow your approved Program of Study.
  • Update your Plan for Removal of Conditions if you still have conditions which have not been satisfied.
  • Meet with your advisor to discuss your progress. (This may be done electronically.)

The Thesis option

Requirements of this option include:

  • Choose a thesis topic and write a thesis proposal
  • Have thesis proposal approved by M.S. Supervisory Committee
  • Complete 6 hours of thesis
  • Successfully defend the thesis
  • Formally submit the thesis to the university

Students who intend to write an M.S. thesis should develop a thesis proposal in conjunction with their advisor that outlines the topics, scope, and objectives of the proposed thesis. The thesis topic will normally be in a common interest area to both the student and the advisor. The thesis proposal should be discussed with and approved by the student's M.S. Supervisory Committee before the student begins the research and writing of the thesis. A signed copy of the proposal must be placed in the student's permanent file prior to registering for CS6983 Master's Thesis. Please note that the Thesis Director and Thesis Committee referred to in the UTSA Graduate Catalog are the student's advisor and M.S. Supervisory Committee, respectively, in these guidelines. The student may apply up to a maximum of 6 hours of CS 6983 Master's Thesis toward the master's degree. Under the thesis option, the student can also apply up to 6 hours of CS5971-6 Directed Research and/or CS6953 Independent Study (normally in the same area of the thesis research) in the required course work. The total number of credit hours on research courses (including CS5971-6, CS6953, and CS6983) is limited to 6.

The Non-thesis Option I

Requirements of this option include:

  • Choose a project topic and write a project proposal
  • Have project proposal approved by M.S. Supervisory Committee
  • Complete 6 hours of directed research, independent study, or classroom-taught courses
  • Successfully defend project
  • Submit project output to the Department

Students who choose the non-thesis option must either complete a project or complete a program of course work. The option I may involve a project of a large programming or hardware development effort which is usually done over two semesters and includes a report or user's manual submitted as a UTSA CS Technical Report. Alternatively, Option I may involve producing a research paper or technical report which is to be submitted for publication with at least the student and advisor as co-authors. The project topic will normally be in a common interest area to both student and advisor. The project should be discussed with and approved by the student's M.S. Supervisory Committee before the student begins work associated with the project. A signed copy of the proposal must be placed in the student's permanent file. The student may apply up to a maximum of 6 hours of CS5973 Directed Research toward the master's degree. Under the non-thesis option I, the student will typically not apply any hours of CS6983 Master's Thesis toward the master's degree. Note that this is automatic since the only way to get a grade in CS6983 Master's Thesis is to complete a thesis. In addition, although the student may apply hours of CS 6953 Independent Study towards the M.S. degree under this option, the total number of hours of CS 6953 and CS 5973 is limited to 6 hours.

The Non-thesis Option II

Requirements of this option include:

  • Complete additional 6 hours of classroom-taught courses
  • Choose a topic and a list of (typically 3) papers on the topic
  • Have topic and papers approved by the M.S. Supervisory Committee
  • Give an oral presentation followed by an oral examination

This option requires that the student select a topic, read a list of papers in this topic, which were not discussed in any of the student's courses, and do a formal oral presentation as an open seminar. The topic and list of papers should be discussed with and approved by the student's M.S. Supervisory Committee before the student begins reading the papers and preparing a presentation. A signed copy of the topic and list of papers must be placed in the student's permanent file. Under the non-thesis option II, the student will typically not apply any hours of CS 5933 Internship in Computer Science, CS 5973 Directed Research, CS 6983 Master's Thesis or CS 6953 Independent Study toward the master's degree.

The Comprehensive Examination

The university-wide comprehensive examination requirement is satisfied by computer science students by either the oral thesis defense or the oral examination taken as part of the non-thesis option. In all the cases, the student will make a formal public presentation followed by an oral examination. Please note that University policy requires students to have completed all conditions of admission before taking the comprehensive examination. The student must register for CS6961 Comprehensive Examination if no other course is taken in the student's final semester. The Comprehensive Examination is conducted by the student's M.S. Supervisory Committee. The format of the oral examination will consist of an open presentation of the student's thesis, project, or topic/papers followed by a closed period of questioning based on the content of the presentation and the student's proposed Program of Study.

The Two-year Plan

Each student, in consultation with the student's advisor must develop a two-year plan of study which includes courses that the student plans to take during each semester for the next two years. This plan will be revised each semester and contain as much detail as possible. The plan will be kept in the student's permanent file. Each student who is admitted with conditions must, in consultation with the student's advisor, formulate a plan for removing these conditions by the end of the first year. The plan must be updated at the beginning of each semester in which the student is enrolled. The plan will contain a list of all conditions not yet fulfilled and for each condition a method and time frame for removing that condition. The plan will be signed by the student and the student's advisor and reviewed by the Graduate Advisor of Record. Conditions are not officially removed until the Graduate Studies Committee has reviewed the student's record and certifies that all conditions have been met.

For full-time students this plan will contain a complete tentative Program of Study. It is recommended that the student use the Program of Study form and Computer Science approval form as templates since the two-year plan will evolve into the student's Program of Study. The following information is included on these forms:

  • Name of student and advisor
  • List of graduate courses already completed which will be applied toward the degree
  • Catalog of graduation
  • A checklist with the following information
    • Admission conditions satisfied?
    • Program of Study approved?
    • Option chosen: thesis or non-thesis?
    • M.S. Supervisory Committee approved?
    • Comprehensive examination completed?
  • A list of courses/credits (by semester) planned to be taken/earned over the next 2 years
  • Date and signatures of the student and advisor

The Program of Study

The student in consultation with his/her advisor must complete a Program of Study consisting of at least 30 semester hours of graduate work including at least 8 formal graduate courses which will be applied to the degree.The student must submit a Program of Study prior to the completion of 18 semester hours of graduate work that will be applied to the degree. The Program of Study specifies the courses and options chosen by the student, indicates which catalog the student will be graduating under, and must be approved by the student's M.S. Supervisory Committee and the Graduate Studies Committee. The Program of Study cannot be submitted to the Office of the Associate Dean of Academic Affairs for approval if there are unsatisfied admission conditions.

The form Program of Study for the Master's Degree should be submitted by the student. This form must be accompanied by the "Approval Form for Computer Science Program of Study" which is available from the Department Office.

The Advisor and Supervisory Committee

Upon the admission into the program, each student is assigned a faculty member as the student's academic advisor who will guide the student through the program. The student must (at least electronically) contact with the advisor each semester to discuss the progress towards the completion of the degree program.

Each student must have an M.S. Supervisory Committee, which will provide any necessary direction to the student as well as be responsible for approving the Program of Study and administering the final oral examination. The student's academic advisor serves as the chair of this committee. In conjunction with this advisor, the student must invite at least two other graduate faculty members to serve as M.S. Supervisory Committee members. To establish the committee, the student must fill out the form Recommendation for Appointment of Supervisory Committee for Master's Degree Candidate.

A students may change the academic advisor at any time by filling out the Change of Advisor Form, which is also available in the Department Office. The student is encouraged to change the advisor if the student finds a graduate faculty member whose research interests have a better match with his/her own. If a student is supported on a research project, the faculty mentor would normally be the student's advisor.

Graduate Studies Committee

The Graduate Studies Committee is in charge of the operation of the program. Responsibilities of the committee include the following.

  • Review of applications for admission to the masters program
  • Approval of Programs of Studies and changes
  • Certification of removal of conditions of admission
  • Review of graduate student progress
  • Approval of M.S. Supervisory Committees
  • Assignment of graduate advisors
  • Approval of student petitions to deviate from the usual requirements including:
  • Undergraduate courses taken for graduate credit (very rare);
  • Graduate courses taken from another discipline at UTSA (rare);
  • Transfer of graduate credit from another institution;
  • Approval of outdated UTSA credits earned prior to six years immediately preceding the date the degree is awarded.