The CSTutor Project

The general problems solved by the Computer Science Tutor are the following:
1. Provide a reliable, easy to use, and helpful tutoring program to all Computer Engineering/Science students.

2. Provide this program as a publicly available, always-on application. This benefits students unable to take advantage of instructors' office hours, those unable to attend CSC/CPE Tutoring Labs, or those that prefer not to seek help for fear of exposing their ignorance and/or lack of understanding.

3. Provide a simple and intuitive interface for users/instructors for creating tutorials and lessons.

4. Provide accurate and secure student assessment through interactive quizzing.

5. Provide student tracking in terms of where they are in lessons (relative to lecture) and how they have done on quizzes.

While these problems have been solved by a number of commercially available and public domain products, the CS Tutor provides a solution with certain functional improvements over existing tools. In addition, the development of the CS Tutor focuses on two other specific problems not addressed in commercial tools:
1. Provide a pedagogical example for use in the instruction of software engineering, including an example of the practical application of formal methods.

2. Provide fully documented public domain source code for use by others.
The CSTutor project is organized into the following directories:

Details of this organizational structure are given in the online materials for Gene Fisher's software engineering courses, CSC 205 and CSC 206.