Documente Academic
Documente Profesional
Documente Cultură
Ricardo Soto De Giorgis, Wenceslao Palma Muoz, Silvana Roncagliolo De La Horra. Escuela de Ingeniera Informtica, Universidad Catlica de Valparaso, Chile. E-mail: rsoto@inf.ucv.cl, wenceslao.palma@ucv.cl, silvana@ucv.cl.
Resumen
En la actualidad son pocas las metodologas existentes que permiten a los desarrolladores conseguir productos de software hipermedia reusables y fciles de mantener. A pesar de ello, ha nacido una tendencia a considerar el desarrollo hipermedial con un enfoque de proceso de ingeniera (del software), por lo que ya se han propuesto algunas metodologas para este fin. Una de ellas es OOHDM (Object Oriented Hypermedia Design Method), la cual ser analizada con el principal objetivo de identificar sus ventajas, desventajas y su real aplicacin a este tipo de aplicaciones, para luego proponer un modelo navegacional que se pueda adaptar como posible mejora a una de sus debilidades. Palabras Claves: Hipertexto, Multimedia, Hipermedia.
1. Introduccin
El gran avance de las comunicaciones y las tecnologas de informacin, acompaado de necesidades cada vez ms exigentes en el mundo de la informtica han incrementado exponencialmente el campo hipermedial. Nuevas reas de aplicacin, que necesitan rpidamente la flexibilidad del hipertexto unida a una rica variedad de datos multimedia, han nacido durante los ltimos cinco aos. Lamentablemente, la construccin de grandes aplicaciones hipermedia es extremadamente difcil, por otro lado no existe una metodologa que se adapte perfectamente a este tipo de software, tentando a los desarrolladores a la omisin del diseo estructural de la aplicacin. Esta falencia difcil de remediar generalmente entrega como resultado un software de baja calidad y susceptible de correcciones posteriores. Sin exagerar, la etapa de mantencin sigue siendo un problema, el no contar con la documentacin adecuada de la aplicacin, significa transformar el proceso de mantencin en una tarea agobiante. El comienzo de la solucin a estos problemas nace principalmente en la creacin de una adecuada programacin de tareas antes de la construccin de la aplicacin, para lograr esto surge la necesidad de definir metodologas de desarrollo que utilicen modelos y estructuras formales de diseo e implementacin, especialmente orientadas a software hipermedia. Habitualmente el desarrollo de Sistemas Hipermediales suele hacerse utilizando directamente herramientas a nivel de implementacin, descuidndose el importante proceso previo de anlisis y diseo de los aspectos estructurales de la navegacin e interfaz. Sin embargo, en los ltimos aos existe una tendencia a considerar el desarrollo hipermedial con un enfoque de proceso de ingeniera (del software), por lo que ya se han propuesto diferentes metodologas, como HDM (Hypertext Design Model) [1], EORM (Enhanced Object Relationship Model) [2], RMM (Relationship Management Methodology) [3] u OOHDM (Object Oriented Hypermedia Design Method) [4] que consideran un diseo previo a la construccin del sistema y ofrecen una serie de tcnicas, ms o menos formales, para recoger en diferentes modelos abstractos las especificaciones del sistema hipermedial a desarrollar. El documento est organizado de la siguiente manera. La seccin 2 explica brevemente la metodologa utilizando un caso prctico, la seccin 3 describe las ventajas y desventajas de la metodologa, la seccin 4 presenta una propuesta de modelo navegacional como posible mejora a una de las debilidades de OOHDM y la seccin 6 las conclusiones.
2. Un vistazo a OOHDM
OOHDM. es una metodologa orientada a objetos que propone un proceso de desarrollo de cinco fases donde se combinan notaciones grficas UML con otras propias de la metodologa. En una primera instancia debido al poco auge que tena Internet, OOHDM era slo para aplicaciones que incluan hipertexto y algo de multimedia (CD-ROM promocionales, enciclopedias, museos virtuales, etc.). Pero el gran desarrollo de Internet oblig su adaptacin para el desarrollo de aplicaciones hipermedia en Internet, tales como comercio electrnico, motores de bsqueda, sitios educacionales y de entretencin. En la siguiente figura se grafican las cinco etapas de OOHDM.
Obtencin de Requerimientos Diseo Navegacional Diseo de Interfaz Abstracta
Modelo Conceptual
Implementacin
1 cursos alumno por curso nota 1 nombre horas objetivo Download( tablaDeContenidos)
alumno profesion
tema 1 nombre
Curso por Tema nombre, horas, objetivo, AncCalendarioCurso, Download(materialCurso) Alumno - Lectura
Figura6 Diagrama de contexto correspondiente al UID del caso de uso Buscando un curso dado un tema.
Men Principal
Cursos
Orden Alfabtico
ADV Curso nombre: string horas: integer objetivo: string ADV Curso por tema nombre tema: string curso: anchor(index (cursos por tema)) download tabla de contenidos: archivo txt o doc calendario: anchor(calendario curso por curso) material curso: anchor(Ingresar nombre de usuario y contrasea)
Figura 8 ADVs relacionadas con el caso de uso Buscando un curso dado un tema
2.6. Implementacin
Una vez terminadas las etapas anteriores, el desarrollador posee un completo conocimiento del dominio del problema. As entonces, ya ha identificado la informacin que ser mostrada, como estar organizada y cuales funciones permitir ejecutar la aplicacin. Adems de ello, cuenta con una idea bsica de cmo se vern las interfaces. Para comenzar con la implementacin el desarrollador deber elegir donde almacenar los objetos y con qu lenguaje o herramienta desarrollar las interfaces, es necesario aclarar que generalmente el desarollador se encarga del lado tcnico de la interfaz, la parte grfica y el que le dar la apariencia final a la interfaz ser el diseador grfico.
otro, con el principal objetivo de simplificar y mecanizar las tareas de cada fase, este intento de mecanizacin puede traer como consecuencia el olvido de detalles fundamentales por parte del desarrollador.
El diseo navegacional es un tanto tedioso, para resolverlo adecuadamente es necesario realizar una gran cantidad
de diagramas que muchas veces entregan informacin similar a la entregada por los UIDs y las ADVs. Esta redundancia de informacin podra ser evitada graficando la informacin en un solo tipo de diagrama que sea capaz de reunir las capacidades de los UIDs, diagramas de contexto y ADVs.
Frame superior
Frame izquierdo
Cursos Nombre de usuario
Texto de presentacin
Imagen
Estructuras de acceso
Contrasea
Frame principal
Cursos por tema
Figura 9 Diagrama del nodo que representa al men principal de la aplicacin. En la figura 10 se visualiza el nodo Cursos por tema. En el frame principal se puede observar que est el nombre del tema y abajo una lista (1...N, indica que es una lista) donde aparece slo el nombre de cada curso, los cursos que aparecen son los que estn relacionados al tema que ingres el usuario. Cada curso est subrayado, lo que
indica que cada curso que aparece posee un hipervnculo a otro nodo, en este caso particular el hipervnculo es a un nodo llamado Curso, donde aparece informacin especfica de cada curso. En la figura 11se visualiza el nodo lista de todos los cursos. En este nodo aparece una lista de cursos en orden alfabtico, para cada curso slo se muestra el nombre, igual que en el caso anterior estn subrayados, lo que significa que existe un hipervnculo a otro nodo. En la figura 12 se visualiza el nodo Curso, en este nodo aparece el nombre, las horas y el objetivo del curso, adems aparece una lista con todas las fechas de inicio que posee este curso, cada fecha de inicio tiene un hipervnculo a otro nodo, en el cual se dar ms informacin con respecto a la imparticin de ese curso para esa determinada fecha de inicio. Ms abajo hay un hipervnculo hacia el nodo Material del curso y finalmente se presenta la posibilidad de bajar la tabla de contenidos del curso.
Imagen Imagen Imagen
Tema (nombre)
Cursos Cursos
Lista de cursos
Cursos
Curso(nombre)
Nombre de usuario
Curso(nombre)
Nombre de usuario
1 N
. . .
1 N
. . .
1 N
. . .
Contrasea
Contrasea
Contrasea
Figura 10, 11 y 12 Diagramas de los nodos Cursos por tema. Lista de todos los cursos, Lista de todos los cursos respectivamente En la figura 13 se visualiza el nodo Calendario del curso, en este nodo se visualiza el nombre del curso, los datos referentes a la imparticin de un curso en una determinada fecha (status, fecha de inicio, fecha de trmino y horario) y una lista de los profesores que dictan ese determinado curso para esa determinada fecha. Para cada profesor slo se muestran los nombres y los apellidos, informacin en detalle se podr obtener por medio del hipervnculo que poseen. En la figura 14 se visualiza el nodo Profesor, donde aparece en detalle la informacin de un profesor. En la figura 15 se visualiza el nodo Notas de un alumno, donde aparecen los nombres y apellidos del alumno. Adems se muestra la nota con el respectivo nombre del curso al lado, para todas las asignaturas que el alumno a cursado.
Imagen Imagen Imagen
Cursos
Alumno(nombres, apellidos)
Nombre de usuario
Contrasea
. . .
Contrasea
Contrasea
. . .
Figura 13, 14 y 15 Diagramas de los nodos Calendario del curso. Profesor. Notas del alumno respectivamente Una vez finalizados los nodos se recomienda realizar tarjetas de especificacin para las consultas y para los requerimientos que no se hayan podido representar grficamente. Las tarjetas de especificacin pueden tener un formato similar a las tarjetas presentadas en la etapa de diseo navegacional de OOHDM.
. . .
. . .
. . .
Cursos
Texto de presentacin
Imagen
. . .
Contrasea
. . .
. . .
Figuras 74 Modelo navegacional Para los nodos, a excepcin del nodo men principal, se visualiza slo el frame principal, para simplificar la visin del modelo. No existe implicancia alguna ya que los frames que no aparecen no cambian durante la navegacin. La navegacin se deduce del diagrama, desde el men principal se puede acceder a los nodos Cursos por tema, Lista de todos los cursos y Notas de un alumno. Desde los nodos Cursos por tema y Lista de todos los cursos, eligiendo un curso se puede obtener el nodo Curso, desde ste se puede llegar al nodo Material del curso y al nodo Calendario del curso y de ste al nodo Profesor. Adems, cada nodo posee un nmero de identificacin ubicado en la esquina inferior derecha, este nmero se puede utilizar cuando existan muchos nodos y el modelo navegacional sea demasiado grande, en este caso slo se hace referencia al nmero del nodo. Cuando el nodo posea ms de un hipervnculo tambin ser necesario identificarlo, para saber exactamente desde cual hipervnculo se inicio la navegacin. En la siguiente figura se grafica la identificacin de los hipervnculos Calendario curso(fechaInicio) y Material curso.
Curso(nombre, horas, objetivo) (a) Calendario curso(fechaInicio) 1 N (b) Material curso Download(tablaDeContenidos) 4
. . .
. . .
4(a) 4(b)
. . .
Figuras 75 Identificacin de los hipervnculos y nodos Para finalizar la propuesta es necesario mostrar como quedaran las etapas de la metodologa con la incorporacin del nuevo modelo navegacional. En una primera instancia se plantea reemplazar slo los diagramas de contexto y ADVs, ya que los UIDs son muy tiles para la etapa de obtencin de requerimientos y para la creacin del
modelo conceptual. No obstante cuando el desarrollador haya adquirido mayor experiencia, sera posible reemplazar los 3 diagramas de OOHDM por el modelo navegacional propuesto. En la siguiente figura se muestran las etapas de la metodologa modificada.
Propuesta de un Modelo Navegacional
Obtencin de Requerimientos
Modelo Conceptual
Implementacin
Figura 1 Las etapas de la metodologa OOHDM con la incorporacin del nuevo modelo navegacional.
6. Referencias
[1] Franca Garzotto, Paolo Paolini, Daniel Schwabe HDM - A Model-Based Approach to Hypertext Application Design ACM Transaction on Information Systems, vol. 11, n 1, January 1993, pages 1-26 [3] Tomas Isakowitz, Edward A. Stoh, P. Balasubramanian, RMM: A Methodology for Structured Hypermedia Design. Communication of the ACM, August 1995. [4] Schwabe, D., and Rossi, G. An object-oriented approach to Web-based application design. Theory and Practice of Object Systems (TAPOS) (October 1998), 207-225. [5] Vilain, P., Schwabe, D., de Souza, C. S.: A Diagrammatic Tool for Representing User Interaction in UML. To appear in UML 2000 -Third International Conference on the Unified Modeling Language, (York, UK, October, 2000). [6] Vilain, P., Schwabe, D., de Souza, C. S.: Use Cases and Scenarios in the Conceptual Design of Web Applications. Technical Report MCC 12/00, Departamento de Informtica, PUC-Rio (2000) [7] "Modeling Interactions and Navigation in Web Applications", Lecture Notes in Computer Science 1921, Proceedings of the World Wild Web and Conceptual Modeling'00 Workshop, ER'00 Conference, Springer, Salt Lake City, 2000. (Extended version) [8] D. Schwabe, G. Rossi Developing Hypermedia Applications using OOHDM(Rio, Brazil, 1998.) [9] D. Schwabe, G. Rossi, L. Emeraldo, F. Lyardet: Web Design Frameworks:An approach to improve reuse in Web applications. Proceedings of the WWW9 Web Engineering Workshop, Springer Verlag LNCS, forthcoming. [10] D. Schwabe, G. Rossi, L. Esmeraldo, F. Lyardet: Engineering Web Applications for reuse. To appear, IEEE Multimedia, Spring 2001. [11] Rossi, G., Schwabe, D., and Lyardet, F. Improving Web information systems with navigational patterns, inProceedings of 8th International World Wide Web Conference (Toronto, Canada, May 1999), Elsevier Science, 589-600. [12] Rossi, G., Schwabe, D., Lyardet, F.: Web application models are more than conceptual models. In: Proceedings of the World Wild Web and Conceptual Modeling'99 Workshop, ER'99 Conference. Lecture Notes in Computer Science. Springer (1999) 239252.