A senior thesis allows students to explore areas of computer science that are new to them, to develop the skill of working independently on a project, and to synthesize and present a substantial work to the academic community. Thesis proposals are normally developed in consultation with the student's research committee. This committee consists of the student's faculty supervisor and two other faculty members. It is involved in the final evaluation of the project. The results are presented in a public seminar or written in a publishable form.
Prerequisites: At least 4 upper-division (300-400 level) courses by the end of the junior year, or completion of the major by the end of the fall term of the senior year. The student should have a GPA of at least 3.5 in all major courses numbered 300 or above.