Leonid Pesin
Moscow State University, Ph.D. student
E-mail: pesin@rtsnet.ru,
Phone: 7-095-3311798, Fax: 7-095-9734435
Peter Brusilovsky
Carnegie Mellon University, School of Computer Science
E-mail: plb@cs.cmu.edu, Phone:
412 268 56 84, Fax 412 268 55 76
WWW: http://www.contrib.andrew.cmu.edu/~plb/home.html
Abstract: SQL Web-Tutor is an adaptive Web-based educational hypermedia (HM) system for studying SQL language. SQL Web-Tutor adapts it's behaviour to user's knowledge, goals, needs and to teacher's strategies. It uses the knowledge-based approach for adaptation [Brusilovsky, Pesin, Zyryanov 96] which is based on knowledge about the user and the domain being learned. The system is also an authoring tool, where a human teacher can alter existing SQL course, as far as to provide the content of his or her own course, describe its structure, and supply his own teaching strategies and other rules. SQL Web-Tutor is a project under development based on ideas developed by our group in Moscow State University in earlier adaptive tutoring systems for different areas like programming [Brusilovsky 92], databases [Brusilovsky, Pesin 94], and geography [Brusilovsky, Zyryanov 93]. It is a result of application of our knowledge-based approach to creating hypermedia-based intelligent learning environments [Brusilovsky, Pesin, Zyryanov 96].
This paper presents a brief overview of system's architecture and implementation.
SQL Web-Tutor helps user to study popular database language SQL. The user works with a regular Web-browser communicating with a web server running SQL Web-Tutor. While working the student sequentially receives web-pages with presentations of SQL concepts and commands, examples of the language use, tests and tasks. He can also enter his own examples and play with them in special "SQL environment" as well as play with examples provided by the system.
Each page contains links to other pages of the course: a concept can have links to other concepts - it's prerequisites and consequences, to similar concepts, to generalisations and to special cases and so on; to tasks, tests and examples which use this concept. A page for task, test or example will have links to all pages of concepts and commands which are required to be learned for it's solving or understanding. Navigating through such links user learns the domain as usually in HM system.
The system can essentially assist the user and even take the control over the navigation using the knowledge about user and the domain. It uses visual adaptive annotation technique and direct guidance technique [Brusilovsky, Pesin 95] to provide adaptive navigation support. Each hyper-node may have different educational state for a given user at different time. Concept or command can be ready or not for learning, known or well studied (with different grade). Task and test can be ready or not, solved or not. Example can be ready or not, accessed or not.
First, any of such states is used in presentation of links in any page to reflect educational level of each node linked from the page and to help user not to get lost in quite large hyperspace and to choose the most relevant next step. Thus, the system adjusts the set and appearance of links on each page basing on the state of corresponding nodes. Furthermore, when the choice of link to follow is still hard for user, he can get the best next node of the moment from the system. This feature is provided by special intelligent component designed and tested in ISIS-Tutor [Pesin, Brusilovsky, 94] and can be strongly affected by tutoring strategies and course structure, provided by author. As an extreme case - author can organise strict linear course consisting only of tasks not giving any control to the user (examination).
From the other hand, content of each page itself can be adapted
to the user knowledge. Qualified users need to receive more detailed
and deep information, while novices need more additional explanations.
And the system provides an ability of such adaptation for user.
Our approach to building adaptive HM systems is based on the ideas from the domains of intelligent tutoring systems and adaptive interfaces. The system is designed as a set of modules integrated by interlinked domain and student models. All modules can use and update the student model. Domain model (DM) is a network containing all main teaching operations (concepts, tests, tasks and examples) as it's nodes and reflecting different kinds of relations as coloured links between the nodes. The student model (SM) reflects educational state of such node.
The central part of the hypermedia network represented on web
is designed as a visualised DM network. All teaching operations
are represented in the HM network and external representation
of each network node (HM page) is generated (assembled) from the
internal frame-based form. The content of the page including the
set and visual annotation of links is adapted to the student knowledge
represented in SM. The tutoring component plans the optimal sequence
of multi-concept operations and use it to hint, help or even control
the user.
The system is implemented on Microsoft SQL Server 6.5
and Active Server Pages (ASP)
for Microsoft Internet Information Server (IIS)
to run on MS IIS 3.0 under Windows NT 4.0.
The system's knowledge base is stored as a database on the SQL
Server. It contains a table for all DM objects (nodes) with their
properties and URLs, and a table for the typed relationships between
the nodes. Another table contains SM data: states of all nodes
for all users. Stored procedures working with these tables provide
all basic operations for DM and SM. The database is accessed from
the IIS using ODBC drivers.
Therefore, each DM node has a reference to it's homepage. Beside usual HTML code, this page contains special ASP mark-up which is JavaScript and VisualBasic server side scripting. These scripts allow to access the database as far as doing other server side processing. In that way the system can generate content of the resulting page omitting some parts of source page and adding a content of other files using DM and current state of SM. In the same way it adapts the presentation of links.
Between the sessions, SM is stored in the database. During the
work of student with the system, his SM is stored in ASP Session
object provided by IIS and implemented as a cookie object. When
user is registered and the new session starts, system copies user's
SM to his Session object. When IIS recognises the end of the session
the system saves SM back to the database. This way provides efficient
and fast SM use getting rid of superfluous database accesses.