Qualifying Process – Older

The process below is only applicable for students who entered the PhD program before Fall 2019 AND have taken the Breadth Exam. All other students should be following the current PhD requirements.

The PhD qualifying process consists of three components: 1) advanced course requirement, 2) breadth oral examination, and 3) research skills requirements.

Advanced Course Requirement

PhD students are expected to take at least four 800-level regular courses taught by at least three different faculty members. PhD students are expected to maintain a minimum grade of B in each of these courses.

Regular 800-level courses do not include CS 891 seminars or CS 896 topics courses. If you have any doubt whether a course is a regular 800-level course and will be counted towards this requirement, please check with the GPD.

This requirement should be completed no later than 18 months after admission into the PhD program. Note that these courses will be counted towards the minimum 800-level credit hours requirement for PhD students.

Breadth Oral Examination

The examination should be passed no later than 12 months after admission into the PhD program (preferably during the first 6 months after admission into the program). In case a student fails the examination, it is still expected that the student will pass the examination within 12 months of admission. The examination may be repeated at most once.

The scheduling of this examination will be on-demand. A student wanting to take the breadth examination will contact the GPD at least six weeks before the suggested date of the examination. Once a student has requested an examination, a committee of four faculty members will be formed that will be responsible for evaluating the student.

The examination will last for two hours. On the day of the examination, the student will be given an initial list of questions two hours before the oral examination. Note that this list will not contain follow-on questions, which the committee is free to ask.

Students will be evaluated on their familiarity with the core computer science topics. We have organized these topics under the undergraduate computer science courses categories. The list of courses is given below. For the most recent syllabi for these courses, please visit: http://odu.edu/compsci/course_syllabi.

  • Problem Solving & Programming (CS 250)
    • Malik, C++ Programming: from Problem Analysis to Program Design, 7th Edition, ISBN 9781285852744
  • Introduction to Computer Architecture (CS 270)
    • Patterson and Hennessy, Computer Organization and Design, 5th Edition
  • Advanced Data Structures and Algorithms (CS 361)
    • Weiss, Data Structures and Algorithm Analysis in C++, 4th Edition. 2013, Pearson PH, ISBN-13: 978-0-13-284737-7
  • Introduction to Theoretical Computer Science (CS 390)
    • Hopcroft, Motwani, and Ullman, Introduction to Automata Theory, Languages, and Computation (3rd Edition), 2006, ISBN 0321462254
  • Operating Systems (CS 471)
    • Silberschatz, Galvin, and Gagne. Operating System Concepts. 9th Edition, ISBN 978-1-118-06333-0

Students can expect questions typically asked of undergraduate students in these courses and we want them to pass all questions with an average better than A-/B+. Questions will be knowledge questions, for example:

  • CS 250: Java, C#, etc. are “strongly typed” languages. Explain in detail what that means. Show an example of strong typing in use, both what it allows and what it prevents. What is a language that you are familiar with that is not strongly typed? Which do you prefer and why?

Questions that evaluate the student’s skill in analyzing trade-offs for a given design decision, for example:

  • CS 270 / CS 471: We have inherited 8-bits in a byte as the atomic addressable entity. What if you could go back and change this? Assuming today’s chips, how many bits would you put into a byte? What are the tradeoffs associated with making a byte bigger or smaller?
  • Similarly, in the case of virtual memory, OS designers need to make decisions regarding page size. In early days, when memory size was a constraint, page sizes of 256 bytes or 512 bytes were common. Now that the memory sizes are orders or magnitude higher, what would you suggest as the page size? What are the implications of choosing larger or smaller page sizes?

For additional list of sample questions, please see Sample Questions Breadth Exam.

Form: D3 – Result of Doctoral Examination or Requirement Form (https://www.odu.edu/graduateschool/forms)

Research Skills Requirement

Each PhD student is expected to demonstrate competency in research skills. In the Department of Computer Science, we define this as making a contribution to computer science research.

Students may satisfy this requirement in one of three ways:

  1. publish a peer-reviewed publication in computer science as first author while at ODU
  2. complete a Master’s thesis in computer science
  3. petition the GPD for special examination, with recommendation from the PhD advisor

To use option 1 or 2, the student must provide the GPD and the chair of the appropriate area committee (see below) a copy of the document used to satisfy the requirement. The document will be evaluated by the area committee. The chair of the area committee will notify the student and the GPD of the outcome of the evaluation (sufficient or insufficient). If the evaluation is insufficient, the student may try again with another publication or attempt option 3.

As publishing original research is a requirement for the PhD, it is expected that most students will use option 1 to satisfy the research skills requirement.

Form: D3 – Result of Doctoral Examination or Requirement Form (https://www.odu.edu/graduateschool/forms)

We have the following area committees.  (The new Research Area Committees may also be used.)

Machine Intelligence and Data Analytics Stochastic Modeling Bioinformatics
  • Steven J. Zeil (Chair)
  • Yaohang Li
  • Ravi Mukkamala
  • Danella Zhao
  • Mohammad Zubair
  • Stephan Olariu (Chair)
  • Ravi Mukkamala
  • Michele Weigle
  • Mohammad Zubair
  • Jing He (Chair)
  • Yaohang Li
  • Desh Ranjan
  • Mohammad Zubair
Web Science / Digital Libraries Networks Scientific Computing
  • Michael Nelson (Chair)
  • Michele Weigle
  • Steven Zeil
  • Stephan Olariu (Chair)
  • Shubham Jain
  • Cong Wang
  • Michele Weigle
  • Yaohang Li (Chair)
  • Andrey Chernikov
  • Nikos Chrisochoides
  • Desh Ranjan
  • Mohammad Zubair