Experiences and Reflection on the Use of a Hypermedia Framework for Hypermedia Functionality Integration

Lopisteguy P.*, Usandizaga I.*, Filgueira J.M.**
*Facultad de Informatica - UPV/EHU
Paseo Manuel de Lardizabal, 1
20080 San Sebastian - Spain
e-mail: jiplopop@si.ehu.es
**Instituo Astrofisico de Canarias
La Laguna - Tenerife - Spain

1. INTRODUCTION

The hypermedia group of the Computer Science Faculty in San Sebastian - Spain has a four-year experience on hypermedia systems. Our early focus of interest was formal systems like those proposed by [Halasz, 94], [Lange, 90] or [Garg, 88]. In a later stage we studied world research reference systems like Ham, Devise, Microcosm, HyperForm or MacWeb, and some of the most famous tools like HyperCard, NoteCards, ToolBook or Authorware.

After studying formal systems, we have been working in the design of Madame, a hypermedia framework, basically inspired by the Dexter Model. The purpose of this framework is to provide basic hypermedia functionality to be usefully adapted to different environments.

At the moment, the validity of Madame is being tested in different projects, by using it in different application areas in collaboration with specialists from each selected area. Each project has aims at specifying and implementing one application with built- in Hypermedia Functionality (HF). The chosen application areas are

Each project is based on the specification of Madame and will implement the required functionality in an adapted/extended way. At the moment, we are basically working on the implementation of a) and c) projects. The b) project has only been studied just to demonstrate the usability of Madame and their levels in this area.

In this contribution, we present our idea about HF definition and integration, based on our experience in the a), b) and c) type projects. Next, we describe how HF is integrated in the three projects using Madame; we finally discuss the interest of Madame use in these integrations.

2. ABOUT HF INTEGRATION

We make a distinction between the intra/extra-application approach and implementation of HF integration.

When HF integration is part of the initial premises of the application design, we consider this approach as an intra-application approach (cases a) and b)). Otherwise, when we want to add the hypermedia paradigm to existing applications, without modifying its design/philosophy/implementation, we consider this approach as an extra-application approach (case c)).

On the other hand, with the intra-application approach, the HF integration implementation will result in an intra- or extra-application, but with the extra- application approach, the implementation will always result in an extra-application.

From our experience, the task of providing an application with HF consists in identifying/defining application/domain elements (we consider as an application/domain element every object, property, task, concept, abstraction, ... from the application or from the domain of the application) and relating them to hyperobjects (links, nodes, specifiers, anchors, components, navigators,...). We consider this task as the assignment of a hypermedia metaphor to an application/domain. In our opinion this constitutes the basis for the HF integration methodology to be followed.

The identification/definition of the elements to relate requires both application/domain knowledge and hypermedia knowledge. Actually, the selection of the hyperobject to relate with the element depends on the suitability of the hypermedia characteristics/services belonging to the hyperobject, with respect to the image that the designer wants the element to be provided with. For example, in electronic encyclopaediae, the node metaphor for a concept could be suitable when consulting a concept, and the anchor metaphor could also be suitable when consulting a semantic net where the concept appears. On the other hand, the link metaphor doesn't seem suitable for any kind of representation we want for an encyclopaedic concept.

So, to facilitate HF integration, it is necessary -1- to provide the designer and/or user with hyperobjects of relevant characteristics/services and -2- to provide mechanisms to relate the hyperobjects with the application/domain elements they represent.

As regards -1-, it is clear that today there is no consensus about the most common hyperobjects and their characteristics/services, and we do not pretend to reach it here. Nevertheless, this way of integrating HF requires to have the possibility for the designer/user to create specialised hyperobjects that represent application/domain elements correctly. If the functionality is not adaptable and extensible, it will be difficult to use.

As concerns -2-, the relation between hyperobjects and elements is maintained thanks to reference systems and code. Reference systems allow the identification/definition of the elements and their association with hyperobjects, whereas the code allows to invoke characteristics/services of the hyperobjects and permits to echo changes over the elements, when working on hyperobjects with editing capabilities.

Hence, implementation of one application with integrated HF will be easier when using a tool that is suited to -1- and -2-, in the same way as the implementation of one application with real-time capabilities will be easier when using a real-time developing tool.

3. MADAME

