You are on page 1of 2

The Object-Oriented Hypermedia

Design Model

D a n i e l S c h w a b e

G u s t a v o R o s s i

H
ypermedia applications typically include complex informa-
tion, and may allow sophisticated navigation behavior. The
Object-Oriented Hypermedia Design Method (OOHDM)
[4] uses abstraction and composition mechanisms in an
object-oriented framework to, on one hand, allow a concise
description of complex information items, and on the other
hand, allow the specification of complex navigation patterns
and interface transformations.
In OOHDM, a hypermedia application is built in a four-step process supporting
an incremental or prototype process model. Each step focuses on a particular
design concern, and an object-oriented model is built. Classification, aggregation
and generalization/specialization are used throughout the process to enhance
abstraction power and reuse opportunities. Figure 1 summarizes the steps, prod-
ucts, mechanisms and design concerns in OOHDM.

Domain Analysis
In this step a conceptual model of the application domain is built using well-known
object-oriented modeling principles [3], augmented with some primitives such as

Steps Products Mechanisms Design Concerns


Classes, subsystems, Classification, Modeling the semantics
Domain Analysis relationships, attribute composition, of the application domain
perspectives generalization and
specialization
Nodes, links, access Mapping between Takes user profile
Navigational structures, navigational conceptual and and task into account;
Design contexts, navigational navigation objects emphasis on cognitive
transformations aspects
Abstract interface Mapping between Modeling perceptible
Abstract Interface objects, responses to navigation and objects, implementing
Design external events, perceptible objects chosen metaphors;
interface transformations describing interface for
navigational objects
Implementation Running application Those provided by the Performance,
target environment completeness

attribute perspectives (multiple-valued attributes, simi-


Figure: Summary of the lar to HDM perspectives [1]). Conceptual classes may
OOHDM Methodology be built using aggregation and generalization/special-
ization hierarchies. There is no concern for the types

COMMUNICATIONS OF THE ACM August 1995/Vol. 38, No. 8 45


of users and tasks, only for the application domain semantics. A conceptual schema
results, built out of subsystems, classes and relationships.

Navigational Design
Here we describe the navigational structure of a hypermedia application in terms of navi-
gational contexts, which are induced from navigation classes such as nodes, links, indices,
and guided tours. Navigational contexts and classes take into account the types of intend-
ed users and their tasks. Nodes in OOHDM represent logical “windows” (or views) on
conceptual classes defined during domain analysis. Different navigational models may be
built for the same conceptual schema to express different views on the same domain.
Links are derived from conceptual relationships defined in the first step. By defining
the navigational semantics in terms of nodes and links, we can model movement in the
navigation space (i.e., the subset of nodes with which users can interact at any given
moment) independently of the conceptual model. The navigational model may evolve
independently from the conceptual model, simplifying maintenance.

Abstract Interface Design


The abstract interface model is built by defining perceptible objects (e.g., a picture, a
city map, and so forth) in terms of interface classes. Interface classes are defined as
aggregations of primitive classes (such as text fields and buttons) and recursively of inter-
face classes. Interface objects map to navigational objects, providing a perceptible
appearance. Interface behavior is declared by specifying how to handle external and
user-generated events and how communication takes place between interface and naviga-
tional objects.

Implementation
Implementation maps interface objects to implementation objects and may involve elab-
orated architectures (e.g., client-server), in which applications are clients to a shared
database server containing the conceptual objects.

O
OHDM differs from RM (see Isakowitz et al. in this issue) in two
major ways. The first is the particular emphasis of OOHDM on
navigational and abstract interface design. The second is that it
uses objects as modeling constructs throughout the design
process, encouraging the construction of new hypermedia applica-
tions by systematic reuse of existing components. Lange’s
Enhanced Object Relationship Model (EORM) [2] also models
hypermedia applications through an object-oriented approach.
OOHDM differs from EORM mainly because OOHDM clearly separates navigational
from conceptual design by defining different modeling primitives in each step.
We currently are defining a set of general hypermedia design patterns (generic tem-
plates) for arbitrary application domains. Building new hypermedia applications by
reusing either existing hypermedia components or design structures will yield more
robust and maintainable applications. C

References
1. Garzotto, F., Paolini, P., and Schwabe, D. HDM—A model-based approach to hypermedia application
design. ACM Trans. Info. Syst. 11, 1 (Jan. 1993), 1–23.
2. Lange, D. An object-oriented design approach for developing hypermedia information systems. J. Org. Com-
put., forthcoming.
3. Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W. Object Oriented Modeling and Design.
Prentice Hall, New York, 1991.
4. Schwabe, D. and Rossi, G. Building hypermedia applications as navigational views of information models. In
Proceedings of the Twenty-Eighth Hawaii International Conference on System Sciences, Maui, Hawaii (Jan. 1995),
Vol. 3, pp 231-240.

Daniel Schwabe <schwabe@inf.puc-rio.br> is an associate professor at the Catholic University (PUC) in Rio de Janeiro. Gustavo Rossi
<rossi@inf.puc-rio.br > is a professor at Universidad Nacinal de La Plata.

©ACM 0002-0782/95/0800 $3.50

46 August 1995/Vol. 38, No. 8 COMMUNICATIONS OF THE ACM

You might also like