ASPIRE-Tutor is the tutoring server. It delivers all the tutoring systems developed in ASPIRE-Author to users. The architecture of ASPIRE-Tutor is illustrated in Figure 1. ASPIRE-Tutor consists of a set of modules, with each module having specific responsibilities in the serving of intelligent tutoring systems.
The student accesses an intelligent tutoring system served by ASPIRE through a Web browser. Every action performed by the student would be sent to the Session Manager, which passes the appropriate requests to the Pedagogical Module. The Session Manager thus manages the flow of control of the interaction.
The Pedagogical Module decides what actions to take to fulfill the request, and does so by sending appropriate requests to the other modules, i.e. any/all of the Diagnostic Module, Domain Manager, Student Modeller, Log Manager and User Manager. The Pedagogical Module thus manages the pedagogical decisions that determine what the response to each request will be.
Each request to a module results in a status and optional data being returned to the Pedagogical Module. In addition, the functional modules may access and/or update data objects, e.g. student model, domain model, logs, which are stored in the Allegro Cache database. The various components of the model may also be updated. The Pedagogical Module returns the final status and data to the Session Manager. The Session Manager organises the result to be returned to the interface, by packaging up a response and/or indicating what interface object should be presented next.
The Diagnostic Module analyses students' solutions, and identifies any mistakes students made. In order to be able to perform this task, the Diagnostic Module needs the services of the Domain Manager, the component that is in charge of all knowledge bases developed for various intelligent tutoring systems. On the basis of the diagnosis performed by the Diagnostic Module, the Student Modeller updates the student model, i.e. the system's view of the student's knowledge. The student model is used to adapt instructional actions to meet the needs and abilities of each individual student.
All actions students perform in ASPIRE are logged, and the Log Manager is responsible for maintaining the logs. Finally the User Manager is the component which maintains user information, and makes sure that only authorized people can access ASPIRE and various intelligent tutoring systems defined within it. There are several types of users in ASPIRE: students, teachers, administrators, developers and authors. Each group of users have specific privileges and rights in the system, and can access different parts of the system. User Manager makes sure that users can access the part of ASPIRE they need.