Before tackling HF integration on specific domains, we started working on the definition of basic HF through a level-organized architecture, to provide extensible and adaptable hypermedia services [Usandizaga, 95].

So, Madame consists of five different levels, each one responsible for a hypermedia functionality: the Hyperbase (HB), the Information Storage Level (ISL), the Presenter Level (PL), the Graphic Run-Time Level (GRTL) and the Hypermedia Level (HL).

The Hyperbase stores hyperspace topological information by means of components (nodes and links), anchors and specifiers as described in the Dexter's Storage Layer. The Information Storage Level stores the definition of the information contained in the components and may serve as an interface between Madame and the data of other applications. The Hypermedia Level provides navigation control functionality, the Presenter Level specifies the different ways in which the components may be presented during hyperspace traversal. Lastly, the Graphic Run-Time Level implements the different kind of presentations.

The Hyperbase and the Information Storage Levels supply structured data storage functionality; the former stores the hyperspace and the latter stores the information. The Presenter Level is in charge of presenting information and anchors; it consults the previous storage levels and requests the Graphic Run-Time Level instances to carry out the presentation. Through navigators, the Hypermedia Level is responsible for navigation, consults the Hyperbase to know about the components to be presented and manages creation (and also deletion) of presenters.

At the moment a prototype of Madame has been implemented on ADAM (Aberdeen DAta Model) an experimental OODBMS written in Prolog. This platform is very useful to rapid prototype and to improve the functional consistency of the different levels.

4. ENCYCLOPAEDIAE

This application consists in the hypermedia presentation of an encyclopaedia basically made up of articles. It allows navigation through articles, accessing them thanks to word indexes, synonym systems, multilingual translations, antonyms, taxonomies and a lemmatizer (1).

This case is typically an intra-application approach that results in an intra-application implementation. The design is basically hypermedia, therefore the application/domain elements and the hyperobjects generally constitute a unique design unit.

About Madame, ISL allows node content definition, HB allows application structural node definition and storage, and HL implements navigation and target identification techniques selected by the user, including navigation tools like history-track. In this project, the Madame functional levels have been the design base for the application (intra-application approach), which already includes HF in the first part of the development [Lopisteguy, 96].

5. THIRD PARTY APPLICATIONS

The application allows to explicitly relate information managed by heterogeneous applications, navigating from one application to another, consulting interrelated items of information. The objective is to extend the implied heterogeneous applications with a link service.

This project is a typical situation of the extra-application approach with extra- application implementation. It is necessary to identify potentially linkable application/domain elements and interfaces presenting them, to define hyperobjects modelling those elements. Concerning information, the definition and management of anchors is particularly important to allow its integration, into the interface corresponding to the information it referred to, in a homogeneous way.

When using Madame [Filgueira, 95], most of the functionality from the GRTL is filled by application interfaces. So, it is necessary to adapt the application interface for anchor presentation management, and to communicate to the PL the user interactions with anchors. Then, the PL only has to invoke the corresponding application of the hyperobject-node to be presented. The ISL models potentially linkable application/domain elements, including integrity mechanisms between hyperobject contents and elements, the HB maintains all information about anchors and links, and the HL implements navigation control, with the navigator invoking applications through PL presenters. In this project, Madame is used as a link server and the integrated applications have to be extended for anchor definition and management.

6. EDUCATION

In this case, we want to build HyperTutor [Perez, 95], an Adaptive Educative Hypermedia, with two cooperating components an Intelligent Tutor Component and a Hypermedia Component. The Tutor Component provides knowledge control and adaptability to the user's learning process, necessary to fulfil the pedagogical shortcomings of the Hypermedia Component.

In this case, we have an intra-application approach, because the design of HyperTutor has been based on the hypermedia paradigm, but the implementation is basically an extra-application. As each component preserves its own functionality, the Tutor Component does not manipulate or have any knowledge about hyperobjects.

Identified elements in the Tutor Component are divided into three groups: first, pedagogical concepts and relations that constitute the semantic network that models the domain to teach; second, tests that allow the Tutor Component to evaluate student learning; and, finally, the learner's learning process. From the semantic network of pedagogical concepts and relations we define the hyperspace of nodes and links along with additional sub-networks of nodes and links to document every concept. For every test a node is defined and for the solution and corresponding explanations, other nodes and specific links to relate them are added. Finally, the learner's learning process has associated a tutored navigation strategy.

