Central requirements for a doctorate degree in computer science vary based on the specialized area and school of attendance. Courses center on intensive research and writing projects, but students also explore high-level design issues, evaluate and develop security and software processes, and test and implement experiments. At this level, doctoral candidates should already be fluent in programming languages and other core areas, but some schools may require specific prerequisites, in the form of breadth requirements, prior to beginning research. Here’s an example class lineup for doctoral students in computer science:
It consists of a research component and a taught component, normally studied in parallel. The taught component offers general research skills, introductory modules for the broader area of studies as well as specialized lectures and seminars on research topics. These, together with guided and independent studies offer a significant degree of freedom for the taught component. The research component is conducted under the supervision of one or more members of academic staff guiding the candidate through the research activities.