Degree Requirements


Prerequisite Knowledge

New Students must demonstrate adequate knowledge of Operating Systems and Programming in C/C++/JAVA before beginning the graduate program. We typically require two prerequisite courses. Both the courses do not have to be necessarily taken before you begin to take courses toward your degree. Rather, the prerequisites are usually taken concurrently with classes on your degree plan. The two prerequisites are as follows:

COSC 4302: Operating Systems

COSC 4304: Foundations of Programming

Students may be excused from a prerequisites course if they are able to pass a competency closed book exam administered in the department given on the content of the associated course. Before each semester a competency test is given for each prerequisite course by the Computer Science department for a fee of $75 per examination. Each examination may be taken only once but examinations do not have to be taken before the first semester of enrollment. The tests can be taken later in the student's program, but courses requiring one or more of the two prerequisite courses, mentioned above cannot be taken unless either the prerequisite course has been completed successfully or the corresponding competency test has been passed.

Pay for Prerequisite Tests

You may take these courses at other accredited universities, and we will accept those transfer credits. If you have already taken these courses at an accredited university, you do not need to take them again. You only need to show your transcript when you arrive. Keep in mind, however, that the same course titles may not indicate the same course content. In particular, we find that very few incoming students who have not already studied in the U.S. know C++ very well, and that almost none of them can program multithread applications in a UNIX environment.

In addition, to the prerequisites, our M.S. program requires either nine courses and a thesis or 11 courses and a one-semester project. In both cases, an oral defense is required in addition to a written report. If you are a full time student taking nine credit hours (i.e. three courses) during the Fall and Spring semesters and one course during each of the two five-week summer sessions, you will finish all of your work within two years.


M.S. Core Course Requirement

(6 courses; 16 semester hours )
Students in the Master's program in Computer Science are required to establish competence in several areas considered basic to the field of Computer Science. At least 28 hours of graduate work in computer science and a thesis or project are required for a Master's degree in Computer Science. In order to qualify for the Master's degree, the student must have a 3.0 GPA in all computer science courses and must earn a grade of B or better in each of the core courses. The Core Requirement consists of the indicated number of courses. 

Beginning Spring 2009, graduate students will be required to choose one of the following electives: Simulation, Model Checking, Real-Time Systems, or Advanced Computer Architecture.

Core Courses List

Specialization Areas and Courses

Students in the Master's program in Computer Science are encouraged to specialize at least in two of the designated seven areas of specialization. They have to complete at least 6 credit hours in each of the areas to complete their specialization. So they have to complete a total of 12 credit hours from the courses mentioned in the specialization areas (6 hours from each area).

Specialization Areas and Courses


Thesis Options

Option I ( Thesis )

  1. Completion of the core requirements. 
  2. Students may take one or two courses outside of computer science with the approval of the department chair. At least a "B"(3.0) grade point average must be maintained in course work. At most three "C" grades are permitted in course work, and each "C" must be balanced by an "A" in another computer science graduate level course. Students may not count courses taken in other department to balance "C" grades made in the Computer Science department.  
  3. Completion of COSC 5390 and COSC 5391 and submission of an acceptable thesis. 
  4. Completion of a total of 34 graduate semester hours. 
  5. Successful oral defense of the thesis. If failure occurs, the defense may be repeated. A second failure will cause the student to be dropped from the degree program in Computer Science.

Option II ( Non-thesis )

  1. Completion of the core requirement. 
  2. Students may take one or two courses outside of computer science with the approval of the department chair. At least a "B"(3.0) grade point average must be maintained in course work. At most three "C" grades are permitted in course work, and each "C" must be balanced by an "A" in another computer science graduate level course. Students may not count courses taken in other department to balance "C" grades made in the Computer Science department. 
  3. All non-thesis students must take and satisfactorily complete COSC 5369. This course consists primarily of a significant research project and the submission of a written professional report. 
  4. Completion of a total of 37 hours in graduate level courses.
  5. Successful completion of comprehensive examination, which may be written, oral, or a combination of both upon determination of the Computer Science faculty. This comprehensive exam will cover the five core areas and may also include a programming component.

Final projects and thesis leading to the M.S. degree can be chosen from the following areas:

  • Artificial Intelligence and Neural Networks
  • Computational Complexity
  • Computational Geometry
  • Computer Architecture
  • Data Mining
  • Design and Analysis of Algorithms
  • Distributed Systems
  • Evolutionary Computing
  • Embedded System
  • Game Development
  • Machine Learning
  • Mobile Computing and Applications
  • Networks
  • Parallel and Large-Scale Computation
  • Real Time System
  • Robotics and Intelligent Systems
  • Software Engineering
  • Symbolic Computation
  • Web-based Computing