This handbook contains information about the Master of Science in Computer Science degree program 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.

The Computer Science Department is hosted in the College of Engineering and Mathematical Sciences (CEMS). 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.

Comprehensive Exam Guidelines for a Master in Science in CS

General Information

Department Information

The Department offers four undergraduate degree programs, two graduate degree programs, and a certificate program. The undergraduate programs include a Bachelor of Science in Computer Science offered through CEMS, a Bachelor of Science in Computer Science and Information Systems offered in conjunction with the Grossman School of Business, a Bachelor of Science majoring in Data Science offered through CEMS, and a Bachelor of Arts majoring in Computer Science offered through the College of Arts and Sciences.

The Department offers a Master of Science (M.S.) in Computer Science degree and a Doctor of Philosophy (Ph.D.) in Computer Science degree. The following information details the M.S. degree program.

Many people will be important to a graduate student's career, but two 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. 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.


University Information

The Graduate College oversees all graduate programs at the University of Vermont. The Graduate College offices (656-3160) are located in Waterman Building.

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 online at www.uvm.edu/catalogue/


Facilities for Students

Full-time funded graduate students will be given access to an office 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 help@cems.uvm.edu.

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/.

Information for Applicants

Applying to the Master's Program

A student interested in a Master's degree in Computer Science must submit a complete application packet including

In addition, Graduate Record Exam (GRE) general scores must be submitted. There is no cutoff GRE score required for admission; the Department considers GRE scores as one factor in a complete application packet. Past academic performance, reference letters, the statement of purpose and any other exceptional circumstances all help determine the applicant's suitability for the program. We admit students who we believe are most likely to succeed and thrive in the program.

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 90 (Internet-based test) or above or an International English Language Testing System (IELTS) score of 6.5 or above. To be considered for financial assistantship from the university, applicants must have an iBT TOEFL score of 100 or an IELTS score of 7.0  or above.

Application deadlines are:

  • Fall enrollment: Apply by February 1
  • Spring enrollment: Apply by October 15

Applications received after the deadlines are considered on a case-by-case basis.

Master's Program Pre-Requisites

The Master's program assumes all incoming students have the fundamental skills required of computer science students, with strong programming skills in C, C++ or Java and a solid mathematical background, including calculus, statistics, probability, and discrete mathematics.

A bachelor's degree in computer science or a related discipline and satisfactory scores on the Graduate Record Examination general (aptitude) section are required for admission. Students should also demonstrate that they have taken the following courses or have equivalent knowledge:

Two courses that treat systematic program development in a high-level language, for example:
CS 021  QR: Computer Programming I 3
CS 110 QR: Intermediate Programming 4
One course in computer system organization, for example:
CS 121  QR: Computer Organization 3
One course in data structures, for example:
CS 124  QR: Data Struc & Algorithms 3
One course in computability and complexity, for example:
CS 125  QR: Computability& Complexity 3
Two courses in differential and integral calculus, for example:
MATH 021  QR: Calculus I 4
MATH 022  QR: Calculus II 4
One course in linear algebra:
MATH 122  QR: Applied Linear Algebra 3
Coursework in probability and statistics, for example:
STAT 143  QR: Statistics for Engineering 3
STAT 151  QR: Applied Probability 3

Applicants who have strong academic records but lack one or more of these prerequisites may be accepted provisionally. Provisionally accepted students will be required to complete an approved program of remedial work within their first year of study.

Funding for Students

The Department of Computer Science is able to fund a small number of graduate students every year.

The most common 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 one or more faculty member(s) teaching the course(s) they are assigned to. 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, 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 availability of research funding depends on the current grants held by departmental faculty. Students with exception 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.

Additional Information

