M.S. Graduate Program (Computer Science)


As provided for by the School of Graduate Studies there are two plans for the Master of Science degree, each requiring 27 semester hours of credit. Plan A requires 9 semester hours of thesis (EECS 651) and 18 semester hours of courses. All coursework must be at the 400-level or higher. Plan B requires a 6 semester hour project (EECS 602) and 21 semester hours of course credit. 

Students must achieve a grade point average of 3.0 or higher; it is computed for all of the courses, excluding project and thesis credits, on the student's program of study.

Both the thesis and the Plan B project require a formal written report, as well as a final oral examination by a committee of three faculty members, two of whom must be in the EECS department. A student whose thesis is supervised by someone outside the EECS department must also have a faculty co-advisor in the department. For Plan B students, the oral examination fulfills the Comprehensive Examination requirement of the School of Graduate Studies. Plan B is normally restricted to part-time students.

Plan B is normally restricted to part-time students or students in the BS/MS program with the approval of their project advisors. (A BS/MS student who follows plan B is required to do a two semester 6 credit hours MS project.)

Each student has a faculty advisor who assists the student in formulating a program of study. Normally the faculty advisor is the supervisor of the student's M. S. thesis or project; initially a faculty advisor is assigned until the supervisor has been determined. Each student, in consultation with his/her faculty advisor, must submit a Planned Program of Study to the Chair of the Graduate Studies Committee before completing 9 semester hours of credit.

When applying to this program, please select the CIS (Computing and Information Sciences) option in your application.


Course Requirements

The M. S. program in Computer Science requires students to have substantial knowledge of undergraduate computer science material. This includes knowledge in data structures, algorithms and operating systems equivalent to that in the courses:

EECS 233 Introduction to Data Structures

EECS 340 Algorithms and Data Structures

EECS 338 Introduction to Operating Systems

This requirement is normally satisfied by taking courses at the student's undergraduate university which contain most of the material in the above courses. Students deficient in one or more of these areas can satisfy this requirement by taking the corresponding course listed above. A student taking a more advanced course in an area automatically demonstrates knowledge of the material in the area; e.g. taking EECS 454 Analysis of Algorithms demonstrates knowledge of the material in EECS 340.

Students are required to have graduate level knowledge of some core computer science topics. This requirement is met by taking at least three of the following courses:

EECS 405 Data Structures and File Management

EECS 423 Distributed Systems

EECS 425 Computer Networks I

EECS 433 Database Systems

EECS 454 Analysis of Algorithms

EECS 491 Artificial Intelligence

EECS 493 Software Engineering

Students are also required to have some more advanced/specialized computer science knowledge. This requirement is met by taking at least one course from the following list:

EECS 419 Computer System Architecture

EECS 428 Computer Communications Networks II

EECS 435 Data Mining

EECS 436 Advances in Databases

EECS 439 Web Data Mining

EECS 440 Machine Learning

EECS 441 Internet Applications

EECS 444 Computer Security

EECS 458 Biolnformatics

EECS 459 Bioinformatics for Systems Biology

EECS 466 Computer Graphics

EECS 484 Computational Intelligence I: Basic Principles

EECS 531 Computer Vision

EECS 600 Special Topic in Computer Science (with advisor approval)