The Department offers four 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, a Bachelor's of Science majoring in Data Science offered through CEMS, 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 (M.S.) in Computer Science degree and a Doctor of Philosophy (PhD) in Computer Science degree. This document 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.
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/.
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 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/.
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 90 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 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.
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 (e.g., CS64 or MATH 52)
- Linear algebra (e.g., MATH 122 or MATH 124 or MATH 271)
- Statistics and probability (e.g., STAT 143 or (STAT 141 + STAT 151)))
Many students lack one or two of these courses. In this case, your admission letter may state requirements to supplement 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 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.
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.
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
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 M.S. 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 Algorithm Design and Analysis
- 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.
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 (PDF), Project acceptance page template (DOC), Project examination result form (DOC).
Students choosing a coursework option must complete a minimum of 30 credit hours of course work.
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.