4. Developer Overview

As outlined in the UI Overview, the Gradebook system is comprised of three sections, broken into separate tabs. The Gradebook tab is the primary tab where the teacher may maintain his class, managing grades, students, groups, etc. The Data/Analysis tab is designed to provide a graphic overview for the teacher and also to allow a graphical tool to modify certain aspects of the class. The grade prediction tool is a powerful tool for both professors and students, giving them the ability to calculate the impact future grades will have on their current standing in the class. The gradebook is designed to be a local stand alone program, but there are options to connect to a server to download rosters and upload grades.

In the gradebook tab, the main objects are the Students, Assignments, Groups, and grading scheme. Together, these objects are the fundamentals of the gradebook. There will be a large of students, and so a data structure providing efficient access will be necessary. A grading scheme is simply just a collection of marks, that won't be changed frequently, but will be accessed often to provide marks for assignments. Groups will maintain lists of students, and will be accessed when loading the gradebook. The gradebook tab will allow the professor easy access to add, edit and remove assignments, students, groups and the grading scheme. Each section will always be sortable and modifiable.

The Data/Analysis uses much of the objects from the gradebook to generate its graphics. The tab uses a Histogram object, LineGraph object and a pie graph object. Each collect data from objects used in the Gradebook to generate the graphics for each. The Data/Analysis page also accesses windows to modify grades and students. The page primarily accesses the Gradebook data while loading, and then only again to modify objects and update its graphics.

The grade prediction tab also pulls its information from the Gradebook objects to create the current situation academically for each student and to help predict the future by using the assignemnts and their types to help calculate future grades with mock values for assignment scores. Nothing done in the grade prediction will modify the Gradebook objects in any way. The point is purely to pull data from the Gradebook, and then to create scenarios of the future using upcoming assignments.




Prev: non-functional | Next: spec | Up: index | Top: index