Overview

Following graduate division guidelines, the ICS Ph.D. Qualifying Examination is given in the first semester of a student’s residency in the Ph.D. portion of his or her studies. Its purpose is to assess students’ preparation in Computer Science and to identify any deficiencies that should be addressed with further study. A student should be able to pass this exam based on their Masters level study in computer science.

In order to provide guidance to students who elect to study for this exam, we provide below:

  • The areas of coverage in terms of the ACM curriculum (details are in the ACM CC2001 report), a nationally known reference framework. This curriculum is for undergraduate education, but nevertheless provides a strong basis for a graduate-level qualifying exam.
  • Pointers to books and book chapters that relate to the items in the ACM curriculum. This content is found in many texts and the references are just examples.  Although this may seem like a lot of material, based on your previous education you should be able to quickly skim through a significant fraction of that material and focus on the material that you may not have covered in the past or that you like re-visiting. The table of contents of all cited books is easily available on-line so that you can check the material coverage, and any decent library should have these books available as well.
  • Sample questions are available upon request
  • A link to a Student-Maintained Study Guide, hosted on DisCourse.

Exam Coverage in terms of the ACM (Undergraduate) Curriculum

  • DS. Discrete Structures
    • DS1. Functions, relations, and sets
    • DS2. Basic logic
    • DS3. Proof techniques
    • DS4. Basics of counting
    • DS5. Graphs and trees
    • DS6. Discrete probability
    • DS7. Matrix algebra
  • PF. Programming Fundamentals
    • PF1. Fundamental programming constructs
    • PF2. Algorithms and problem-solving
    • PF3. Fundamental data structure
    • PF4. Recursion
  • AL. Algorithms and Complexity
    • AL1. Basic algorithmic analysis
    • AL2. Algorithmic strategies
    • AL3. Fundamental computing algorithms
    • AL5. Basic computability
    • AL6. The complexity classes P and NP
    • AL7. Automata theory
  • AR. Architecture and Organization
    • AR1. Digital logic and digital systems
    • AR2. Machine level representation of data
    • AR3. Assembly level machine organization
    • AR4. Memory system organization and architecture
  • OS. Operating Systems
    • OS1. Overview of operating systems
    • OS2. Operating system principles
    • OS3. Concurrency
    • OS4. Scheduling and dispatch
    • OS5. Memory management
  • NC. Net-Centric Computing
    • NC1. Introduction for net-centric computing
    • NC2. Communication and networking
    • NC3. Network security
    • NC7. Compression and decompression
  • PL. Programming Languages
    • PL1. Overview of programming languages
    • PL4. Declarations and types
    • PL5. Abstraction mechanisms
    • PL6. Object-oriented programming
    • PL7. Functional programming
    • PL8. Language translation systems
  • IM. Information Management
    • IM1. Information models and systems
    • IM2. Database systems
    • IM3. Data modeling
    • IM4. Relational databases
    • IM5. Database query languages
    • IM6. Relational database design

 

Bibliographical References

 

  • DS:
    • Discrete Mathematics and Its Applications, 6th ed., K. H. Rosen – McGraw-Hill Science/Engineering/Math, Chapters 1-11
  • PF:
    • Introduction to Algorithms, T. Cormen, C. Leiserson, R. Rivbest, C. Stein – MIT Press, Chapters 1-4, 6-8, 10-13, 15-16, 22-26
  • AL: 
    • Introduction to the Theory of Computation, M. Sipser – PWS Pub. Co, Chapters 0-5, 7, 10.6
  • AR: 
    • Computer Architecture: A Quantitative Approach, 3rd ed., J. L. Hennessy and D. A. Patterson – Morgan Kaufmann, Chapters 1, 2, 3.1-4, 4.1-3, 5.1-9, 7.1-7, A.1-5
  • OS: 
    • Operating System Concepts, 8th ed., A. Silberschatz, P. B. Galvin, G. Gagne – John Wiley & Sons, Inc., Chapters 1-10
  • NC: 
    • Computer Networks and Internets, 5th ed., D. Comer – Prentice Hall, Chapters 1-4, 13, 15, 16, 20-27, 30

     or

    • Computer Networking: A Top-Down Approach, 5th ed., J. Kurose, K. Ross – Addison Wesley, Sections 1.1-6, 2.1-5, 3.1-5, 4.1-5, 5.1, 5.4-6, 6.2, 6.3, 8.2, and 8.3 

     or

  • Computer Networks: A Systems Approach, Larry Peterson and Bruce Davie, 4th edition, Chapters 1, 2-2.6, 2.8, 3-3.2, 3.4, 4, 5-5.2, 5.5, 6.3, 8.1, 9.1.
  • PL: 
    • Modern Programming Languages: A Practical Introduction, A. B. Webber – Franklin, Beedle & Associates, Chapters 1-19, 23,24
    • Compilers: Principles, Techniques and Tools, A. V. Aho, R. Sethi, J. D. Ullman – Addison-Wesley, Chapters 1-5
  • IM:
    • Database Management Systems, 3rd ed., R. Ramakrishnan, J. Gehrke – McGraw Hill Higher Education, Chapters 1-5, 8, 16, 19