Adaptive Hyperbooks for Constructivist Teaching


Nicola Henze, Kabil Naceur, Wolfgang Nejdl and Martin Wolpers

The KBS Hyperbook System allows to model, organize and maintain open hypermedia systems on the web. A particular application of our hyperbooks are educational hyperbooks which enable the distribution, maintenance and personalization of teaching material. In this article, we describe the modeling and implementation of this adaptive and open hypermedia system. We introduce modeling approaches for the open hypermedia system, describe the functionality of the adaptation component, and show the modeling and implementation of an adaptive hyperbook for an undergraduate course "Introduction to Java Programming".

Introduction

This article gives an overview about the KBS Hyperbook System and its use in teaching scenarios using a constructivist approach. In section 2 we discuss the importance of modeling and metadata for open hypermedia systems, and we show the modeling approach we have implemented in the KBS Hyperbook System. Section 3 introduces the ideas of constructivism in teaching and its importance, especially in distance learning. Since hyperbooks adapt to a particular student's needs, adaptation requirements and implementation are described in section 4. As an example, we show in section 5 the implementation of our CS1 hyperbook "Introduction to Java Programming" (http://www.kbs.uni-hannover.de/hyperbook/), which we use with undergraduate students in computer science (CS1). 

Modeling adaptive hyperbooks

Since the emergence of the World Wide Web, the concept of hypertext has become a main representation and presentation format for a variety of applications. Quite prominent among them are hypertext books, simply characterized as collections of hypertext documents. In most cases, these hypertext books still retain the conventional book structure and are partitioned into (sub-) documents called chapters, sections, subsections, or appendices [16]. This definition includes electronic books, which can be characterized as "existing books meant to be read on a computer screen" [10].

Starting from this simple definition, transfer of printed books into electronic form has emerged as a wide research area [21]. Some of these projects simply started with printed books and translated them to other data formats; the table of content being translated to a hypertext interface to the book. More sophisticated approaches re-edit the existing printed books by adding pictures, remarks, and annotations as hypertext links [25], or (starting from a specialized hypertext system, without using the - then nonexistent - WWW) build up networks of documents in a way not possible in printed versions, such as Dickens Web [15].

For the purpose of this article, we focus on a definition of hypertext books which places particular emphasis on structure, semantic contents and corresponding functionality of such a book, and use the term adaptive hyperbook to distinguish them from other variants of hypertext books:

An adaptive hyperbook for web-based learning is an information repository, which integrates and personalizes a set of (possibly distributed) learning materials (including projects, discussion, etc.) using explicit semantic models and metadata.

Modeling approaches

The fields of software engineering and database design have progressed from ad hoc programming and ad hoc data storage to a state where analysis and design phases using explicit object and data models are recognized as important phases during the development life cycle. Hypertext development is usually done without such analysis and design phases, and actual hypertext is rarely created based on explicit models. While this is appropriate for small hypertext documents, it is certainly less so for large ones, thus a few approaches have tried to adapt software and data engineering methodologies to hypertext collections (OOHDM [24], RMM [11], HSDL [13] and our earlier hyperbook system [4,5]). These approaches have introduced the notion of semantical modeling for hypertext collections, based on database oriented modeling techniques.

We generalize these approaches in our KBS Hyperbook System by decoupling metadata / conceptual models (including information pages, examples, student solutions, guided tours, discussions, etc.), which explicitly model all relevant units of the hyperbook, and data / document units, referencing the actual data (comparable to the idea of indexing discussed in [19]), and implementing a metadata-based system using several sets of abstractions to visualize document units and their (semantic) relationships. As a modeling language, we use the language O-Telos [17], which is an object-oriented design language with additional deductive rules and constraints, providing a rich set of meta-modeling facilities.

Representation ontology

