Sorry, you need to enable JavaScript to visit this website.

2018-2019 Graduate Handbook

2018-2019 Graduate Handbook


Beginning with fall semester, 2013, RIT began operating on a semester-based calendar; prior to this, RIT operated on a quarter-based calendar. Links on this web site directing users to sections under quarters are primarily for historical interest. Some information (such as forms or documents) contained in sections about quarters may no longer be accurate. Some information contained in sections about quarters may or may not apply to particular students (for example, transition students who began their degree program under quarters, but who plan to complete their degree program under semesters). Students should confirm with their academic advisor which information, documents, or forms apply to their specific case.


The Curriculum

The graduate program of study consists of 30 semester credits. Students will select one of two tracks to the degree, the thesis track or the project track:

The Core Course:

• CSCI 665 Foundations of Algorithms (3 credits)

The Thesis Track:

• Three courses from a cluster (9 credits)
• Four electives (12 credits)
• Master’s Thesis (6 credits)

The Project Track:

• Three courses from a cluster (9 credits)
• Five electives (15 credits)
• Master’s Project/Colloquium (3 credits)


Computer Science graduate students are required to identify a cluster of courses to complete their graduate work. To satisfy the cluster requirement a student must take three courses in a single cluster.

Cluster Descriptions

In the course lists for each cluster, those that are labeled “required” are courses that students who choose that cluster are required to take. Each cluster contains options for independent study or heretofore unnamed special topics courses.

Courses Within Each Cluster

Computer Science Independent Study

Students have a limited opportunity to obtain credit for independent study and to use that credit to meet degree requirements. Generally, independent study projects represent work that is different from, or an extension of, existing course offerings. In order to take an independent study, students must have a faculty sponsor. The faculty sponsor has to be a member of the CS faculty or GCCIS Ph.D. core faculty. Students and that faculty sponsor will fill out the Independent Study form to decide what they will do and how students will be graded. Students and the faculty sponsor must also sign the Independent Study form and the Graduate Program Director must approve it before the student is allowed to register for an Independent Study course. After the student’s work is complete, they are required to submit a report of their work to the sponsor of their independent study. The expected amount of time spent for a 3 credit hour independent study is equivalent to a 3 credit hour lecture course. A detailed report describing the completed work has to be handed in to the faculty sponsor. A typical report has about 30 pages. Students can apply at most six (6) semester hours of Independent Study toward the MS degree in Computer Science.

Approved Graduate Courses From Other Departments

Please work with the hosting departments of the following courses at time of enrollment regarding course registration as the Computer Science Department is not authorized to enroll students into these courses.

CISC-820 Quantitative Foundations
CISC-830 Cyberinfrastructure Foundations

Information Technology
ISTE-724 Data Warehousing
ISTE-780 Data-driven Knowledge Discovery

Computer Engineering
CMPE-655 Multiple Processor Systems
CMPE-750 Advanced Computer Architecture

MATH-601 Methods of Applied Mathematics
MATH-605 Stochastic Processes
MATH-612 Numerical Linear Algebra

Imaging Science
IMGS-616 Fourier Methods for Imaging
IMGS-682 Introduction to Digital Image Processing
IMGS-722 Remote Sensing: Systems, Sensors, and Radiometric Image Analysis
IMGS-723 Remote Sensing: Spectral Image Analysis

Liberal Arts
ENGL-681 Introduction to Natural Language Processing (effective March 29/2017)
ENGL-682 Advanced Topics in Computational Linguistics (effective March 29/2017)


Any grade lower than “C” is considered failing. If a student receives a "C-" “D” or “F” they should meet with the graduate advisor as soon as possible to discuss the repercussions and create a recovery plan.

Getting Advice - MS

Your advisor should be your first point of contact for assistance and advising. An academic advisor has been assigned to you based on the first letter of your last name. Please be sure to view your current advisor assignment via the RIT Student Information System (SIS).

To schedule an appointment, please call the Computer Science Student Services Office or stop by our office in GOL-3005. We do not do same day appointments, so please plan accordingly. Appointments are typically held between 9am-4pm.

Advising appointments may be necessary to discuss the following:

Schedule Changes and Planning
Curriculum Worksheet Questions
Change of Program Out of CS
Course Withdrawal
Concerns with a Course
Full-time Equivalency
I-20 Extension
Reduced Course Load
Non-majors Interested in CS

Advisors are also available via email to answer questions. Advisors use your RIT email account as the primary means of contacting students. If you use another email, you should forward all your RIT mail to the account you check regularly.

Academic Advisors

Faculty Advisors

While faculty advisors can discuss both academic and personal issues and address many of the same issues as the professional advisors, the real strength of faculty advisors lies in their professional expertise. Talk to your faculty advisor about career options, choices to make in selecting Computer Science or outside electives, or perhaps to get their opinion on several co-op opportunities that you have.

Faculty Research Interests

Program Directors

The Department of Computer Science has an Undergraduate Program Coordinator, an Associate Undergraduate Program Coordinator, a Graduate Program Director, and an Associate Graduate Program Director. All of these individuals have ongoing responsibilities to help manage the undergraduate and graduate programs. The specific roles and responsibilities for each of these individuals is determined by the department chair, influenced by the nature of and size of each program, and can change over time. In general, these individuals handle unusual situations with respect to degree requirements, approve or reject requests for exceptions, review co-op reports and assign co-op grades, verify that students can be certified for their degrees, and determine probation and suspension status. Coordinators are frequently called upon to sign off on most requests, from simple grade changes to changes in program status. Such requests are typically submitted through academic advisors or department staff. The Undergraduate Program Coordinator makes decisions and assigns credit for transfer courses as well as Advanced Placement, CLEP, and IB situations while the Associate Undergraduate Program Coordinator currently handles all matters related to co-op. The Graduate Program Director determines which students who apply (or request to change into the graduate program) are accepted and also recommends and monitors scholarships. The Associate Graduate Director currently handles all matters related to the accelerated BS/MS dual degree program in Computer Science or other accelerated BS/MS dual degree programs that include an MS in Computer Science.