• No results found

Toward a Software Engineering Discipline for the Modeling and the Design of Hypermedia Distributed Applications

Patrick Sénac ENSICA 49, avenue Léon Blum 31056 Toulouse Cedex France

[email protected] François Fabre

ENSICA 49, avenue Léon Blum 31056 Toulouse Cedex France

[email protected] Emmanuel Chaput

ENSICA 49, avenue Léon Blum 31056 Toulouse Cedex France

[email protected] Michel Diaz LAAS du CNRS 7, avenue du colonel Roche 31077 Toulouse Cedex France

[email protected]

Abstract: This paper describes a software engineering methodology for the design of distance learning environments integrated in hypermedia distributed systems such as the World-Wide Web. The proposed methodology is based on a formal model, called Hierarchical Time Stream Petri Net (HTSPN), which establishes sound foundations for the prototyping and design of hypermedia applications on distributed asynchronous systems. With the help of the proposed methodology authors can design robust and correct distributed hypermedia applications.

Introduction

During last few years, we can notice an increasingly growth of hypermedia information bases available over services such as the World-Wide Web (WWW) which is an information system globally distributed over the

Internet [VETTER94]. The contributions in terms of openness, accessibility, extensibility and portability of the

WWW make it the unquestionable choice for the design of global multimedia/hypermedia applications. In particular distance learning environments are well suited to be used over WWW, and experimental systems have been already suggested [ANDREWS95] [LITTLE95] [WOLF95]. Students can interactively access to a course all over the world without using further tools. As for teachers, they may combine various media to build their course and easily make use of other ones by only making a reference link towards the target resource.

However, the design of a hypermedia system over the WWW is not an easy task. Indeed by tackling large information spaces, hypermedia systems introduce paradoxically the important problems of user disorientation and information overload [CONKLIN87]. Moreover, the design complexity of hypermedia systems is increased by the need to have an explicit notion of time for the management of multimedia scenarios [HARDMAN94].

Therefore, the design of hypermedia systems is a complex task which makes the use of a software engineering methodology greatly relevant. So, we propose a new formal model called Hierarchical Time Stream Petri Net

(HTSPN) allowing the whole characteristics of a hypermedia distributed system to be modeled in a unifying way [SÉNAC95a]. Moreover, from the HTSPN model, we have developed a modeling methodology and a software

engineering toolkit integrating verification, simulation and analysis capabilities in order to assist authors along the complete line of hypermedia distributed system prototyping.

The first part of this paper motivates the use of HTSPN. Then, the second part illustrates our modeling methodology whereas the third part introduces the prototyping toolkit. Finally, the fourth part is dedicated to the integration of HTSPN specifications into the WWW.

The HTSPN model

Three fundamental conceptual structures can be identified for modeling hypermedia systems : semantic structures that specify links (i.e. user interactions), logical structures that specify composite components (i.e.

multimedia nodes) with the help of encapsulation mechanisms, and temporal structures that specify the dynamic behavior of a composite component. Several models have been proposed for the modeling of hypermedia systems, but unfortunately up to now, there is no formal model that allows semantic, logical and temporal structures to be fully and easily expressed through a unifying way [SENAC96].

The Time Stream Petri Net model (TSPN) has been initially introduced for the modeling of temporal structures inside multimedia distributed systems [SÉNAC94]. This model allows the temporal variability of processings in asynchronous distributed systems to be taken into account. Indeed, using TSPN multimedia processings are modeled as times arcs associated with a three-tuple (min,nom,max) which specify respectively the minimal, nominal and maximal durations of the related processing. Moreover, a firing semantic associated with each transition allows the synchronization non-determinism introduced by the temporal variability of processings to be controlled through a complete set of nine synchronization semantics [SÉNAC94]. We have also put in the

limelight that a TSPN can be reduced to a temporally equivalent timed arc [SÉNAC95a]. This property lays the basis of the logical abstraction capability of the Hierarchical TSPN model (HTSPN) [SÉNAC95b]. Indeed, logical

structures can be specified with the help of logical places which abstractly represent temporally and structurally equivalent TSPN. The recursive use of logical places allows several abstraction levels to be defined for a specification. Finally, semantic structures are easily modeled as timed arcs outgoing from link type places. Modeling links as timed arcs allowstimed and dynamic links to be easily specified [COURTIAT96]. Therefore, the HTSPN model allows the three fundamental structures of hypermedia systems to be uniformly modeled with timed arcs, using a minimalist approach.

Figure 1 - Example of a HTSPN specification

Figure 1 describes the HTSPN specification of a learning environment made up of two classes. At once, we can notice that bold and dotted places represent respectively link and logical places. This example puts in the limelight the use of a link type place, i.e. place PL2, for the modeling of two user interactions. Link (PL2,T2)

allows the processing associated with PC1 to be stopped at any time. Indeed, a master strategy related to a master

temporal validity interval [0,+∞] models a synchronization scheme only driven by link (PL2,T2). This scheme

specifies that the triggering of this link produces a new execution of the processing related to PL1. Moreover, if

we suppose that this event occurs at relative time 2, it entails the interruption of P11 and the «skip» of P12 and P13

go to next class start class [0,+∞] PL1 T1 PL2 re-start class [0,+∞] PC1 [5,9,13] T3WEAK-AND [5,9,13] PC2 [7,10,12] T4 T2MASTER Pnull [2,5,8] P12 P13 [3,4,5] P11 T11 [1,5,10] T12AND Temporal synchronization

in the subnet associated to place PC1. As for link (PL2,T3), according to the weak-and firing rule, it specifies that

the processing related to PC2 can only start when the processing related to PC1 is ended and when link (PL2,T3) has

been triggered inside its temporal validity interval [4,15].