A very general representation ontology provides the basic constructs from which the structural and domain models are built. This ontology basically defines an extended entity-relationship modeling language (concepts, relations, attributes, inheritance and instantiation) and additional abstractions for index entries referencing the external data objects and visualization concepts (connections, views). This ontology, which is described in more detail in [18] is somewhat different from, though compatible with the meta model for RDF (Resource Description Framework, http://www.w3.org/TR/PR-rdf-schema/) schemata. A forthcoming report will describe an import facility from RDF schemata and data into our hyperbook system.
     
Figure 1: Entry page of CS1 hyperbook with concepts (right frame) and relations (left frame)

Different forms of information units correspond to concepts and their attributes and can be displayed in a WWW browser. The navigational structure between these concepts is based on the relations between them. Together, concepts and relations define the way in which information is presented to the reader. Our current hyperbook system separates the display area of a regular WWW-browser into two equally sized frames for displaying attributes and their content and relations: the right frame displays the textual and image data represented by concepts and their attributes; the left frame shows the concepts relations in the form of annotated hypertext-links. Fig. 1 shows as an example the main entry page of our CS1-hyperbook.
 
 

Constructivism and teaching

In [27], Glasersfeld sees a constructive pedagogy as a counterpart to behavioristic pedagogy, and stresses the importance of teaching (which aims at the generation of understanding) versus pure training for performance (often geared at perfectly solving textbook problems). Knowing as an adaptive activity constructs a set of successful/viable concepts, models and theories relative to a context of goals and purposes. Learning requires self-regulation and the building of conceptual structures through reflection and abstraction. Problems are not solved by the retrieval of rote-learned "right" answers. In the introduction of [26], Glasersfeld also stresses the need to understand the students' thinking and to encourage them to reflect on their models as a means to improve them (e.g. by verbalizing it). Social interaction is an important stimulus for this reflection as well as for motivating knowledge construction and adaptation.

Constructivist concepts discussed in the papers from [26] include problem-oriented and inquiry-oriented learning and discussion, through protocols to obtain insight into student's mathematical thinking, the necessity of contradictions for further construction (whose awareness depends on the previous knowledge), the importance of student models, learning as cognitive restructuring, teaching through problem solving, whole class interactions and small group interactions, curiosity and reflection.

Based especially on the ideas of learning as design activity (as advocated by Papert and his colleagues [20,12,22]) and learning as an intentional activity involving knowledge-building and discussion (as in CSILE [23,14,9]), we focus in our CS1 course on the following three issues[8]:

The structural model of our hyperbook concentrates on this problem-oriented and inquiry-oriented aspect, and explicitly models the relevant aspects to support a goal-directed and inquiry-oriented learning style. Students need to know which materials are necessary for specific projects, and can use (personalized) learning sequences and indices to retrieve the required information and hyperbook pages.

Goal orientation is an important aspect of our educational hyperbooks. Since we don?t want to determine the learning path of a student (or a student group) from the beginning to the end, the students are free to define their own learning goals and thus their own learning sequence. In each step they can ask the hyperbook for relevant material, teaching sequences and hints of practice examples and projects. If they need advice to find their own learning path, they can ask the hyperbook for the next suitable learning goal.

Student modeling for adaptive hyperbooks

The student modeling component has to fulfill various tasks. First it has to adapt the hyperbook to a particular student by giving hints for navigation within the hyperbook, showing the educational state of links, guiding a student by showing the next steps to take depending on the chosen goal and project, proposing suitable reading sequences, etc. Second, it has to take the open modeling approach, underlying the KBS Hyperbook System, into account by facilitating student modeling on various, interrelated models (structural modeling / domain modeling).

All implemented adaptation strategies in the KBS Hyperbook System are based on indexing the information resources in the hyperbook. The index concepts are called knowledge items. Such a knowledge item (KI) denotes a knowledge concept of the application domain. These concepts can be elementary, for example the "if" or "while" concepts in a programming language, or compound, like "knowledge about flow control statements". The knowledge items are used for indexing the contents of information units, project units, and for describing the range of a student's goal. They are similar to the domain model concepts used in [2].

The student modeling component uses a separate model of the application domain described in a specific hyperbook. Therefor it adds a partial order between these KIs to represent learning dependencies, where KI1 < KI2 denotes the fact that KI1 has to be learned before KI2, because understanding KI1 is a prerequisite for understanding KI2. For example, to understand the KI "control structures in Java" (con), it is necessary to know about the KIs "branching" (bran) and "looping" (loop), thus loop < con and bran < con.

The student modeling component also contains descriptions of each student's current knowledge in the form of a KI-vector [7]. The separation of the domain model used by the hyperbook and of the KI-model used by the student modeling component has advantages for authoring the hyperbook, as learning dependencies between knowledge items are described once in the KI-model, and the dependencies between information units of the hyperbook can be inferred automatically from the KI-dependencies and the indexing of the information units by the KIs. This is especially important as the hyperbook allows different models of the application domain [8], as several authors or teachers may structure the domain of one hyperbook in different ways. Furthermore, this distinction between the two models makes the hyperbook system robust against changes: if additional information units are added or changed, only these pages have to be (re-)indexed accordingly (no further work has to be spent on changing the student modeling component). For more information about the student modeling component and its implementation, see [7,6]. In the following, we describe the different adaptation facilities which are enabled by the student modeling component.

Adaptive information resources and trail generation

Often a student needs information about specific topics but lacks prerequisite knowledge for these topics. For example a student wants to work on a project about "algorithms" but does not understand "simple control structures" or "methods"; in this case it would not help to start reading the information unit about "algorithms". To support the student in such cases, the system compares the student's actual knowledge with the required knowledge needed to understand the topic in question. If the student lacks some requirements, the system generates a sequence of information units, i.e. a trail or guided tour, that guides her learning towards the selected topic.

Generating such a trail is implemented by a depth-first-traversal algorithm which checks the system's estimate of the student's knowledge of those KIs that are prerequisites for the actual goal. The algorithm checks whether all prerequisite knowledge is sufficiently known by the student. If not, the corresponding information units of the hyperbook are marked. Afterwards a sequence of all marked units is generated which guides the student from the simple to the complicated topics up to the selected topic.

Furthermore, the hyperbook provides direct access to information needed for the actual task (information goal or project). Relevant information is selected by the same depth-first-traversal algorithm as mentioned above; access to the information is given by a sorted index. Each link in this index is annotated according to the student's knowledge by using a simple traffic light metaphor [2,28]: a red ball in front of the link indicates that the corresponding page requires some knowledge the student currently does not have and thus is not recommended for the student, while a green ball denotes a recommended (suggested) link, which should be understandable by the student. Finally, a grey ball denotes material which (according to the hyperbook's estimate of the student) is already known to the student. For example, fig. 1 shows how the links are displayed with short abstracts and annotations, grouped by the types of relations.

