University of Iowa homepage
 

Graduate Program Summary

The University of Iowa’s Department of Computer Science admits students to two distinct graduate programs:

  • Doctor of Philosophy (PhD) in Computer Science
  • Master of Computer Science (MCS)

The first program is a research-based degree intended for students wishing to pursue careers in academia or research laboratories.  The second is a coursework-only degree intended for those who wish to obtain additional post-baccalaureate training before seeking employment.

We recommend that students first determine their eventual academic goal and then apply directly to the appropriate program (e.g., PhD or MCS).

Doctoral Program

Students can be admitted directly to the PhD program, regardless of whether they already hold a masters degree, although transfer credit is available under certain conditions for these students. Doctoral students admitted without a masters degree may opt to receive a Master of Science (MS) degree during the course of their studies.

The PhD requires a minimum of 72 semester hours, three examinations (qualifying, comprehensive and final), and the preparation of a dissertation.  Course selection must satisfy the following constraints:

All PhD students must complete:
     22C:231 Design and Analysis of Algorithms
     22C:135 Theory of Computation

All PhD students must complete at least three of the following courses, with at least one course selected from each area:

     Systems and Software:
          22C:160 High Performance Computing Architecture
          22C:162 Advanced Operating Systems

     Networks and Distributed Systems:
          22C:166 Distributed Systems
          22C:168 Computer Communications

     Programming Languages and Compilers:
          22C:181 Formal Methods in Software Engineering
          22C:185 Programming Language Foundations
          22C:186 Compiler Construction

All PhD students must complete at least one course having significant practical or implementation-oriented content.  Courses satisfying this requirement will be so designated each semester, and will typically include, for example:
     22C:144 Database Systems
     22C:145 Artificial Intelligence
     22C:151 Computer Graphics
     22C:165 Parallel Programming
     22C:174 Optimization Techniques
     22C:177 Parallel and High Performance Algorithms in Scientific Computing
     22C:180 Fundamentals of Software Engineering
     22C:198 Individual Programming Projects

All PhD students are required to select, in consultation with their advisor, a set of courses constituting coherent coverage of an external cognate area. Reasonable choices include, but are not limited to, mathematics, statistics, genetics, biology, or an engineering discipline.

PhD students should fill their remaining semester hours with a selection of CS graduate courses (excluding those numbered 22C:100-119) and non-CS graduate courses approved by their advisor.

Master of Computer Science

The Master of Computer Science is a non-thesis professional degree.  It requires a minimum of 32 semester hours of credit. Students must complete at least 24 semester hours through enrollment at The University of Iowa, including at least 8 semester hours of course work taken on campus.

All MCS students must complete one or more of the following courses:
     22C:131 Limits of Computation
     22C:135 Theory of Computation
     22C:231 Design and Analysis of Algorithms

All MCS students must complete one or more of the following courses:
     22C:160 High Performance Computer Architecture
     22C:162 Advanced Operating Systems
     22C:166 Distributed Systems and Algorithms
     22C:168 Computer Communications
     22C:181 Formal Methods in Software Engineering
     22C:185 Programming Language Foundations
     22C:186 Compiler Construction

MCS students should fill their remaining 24 semester hours with a combination of CS graduate courses, reading and project courses, and non-CS graduate courses approved by their advisor and subject to the following constraints:

     No CS graduate courses numbered 22C:100-119.

     At least 6 CS graduate courses excluding courses numbered 22C:190-199,
     22C:290-299, or 22C:390-398.

     At most 1 CS graduate course numbered 22C:190-199, 22C:290-299, or
     22C:390-398.

     At most 2 non-CS graduate courses of a technical or quantitative nature
     approved by their advisor.

Additional information about our graduate programs can be found in the Graduate Student Handbook available at http://www.cs.uiowa.edu/ProspectiveStudents/index.html.

Last modified: April 9, 2007

University of Iowa Logo College of Liberal Arts and Sciences Logo Computing Research Association Logo Association for Computing Machinery Logo
Translate this page automatically.
 
©2005 The University of Iowa, All Rights Reserved.