The Master of Science program in Computer Science is overseen by the Computer Science Graduate Committee (CSGC). The basic guidelines for approval of a student’s program are recommendations appearing in the Communications of the Association for Computing Machinery (ACM), the professional society in Computer Science.

Prerequisites for Admission

Completion of the following courses, or their equivalents, is prerequisite to entry into the program:

CSC 120Computer Programming I4
CSC 220Computer Programming II4
CSC 314Computer Organization and Architecture3
CSC 317Data Structures And Algorithm Analysis3
CSC 427Theory Of Computing3
MTH 161Calculus I4
MTH 224Introduction to Probability and Statistics3
MTH 309Discrete Mathematics I3
Total Credit Hours27

Students may be admitted with deficiencies; these must be completed in addition to the degree requirements.

Requirements for Graduation

Students must complete the Graduate School requirements, and the Departmental requirements described here.

Select either the Thesis Option or the Coursework Option 130-36
Thesis Option
CSC 810Master's Thesis1-6
Select a minimum of 9 credit hours from approved CSC7XX courses
Select 15 credit hours of approved courses
Coursework Option
Select a minimum of 18 credit hours from approved 700 level courses
Select 18 credit hours from approved courses
Total Credit Hours31-42

For both options, at least 18 credit hours must be from CSC 6XX and CSC 7XX courses, and may not include more than 6 credit hours from CSC 670

Each program must include both theoretical and experimental topics. By graduation students will have knowledge in the areas of Programming Languages, Algorithm Design and Analysis, Theory of Computing, Operating Systems, Computer Networks, and Software Engineering. Each program is approved by the CSGC and the Department Chairman or designate. Programs may be individually tailored to meet varied backgrounds and objectives. It is recognized that there are individuals with undergraduate degrees in other fields wishing to pursue graduate work in Computer Science, and individuals with work experience in the field wishing to advance their formal training in Computer Science.