Adaptive project selection

In order to select suitable projects for a student, the hyperbook contains a project library. Each project is indexed by the KIs that have to be understood in order to successfully complete the project. Since we use a Bayesian network for modeling the student's knowledge [6], we do not have to include prerequisite knowledge items, because they are already taken care of by the dependency structure modeled in the BN.

A project is useful for a student in her current knowledge state and her situation, if

These requirements determine the selection criteria for finding an appropriate project for a student that simultaneously helps the student to achieve her learning goal and reflects her current knowledge state. They are implemented by two algorithms [6]: one calculates how good a project matches the goal of a student ( project-goal distance), while the other one determines whether the actual knowledge of a student is sufficient for performing the suggested project without too many difficulties ( fitness). For example, a student who is interested in learning simple control structures in Java will have difficulties with a project that uses control structures to build a graphical student interface if she has only "beginner's knowledge" about graphical user interfaces.

Adaptive goal selection

If a student wants more guidance during her learning with the hyperbook she may ask the hyperbook for the next learning step. This request is satisfied by determining a suitable learning goal depending on her current knowledge. Based on this goal, the hyperbook can propose a suitable project, a set of information units or a trail leading to that goal. To determine the next suitable learning goal, a sequential trail covering the whole hyperbook is calculated. For each item of this trail the system's estimate about the student's knowledge is checked; if the student fails to know some knowledge item, this item is proposed as the subsequent suitable goal.

Adaptive navigational structure

Links between information units are based on their semantic relationships. If a student wants to browse through the hyperbook it is very useful to enrich these links with additional information: a heading, a short abstract of the concept it links to and a hint indicating the educational state of this link based on the traffic light metaphor mentioned above.

Observing the user

Several systems use the fact that the student "reads" some information to update the estimate of the student's knowledge (e.g. [2]), and also include reading time and/or the sequence of read pages to enhance this estimation. While this is a viable approach, it has the disadvantage that it is difficult to measure the knowledge a student gains by "reading" an HTML-page [1]. In the current state of our development, we decided to take neither the information about visited pages nor the student's path through the hypertext into account. Instead we only use the projects for updating the system. We do this in two ways: We either ask the student for direct feedback after working on a project; the student then judges her/his own performance by selecting one of the categories "topic was easy - I mastered it effortless", "topic was okay - but some problems were arising", "topic was hard - I had a few ideas but could not get the thing right" and "no idea about this topic at all". Or we ask some experts to judge the student's project performance and use this judgment.

The "Introduction to Java Programming" hyperbook

In our teaching environment, we are currently using our KBS Hyperbook System for several of our courses, the largest one (with about 250 students in the last semester) being a CS1 course "Introduction to Programming". The course is based on constructivist teaching concepts, and builds heavily on project work as well as discussion of problems and solutions by the students.

