Computer Science (M.S.)

Candidates must fulfill the requirements of the College of Graduate Studies and the Department of Computer Science.  See the College of Graduate Studies section for the general requirements applicable to each degree. No 300-level course that is required in the B.S.C.S. curriculum may be used to satisfy the requirements of the graduate degree.

A graduate degree in computer science from UI prepares a student for a lifetime of discovery. It enables the graduate to advance the state of the art in computing, not merely to keep up with it. The graduate program develops the student's critical thinking, investigatory, and expository skills. The student will learn the foundations of computer science theory and application, and the interaction between the two. By understanding the extent and limitation of current knowledge in computer science, the graduate will learn to understand what issues are important and why. He or she will acquire the methodological skills to resolve important open problems and tackle challenging new projects. The student will learn to present problems and solutions, both orally and in writing. For examples of active research areas please visit the department’s website

The study of computer science at the graduate level requires mathematical maturity, skill in the use of high-level and machine-level programming languages, and basic knowledge of computer hardware. Admission to this program is highly competitive. An undergraduate degree in Computer Science is not a requirement. Students with a bachelor’s degree from other closely allied undergraduate programs will be considered. Students who wish to enter the graduate program must ultimately demonstrate competence in specific areas equivalent to the material covered in several of the undergraduate computer science core courses. We expect at least a 3.0 undergraduate GPA, but take into account other student achievements. International students for whom English is a second language must have a TOEFL score of 550 or higher for the written test, 213 or higher for the computer based test, or 79 or higher for the internet-based test.

As a prerequisite to graduate program admission, competence in the following areas must be demonstrated: knowledge of a structured, high-level language; algorithms and data structures; and a full year of calculus.

If prerequisite requirements are met, a student who does not have an adequate coursework background in computer science may be admitted with deficiencies. He or she must then demonstrate knowledge of this material early on in their graduate studies by either taking the GRE Computer Science Subject Test and receiving a score in the 60th percentile or higher or by completing those courses in which he or she is deficient. Deficiency areas for graduate work in computer science are: computer organization and architecture; computer languages; computer operating systems; software engineering; analysis of algorithms; and theory of computation. Credit for deficiency courses cannot be counted toward the total credits required for the graduate degree.

Master of Science. Major in Computer Science.

The following are requirements for receiving an M.S. degree in computer science from UI. There is both a thesis and a non-thesis option, though in both options the student must complete courses in the graduate CS core and in a focused plan of study. In both options, the student must successfully complete at least 18 credit hours of 500-level courses and at least 18 credit hours of CS courses.

A graduate degree represents mastery of the theory underlying one's discipline, a graduate breadth requirement. This is the foundation on which further study should be based.

The student must acquire depth in at least one major area by developing a focused plan of study in consultation with the major advisor. This should be a program that investigates some aspect of computer science in depth, consistent with the goals of the graduate program in computer science.

The thesis option requires at least 30 credit hours of study. Specific requirements are: graduate breadth requirement; at least one semester of CS Graduate Seminar, CS 501 (1 cr); and Master’s Research and Thesis, CS 500 (at least 6 cr). The thesis must be in the approved format and must represent significant scholarly achievement. The thesis must be presented at a public colloquium.

The non-thesis option requires at least 30 credit hours of study, up to 6 credits of which can be CS 580. Specific requirements are: graduate breadth requirement and at least one semester of CS Graduate Seminar, CS 501 (1 cr). At the end of the program, non-thesis students must pass a comprehensive examination that covers their graduate studies.