Guide to the Master of Science Program in Computer Science
(Revised June 2013)
Department of Computer Science
351 Votey Hall
University of Vermont
Burlington, Vermont 05405 USA
Telephone: 802-656-3330, FAX: 802-656-0696
Table of Contents
- Department Information
- University Information
- Facilities for Students
- Information for Applicants
- Degree Requirements
- Accelerated Master's Program (AMP)
- Advisors and Their Research Interests
- Courses and Offering Frequencies
This handbook contains information about the Master's 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.
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.
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 MS 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. Wu is the current chair of the committee, whose other members are Dr. Josh Bongard, Dr. Byung Lee, and Dr. Michael Radermacher (Molecular Physiology and Biophysics).
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.
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 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.
Facilities for Students
Full-time 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 email@example.com.
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.
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
- the application form
(available on-line at:
- complete collegiate transcripts
- statement of purpose (available as part of the packet)
- three reference letters
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 550 (or 213 with computer-based test or 79 with Internet-based test) or above. To be considered for financial 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.
Application deadlines are:
- Fall enrollment: Apply by February 15
- 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.
Typically entering students can demonstrate this background through previous course work. A solid background for the program would include the following courses:
- 2 semesters of programming in a modern, high-level programming language (CS21 and CS110 at UVM)
- 1 course in computer organization, including exposure to assembly language and computer arithmetic (CS121)
- 1 course in theory of computation (e.g. CS 125)
- 1 course in data structures (CS124)
- Differential, integral and multivariate calculus (MATH 21+22)
- Discrete mathematics (CS64)
- Linear algebra (MATH 124)
- Statistics and probability (STAT 141, 151, or 153)
Many students lack one or two of these courses. In this case, your admission letter may state requirements to supplant your background in addition to the requirements listed in the Degree Requirements section. Once these requirements have been completed, you will be advanced to candidacy for the Master's Degree. Students satisfying all the above requirements will normally be advanced to candidacy upon being granted admission.
All applicants must demonstrate a solid background before being admitted. Only applicants demonstrating at least the equivalent of two of CS121, CS124, and CS125 and a reasonable background in mathematics will be considered for admission.
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 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, 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.
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 firstname.lastname@example.org is the best way to reach an appropriate member of the department to ask any other questions you may have.
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 majors 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 MS degree requirements) to be taken. These additional course requirements are detailed in the acceptence letter from the graduate college.
Core Course Requirement
The degree program can be completed with one of the three options (thesis, project, and coursework, see below). Regardless of the option chosen, all Master's students are expected to complete the following three courses:
- CS201 Operating Systems
- CS224 Analysis of Algorithms
- CS243 Theory of Computation
Based on a student's background, the Graduate Committee may grant a student a waiver from some or all of these course requirements. In the case of a waiver, a replacement course needs to be approved by the student's advisor and the Graduate Committee.
Each student must pass a comprehensive exam before graduating, regardless of the option chosen. A complete description can be found from the CS comprehensive exam guidelines.
Each student who needs to take comprehensive oral exams according to the guidelines should arrange a schedule with the examiners and then inform the Graduate Committee of the exam date. It is strongly recommended that the examination is completed during the academic year, unless all examiners agree to give the exam on a date during the break.
Students must enroll in GRAD 397: Master`s Comprehensive Examination prior to taking the comprehensive examination or being considered to have passed the exam. There is no fee. A grade of "S" or "U" is recorded.
With approval of the Graduate Committee, up to 9 credit hours of course work 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.
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.
Students choosing the thesis option must complete a minimum of 30 credit hours, including minimum 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.
Students choosing the project option must complete a minimum of 30 credit hours, including minimum 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, Project acceptance page template, Project examination result form.
Students choosing a coursework option must complete a minimum of 30 credit hours of course work.
Accelerated Master's Program (AMP)
The Department offers an Accelerated Master's Program (AMP) for exceptional undergraduate students to complete both a bachelor's and master's degree in Computer Science within a five-year period.
Students accepted into the AMP may apply up to 6 credits of their undergraduate Computer Science courses at the 200-level taken at UVM toward a Master's degree. These courses must be approved in advance by the Graduate Committee. The student must complete any additional requirements for taking these courses for graduate credit.
Many AMP students begin work on their thesis research immediately after completing their undergraduate degree. With permission of the Graduate Committee and the Graduate College, students may apply additional computer science credits taken at the graduate level prior to completing their undergraduate degree, which are not required for their undergraduate degree, to their Master's degree.
Students interested in the AMP should contact Dr. Robert Snapp during their junior year.
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, and
- 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
Courses and Offering Frequencies
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 http://www.uvm.edu/~cems/cs/?Page=Courses&category=CS. Note that course offering frequencies often change due to enrollment demands. Talk to your advisor for more details.