In general, the relation between hyperobjects and the application elements are based on a reference mechanism as well as on computation, in order to get adaptation of the contents of the nodes (in more or less detail), of the hyperspace (nodes not always accessible) and of the evaluation of the learner (conditioned by previous navigation).

In Madame, both ISL as HB are specialized in reflecting the different and necessary hyperobjects as specific nodes for the tests or nodes with variable content to implement different detail levels. Presentation aspects do not change in terms of functionality, only for the exercises, with which user interactions are not only anchor selections; there are answers that need to be communicated to the tutor, via HL. The HL, on the other hand, has to be specialized to allow the relation between student navigation and his learning process within the tutor. For this reason, HL informs the tutor about learner navigation, and then the tutor diagnoses the corresponding visibility horizon. In this project, Madame is used as the base of the Hypermedia Component, implementing the HyperTutor interface.

7. CONCLUSIONS

In this positioning paper, Madame, a framework defining basic HF using a level- organized architecture, has been briefly presented. With Madame, it is possible to see that the characteristics/services of one hyperobject is distributed over the different functional levels of the framework: content (ISL), topology and behaviour (HB) and presentation (PL). In our experiment, HF has been provided to systems lacking it; we have shown that level organization is interesting and usable to specialize the HF.

We have also shown that 2 stages for HF integration have to be distinguished: approach (design of applications) and implementation (development). Therefore our HF integration methodology is based on the three following parts:

Then, the elements modelled in this way using the hypermedia metaphor could benefit not only from the own services of the associated hyperobject and services provided by the hypermedia paradigm (navigation, history,...), but also from services of composite hyperobjects built in a pure hypermedia way (maps, tabletops,...) using associated hyperobjects as components, thus increasing the initial capabilities of the application.

From our point of view, implementing an application integrating HF will be easier and easier if using a tool that allows us to define/specialize hyperobjects services and maintain element-hyperobject relationship. However it is still difficult to get good applications with HF today, as all the more it requires specialists in Software Engineering and HCI. But the objective of providing HF to every kind of applications is very ambitious. We certainly are aware conscious of the difficulties linked to such a wide objective but we are optimistic as to the outcome.

BIBLIOGRAPHY

[Filgueira, 95] Filgueira J.M., Usandizaga I., Perez T., "Towards an Open Hypermedia System", Proceedings of INFORSID'95, Grenoble - France, March 1995.

[Garg, 88] Garg P.K., "Abstraction mechanisms in Hypertext", Communications of the ACM, Vol.31 Num.7, July 1988.

[Halasz, 94] Halasz F., Schwarz M., "The Dexter Hypertext Reference Model", Communications of the ACM, Vol. 37, No. 2, February 1994.

[Lange, 90] Lange D.B., "A Formal Model of Hypertext", Proceedings of the Hypertext Standardization Workshop, January 1990.

[Lopisteguy, 96] Lopisteguy P., Losada B., Aizpurua J.M., "Etude d'une Structure Generale et d'une Interface de Consultation Hypermedia Pour Encyclopedies Electroniques", UPV/EHU/LSI/TR1-96, January 1996.

[Perez, 95] Perez T.A., Lopisteguy P., Gutierrez J., Usandizaga I., "HyperTutor: From Hypermedia to Intelligent Adaptive Hypermedia", Proceedings of EDMEDIA'95-AACE, Charlottesville - USA, August 1995.

[Usandizaga, 95] Usandizaga I., Lopisteguy P., Perez A., "Madame: An Object- Oriented Hypermedia Prototype", Proceedings of BIWIT'95, San Sebastian - Spain, July 1995.

ACKNOWLEDGEMENT

This paper has been carried out with the economic support of the Gobierno Vasco, Department of Education, University and Research, under settlement No. PI95/71- 12/1/96 for the project "HyperTutor: Adaptive Hypermedia System"


(1) A "lemmatizer" is an engine able to extract the "lemma" (the root) of any word, so in our context, we deduce the encylopaedic entry associated with any selected word.
This paper appears in the Proceedings of the Second International Workshop on Incorporating Hypertext Functionality into Software Systems, held in conjunction with the ACM Hypertext '96 conference, Washington, U.S.A.