Graduate Degree Programs

Computer Science offers the Master of Science (M.S.) and the Doctor of Philosophy (Ph.D.) degrees in computer science. The M.S. degree provides an intensive course of study in areas of faculty research interest. It provides the student with an excellent understanding of computer science that provides a solid foundation for many advanced jobs in the field. The M.S. degree with a thesis is a required step for obtaining the Ph.D. degree.

The Ph.D. is granted to highly-qualified students who have completed a rigorous course of study and research training resulting in the preparation and defense of a dissertation describing original computer science research. The Ph.D. is the highest academic degree. It confers the right to be addressed as doctor and opens the door to rewarding and fulfilling careers in academia and industry.

The doctoral student will obtain a broad and deep graduate-level background in computer science, with particular depth in a chosen area of specialization. The student will engage in research from almost the beginning of the program and will receive extensive training in computer science research over the course of the program under the direction of a faculty advisor as well as other faculty on the five-member PhD committee..

Requirements for the M.S. Degree

An M.S. student has the option of preparing and defending a masters thesis or completing a masters project. The thesis option is the traditional route to an M.S. degree, and is required of all students who want to go on to the Ph.D. The thesis requires substantially more work by the student than the project, and it allows a more in-depth examination of a problem. The thesis option prepares the student for a career in research and development or for further graduate work in a Ph.D. program. The masters project is more targeted and applied than the thesis, with additional course work. This option best prepares students for advanced jobs in industry. Both options require thirty (30) credit hours of course work at the 400 level and above. This includes:
1. Required core courses. The required core courses, which must be passed with a grade of B or better, are: Software Engineering (COS 520), Theoretical Computer Science (COS 550), and Algorithms (COS 554).
2. Six thesis credit hours (COS 699) or three project credit hours (COS 599).
3. Approved elective courses.

Students taking the thesis option are required to take at least 12 credit hours of electives at the 500 level or above. Students taking the project option are required to take at least 15 credit hours of computer science courses at the 500 level or above. Upon approval by the students advisory committee, highly-related courses from outside CS may be substituted for up to 6 of the remaining hours. Students who are interested in continuing on to the Ph.D. are encouraged to complete as many of the Ph.D. breadth courses as will fit into their program. These courses are listed in the description of the Ph.D. program.

For students choosing the thesis option, a thesis must be prepared as required by the Graduate School and defended publicly. For the project option, the student must give a public presentation of the project.

Degree requirements may change slightly from year to year so the official requirements for any start year may be found in the online Graduate Catalog (see > Select year > Select Graduate programs, Certificates and Specializations in the left menu > Select Computer Science).

Requirements for the Ph.D. Degree

Requirements for the Ph.D. Degree
The content of the Ph.D. program is designed to prepare the students to conduct research in computer science and to take positions in academia and industry. Students are required to carry out in-depth, independent, publishable research that is an original contribution in the field. They will be involved in research soon after entering the program.

To be admitted to candidacy for the Ph.D. students must complete the breadth requirements, all requirements for an M.S. with a thesis, the 1 hour Ph.D. orientation seminar, and be accepted by a vote of the Computer Science Graduate Faculty.

The Ph.D. program totals 58 semester hours in an approved program of course work. These hours are divided as follows:
• 21 hours of breadth requirements
• 12 hours of course electives
• 6 hours of M.S. thesis credit
• 18 hours of Ph.D. dissertation credit
• 1 hour of Ph.D. orientation seminar

The breadth requirements are designed to give the student a broad, graduate-level background in computer science. The breadth requirements are:
• Theory of Computation (COS 550)
• Algorithms (COS 554)
• Software Engineering (COS 520)
• Computer Networks (COS 540)
• Database Management Systems (COS 580)
• Artificial Intelligence (COS 570)
• Scientific Modeling (COS 515)

Students admitted from the University of Maine who have taken one or more of these courses as an undergraduate must take an approved substitute course in those areas. Students from elsewhere who have had similar courses can ask for a waiver for one or more breadth courses and provide the Graduate Coordinator with sufficient documented evidence of expertise in the area. This will be evaluated on a case-by-case basis. Except in rare cases the student will be required to take the breadth courses as stated.

A 1-credit hour orientation course should generally be taken the first semester that the student is in the program. During this course, the student will be introduced to what it means to be a Ph.D. student, and the student will be introduced to the program and to the graduate faculty and their research.

The student will also take 18 hours of approved computer science electives at or above the 500 level. Up to 9 hours of courses outside COS may be substituted with the approval of the students advisory committee. It is expected that these courses will be at or above the 500 level and that they will be related to or supportive of the students research.

In addition to course work, the student will also be required to pass a qualifying examination in the area of specialization. This examination with be administered by the student’s advisor.

The student is required to prepare and defend a dissertation. The dissertation is a major written work that describes the students original, publishable contribution to the field of computer science research. A committee of 5 faculty members, including the students advisor, guide the student work on the dissertation. Upon completion, the dissertation is defended at a public presentation.

Degree requirements may change slightly from year to year so the official requirements for any start year may be found in the online Graduate Catalog (see > Select year > Select Graduate Programs, Certificates and Specializations in the left menu > Select Computer Science).