Graduate Courses and Degree Options

Degree Requirements

The Department of Computer Science offers courses on a semester basis. Thirty-six credit hours are required for a master's degree. All students are required to pass the departmental Graduate Comprehensive Examination.  Students can choose one of the three degree options: Thesis, Project or Course-only option.

Areas of Emphasis

Networks & Communications              Software Engineering

Computer Architecture                        Information Systems

Algorithm Design & Analysis              Artificial Intelligence

Parallel/Distributed Computing            Informatics     

Modeling and Simulation                    Data Science

Computability & Complexity               Cyber Security

Course Requirements for the Degree Options

All the three degree options require 36 credits, out of which 12 credits of core courses and 9 credits of major courses are required. The option specific requirements are:

Thesis: Core (12 credits), Major (9 credits), Electives (9 credits) and CSC 599 (6 credits)

Project: Core (12 credits), Major (9 credits), Electives (12 credits) and CSC 595 (3 credits)

Course-only: Core (12 credits), Major (9 credits), Electives (12 credits) and CSC 561 (3 credits)

Core Courses                                                  Semester

Course Title                                                    Hours

CSC 511 Object-Oriented Programming                 3  

CSC 512 Computer Architecture                            3

CSC 515 Data Structures and Algorithm Analysis   3 

CSC 518 Operating Systems                               3

            Total Hours                                           12


Major Courses  

Students must choose three major courses for a total of 9 hours

CSC 519 Principles of Programming Languages     3

CSC 520 Database Management Systems            3

CSC 524 Comp. Com. Networks and Distributed Processing   3

CSC 525 Wireless Ad hoc Networks                     3

CSC 526 Automata Theory                                   3

CSC 527 Real-time Systems                                3

CSC 529 Compiler Construction                            3

CSC 530 Theory of Computation                           3

CSC 531 Computer Simulation Methods and Models   3

CSC 537 Cloud Computing                                 3

CSC 541 Cryptography and Network Security     3

CSC 545 Artificial Intelligence                            3

CSC 549 Applied Combinatorics and Graph Theory   3

CSC 551 Parallel and Distributed Computing      3

CSC 555 Information Storage and Retrieval        3

CSC 560 Software Engineering                            3


The elective courses that can be included in the student's degree plan must be approved by the student's Major Advisor and the Department Chair. The elective courses need to be of CSC course prefix and have to be at the 5xx and/or 6xx-levels.


(Thesis, Project or Course-only options)          36


Graduate Course Descriptions