Computer Science (M.S.)
Master of Science in Computer Science
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 as well as the interaction between the two. By understanding the extent and limitation of current knowledge in Computer Science (CS), the graduate will learn to understand what issues are important and why. Students will acquire the methodological skills to resolve important open problems and tackle challenging new projects. Students will learn to present problems and solutions both orally and in writing. For examples of active research areas, please visit the Computer Science Department’s website.
Academic Background and Admission Requirements
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. The student 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 deficient courses. 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.
Degree Requirements
Candidates must fulfill the requirements of the College of Graduate Studies and the Department of Computer Science. See the College of Graduate Studies Catalog section for the general requirements applicable to each degree. 300-level courses required in the B.S.C.S. curriculum may not be used to satisfy the requirements of the graduate degree.
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 also 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 following are requirements for receiving an M.S. degree in computer science from UI. There is both a thesis and a non-thesis option. In both options, the student must complete courses in the graduate CS core and in a focused plan of study.
Thesis Option Requirements
The thesis option requires at least 30 credit hours of study. Specific requirements are:
- At least one semester of CS Graduate Seminar (CS 501)
- Three credits of CS and Cyber Research Methods (CS 507)
- At least six credits of Master’s Research and Thesis (CS 500)
Although there is no limit on the number of thesis research credits that may be earned, a minimum of six credits of CS 500 is required; a maximum of ten credits may be used in the study plan for the thesis degree option.
The study plan must include at least 18 credits at the 500-level and at least 18 credits in courses with a CS prefix. CS 500-level courses may count for both of these requirements.
The thesis must be in the approved format, must represent significant scholarly achievement, and must also be presented at a public colloquium.
Non-Thesis Option Requirements
The non-thesis option requires at least 30 credit hours of study. Specific requirements are:
- At least one semester of CS Graduate Seminar (CS 501)
- Three credits of CS and Cyber Research Methods (CS 507)
- At least three credits of Non-thesis Master’s Research (CS 599) and/or Graduate Project (CS 580)
There is a limit on the number of credits earned in non-thesis research (CS 599); the maximum allowed in the study plan for the non-thesis option is six.
The study plan must include at least 18 credits at the 500-level and at least 18 credits in courses with a CS prefix. CS 500-level courses may count for both of these requirements.
At the end of the program, non-thesis students must pass a comprehensive examination that covers their graduate studies.
Please see the Computer Science Graduate Student Handbook for details and program requirements on earning this degree.
- In-depth knowledge of the degree subject matter, integrating and building upon the foundation provided by a relevant undergraduate degree.
- Understanding of the broader implications of research for their field and for society.
- Ability to clearly present, in written form, research results and the broader implications of that research for both the field and society.
- Ability to clearly present, in oral form, research results and the broader implications of that research for both the field and society.
- Ability to do original research and to appropriately and accurately analyze the results.