Proceedings of the workshop "Adaptive Systems and User Modeling on the World Wide Web",
Sixth International Conference on User Modeling, Chia Laguna, Sardinia, 2-5 June 1997

SQL Web-Tutor

Leonid Pesin
Moscow State University, Ph.D. student
E-mail:, Phone: 7-095-3311798, Fax: 7-095-9734435

Peter Brusilovsky
Carnegie Mellon University, School of Computer Science
E-mail:, Phone: 412 268 56 84, Fax 412 268 55 76

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.

The System

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 Implementation

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.


  1. P.Brusilovsky, L.Pesin, M.Zyryanov "Adaptive Educational Hypermedia: A knowledge Based Approach", Proceedings of the 6th International Conference on Human-Computer Interaction, EWCHI'96, Moscow, Russia, August 12-16, 1996, pp.67-73
  2. Brusilovsky P. and Pesin L. (1995) 'Visual annotation of links in adaptive hypermedia'. Proceedings of CHI'95 (Conference Companion), Denver, pp. 222-223.
  3. Brusilovsky P., Pesin L. "An intelligent learning environment for CDS/ISIS users". Proceedings of the Interdisciplinary Workshop on Complex Learning in Computer Environments (CLCE 94). University of Joensuu (Finland), May 1994; p.29.
  4. Brusilovsky P., Zyryanov M. Intelligent Tutor, Environment and Manual for Physical Geography. - In: Proceedings of the Seventh International PEG Conference, PEG'93, July 2-4, 1993, p.63-73.
  5. Brusilovsky P., The Intelligent Tutor, Environment and Manual for Introductory Programming. Educational Technology and Training International, 1992, v.29, n.1, p.26-34.