Structural modeling for adaptive hyperbooks

Central to the structural model (fig. 2) is the concept of a semantic information unit (SIU) whose instantiations contain the main information units contained in the hyperbook. The set of SIUs is used for modeling the application domain. Relationships between SIUs are modeled by several semantic relations, which structure the knowledge referenced by the SIUs, for example to relate general knowledge to specializations, related concepts, etc. Semantic structures that emerge for domain modeling are e.g. taxonomies based on inheritance hierarchies and more general domain ontologies including arbitrary relations.

Figure 2: Main concepts of the structural model emphasizing concepts and relations

supporting constructivist teaching

To find SIUs in a hyperbook, we first specify the main topics of the book. The hyperbook for our course "Introduction to Java Programming" contains the following main level topics, which we have related to the ACM Computing Classification System (1998 version, http://www.acm.org/class/1998/ccs98.html) [7]. We use these main topics to group the contents of a hyperbook in areas: each main topic corresponds to an area in the hyperbook (fig. 1). Thus a student can choose several entry points to the hyperbook. Hints for useful entry points - according to the student's actual knowledge state - are given by annotating the links to areas using traffic lights (see section 4). For modeling connections between areas or subconcepts of areas, we also use ER-modeling. This enables different modeling emphasis.
 

Integration of examples and projects

In order to support project-oriented teaching as described in section 3, our conceptual model contains the concept project unit and subclasses thereof, such as project and project assignment (PA). Project units contain project descriptions, and different parts of a (student) project.

In order to enable students to integrate their projects in the hyperbook in a structured and meaningful way, we model a project as a part-whole hierarchy representing the different parts of each student project. This hierarchy mirrors the simplified software modeling process we use in our CS1 course. Important parts are the specification written by the students, an object-oriented design proposal consisting of several subdocuments, the documentation of the implementation and the program code itself. The program code is broken down into different (Java) classes, with each class describing its attributes and methods. Fig. 3 shows an example how a student group - named BugFix - modeled their project according to the ProjectUnit hierarchy.

Figure 3: Example of the ProjectUnit hierarchies used by a student group named BugFix
 

Portfolios: documentation of student?s projects

As discussed in [3], assessment based on portfolios settles on the idea, that project results can be used to represent and assess which concepts a student has successfully applied / learned. Such a portfolio can be modeled by a set of relations between parts of the project and the corresponding concepts which have been used for these subprojects (fig. 2). In our conceptual model, this is expressed by a relationship between project units and knowledge items. In general, we include the root concepts in the polytree of the KIs in this subset. However, a more detailed portfolio is possible by exchanging these high level KIs with lower level ones. The way our students currently design their portfolios can be seen in the WWW at http://www.kbs.uni-hannover.de/praktikum/praktikum99/Portfolio.html. In this way, we define both the basic `structure of student projects as well as their connection to the remainder of the course material.

Guided tours and learning goals

To support inquiry-oriented work with the hyperbook, trail- and goal- concepts are used for providing access to the knowledge contained in the hyperbook. Trails are basically sequences of SIUs. They are either generated and therefore tailored to the student's actual knowledge (see section 4) or are predefined (e.g. for usage during a lecture). The goal concept supports the student in defining her/his own particular learning goals. The student can choose her/his learning goal by defining a set of KIs as a goal. This subset is used by the student modeling component to determine relevant hyperbook-pages for this goal: a list of appropriate project assignments and a trail. This trail consists of a sequence of those SIUs that contain relevant information for reaching the chosen goal.

From a SIU the student has access to appropriate PAs, goals (if the student has already defined some) and trails. The student therefore can view an application of the knowledge of a SIU knowledge on a project page, or enter a trail. The main entry point for students is the hyperbook concept, which is related to all areas, PAs, etc. (similar to a table of contents). It also participates in a student defined relationship called bookmarks, thus implementing bookmarking functionality. Students can continue with one of these concepts, define a learning goal or select a predefined trail.

Enabeling discussions and annotations

To give hyperbook users the possibility to discuss the contents of the hyperbook and to encourage feedback to the authors, an annotation system has been integrated into the hyperbook. This annotation system allows the user to add annotations and to read existing annotations. The annotations are shown as structured discussions in the hyperbook. In the current version a simple model for structuring of annotations is being used (fig. 4). The user has the possibility to give tips, ask questions or criticize the contents or to answer to certain questions. The following shows the modeling of the annotations.

Figure 4: Schematic view of the annotation hierarchy

Annotations are defined as concepts in the hyperbook and therefore are handled and visualized as all other existing concepts. In addition to the attributes of a concept an annotation contains attributes like date and author. All annotatable concepts can be annotated. Annotations are also defined as annotatable concepts and therefore they can be annotated as well. To compose an annotation the user is given an HTML-form. The content of an annotation is stored in in the file system.

Technical realization

    Figure 5: Schematic view of the implementation of the hyperbook system
The KBS-Hyperbook system is implemented entirely in Java. A servlet residing in the Java Web Server (fig. 5) represents the whole system. The student browses the hyperbook with any HTML-browser capable of handling frames, while all necessary processing is done on the server side. Some of the functionality such as trails is also realized by Java client Applets.

Conclusion

This paper discussed the basic principles of the KBS Hyperbook System, centered on explicit modeling of structure and contents of the learning domain, by suitable metadata, and adaptation to the knowledge and needs of a particular user. The system is being built for a constructivist learning environment and emphasizes project-oriented and goal-driven learning. We have described the use of the system in our course "Introduction to Java Programming" and the integration of teacher and student materials and projects. We are also using the system as a metadata repository for a terminological database, and we will be using it in a project integrating and connecting course material from different universities by suitable metadata annotations.

Additional work will concentrate on adapting these conceptual models and metadata schemata for the special needs of different teachers and on an improved integration of material from arbitrary WWW sources (based on RDF).
 

Contact

Nicola Henze, Kabil Naceur, Wolfgang Nejdl and Martin Wolpers
Universität Hannover
Institut für Technische Informatik
Abteilung Rechnergestützte Wissensverarbeitung
Appelstraße 4
30167 Hannover
{henze,naceur,nejdl,wolpers}@kbs.uni-hannover.de

http://www.kbs.uni-hannover.de

Authors

Nicola Henze (1st from left)

Nicola Henze has received her masters degree in mathematics 1995 from the University of Hannover. As a research member of the Institut für Technische Informatik, she currently works towards her Ph.D. Her research interests include user modeling and user adapted interaction, knowledge management for open hypermedia applications, and distance learning.

Kabil Naceur (3rd from left)

Kabil Naceur has received his degree in elecrical enginering 1998 from the University of Hannover. Currently he works as a Ph.D. student at the Institut für Technische Informatik, Abteilung Rechnergestützte Wissensverarbeitung. His research interests are knowledge management for web-applications and distance learning.

Wolfgang Nejdl (2nd from left)

Wolfgang Nejdl has been full professor for computer science at the University of Hannover and head of Institut für Rechnergestützte Wissensverarbeitung since march 1995. He has worked in the areas of databases, artificial intelligence and hypermedia for education, and has published more than 100 articles in conference proceedings and journals on these subjects.

Martin Wolpers (4th from left)

Working in the field of knowledge management, aquisition and modeling, Martin Wolpers works as a Ph.D. student at the Institut f. Techn. Informatik, Abt. Rechnergest. Wissensverabeitung. He received his masters degree as an electrical engineer in 1997 from the Universität Hannover

Bibliography

  1. P. Brusilovsky: Methods and techniques of adaptive hypermedia. User Modeling and User Adapted Interaction, 6(2-3):87-129, 1996.
  2. P. Brusilovsky and E. Schwarz: User as Student: Towards an Adaptive Interface for Advanced Web-Based Applications. In Proceedings of the Sixth International Conference on User Modeling, UM97, Sardinia, Italy, 1997.
  3. R. A. Duschl and D. H. Gitomer: Epistemological perspectives on conceptual change: Implications for educational practice. Journal of Research in Science Teaching, 26(9):839-858, 1991.
  4. Peter Fröhlich, Nicola Henze, and Wolfgang Nejdl: Meta-modeling for hypermedia design. In Proc. of Second IEEE Metadata Conference, Maryland, September 1997.
  5. Peter Fröhlich, Wolfgang Nejdl, and Martin Wolpers: KBS-Hyperbook -an Open Hyperbook System for Education. In Proceedings of the ED-MEDIA World Conference on Educational Multimedia and Hypermedia, Freiburg, Germany, June 1998.
  6. Nicola Henze and Wolfgang Nejdl: Adaptivity in the KBS Hyperbook System. In 2nd Workshop on Adaptive Systems and User Modeling on the WWW, Toronto, Canada, May 1999.
  7. Nicola Henze and Wolfgang Nejdl: Bayesian Modeling for Adaptive Hypermedia Systems. In ABIS99, 7. GI-Workshop Adaptivität und Benutzermodellierung in interaktiven Softwaresystemen, Magdeburg, September 1999. http://www-mmt.inf.tu-dresden.de/joerding/abis99/EndPaper/henze_16/henze_16.html.
  8. Nicola Henze, Wolfgang Nejdl, and Martin Wolpers: Modeling Constructivist Teaching Functionality and Structure in the KBS Hyperbook System,CSCL'99: Computer Supported Collaborative Learning, Standford, USA, Dec. 1999. Also appeared as a preliminary version in AIED99 Workshop on Ontologies for Intelligent Educational Systems, Le Mans, France, July 1999.
  9. Jim Hewitt and Marlene Scardamalia: Design principles for the support of distributed processes. In Symposium on Distributed Cognition: Theoretical and Practical Contributions, at the Annual Meeting of the Americal Educational Research Association, New York, April 1996.
  10. William Horton, editor: Designing and Writing Online Documentation. John Wiley & Sons, Inc., 1994.
  11. Tomas Isakowitz, Edward A. Stohr, and P. Balasubrahmanian: RMM: A methodology for structured hypermedia design. Communications of the ACM, 38(8), August 1995.
  12. Yasmin Kafai and Mitchel Resnick, editors: Constructionism in Practice: Designing, Thinking, and Learning in a Digital World. Lawrence Erlbaum Associates, 1996.
  13. M. Kessler: A schema based approach to html authoring. Proc. WWW4, 1995. http://www.w3.org/Conferences/WWW4/Papers2/145/.
  14. M. Lamon, C. Chan, M. Scardamalia, P. J. Burtis, and C. Brett: Beliefs about learning and constructive processes in reading: Effects of a computer supported intentional learning environment (csile). In Annual Meeting of the Americal Educational Research Association, Atlanta, April 1993.
  15. G. P. Landow and P. Kahn: Where's the hypertext? The dickens web as a system-independent hypertext. In Proceedings of the 4th ACM ECHT European Conference on Hypertext, pages 149-160, Milano, Italy, December 1992. ACM.
  16. P. Müller: Writing hypertext books. Technical report, FU Berlin, 1995. http://sturgeon.mit.edu:8001/uu-gna/text/HTB/index.html.
  17. J. Mylopoulos, A. Borgida, M. Jarke, and M. Koubarakis: Telos: A language for representing knowledge about information systems. ACM Transactions on Information Systems, 8(4), 1990.
  18. Wolfgang Nejdl and Martin Wolpers: KBS Hyperbook - a data-driven information system on the web. In WWW 8, May 1999. http://www.kbs.uni-hannover.de/paper/99/www8.
  19. Claudia Niederée, Ulrike Steffens, Hans-Werner Sehring, Florian Matthes, and Joachim W. Schmidt: On indexing in digital libraries: Cooperation, personalization, and evolution. Technical report, Technical University Hamburg-Harburg, June 1998.
  20. Seymour Papert. The Children's Machine - Rethinking School in the Age of the Computer. Basic Books, New York, 1993.
  21. Daniel Renoult: The digital collections of the bibliotheque nationale de france: An experiment on internet. In IEEE International Conference on the Advances in Digital Libraries, 1997.
  22. Mitchel Resnick and Natalie Rusk: The computer clubhouse: Preparing for life in a digital world. IBM Systems Journal, 35(3-4):431-440, 1996.
  23. M. Scardamalia and C. Bereiter: Technologies for the knowledge-building discourse. Communications of the ACM, 36(5):37-41, 1993.
  24. Daniel Schwabe, Gustavo Rossi, and Simone D.J. Barbosa. Systematic hypermedia application design with OOHDM. In Proceedings of the Seventh ACM Conference on Hypertext, Washington DC, March 1996.
  25. The on-line books page, 1997. http://www.cs.cmu.edu/books.html.
  26. Ernst von Glasersfeld, editor: Radical Constructivism in Mathematics Education. Kluwer, 1991.
  27. Ernst von Glasersfeld: A constructivist approach to teaching. In Leslie P. Steffe and Jerry Gale, editors, Constructivism in Education. Lawrence Erlbaum Associates, 1995.
  28. G. Weber and M. Specht. User Modeling and Adaptive Navigation Support in WWW-Based Tutoring Systems. In Proceedings of the Sixth International Conference on User Modeling, UM97, Sardinia, Italy, 1997.