CourseBook is a senior design project by Amanda Leicht and Matthew Moore for the 2007-2008 school year. The main goal is to provide a user-friendly, intuative, and useful Course Search and Planning tool for the students at the University of Pennsylvania.

CourseBook was developed using Google Web Toolkit . The database is hosted on the STWING mySQL servers and the Java Servlet and client-side components are hosted on the Apache Tomcat server running on the SEAS Fling-l server.


For over a decade, the "ultra-modern" Penn-In-Touch was the only utility available to students for their bi-annual course registration. During this time, registration required not only considerable time and effort, but the knowledge of and ability to consult five to six separate resources simultaneously. The process of creating a working schedule involved the Penn-In-Touch registration window, the Penn-In-Touch course planning guide, the Course Description Registrar, the Course Timetable Registrar, the Penn Course Review website, and a separate spreadsheet to consolidate all the aforementioned information and avoid time conflicts. Simple tasks ranging from locating other classes your favorite professor is teaching to selecting an Arts and Letters requirement which meets Monday/Wednesday/ Friday at 10:00am were nearly overwhelming for the average student—there was simply too much information to sort through manually. It was these problems that CourseBook, our course planning utility, sought to solve.

CourseBook, at its inception, aimed to consolidate this information into a system developed with the Google Web Toolkit which was easy to use, search, and explore. The system provided diverse functionality, including the selection of courses based on specific criteria such as time constraints, professor, difficulty, and requirements satisfied. It helped with creating and storing course schedules, matching courses to graduation requirements, and viewing schedule summary statistics. All relevant course information was compacted into an elegant and easily accessible display, consolidating pages of information for easy browsing. CourseBook was to provide the tools to students to save countless hours and frustrations, make more informed course selection decisions, and generally improve the quality of the course registration experience at Penn.

Unexpectedly, however, the University released a new "Course Search & Schedule Planning" tool late in the development of CourseBook. The utility provided much of the intended functionality of CourseBook, but was a mere shadow of our vision for CourseBook in many respects, such as its failure to integrate Penn Course Review information. CourseBook, in response, took on a new challenge: to provide an easier to use, more student friendly interface than the University utility’s, while still providing the originally intended functionality. With this new goal established, and with student feedback, a valuable resource the University often fails to consider, CourseBook provides a clean, intuitive, and visually pleasing interface for course registration—and a challenge to the ideas behind the University’s new system.