For Ph.D. Students Only
In addition to the general exam, two requirements must be satisfied: breadth and programming. You are expected to complete the breadth requirement by the end of year 2. In special circumstances your advisor may request an additional year provided that you have completed 4 of the 6 courses. The programming requirement must be completed by the end of year 2.
This requirement can be satisfied in either of two ways - through successful completion of a project that involves substantial programming (done under faculty supervision) or by taking a course and receiving a satisfactory grade (normally B+ or higher). Acceptable courses are 318, 320, 425, 426, 429, 461, 518, 526, 561, or any approved graduate course. Taking only the course exam does not give programming credit.
The breadth requirement covers four main groups: Computer Systems, Software Systems, Intelligent Computing, and Theory. A total of 6 courses are required; one from each group and one additional from two of the four groups. For courses offering a final exam, you may opt to just take the final. For courses without a final, you must take the course for a grade. Credit will not be given for both the introductory and advanced versions of the same course, i.e., 318/518; 375/475; 426/526; 461/561. Acting as a teaching assistant does not give you credit for that course.
A grade of A- or higher will normally be expected for exams or courses. However, all grades will be reviewed by the faculty and a lower grade may be acceptable based on your total record.
Individual research areas may set additional requirements for their students; they may specify certain courses to be taken or may require that courses in excess of the departmental requirement be taken.
* Course may be taken only as second course in this group. No credit given if only course taken in group.
In addition, the director of graduate studies may designate certain 500 level courses as alternate choices.