The PhD in Computer Science requires 90 credits (45 credits if the applicant already has a master's degree in computer science or a related technical field), including three mandatory breadth courses, three flexible breadth courses, four intermediate or advanced courses, three advanced courses and nine credits of independent study in a field of specialization. Most graduate courses in Computer Science include expectations that those taking them have a technical background in Computer Science similar to what an undergraduate computer science major would have. This background includes the following:
- Significant experience programming in an object-oriented programming language such as C++ or Java, including the design and implementation of several programs of intermediate length and complexity (several hundred or thousand lines of code and comments), similar to what would be achieved in the following courses:
-
- CS 171: Programming I
- CS 172: Programming II
- CS 265: Advanced Programming Techniques
- CS 350: Software Design
- A working familiarity with algorithms, data structures, and the mathematical foundations of computer science, similar to what would be mastered in the following courses:
-
- MATH 221: Discrete Mathematics
- CS 260: Data Structures
- A solid mathematics background:
- Calculus: MATH 121, 122, 123
- Linear Algebra: MATH 201; or MATH 261
- A working familiarity with computer architecture and machine language:
-
- CS 281: Computer Architecture I
- CS 283: Systems Programming
- At least two advanced undergraduate courses in computer science, such as:
-
- CS 361: Concurrent Programming
- CS 380: Introduction to Artificial Intelligence
- CS 440: Compiler Theory
- CS 460: Theory of Algorithms
- CS 461: Database Systems
Prospective students who are missing a substantial part of the expected background should defer applying until they have acquired the appropriate background by taking courses as a non-matriculated student through Drexel's Goodwin College of Professional Studies, or as a student at another accredited institution. Students who meet all but a few of the above expectations may be provisionally admitted and required to take one or both of the following pre-core courses and receive a grade of B or better:
- CS 520: Computer Science Foundations
- CS 571: Prog Tools and Environments
These pre-core courses are open only to those students who are required to take them by the Graduate Advisor. They may be counted as some of the 15 courses needed for the PhD in CS. Each counts as a "category 6" course in the degree requirements. A maximum of three category 6 courses may be counted towards satisfying PhD in CS degree requirements.