M.S. Computer Science
At the Master's level the Computer Science Department offers both a thesis and non-thesis MSCS degree. A graduate degree in Computer Science from the University of Idaho 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 ones. The student will learn to present problems and solutions, both orally and in writing.
Preparation and Admission
Admission to this program is highly competitive. Although an undergraduate degree in Computer Science is not a requirement, students who wish to enter the Master's program must demonstrate competence in specific areas equivalent to the material covered in several of the undergraduate computer science core courses. 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 decisions are made by the department's Graduate Program Committee. In addition to specific knowledge area prerequisites, normally a 3.0 undergraduate GPA and a Graduate Record Examination general (aptitude) score in the 60th percentile are the minimum admission requirements. Actual admission is based on a combination of knowledge area preparation and undergraduate GPA. CS is no longer requiring GRE scores.
International students for whom English is a second language must demonstrate English language proficiency as evidenced by achieving a TOEFL score that meets or exceeds one of the following minimum requirements:
|Exam Type||Potential Score||Minimum Score for Admission|
|Internet||0 - 120||79|
|Computer||0 - 300||13|
|Written||310 - 677||550|
Prerequisites for Admission
Before being accepted into the Master's program, a prospective student must provide demonstrated evidence that he or she has mastery of certain basic mathematical and computer science skills. Courses covering the following subject are the minimum prerequisites necessary for admission: a structured, high-level programming language (CS 120); data structures (CS 121); computer organization and architecture (CS 150); a full year of calculus (MATH 170 and 175); and discrete mathematics (MATH 176). The University of Idaho courses identified above will satisfy the prerequisite requirements. Equivalent courses taken at other educational institutions will also be accepted. An official record, such as a college or university transcript, that substantiates the preparation, is expected.
Admission With Deficiencies
A student who meets the general requirements and prerequisite requirements identified above may be admitted, but his or her academic credentials will be reviewed to ensure adequate preparation that will support study at the graduate level. A student who does not have an adequate background in specific foundational areas of Computer Science will be required to complete additional undergraduate courses in areas in which he or she is considered to be deficient. Potential deficiency areas for graduate work in computer science are: computing languages (CS 210); computer operating systems (CS 240); system software (CS 270); software engineering (CS 383); and theory of computation (CS 385). The University of Idaho courses identified above will satisfy the deficiency requirements. Equivalent courses taken at other educational institutions will also be accepted. An official record, such as a college or university transcript, that substantiates the preparation, is expected. Credit for deficiency courses cannot be counted toward the total credits required for the graduate degree. Deficiency courses will generally be prerequisites for more advanced courses in the program, consequently, a student with identified deficiencies is expected to complete course work that removes the deficiencies as rapidly as possible.
College of Graduate Studies Requirements
In addition to satisfying departmental requirements, candidates must fulfill the requirements of the College of Graduate Studies. See the College of Graduate Studies section in the University of Idaho Catalog for the general requirements applicable to each degree. No 300-level course that is required in the BSCS curriculum may be used to satisfy the requirements of the graduate degree.
A graduate degree represents mastery of the theory and concepts underlying one's discipline. This is the foundation on which further study should be based. The MS graduate candidate’s major professor and committee will, as part of approving the study plan, help select courses that include the breadth of computer science.
Focused Plan of Study
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. Some examples of areas currently of interest to the faculty are: computer security, software engineering, evolutionary algorithms and artificial intelligence, and fault tolerant computing.
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 credit); and Master’s Research and Thesis, CS 500 (at least 6 credits). 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 credit). At the end of the program, non-thesis students must pass a comprehensive examination that covers their graduate studies.