From Domain Models to Hypermedia Applications: an Object-Oriented Approach

In this paper we present an object-oriented method for designing hypermedia applications. The approach divides the development process in four steps, namely: domain (or content) design, navigational design, abstract interface design and implementation. We use similar modeling primitives (object and classes) and abstraction mechanisms (aggregation, generalization), during the whole process thus improving traceability; design decisions like the use of complex navigational structures are made explicit through a uniform notation thus allowing a coherent document structure that simplifies the construction of a CAHDE. 1 Introduction and rationale Building large hypermedia applications is difficult, and is further complicated by the fact that, once an application has been built, its maintenance is correspondingly more complicated. Moreover, as in other software domains (such as information systems, databases, etc.) hypermedia applications are usually built from scratch: reuse is still a dream. As it has been stated elsewhere [Garzotto91], hypermedia design models and in particular object-oriented models [Lucarella93, Lange94] allow the description of a hypermedia application using high level constructs in an implementation independent way. Step-by-step methodologies can then be defined on top of existing design models [Balasubramaniam 94]. However, design models are still in their infancy; design decisions are often taken at the wrong time during the development life-cycle or are poorly documented, thus difficulting evolution. In this paper we propose a step-by-step method based on the construction of a sequence of object-oriented models that leads from domain analysis to implementation. Although based on object-oriented concepts, the resulting design can be implemented on top of a conventional (i.e., non object oriented) platform. The key ideas underlying the method are also suitable to other modeling approaches (like HDM [Garzotto 91,93], EORM [Lange94], etc...); in fact they are compatible with other step-by-step methods (for example the one presented in [Balasubramaniam94]). Using well-known object-oriented modeling concepts allows the formulation of complex designs with a concise yet expressive notation thus simplifying the construction of Computer Aided Hypermedia Development Environments (CAHDE). The structure of this paper is as follows: in section 2 we briefly overview our approach for building hypermedia applications; in sections 3 and 4 we present the core of our method: specifying a hypermedia application as a navigational model derived from a conceptual schema, discussing modeling constructs and abstraction mechanisms. Finally we summarize the key aspects of our approach and discuss some additional issues.

[1]  Martin Fowler,et al.  Application Views: Another Technique in the Analysis and Design Armoury , 1994, J. Object Oriented Program..

[2]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[3]  Dario Lucarella,et al.  MORE: Multimedia Object Retrieval Environment , 1993, Hypertext.

[4]  Rebecca Wirfs-Brock,et al.  Designing object-oriented software , 1990 .

[5]  Donald D. Cowan,et al.  Abstract Data Views , 1993, Struct. Program..

[6]  Douglas Herrmann,et al.  A Taxonomy of Part-Whole Relations , 1987, Cogn. Sci..

[7]  Danny B. Lange,et al.  An object-oriented design method for hypermedia information systems , 1994, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

[8]  Simone D. J. Barbosa,et al.  Navigation Modeling in Hypermedia Applications , 1995, IWHD.

[9]  Jörg M. Haake,et al.  What's Eliza doing in the Chinese room? Incoherent hyperdocuments—and how to avoid them , 1991, HYPERTEXT '91.

[10]  François Bancilhon,et al.  Building an Object-Oriented Database System, The Story of O2 , 1992 .

[11]  Franca Garzotto,et al.  Adding multimedia collections to the Dexter Model , 1994, ECHT '94.

[12]  Jocelyne Nanard,et al.  Using structured types to incorporate knowledge in hypertext , 1991, HYPERTEXT '91.

[13]  Franca Garzotto,et al.  HDM—a model-based approach to hypertext application design , 1993, TOIS.

[14]  Franca Garzotto,et al.  Navigation in hypermedia applications: Modeling and semantics , 1996, J. Organ. Comput. Electron. Commer..

[15]  Luiz Fernando Gomes Soares,et al.  The nested context model for hyperdocuments , 1991, HYPERTEXT '91.

[16]  Tomás Isakowitz,et al.  Designing hypermedia applications , 1995, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

[17]  Gunter Schlageter,et al.  Towards a better support for hypermedia structuring: the HYDESIGN model , 1993, ECHT '92.

[18]  Franca Garzotto,et al.  HDM—a model for the design of hypertext applications , 1991, HYPERTEXT '91.