-


MODELO HDM o
Modelo de Diseño de Hipermedia
El HDM o Hypertext Design Model, fue creado por Franca Garzotto,
Paolo Paolini y Daniel Schwabe en 1991, dentro del marco del
proyecto HYTEA de la Comunidad Europea. El objetivo era crear un modelo que
fuera
de utilidad para realizar el diseño de una aplicación de hipertexto. En
1993, F.
Garzotto, L. Mainetti y P. Paolini
introdujeron algunas mejoras al modelo HDM, al añadir estructuras de acceso
como los índices y las visitas guiadas.
El
modelo HDM divide el proceso de diseño de una aplicación de hipertexto en 2 partes: el authoring-in-
the-
large, que se refiere a la especificación y diseño de los aspectos
globales y estructurales de la aplicación, y el authoring-in-the-small,
que se refiere al desarrollo del contenido de los nodos. El modelo
se centra en la primera parte, que es la que se centra en la
estructura.
La
terminología base del HDM es bastante diferente a la de Dexter y se puede
prestar a confusiones. En HDM, el equivalente de un nodo es lo que denomina unidad.
Las unidades se agrupan mediante una visita guiada o un índice, formando componentes,
que a su vez se agrupan jerárquicamente en lo que denomina entidades. Una
entidad es una jerarquía de componentes que "heredan" las propiedades
de la entidad y que no pueden existir más que como partes de la entidad. Las
perspectivas permiten representar la multiplicidad de las presentaciones de un
mismo contenido de información (presentación en diferentes lenguas de un mismo
texto,....). Asimismo hay varios tipos de
enlaces. Los más importantes en la estructura
son los que unen componentes dentro de una misma entidad, y se denominan enlaces de
componente o de perspectiva; los enlaces estructurales conectan
componentes de una misma entidad; por último los enlaces de aplicación conectan
componentes y entidades de distinto tipo, y son independientes de la estructura.
La
principal motivación de HDM fue crear un modelo basado en las llamadas primitivas antes de comenzar a desarrollarlo, lo que ayudará a conseguir una navegación
más consistente y rica. Además HDM puede resultar útil también para evaluar
aplicaciones ya desarrolladas, con el fin de detectar errores en la estructura
navegacional.
Así pues, el modelo HDM
establece una serie de nociones como: primitivas, entidades, componentes,
perspectivas, unidades, enlaces y esquema HDM. Veamos con detalle en qué
consisten estos conceptos:
Primitivas
Esta metodología tiene una base de terminología ya utilizada en otras
metodologías, pero a su vez añade un conjunto nuevo de términos y
conceptos.
La
unidad básica del modelo es la entidad. Una entidad es la más pequeña
parte autónoma de la información, es decir, que no necesita ninguna otra
información para tener un sentido total. Las entidades se agrupan en tipos
de entidades. Una entidad es una jerarquía de componentes, los
cuales están formados a su vez por unidades. El concepto de unidad es
similar al de nodo, mientras que un componente es un conjunto de
nodos que crean
una unidad lógica.
Por
ejemplo, pensemos en los cuadros de un pintor. Para cada cuadro hay varios
nodos (unidades). Cada cuadro, es decir, un conjunto de varios
nodos, forma un componente.
A su vez, el conjunto de todos los componentes
cuadros, y otro componente que muestre la vida del pintor forma una entidad. El
conjunto de las entidades pintor, que tienen todas la misma estructura, es lo
que define el tipo de entidad.
Las
estructuras se interconectan por medio de enlaces. Hay 3 tipos
diferentes:
-
enlaces
estructurales que conectan componentes de la misma entidad.
-
enlaces
de componente (o de perspectiva), que conectan unidades dentro de un
componente.
-
enlaces
de aplicación, que conectan componentes y entidades de distinto tipo.
Por ejemplo imaginemos que tengamos un tipo de entidades que sea “Periodo
histórico”; así, habrá una enlace entre la entidad “Goya” y la
entidad “Siglos XVIII y XIX”.
De estas
primitivas, las hay que hacen referencia a la parte in-the-large
y otras a la parte in-the-small. En concreto, las entidades y enlaces
estructurales son in-the- large, mientras que las unidades, componentes y
enlaces de componentes son in-thesmall.
Entidades
y tipos de entidades
Una
entidad es una estructura (relativamente grande) de información que representa
algún objeto del mundo real en el dominio de la aplicación. Por ejemplo, un
pintor (Goya), una ciudad (Palma), un ave (golondrina), ...
Las
entidades se agrupan lógicamente en lo que llamamos tipos de entidades, que
corresponden a las clases de objetos del mundo real. Siguiendo los ejemplos
anteriores, los tipos de entidades serían “pintor” (que agrupa a todos los
pintores), “ciudad”, “ave”.
Componentes
Una
entidad es una colección de componentes estructurados en forma de árbol (jerárquicamente).
Un componente es una abstracción de un conjunto de unidades, que son los
contenedores de la información. Un componente dentro de la jerarquía de la
entidad, en general tiene un padre (excepto en el caso del componente raíz),
varios hermanos, y un número de hijos (excepto en los componentes hoja -los últimos
de la jerarquía-). Pero un componente sólo puede existir como parte de una
entidad, y no tiene sentido por sí mismo, es decir, no es autónomo. Por tal
razón en el modelo HDM no se permite que unas entidades sean componentes de
otras entidades.
En
cuanto a la jerarquía que estructura los componentes de una entidad, ésta
puede ser según muy diversos criterios semánticos. En particular, una de las más
utilizadas es la de “todo-parte”.
Perspectivas
En
HDM la noción de tener diferentes presentaciones del mismo contenido se
representa mediante el concepto de perspectiva. Por ejemplo, una aplicación
multilingüe, la misma información se presenta de varias maneras diferentes
(una en cada idioma). Pero esto, lógicamente, no altera la estructura jerárquica
de una entidad.
Las
perspectivas son sólo una construcción para organizar este tipo de información.
HDM deja a la libertad del usuario cuándo y cómo debe utilizar perspectivas.
Unidades
Una
unidad es un conjunto de partes atómicas de información que se muestran
conjuntamente, como una unidad.
Una
unidad corresponde a un componente asociado con una perspectiva específica. Una
unidad se caracteriza por un nombre (su identificador) y un cuerpo. Los cuerpos
de las unidades son el lugar donde queda almacenada la información.
Por
ejemplo, en la entidad que describimos anteriormente (Goya), el componente “La
Maja Desnuda”, puede tener las unidades “Explicación del cuadro (en
castellano)” y “Importancia en la obra del autor (en castellano)”, ambas
asociadas a la perspectiva en castellano, y por otro lado las asociadas a la
perspectiva en catalán “Explicación del cuadro (en catalán)” y
“Importancia en la obra del autor (en catalán)”, Vemos, por tanto, que el
concepto de unidad es muy similar al concepto de hipertexto tradicional de
“nodo”.
Aunque
los autores no lo recomiendan, diferentes unidades pueden compartir el mismo
cuerpo. Según los autores, esto conlleva una desorientación para el usuario,
aunque por otra parte, fomentaría la reusabilidad.
Enlaces
Los
enlaces en hipertexto tienen una doble función: por un lado representar las
relaciones entre elementos del dominio (entidades, componentes o unidades), y
por otro, una función de navegación (representar los patrones navegacionales).
A menudo, estas dos funciones son consistentes entre sí, aunque no siempre:
puede ocurrir que las relaciones de dominio no sean relevantes para la navegación,
o que un enlace navegacional interesante no se tenga ningún contenido semántico.
Por
tanto, la definición de enlace debe reflejar ambas funciones. Para ello se
identifican tres tipos diferentes de enlaces:
-
Enlaces
de perspectiva o de componentes: Interconectan
unidades dentro del mismo componente. Por ejemplo, un
enlace de este tipo es el
que conecta las unidades “Explicación del cuadro (en castellano)” e
“Importancia en la obra del autor (en castellano)”, dentro del componente
“La Maja Desnuda”, en la entidad “Goya”. Nótese
que al cruzar un enlace de este tipo, el contexto sigue siendo el mismo. Los enlaces
de presentación o de componente pueden ser de dos formas: enlaces de índice
o enlaces de visita guiada.
-
Enlaces
estructurales: representan relaciones jerárquicas de la estructura
-
Enlaces
de aplicación o tipos de enlaces: representan
relaciones de dominio entre entidades o sus componentes. Estas relaciones son
las elegidas por el autor como navegacional y semánticamente relevantes. Los
enlaces de aplicación se estructuran en tipos, llamados tipos de enlaces de
aplicación, o más brevemente, tipos de enlaces. El tipo viene definido por un
nombre, los tipos de entidades origen y destino, y por si es simétrico o no. Un
tipo de enlace sería el que uniría el tipo de entidad “Pintor” con el tipo
de entidad “Periodo histórico”, al que podríamos llamar “Periodo del
pintor”. Los
enlaces de aplicación pueden ser de dos tipos diferentes:
-
De
esquema: pertenece a un determinado tipo de enlaces. Por ejemplo el que se
citó anteriormente entre las entidades “Goya” y “Siglos XVIII y
XIX”, ya que pertenece al tipo “Periodo del pintor”.
-
Genéricos:
no pertenece a ningún tipo de enlace. Son independientes de la estructura,
y por tanto menos estandarizados. Un ejemplo podría ser un enlace entre
“Goya” y otro pintor en el que influyó posteriormente. Este enlace no
sigue un patrón, sino que el autor del hipertexto lo incluye para este caso
concreto.
Esquema
HDM
Una
especificación de un hipertexto consta de una definición de esquema y un
conjunto de definiciones de instancias. Un esquema especifica un conjunto de
tipos de entidad y tipos de enlace. Las instancias se introducen en el sistema sólo
si cumplen las restricciones establecidas en el esquema.
El
concepto de esquema en hipertexto es novedoso, pero ya ha sido ampliamente
utilizado en el campo de las bases de datos.
Por
último, en una aplicación también se puede distinguir entre dos conceptos:
-
La
estructura, que es la organización de los contenidos de la aplicación:
entidades, componentes, enlaces, ...
-
La
dinámica (dynamics), que representa el comportamiento de la aplicación
Evaluación
de una aplicación usando HDM
Partiendo de este modelo, Franca Garzotto, Luca
Mainetti y Paolo Paolini proponen HDM como un método ideal para evaluar
aplicaciones. Es lo que ellos denominan evaluación orientada al diseño.
Las
cuestiones que conviene analizar en una aplicación hipertextual son:
-
Contenido:
en función de los especialistas.
-
Estructura:
la organización de los contenidos.
-
Presentación:
teniendo en cuenta los aspectos pasivos (visualización), ya sean temporales
o atemporales y los aspectos activos (interacción).
-
Dinámica:
cómo los usuarios interactúan con el contenido y estructura.
Los
criterios o cualidades a evaluar son:
-
Riqueza
de contenidos y enlaces.
-
Facilidad
con que el usuario capta las operaciones y accesibilidad de la información.
-
Consistencia
o regularidad.
-
Predictibilidad.
-
Auto-evidencia.
-
Legibilidad.
-
Reutilización.
Si
la evaluación se basa en un modelo de la aplicación, ésta resulta mucho más
fácil y provechosa. Por ejemplo, se puede realizar un modelo de la aplicación
utilizando HDM y analizar los resultados buscando inconsistencias en la
estructura y mecanismos de navegación.
Basan
el análisis en estos puntos:
-
Organización
general: definición de las entidades y componentes.
-
Navegación
de enlaces de perspectiva.
-
Navegación
de enlaces estructurales.
-
Navegación
de enlaces de aplicación de esquema.
-
Aplicación
in-the-small, es decir el análisis de las unidades (“nodos”).
Los
enlaces de aplicación genéricos, por su naturaleza son independientes
de la estructura, no estandarizados; por tanto no tiene sentido su análisis, ya
que el autor los define con completa libertad.
HDM
es más que un intento de modelar la estructura del hipertexto-hipermedia, una
modelización de las estructuras de navegación. Crear un modelo antes de
desarrollar un hipertexto nos ayudará a conseguir una navegación más consistente y rica. En HDM la estructura de navegación viene marcada por la estructura de datos.
El modelo HDM, ha sido la fuente de inspiración de
los métodos RMM y OOHDM.
Bibliografía:
GARZOTTO, F.
MAINETTI, L. PAOLINI, P. "Hypermedia design,
analysis,
and evaluation issues". Communications of the ACM, vol. 38,
1995. [Volver]
GARZOTTO, F.
PAOLINI, P. SCHWABE, D. "HDM - A model-based approach to
hypermedia applications design". ACM
Transactions on Information Systems, vol. 11, 1993. [Volver]
-

|