Master of Science in Computer Science
Last edited: January 2020
This document lists the combined requirements of the Graduate School and of the Department of Computer Science (COMP) and supersedes all previous issues. Reference is occasionally made for further details to the Graduate School Handbook (GSH). Apparent errors in the present document should be called to the attention of the Director of Graduate Studies. Please note: Computer Science Graduate students cannot apply for both MS and PhD in the same semester. For MS student or ‘PhD student pursuing an MS degree along the way’ COMP 992 must be taken in the same graduating semester. Students admitted as an MS student that need to switch to PhD at end of year 2, can do so by either applying for the MS degree or foregoing the MS degree. The MS program has a 5-year clock.
Table of Contents
- Program Product Requirement
- Technical Writing Requirement
- Comprehensive Examination
- Other Requirements
- Milestones (By Semester) And Required Forms
- Supplemental Information (separate page)
Advisers provide advice, of course, but they are also contact points for advising bulletins and alerting the student to academic progress milestones. During the faculty’s review of student progress, the adviser is called upon to describe the student’s progress and discuss any problems or delays in that progress.
When a student enrolls in the department, a faculty member is appointed to serve as the student’s initial program adviser. While the department administration tries to match student and adviser interests in the assignment of initial program advisers, these assignments are based on incomplete information and are not binding. Students should change the faculty adviser as appropriate as the student’s plans and interests change.
To request a change of adviser, the student should send the request by e-mail to the Student Services Manager with copies to the Director of Graduate Studies and the involved faculty (old and new advisers). Such requests are usually approved without comment, but factors such as faculty load sometimes intervene. Consultation with the Director of Graduate Studies is recommended in advance of a change of adviser for any reason other than designation of the research director as the program adviser. (Changes of adviser for that reason are completely normal and almost automatically approved.) If a student elects to write a thesis for the M.S. degree, the thesis adviser should be designated the official program adviser and chair of the student’s guidance committee.
The Director of Graduate Studies serves as the backup adviser for routine signatures in case the program adviser is not available.
The Graduate Studies Committee (a standing committee of the department faculty, chaired by the Director of Graduate Studies) interprets degree requirements, approves plans of study, and acts on petitions from students to the department and to the Graduate School.
A full-time Graduate Student Services Manager maintains student records, answers student queries, and directs student requests to the Graduate Studies Committee and to the Graduate School. All student requests should be made through the Student Services Manager, usually on forms obtainable online or from the Manager, whose office is 142 Sitterson Hall. The Manager will handle the forms or forward them to the appropriate office.
Thirty (30) semester hours of courses numbered 400 or higher must be taken (excluding COMP 495, 496, 691H, 692H). Of these 30 hours, at least 18 hours must be in Computer Science (designated COMP in the catalog) numbered 400-890, and the remaining 12 hours must include COMP 993: Master’s Thesis Research or COMP 992: MS Non-Thesis Option. Note: At least 3 hours of COMP 992 or 993 is required by The Graduate School. Also, no more than 6 credits of COMP 991 can be used towards the MS credit hour requirement. The choice of courses is subject to approval by the Graduate Studies Committee in the mandatory review of the M.S. Program of Study (Form CS-3).
Registrations for COMP 990 for research team meetings (denoted by section numbers > 100) do not count toward the credit hour requirement; other COMP 99x registrations do count as outside courses.
Up to 6 credits can be transferred for graduate-level courses taken elsewhere (prior to joining the CS graduate program at UNC), as long as those credits were not used to satisfy the requirements for any degree.
Breadth requirement. Each student must take one course in each of the following categories to fulfill a breadth requirement.
The set of breadth courses must meet the following criteria.
- At most one course in the set can be at the 500 level or COMP 455. The other courses must be at the 600 level or above.
- All courses must have been taken as a graduate student. Courses taken at UNC that satisfy the guidelines for the set of breadth courses will be accepted automatically. The Graduate Studies Committee will consider courses taken at another graduate program, or equivalent professional experience, and/or graduate courses taken during undergraduate study, on a case by case basis. For graduate courses taken previously, a CS-02 waiver form needs to be submitted.
The student’s mastery of content will be determined by the course grade in the set of three courses: a P- or better must be obtained in each course, and a Calingaert score of -3 or higher must be obtained on the three courses combined.
The Calingaert Score is a weighted average of course grades, where the weights are chosen so that a score of 0 reflects an average letter grade between a P+ and an H-. The weights for the letter grades are as follows:
For example, the Calingaert Score for three courses with letter grades P+, H-, and H would be (-1 + 1 + 3)/3 = +1.0 (assuming the three courses carry the same number of credit hours). The name recognizes Dr. Peter Calingaert, professor emeritus, who devised the measure when he was Director of Graduate Studies.
Background Preparation. In addition, each student must demonstrate mastery of the subjects considered to be essential or required preparation for our graduate program. The following UNC courses define the required preparation for our program (for a more detailed description of course contents, consult the UNC course catalog).
- COMP 311 Computer Organization (offered as COMP 411 prior to Fall 2020)
- COMP 210 Data Structures (offered as COMP 410 prior to Fall 2020)
- COMP 550 Algorithms and Analysis
- Any two of the following
- COMP 521 Files and Databases
- COMP 520 Compilers
- COMP 530 Operating Systems
- COMP 524 Programming Language Concepts
- COMP 541 Digital Logic and Computer Design
- COMP 455 Models of Languages and Computation
Mathematics, Statistics, and Physics
- MATH 233 Calculus of Functions of Several Variables
- COMP 283 Discrete Structures or MATH 381 Discrete Mathematics
- MATH 547 Linear Algebra for Applications
- MATH 661 Scientific Computing I (Introduction to Numerical Analsis)
- STOR 435 Introduction to Probability
Typically most of this material will have been part of the student’s undergraduate education, but it is entirely normal to include one or more courses in the M.S. Program of Study to satisfy this requirement. Each student must detail their Background Preparation (Form CS-1) showing when and where the material above was mastered. In case of uncertainty about the material required in a particular course, consult an instructor of the course or the instructor(s) of courses that include the material as a prerequisite. The program advisor and the Graduate Studies Committee review background preparation. However, the advisor does take primary responsibility for signing of on CS-01. For each required background, advisor will do one of the following:
Up to six semester hours of graduate credit may be transferred from another accredited institution, or from courses taken at UNC-CH before admission to the Graduate School, or for courses taken in a different graduate program at UNC-CH, in partial fulfillment of the 30-hour total credits requirement (GSH: Course Credit).
Course transfers should be indicated on the Program of Study form and must be approved by the Graduate Studies Committee and by the Graduate School. The Graduate School may require the student to pass an examination on the course content before approving the transfer.
Courses taken at Duke University, N.C. Central University, N.C. State University, UNC-Charlotte, and UNC-Greensboro count as home courses requiring no formal transfer if registered through inter-institutional registration (GSH: Registration).
Before completing the first 18 hours of courses, the student shall submit to the Graduate Studies Committee their background preparation (on Form CS-1, approved by the program adviser), and a proposed plan of study (on Form CS-3) chosen after consultation with the program adviser. The student may submit a plan early to find out what will be acceptable, and may specify choices such as “Course x or Course y”, retaining the right to make the choice later if it is approved.
The 30 credit hours should be related to the general goal of getting an MS in Computer Science. However, students are encouraged to take courses taught by a department other than COMP, as long as the course topic supports their general area of study in Computer Science. The Graduate Studies Committee can help clarify if a course would be eligible.
COMP 910 is a device called a “module course” that permit a student to take part of a course for part of the credit. Thus a student who is familiar with the content of part of a course, but not the whole course, is not forced to choose between omitting the course and taking all of it. This helps a student with better than minimum preparation to make room for more advanced courses in the student’s area of interest. The decision to create a module of a course belongs to the instructor of the full course. The student should begin by contacting the instructor to negotiate what the module(s) should cover. The instructor should communicate the decision to the Associate Chairman for Academic Affairs. Creation of a module and registration are performed on a case-by-case basis by the Associate Chairman for Academic Affairs and the Registration Coordinator.
The election of a minor field is optional and infrequent. If a minor is elected, it must include at least 9 hours of courses that are taught by departments other than COMP (and not merely cross-listings of COMP courses). The minor must also meet all the requirements described in GSH: Master’s Degree Requirements.
In the event that one COMP graduate student takes a course taught by another COMP graduate student, the Director of Graduate Studies should be consulted to determine whether credit can be granted. In general, it is encouraged that graduate students wait till the course is taught again by a faculty member.
Program Product Requirement
Each student is required to have programmed and documented a product-quality program product. A program product is a piece of software that is developed for the use of people other than the developer and for which there is evidence that it can be maintained by other developers after the initial developer is no longer working on it. This means that the student must demonstrate experience in the design, development, and documentation of a software product of significant size and complexity, preferably as part of a team. This requirement can be satisfied in one of the following ways.
- An undergraduate software engineering course, such as COMP 523,
- graduate course programming assignments or projects at UNC,
- RA programming assignments at UNC, or
- industrial experience (e.g. co-op or summer internship). The industrial experience must satisfy all of the following:
- the organization that you worked for has a software development process (this precludes, for example, a single person who asked you to build something)
- the requirements were given to you
- the software will be used by other people
- the code will be maintained by someone else after you completed it
The project options must be approved by two faculty members. The student must file CS-13 to document completion of the requirement.
Technical Writing Requirement
Each student must demonstrate the ability to write a professional-quality technical document. There are three options available for satisfying this requirement, as follows:
Comprehensive Paper Option
The paper should be either a project report that includes a comprehensive survey of the literature, or a survey and synthesis of a substantial body of work. The document satisfying the technical writing requirement should be a product of working closely with a faculty advisor, the primary reader, through multiple iterations of writing refinement and feedback. The paper is then presented to the secondary reader for review. A requirement is that both readers judge the paper to be of M.S. thesis or publication quality with respect to both substance and presentation. This option must be reported on Form CS-8.
A written thesis is based either on research or on the solution and documentation of a substantial problem in application or system programming. The subject is chosen jointly by the student and the thesis adviser. The student selects a guidance committee of at least three members of the Graduate Faculty. The student must submit a brief written thesis proposal to the committee members during the early stages of thesis work.
The student must register for at least three hours, but not more than six hours, of COMP 993: Masters Thesis. Registration for COMP 993 can reduce to 24 the number of hours of non-research courses that the student must take (GSH: Master’s Degree Requirements).
A student who elects to write a thesis must make an oral presentation of the thesis to the guidance committee. Before this presentation can take place, the adviser and at least one other member of the student’s committee must agree that the thesis is in substantially finished form. The student may elect that the presentation be public. In that event the student gives a 50-minute presentation of the thesis, followed by questions from the committee and then from the audience. If the committee wishes, it may continue to question the student in private. If the student elects a private presentation, it will be of such form and duration as are prescribed by the committee. Public presentations are encouraged as a means of keeping faculty and students informed of current research and development activities, and to give the student experience in public speaking (GSH: Master’s Degree Requirements).
The thesis presentation is technically a Final Oral examination. The student may elect to combine it with the M.S. Oral Comprehensive examination on course work into a single examination, provided that the scheduling requirements for both have been met. This election is independent of whether to present the thesis publicly.
The student must be registered during the semester(s) in which the M.S. thesis presentation is held. Provided that no use of University faculty time and/or facilities is required, a student need not be registered in the semester in which the degree is to awarded, unless the thesis is defended and submitted to the Graduate School during the same semester (GSH: Registration).
Outside Review Option
A student who has written certain technical material in academic or nonacademic work may use this material to satisfy the writing requirement. The student should apply to the Graduate Studies Committee on Form CS-4. The relevant documentation should be attached; it will be returned.
Members of the Committee are normally willing to sign a non-disclosure agreement and read proprietary documents in confidence. Approval requires a two-thirds vote of the Graduate Studies Committee.
Documents may be accepted as satisfying this option only when all the following conditions have been met:
- The document is written in the English language.
- The student is the principal author of the document. If there are co-authors, each will be asked to acknowledge that the student did the bulk of the writing.
- The document has technical content and is approximately 5,000 words long (or longer).
- The document has been reviewed, evaluated, and approved for both style and content by each of at least two readers.
- The review process was such that the result of a negative review would have been rejection of the document.
- The review process was unrelated to this writing requirement.
Documents that satisfy this policy include: (1) Ph.D. dissertations and M.S. theses with technical content; and (2) most articles (of sufficient length and appropriate content) published in refereed journals or conference proceedings.
Documents that do not satisfy this policy include: (1) term papers and project reports for UNC-CH COMP courses, and (2) papers written primarily to satisfy this option.
At the end of the M.S. program of study, students must pass a comprehensive examination (this is a Graduate School requirement). The M.S. Comprehensive Examination tests the student’s mastery of graduate-level computer science material and supporting undergraduate content. The student may elect to take either a written or an oral comprehensive exam.
In the Department of Computer Science, the comprehensive paper or thesis submitted to satisfy the Writing Requirement serves as the written form of the M.S. Comprehensive Examination. If outside review option was used for the writing requirement, the paper must be extended to add a “comprehensive” component (in order to be used as the M.S. Comprehensive Examination). This is typically done by adding a comprehensive review of the state of the art. If passed, the Written M.S. Comprehensive Examination can also satisfy the Doctoral Written Examination, should the student choose to continue toward the Ph.D. degree.
The student may opt to take an Oral M.S. Comprehensive Examination. Passing an Oral M.S. Comprehensive Examination cannot satisfy the Ph.D. Written Examination requirement. The Oral M.S. Comprehensive Examination is a topical exam, covering the courses listed in the M.S. program of study.
A student must be registered during the semester in which the M.S. Comprehensive Exam is taken (GSH: Master’s Degree Requirements).
If the student passes the exam, that fact is reported to the Graduate School by the department.
If the student fails the exam, the Comprehensive examination may be retaken, only once (except by petition), after a lapse of at least three months. The student may elect an oral or a written form for the second examination independently of the form of the first (GSH: Master’s Degree Requirements).
If the failure resulted primarily from weakness in a narrow area, the second examination may be designated to cover only that area of weakness. For an oral examination, the examining committee will notify the student, in writing, of the scope of the second examination. For a written examination, the departmental Committee on Examinations will so notify the student.
Two semesters of residence credit must be earned (GSH: Master’s Degree Requirements, GSH: Residence Credit). This is achieved by the completion of 9 or more hours of course work in each of two semesters or by part time registration over a larger number of semesters. Transferred credit will not be included in the residence credit calculation.
All degree requirements must be completed within five calendar years from the date of the student’s first registration in the Graduate School, whether in COMP or in another graduate program (GSH: Master’s Degree Requirements). As much as two years of time spent in active military service, the Peace Corps, or VISTA will not be counted, provided that the department and the Graduate School approve. Also, the student may request a leave of absence for a definite, stated time, not to exceed one year. If the department and Graduate School approve, the duration of the leave is not counted against the time limit. Full-time master’s students who are funded by the department normally do not receive funding beyond their fourth semester.
If degree requirements change during a student’s stay in the department, he or she has the option of continuing under the old rules or switching and satisfying all the new rules.
An exception to any rule may be requested for cause by petition. Decisions made by individual faculty members or by committees may be appealed to the department faculty as a whole.
The student must apply by the deadline to the Graduate School for award of the degree (GSH: Graduation).
Master’s students are expected to contribute to department outreach efforts by volunteering to demonstrate research projects or engage with visitors during community outreach events. Students are encouraged to contribute three to six hours of outreach per academic year.
The following schedule represents typical progress toward the M.S. degree. The forms referenced can be obtained online or from the Student Services Manager.
By the end of semester 2
- Complete 18 credit hours.
- Submit Proposed Program of Study (Form CS-3) and Background Preparation (Form CS-1) indicating how each of the M.S. requirements has been or will be met.
Any semester, but no later than the submission due date for dissertations on the Registrar’s Calendar.
- Satisfy the program product requirement (Form CS-13).
- Satisfy the writing requirement (CS-8 or CS-4). We suggest that you complete this during the third semester unless you plan to write an MS thesis. If using CS-4, make sure to also prepare an extended version of the paper, to satisfy the “comprehensive” requirement.
By the end of semester 4
- Complete coursework (at least 30 hours in approved Program of Study).
- Take the oral comprehensive examination (Graduate School form) or write a comprehensive paper (Form CS-9).
- Submit Application for Admission to Candidacy and Degree Card (the deadline for these forms is about one month after the beginning of the semester).