Hopefully, this document and the Department web pages (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 csgrad-info@cs.uvm.edu is the best way to reach an appropriate member of the department to ask any other questions you may have.

Advisors and Their Research Interests

Your Master's advisor serves as your mentor during your graduate training. It is important that you feel comfortable discussing issues with your advisor.

An advisor will be assigned to you when you initially enroll in the program. Typically, your initial advisor will be the Director of Graduate Studies. You may request a change of advisor at any time if you feel that another graduate faculty member would better serve your needs. The new advisor must agree to the change.

Thesis students must select a thesis advisor from among the graduate faculty of the Department. The thesis advisor also serves as the student's overall advisor (and thus replaces the initial advisor or other advisors). Also, the chosen thesis advisor must agree to serve as such.

Students should choose a thesis advisor based on three factors:

  • Common interest in a research problem
  • Comfortable working relationship
  • Willingness of the advisor to advise the student

Students considering taking the thesis option should meet with all potential advisors early in their graduate studies. Talk about potential thesis topics to see if that person's work interests you. Also, try to see whether you would be comfortable working with that person. The potential advisor should tell you whether they are willing to take you on as a thesis student.

CS Graduate Advisors

Master's Degree Requirements

The Master's of Science in Computer Science degree is intended to add depth in computer science to an undergraduate degree. Many students use a Master's degree to further an existing career as a computer professional; others use the program as an opportunity to change career paths. Many of these students have majored in disciplines other than computer science; students with particularly weak computer science background will be required to take additional courses before being accepted into the Master's program. Each student will be evaluated regarding additional courses (in addition to the M.S. degree requirements) to be taken. These additional course requirements are detailed in the acceptance letter from the Graduate College.

Core Course Requirement

The M.S. program in Computer Science offers thesis, project, and coursework only options. Acceptance into thesis or project options is conditional upon the student finding an eligible advisor who agrees to supervise the thesis or project. Please see the Department of Computer Science website for current research interests of the department's faculty.

Option A (Thesis)
Thirty credits, including a minimum of twenty-one credits of approved coursework, and a minimum of six credits of thesis research (CS 391) 30
Option B (Project)
Thirty credits, including a minimum of twenty-four credits of approved coursework, and a minimum of three credits of project research (CS 392) 30
Option C (Non-Thesis)
Thirty credits of approved coursework 30
All Options
Students in all options must take, or have completed the equivalent of, CS 224 Algorithm Design & Analysis (students who took CS 224 at UVM for undergraduate credit with a grade of B+ or higher may substitute this core course with an appropriate alternative course) and 3 other core Computer Science Courses, to be determined in consultation with and approval of the student’s graduate advisor and the CS graduate coordinator, depending on a student’s background and interests
Pass comprehensive exams covering material from the 4 approved core courses
Fulfill the credit requirement with approved graduate-level coursework in computer science or related areas. (Only courses with grades of B- or above are counted towards coursework requirements and students with two grades below B are eligible for dismissal.)

Comprehensive Exams

Taking a core course at UVM for graduate credit and receiving a grade of B+ or better constitutes successfully completing the comprehensive examination in that area.

Students who receive a grade of B or lower in a core course, or students who took CS 224 at UVM (whether for undergraduate or graduate credit) and received a grade of B or lower, must pass an oral comprehensive exam in that area. In this event, the Graduate Coordinator will form an exam committee for the oral exam(s). Each student who needs to take one or more comprehensive oral exam(s) should arrange a single date for all required oral exam(s) with the examiner(s) and then inform the Graduate Coordinator of the exam date. It is strongly recommended that the examination is completed during the academic year unless all examiners voluntarily agree to give the exam on a date during the break.

Credit Transfer

With the approval of the Graduate Committee, up to 9 credit hours of coursework in Computer Science (or a closely related field) may be transferred into the Master's degree. Only credits that have not been used for other degrees (Bachelor's, Master's, or others) are considered. Note that these credits include any courses taken at UVM before enrolling in the Master's program and any courses taken at other institutions, whether before or after enrolling at UVM. In addition, with the approval of the Graduate Committee, a student may apply courses in a closely related field taken at the graduate level while in residence at UVM to their Master's requirements.

Note that transfer and waiver are two different, independent concepts. A transfer means that the transferred credits are counted towards your Master's degree at UVM, while a waiver only means that one of the five required courses is replaced by some other courses (possibly transferred ones).

Also, please note that the Accelerated Master's Program (AMP) (see below) is an exception to this 9-credit-transfer rule.

Academic Standing

To remain in good standing, students must continue to make reasonable progress towards completing their degree requirements. To measure this progress, three requirements are placed on all Master's students:

  • Time limit. All full-time students (taking at least 15 credits/year) must complete their degree within 3 years of enrollment. Part-time students must complete their degree with 5 years of enrollment. Extensions may be awarded for extraordinary extenuating circumstances, at the discretion of the Graduate Committee.
  • Grades in individual courses. Any grade of B- or worse is unacceptable for a Master's student. Upon receipt of a second (or any subsequent) unacceptable grade, the student's progress will be reviewed by the Graduate Committee. The Graduate Committee may choose to impose sanctions on the student, including requiring an additional course or dismissing the student from the program.
  • Accumulative grade point average (GPA). Every Master's student must maintain a 3.0 (B) GPA at all times. Any student falling below a 3.0 will be placed on academic probation and their progress will be reviewed by the Graduate Committee, with the possible imposition of sanctions. Furthermore, no student whose final GPA is below 3.0 will be allowed to graduate.

Thesis Option

Students choosing the thesis option must complete a minimum of 30 credit hours, including a minimum of 21 credits of coursework and 6 credits of thesis research.

A Master's thesis consists of original research work done under the guidance of a faculty member. Students opting to pursue a thesis must select a thesis advisor who agrees to supervise that student's thesis work. The thesis advisor may be any graduate faculty member who holds either a primary or a secondary appointment from the Department.

Full-time students should normally choose a thesis advisor by the end of their first semester. Prior to the selection of a thesis advisor, a member of the Graduate Committee serves as the student's advisor (see the Director of Graduate Studies for details).

Each thesis student must write a thesis describing their research. The thesis is presented before a thesis committee in a public oral thesis defense. The thesis committee must include three different individuals: (1) the student's thesis advisor (see below), (2) another graduate faculty member of the department, and (3) the chair of the thesis committee. The chair of the thesis committee must be a member of the graduate faculty without an appointment (either primary or secondary) in the department.

At least three weeks before the defense, the written thesis must be submitted to the Graduate College for a format check. At least two weeks before the defense, the student must make copies of the written thesis available to all members of the thesis committee. The thesis defense itself must be adequately advertised to the community.

Project Option

Students choosing the project option must complete a minimum of 30 credit hours, including a minimum of 24 credits of coursework and 3 credits of project (CS392).

A graduate project typically consists of a significant implementation done under the guidance of a faculty member. Students opting to pursue a project must select an advisor who agrees to supervise that student's work. The advisor may be any faculty member who holds either a primary or a secondary appointment from the Department.

Full-time students should normally choose a project advisor by the end of their first semester. Prior to the selection of an advisor, a member of the Graduate Committee serves as the student's advisor (see the Director of Graduate Studies for details).

The results of the project are presented before a project committee in a public talk, which has been advertised to the community. The project committee must include three individuals, at least two of whom must hold appointments in the department. The chair, who may be the project advisor, must be a member of the Graduate College and hold an appointment in the department. The composition of the committee must be approved by the Graduate Committee.

One bound copy of the project report should be submitted to the Graduate Program Director within 30 days after the defense. The submitted copy will be archived in the departmental file.

Documents needed to complete a project defense comprise the project report, acceptance page, and the exam result. Templates of these documents can be downloaded from the following links: Project report front sample (PDF), Project acceptance page template (DOC), Project examination result form (DOC).

Coursework Option

Students choosing a coursework option must complete a minimum of 30 credit hours of coursework.

Course Offerings

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.

Official Course Listing

Accelerated Master's Program (AMP)

UVM CEMS Accelerated Master's Program