(Revised October 2008)
Department of Computer Science
Votey Hall, Room 351
University of Vermont
Burlington, Vermont 05405 USA
Telephone: 802-656-3330, FAX: 802-656-0696
This handbook contains information about the Doctor of Pfhilosophy (PhD) in Computer Science Degree Program in Computer Science at the University of Vermont. It should be useful for potential students, current students, advisors and professors. If you have any comments or suggestions, please relay them to the Graduate Program Director, Dr. Byung Lee (email@example.com or 656-1919).
The PhD in Computer Science program is administered by the Graduate College, whose website is at www.uvm.edu/~gradcoll/. The Department of Computer Science has set up the policies and requirements for its PhD program on the basis of the policies and requirements of all PhD programs administered by the Graduate College. This document should answer most of the common questions about the PhD in Computer Science Program. However, all readers are encouraged to consult with the Graduate Committee of the Computer Science Department as well as the Graduate College for further information.
Return to top
The Computer Science Department is hosted in the College of Engineering and Mathematical Sciences (CEMS). Dr. Bernard "Chip" Cole is the Interim Dean of the College. His offices are on the first floor of Votey Hall. The Dean's administrative assistant is Sharon Sylvester.
The Department is located on the third floor of Votey Hall, which is a brick building with long vertical concrete stripes (including windows) located behind Billings Student Union. The department office is located in Votey 351. The majority of the faculty offices are most easily reached by passing through the department office.
The Department offers three undergraduate degree programs, two graduate degree programs and a certificate program. The undergraduate programs include a Bachelor's of Science in Computer Science offered through CEMS, a Bachelor's Science in Computer Science and Information Systems offered in conjunction with the School of Business, and a Bachelor's of Arts majoring in Computer Science offered through the College of Arts and Sciences.
The Department offers a Master's of Science (MS) in Computer Science degree and a Doctor of Philosophy (PhD) in Computer Science degree. This document details the PhD degree program.
Many people will be important to a graduate student's career, but three people are of immediate interest. Mary (Penni) French is the Department Administrative Assistant. She sits in the department office (Votey 351) and can be reached at (802) 656-3330. If you have an administrative question and are unsure whom to ask, try Penni. Dr. Byung S. Lee is the Director of Graduate Studies of the department and sits in Votey 323. Dr. Lee is the most appropriate person to ask about details of the graduate programs and can be reached at (802) 656-1919. Dr. Xindong Wu is the Department Chair and has the final say on many important decisions. Dr. Wu sits in Votey 351C in the same vicinity and can be reached at (802) 656-7839. For more contact information, please see Contact Us.
A departmental Graduate Committee is charged with drafting policies and reviewing admission/graduation applications, among other duties. Dr. Lee is the current chair of the committee, whose other members are Dr. Josh Bongard, Dr. Michael Radermacher (Molecular Physiology and Biophysics), and Dr. Chris Skalka.
All computer science students are encouraged to join and be active in the Computer Science Student Association (CSSA). The CSSA schedules a mixture of social and technical events throughout the school year. The CSSA technical events generally focus on career opportunities and skills relevant to computer science students.
Return to top
The Graduate College oversees all graduate programs at the University of Vermont. The Graduate College offices (656-3160) are located in Waterman Building. The Dean of the Graduate College is Dr. Frances E. Carr, who also serves as the University's Vice President of Research.
The Graduate College sponsors many lectures and workshops of interest. Early in the Fall Semester is the Graduate Teaching Fellow Workshop, full of helpful hints and friendly advice on getting started in the classroom. Later in your studies, you may want to attend the Dissertation Writing Workshop, or give a talk at Graduate Research Day. The College also sponsors a Graduate Teaching Fellow of the Year competition. They administer Travel Mini-Grants for students to present research at professional meetings.
The Office of International Education (656-4296) coordinates programs, events, and services of special interest to international students. This includes Language and Writing Workshops, assistance in academic and cultural adjustment, and immigration and employment help. Their pamphlet "Information and Support Services for International Students and Their Advisors" is a valuable resource. They also assist applicants and new students with obtaining I20 forms, Statements of Support, and more.
The Graduate Catalogue contains a wealth of essential information. This document is now maintained on-line at www.uvm.edu/catalogue/. The University's policies are contained in a document called the Cat's Tale, available at www.uvm.edu/~dos/?Page=catstale.html. See this document for information about student rights and responsibilities, academic honesty, sexual harassment, and grievance procedures.
Return to top
Full-time graduate students will be given access to a desk with a computer. Various computer labs maintained by the Department of Computer Science and the College of Engineering and Mathematical Sciences (CEMS) provide both Unix-based and Windows-based computers for student use. All graduate students will be given a CEMS account for computer and email access. For more information, see the Computer Services webpages. Problems with your CEMS account or any machines in Votey Hall should be sent to the CEMS Computing Facilities staff by email at firstname.lastname@example.org.
All students and faculty at the University of Vermont are eligible for a UVM NetID account, which is required for various network-based services at UVM, including UVM email service. Students should activate their NetID account once they arrive on campus. This activation is most easily done on the Web, based on directions at https://www.uvm.edu/account/account.php.
Return to top
Doctoral programs are fundamentally different than Bachelor's or Master's degree programs. Like other programs, doctoral students gain a base level of knowledge through course work. The difference, however, comes with research. Whereas a Bachelor's or Master's student may undertake a research project, it merely provides a complement to the course work and is clearly guided by a faculty advisor. Doctoral research is the focus of any doctoral student's studies. Doctoral research is much more self-guided and exploratory than research done in the other programs. Future employers typically select doctoral students on the quality and originality of their thesis research, not their grades in course work. Reflecting this focus, the bulk of time and effort during a student's doctoral studies is spent on thesis research.
In the last thirty-plus years, computer science has developed into a rich academic discipline. But computers and computation also play a key role in many research disciplines, including (but not limited to) engineering, biology, mathematics, physics, chemistry, economics and education. Against such a backdrop, our interdisciplinary PhD program produces Computer Science professionals capable of teaching and performing original research at the university level as well as in industrial or other professional settings.
The interdisciplinary PhD program in Computer Science offers study in both traditional and cross-disciplinary areas such as bioinformatics and ecological modeling, and includes graduate assistantships specifically designated for students involved in interdisciplinary areas. Our faculty in Computer Science are involved in the forefront of research in knowledge and data engineering (such as data mining, database systems, pattern recognition, and knowledge-based systems), software engineering and verification (including programming languages), and computational sciences (comprising evolutionary & agent-based computing, discrete modeling, and numerical methods). Our interdisciplinary work cuts across all areas of campus, with current emphasis in bioinformatics, computational imaging, computational engineering, and ecological modeling. Our faculty publish in prestigious journals and conferences in Computer Science, have significant research grants from federal agencies (such as NIH, DOE, and DOD), and serve on editorial boards, conference committees, National Science Foundation review panels, and leading professional societies.
Doctoral students are expected to include courses from beyond the traditional realm of computer science. Students are encouraged to consider research topics that combine computer science with other disciplines. The Department has a broad range of secondary faculty appointments with primary interests in other fields who may be used as a student's thesis advisor. Many other faculty at the University have a research interest that includes computer science or computation; these faculty can serve as a co-advisor to a student (see degree requirements, below).
Return to top
A Bachelor's degree and satisfactory scores on the Graduate Record Examination (GRE) general section are required of all applicants. Applicants will be evaluated based on their potential for excellence in research, as judged from their academic background, test scores, relevant experience and letters of recommendation. We admit students who we believe are most likely to succeed and thrive in the program. See the next section for complete application packet requirements and deadlines.
Applicants whose native language is not English or whose formal education has been conducted in a language other than English must have a Test of English as a Second Language (TOEFL) score of 550 (or 213 with computer-based test or 79 with Internet-based test) or above. To be considered for assistantship from the University, applicants must have a TOEFL score of 600 (or 250 with computer-based test or 100 with Internet-base test) or above.
Applicants who have strong academic records in a different discipline and lack an acceptable computer science background (normally including at least courses in Data Structures, Computer Organization and Programming Languages) may be accepted provisionally. Provisionally accepted students will be required to complete an approved program of remedial work within their first year of study.
Return to top
A student interested in a PhD degree in Computer Science must submit a complete application packet including:
Application deadlines are:
Applicants for department aid must submit their applications earlier:
Applications received after April 1 for Fall enrollment are considered on a case-by-base basis. The final deadline for spring enrollment is December 1.
Return to top
The Department of Computer Science is able to fund a small number of graduate students at any time. In addition, the department awards a small number of graduate assistantships specifically designated for PhD students involved in interdisciplinary areas.
The first form of funding is as a Graduate Teaching Assistant (GTA). Each GTA spends 20 hours each week during the school year (starting 1 week before classes begin) supporting the department's educational mission. This work typically involves some combination of grading, offering help sessions or office hours and monitoring student labs. Each GTA will be assigned a specific number of hours for each task and will work under the guidance of the faculty member teaching the course or lab. Each GTA must also attend a series of short training sessions early in their first semester.
The Graduate Committee nominates potential GTAs from the pool of admitted students. GTAs are selected from the best students in the program who best fit the department's needs. It is possible, although not common, to gain GTA funding after one or more semesters as an unfunded graduate student. GTA students who continue to satisfy the department's requirements and make satisfactory progress towards their degree will maintain their funding.
Funding as a Graduate Research Assistant (GRA) is also available. The research funding comes from various sources. Students with exceptional research potential in the funded areas will be considered as GRAs. All admitted students indicating interest in departmental funding will be considered for all available funded positions. The only requirement of the applicant is to indicate interest in departmental funding on the application.
Hopefully, this document and the Department webpages (www.uvm.edu/~cems/cs/) can answer most of your questions about the program.
Potential students should feel free to contact the department with further questions. The email address email@example.com is the best way to reach an appropriate member of the department to ask any other questions you may have.
Return to top
Within the first semester of a doctoral student's first arrival at the Department, the Graduate Committee will appoint a Studies Committee for that student. The Studies Committee is made up of at least three graduate faculty members, at least two of whom must hold appointments in Computer Science and at least one of whom must hold a primary appointment (see the list of graduate faculty below). The Graduate Committee will appoint a member of the studies committee as its chair. The chair of the studies committee is also the student's PhD advisor of record and must hold an appointment in Computer Science.
A student may petition the Graduate Committee at any time to change the membership of their Studies Committee. Every student is expected to choose their own PhD advisor and should do so as early in their PhD studies as possible.
A PhD advisor serves as the mentor during a student's PhD training. It is important that the student feels comfortable discussing issues with the advisor. Students should choose a PhD advisor based on three factors:
Students should meet with potential advisors early in their PhD studies. They should talk with that person about potential research topics to see if the potential advisor's work interests them. Also, students should try to see whether they would be comfortable working with that person. A potential advisor should tell the student whether he or she is willing to take the student on as a PhD advisee. Only a willing graduate faculty member with an appointment in Computer Science can serve as an advisor.
A student's studies committee oversees that student's preparations for research, ensuring that the student has both the breadth in Computer Science and the depth in a research area to successfully complete his or her degree. Under the supervision of the Graduate Committee, the studies committee has two areas of authority: establishing the student's course requirements and approving the student's thesis proposal.
The following is the current list of faculty who can serve as thesis advisors:
Return to top
A student's doctoral program consists of four stages:
Four hurdles mark the completion of these stages:
Details are explained below.
The PhD in Computer Science degree requires a minimum of 75 credit hours earned in courses and in dissertation research. The Computer Science PhD program has minimal fixed requirements, providing flexibility to the studies committees (see above) to tailor a program appropriate for each individual student. All students must take a minimum of 15 credits (normally 5 courses) of course work (only courses with grades of B- or above are counted towards this minimum requirement). We expect a typical student to take 30-40 credits of course work beyond their undergraduate degree. Each student must learn enough fundamental material during the first two years to pass the comprehensive examinations. For most students, the bulk of this learning will come from course work. The Department also strongly recommends that each student take at least six credit hours (normally two courses) of courses from other departments.
All course work must be done in 200 or above level courses with the exception that a student may apply two 100-level (excluding 100-level CS courses), three-credit courses towards their graduate programs (with the pre-approval of the Graduate College). Note all course work must be approved by the student's Studies Committee and the Graduate Committee.
The courses a student uses towards the degree must be approved by his/her studies committee.
For students with a Master's degree, a maximum of 24 hours of course credits completed during work on a Master's degree can be transferred towards the doctoral requirements. These courses may have been completed while a student at the University of Vermont or elsewhere. For more information, see UVM's Transfer Credit and Credit by Examination for Graduate Students.
Candidates for the doctoral degree must satisfactorily complete a minimum of 51 hours in residence. The residency requirement is completed by courses that (1) are taken for graduate credit through The University of Vermont either in the academic year or summer on the main campus or at off-campus locations, and (2) are taken after the student has been admitted to the Graduate College.
Return to top
Each student must take three written comprehensive exams. Two exams are common to all Computer Science doctoral students and cover two areas: systems and theory. Each exam has two parts: computer architecture and operating system in the systems exam, and algorithms and theory of computation in the theory exam. The third exam is in the student`s specialty area and varies from student to student.
All three exams are taken in the same week. Comprehensive exams will be offered at least once every year.
Each student has an examination committee that constructs and evaluates the comprehensive exams. Four members of the committee are common to all students taking the comprehensive exams that year. These four members hold primary responsibility for the systems and theory exams and are appointed by the Graduate Committee. Two additional members hold primary responsibility for the specialty area exam. These two members are proposed by the student and must be accepted by both the studies committee and the Graduate Committee.
The specialty area exam may cover any relevant topic, including those outside Computer Science, subject to the approval of the Studies Committee. As a general guideline, a comprehensive exam should cover a body of knowledge at least sufficient for coverage of two graduate courses. Each student must propose a topic and examiners to the studies committee a minimum of ninety (90) days prior to taking the comprehensive exam. The studies committee may accept the topic, accept the topic with modifications (generally extensions), or reject the topic. Primary reasons for rejection include insufficient depth or lack of relevance to the student's research agenda.
For specific topics covered by the systems and theory exams, the student should consult with their examination committee.
The examination committee will evaluate a student's efforts on the written exam. The committee may choose from four possible outcomes:
Under no circumstances will more than two attempts at the comprehensive exams be allowed. A student may choose to change the area for the third exam before the second sitting. This change does not yield an extra attempt at the comprehensive exam. The studies committee is not obligated to grant a second sitting.
Students must enroll in GRAD 497: Doctoral Comprehensive Examination prior to taking the comprehensive examination. There is no fee. A grade of "S" or "U" is recorded.
These lists of topics should be used as a guideline only. Students seeking to take the comprehensive exams should check with their examination committee for an exact list of topics to be covered.
|System Comprehensive Exams|
|Concurrency||theory, programming models, synchronization primitives, deadlock detection, prevention and avoidance|
|Processes and threads||scheduling models|
|Memory||memory protection, memory allocation, virtual memory, hardware support, caches|
|Security||authentication, authorization, security models|
|Input/Output||interrupts, I/O devices, busses, device drivers, networks|
|File systems||concepts, specialty file systems, distributed file systems|
|Instruction sets||RISC, CISC, instruction formats,|
|Pipelined processors||hazards, branch prediction, folding, out-of-order, execution, register renaming, scoreboarding|
|Instruction level parallelism||super-scalar processors, VLIW, vector processors, software based improvements (scheduling, loop unrolling software pipelining)|
|Multi-processor systems||SMP, distributed memory, cache coherence|
|Theory Comprehensive Exam|
|Complexity||NP complete, NP hard, recurrences, amortized analysis|
|Discrete mathematics||probability, formal logic, combinatorics, graph theory|
|Sorting, searching||quick sort, heap sort, hash tables, binary trees|
|Data structures||heaps, priority queues, self balancing trees, b-trees, disjoint sets|
|Programming approaches||greedy algorithms, dynamic programming, integer linear programming|
|Graph algorithms||spanning trees, paths, flow|
|Finite automata||regular expressions, deterministic, non-deterministic, finite automata, minimal finite automata|
|Languages||regular languages, context free languages, pumping lemma|
Return to top
Once the student has mastered the basic material in a research area and chosen a thesis topic, they must present that topic to the studies committee and the larger Computer Science community. Each student must present a written thesis proposal to the studies committee a minimum of two weeks prior to the thesis proposal. The thesis proposal itself is a public presentation of the student's thesis topic. An abstract of the proposal will be announced to the Computer Science community a minimum of seven days prior to the thesis proposal and will be clearly advertised to the community. Although the thesis topic is by nature a work in progress at this stage, the student should be able to clearly identify and communicate:
Following the public thesis proposal, the studies committee will hold a closed oral area examination of the student. The student must demonstrate sufficient breadth and depth of understanding of the research area to satisfy the members of the studies committee. For both the thesis proposal and the oral exam, the student's studies committee may:
Any additional work required by the studies committee must be completed before the student defends the thesis. This work is assigned to cover deficiencies in either the thesis itself or the student's mastery of the surrounding research area. A student failing either the thesis proposal or the oral exam may petition the Graduate Committee for permission to attempt the proposal and oral exam again. Students in this position should be sure to have detailed discussions with their studies committee to understand why they failed in the previous attempt.
A student successfully completing the course requirements, the three written comprehensive examinations, the thesis proposal and the oral exam will advance to candidacy for the PhD degree.
Return to top
After completing their research, including at least 30 credit hours of doctoral dissertation research, doctoral candidates must publicly defend their thesis before their thesis committee (also called Dissertation Defense Examination Committee). The thesis committee must include at least four members and must be approved by the Graduate Committee and the Dean of the Graduate College. This thesis committee must include at least one member from outside the department who will serve as the chair of the thesis committee.
The thesis defense presentation is open to the public. It must be advertised widely via email and public postings. The end of the thesis defense is closed; during this portion, the thesis committee may ask any questions of the student. Students must submit a written thesis to the Graduate College for a format check a minimum of three weeks before their defense. Students must provide copies of the written dissertation to each member of the thesis committee a minimum of two weeks before the defense.
After considering the written dissertation, the public presentation of the thesis and the student's answers to the questions, the thesis committee may:
The student must submit minor revisions for approval to his or her advisor. The student must submit major revisions to the entire committee for approval. Students failing their defense may petition the Graduate Committee for an additional attempt. If the Graduate Committee denies the petition, the student is dismissed from the program.
Students must enroll in GRAD 499: Dissertation Defense prior to defending their thesis.
Return to top
To remain in good standing, students must continue to make reasonable progress towards completing their degree requirements. To measure this progress, the following requirements are placed on all PhD students:
A PhD in Computer Science implies more skills than simply the ability to perform research in computer science. Thus the program requires students to gain acceptable experience in teaching, programming and the communication of technical ideas.
Teaching. All doctoral students must gain acceptable experience in teaching. Taking into consideration the student's expressed long-term career interests, the student's Studies Committee will define a role the student must take in assisting the Department in teaching its courses. These responsibilities may range from being a grader for multiple courses to being the primary instructor for a single course.
Programming. The Studies Committee must also define a mechanism for the student to demonstrate competence in programming. For most students, this competence will be demonstrated by successful completion of a course that includes a significant programming component. Courses that satisfy this requirement include:
Other courses that satisfy this requirement may be approved by the Graduate Committee. The studies committee may alternatively certify the student as having satisfied this requirement (with the approval of the Graduate Committee) based on other criteria, including:
Communication. Research is of little use if it is not communicated to others. Furthermore, a doctoral student's reputation is largely based on his or her writing and presentation. All doctoral students should be able to communicate original technical ideas orally and in writing. Although significant differences exist between oral and written presentations, the basic organizational skills and efforts are similar. All communication must make several points clearly:
The student's advisor will establish speaking and writing requirements for the student. The advisor will be responsible for certifying that the student has gained sufficient proficiency in speaking and writing.
The curricular requirements of our PhD program are flexible enough to accommodate students with varying backgrounds and interdisciplinary interests. Students will work closely with their graduate Studies Committee to design curricula that are commensurate with their backgrounds and interests. Click here for sample programs.
Return to top
The Department offers 200-level courses, which are taken both by advanced undergraduate students and graduate students. Students taking 200-level courses for graduate credit typically need to do additional work, frequently a project or class presentation. The Department also offers 300-level courses, which are open only to graduate students.
For the description of each course and its offering frequency in the past, see our official course listing at www.uvm.edu/academics/courses/browse/?category=CS. Note that course offering frequencies often change due to enrollment demands. Talk to your advisor for more details.
Return to top