Вы находитесь на странице: 1из 4

Desarrollo de la navegacin en entornos web

M.J. Escalona, M. Mejas, J.Torres, A. Reina


Departamento de Lenguajes y Sistemas Informticos Universidad de Sevilla Avda. Reina Mercedes S/N 41012 Sevilla Fax: 95 455 71 39. Tlf: 95 455 71 39 {escalona, risoto, jtorres, reinaqu}@lsi.us.es

Abstract. Uno de los aspectos ms importantes que aparecen en el entorno de la Web es la navegacin. La navegacin lleva asociada la idea de moverse por un espacio de informacin, donde es crucial el concepto de posicin actual o contexto, ya que muchas veces, el siguiente paso a dar mientras se navega depender de qu pasos se hayan dado antes. Esta importancia de la navegacin se constata en el tratamiento que se le da en las metodologas de diseo web (OOHDM, RMM, etc.). Sin embargo, si analizamos cmo se plantea el estudio de la navegacin en estas metodologas veremos que en la mayora de los casos estas propuestas tratan el aspecto de la navegacin slo en la fase de diseo, sin entrar a analizar como se especifica o analiza la navegacin. El objetivo de este trabajo es presentar NDT (Navigational Development Tecnique), una tcnica que permite realizar la especificacin, el anlisis y el diseo de la navegacin de un sistema.

1. Introduccin
En los ltimos aos, ha aparecido un inters creciente en el desarrollo de los sistemas de informacin en la web. La prctica ha demostrado que los sistemas de informacin en la web requieren un tratamiento especial durante el proceso de desarrollo, siendo necesario proponer nuevos modelos y tcnicas que den soporte al equipo de trabajo asegurando la calidad del producto resultante [12]. Con esta idea, han diferentes metodologas que ofrecen modelos y tcnicas especficas para tratar los sistemas web: OOHDM[11], UWE[8], WSDM[3], etc. Uno de los aspectos ms importantes en los sistemas de informacin en la web es el de la navegacin. La gran mayora de las propuestas metodolgicas para sistemas web resaltan este aspecto ofreciendo modelos que permitan disearlo e implementarlo asegurando la calidad del resultado. Sin embargo, analizando dichos modelos y tcnicas y viendo los resultados de diferentes estudios comparativos [8][4], se puede observar que este aspecto, en la mayora de las propuestas, se trata solamente en las ltimas fases del ciclo de vida, principalmente en diseo e implementacin. La idea principal que plantea este trabajo es la de debatir la necesidad de elevar el estudio de este aspecto a las primeras etapas del ciclo de vida. Basado en esta idea se presenta NDT (Navigational Development Technique) [6]. Esta propuesta se mueve en las primeras fases del ciclo de vida y define un proceso estructurado para especificar, analizar y disear el aspecto de la navegacin en sistemas de informacin web. Este trabajo presenta una visin general de NDT as como la conexin entre esta propuestas y otras metodologas para la web.

2. NDT (Navigational Development Technique)


Como se ha comentado, el aspecto de la navegacin ha sido tratado en las propuestas metodolgicas que se mueven en el entorno de la web normalmente en la fase de diseo e

implementacin. Algunas propuestas metodolgicas como OOHDM[13] o SOHDM[8] plantean la necesidad de capturar los requisitos de navegacin. Para ello, proponen tcnicas como los casos de uso o los escenarios para definir las necesidades del sistema. Sin embargo, tanto desde el mbito de estas propuestas como del mbito de la programacin orientada a aspectos[10], se han observado ya las ventajas que ofrece el hecho de tratar la navegacin como un aspecto independiente en el proceso de desarrollo. El problema es que estas propuestas separan dicho concepto solo a partir del diseo. NDT plantea separar el aspecto de la navegacin desde la propia captura de requisitos. Para eso, propone un proceso de desarrollo dividido en tres flujos de trabajo: captura y definicin de requisitos, anlisis de la navegacin y diseo de la navegacin. NDT se puede describir como una tcnica orientada al proceso puesto que describe qu debe hacer el usuario en cada momento del desarrollo. Para ello, divide cada flujo en actividades que a su vez se dividen en tareas. Adems, NDT est orientada a la tcnica puesto que describe y ofrece las tcnicas a usar en cada paso del ciclo de desarrollo. Y por ltimo, tambin se puede aadir que es una propuesta orientada al producto, puesto que en cada momento del ciclo de vida define la estructura de los resultados que deben obtenerse. En la tabla nmero 1 se presenta una visin general del proceso de NDT, las tcnicas que propone y el resultado a obtener en cada flujo de trabajo. Proceso de desarrollo
1. Captura de requisitos 1.1. Definir entorno de trabajo y objetivos 1.2. Definir e identificar requisitos de almacenamiento 1.3. Clasificar y definir los actores del sistema 1.4. Definir e identificar requisitos funcionales 1.5. Definir e identificar requisitos de interaccin 1.6. Definir e identificar requisitos no funcionales 2. Anlisis de la navegacin 2.1. Definir los actores en estudio 2.2. Definir los nodos 2.3. Definir los enlaces bsicos 2.4. Definir los ndices men 2.5. Definir los ndices de consulta 2.6. Definir los ndices de seleccin 2.7. Obtener el grafo navegacional para cada actor 3. Diseo de la navegacin 3.1 Definir el modelo de clases navegacionales 3.2 Definir los contextos navegacionales

Tcnicas
- Patrones - Casos de uso [7] - BNL [2]

Productos
Documento de requisitos del sistema

- Patrones - Teora de grafos - Algoritmos de anlisis

Documento de anlisis de la navegacin

- Diag. de clases[1] - Contextos navegacionales [11]

Documento de diseo de la navegacin

Tabla 1: Resumen de NDT

2.1- Captura de requisitos El primer flujo de trabajo es el de la captura de requisitos. En este flujo hay que indicar qu requerimientos tiene el sistema. Para ello, se comienza estudiando el entorno de trabajo y definiendo los objetivo. Una vez definidos, se pasa a estudiar las necesidades de almacenamiento de informacin. En esta segunda actividad hay que describir qu debe guardar el sistema y la estructura que debe tener la informacin que se guarda. Teniendo en cuenta que un sistema de informacin en la web puede ser muy diferente dependiendo de la persona que en cada momento interacte con el sistema, en la tercera actividad se propone hacer un estudio de los posibles usuarios del mismo, clasificando y definiendo los roles posibles, sus incompatibilidades y relaciones de herencia. La cuarta actividad propone estudiar las necesidades funcionales del sistema, indicando qu debe ofrecer el sistema a cada uno de los diferentes roles definidos en la etapa anterior. La quinta actividad es sin duda la ms relevante para el resto del proceso de desarrollo. En ella se deben definir los requisitos de interaccin, o lo que es lo mismo, cmo el usuario va a

interactuar con el sistema. Para ello, en una primera tarea hay que definir las frases. Las frases describen qu campos son relevantes para cada actor a la hora de recuperar la informacin almacenada y qu criterios de recuperacin va a seguir. La segunda tarea consiste en definir los prototipos de visualizacin. stos recogen quin va a poder interactuar con el sistema, qu informacin se ve y qu casos de usos se pueden ejecutar en cada momento, adems de cmo se va a poder navegar en el sistema. Estos prototipos sern la base fundamental para el resto del proceso propuesto por NDT. La ltima actividad de este primer flujo consiste en identificar los llamados requisitos no funcionales que recogen aspectos como las necesidades de seguridad, eficiencia, etc. Para terminar con este breve resumen, indicar que la propuesta de captura de requisitos de NDT est orientada en dos caminos diferentes. Por un lado, trata de ser lo suficientemente clara para que sea fcilmente entendible por el cliente. Pero por otro lado, debe ofrecer resultados concretos y estructurados que sean tiles para el equipo de desarrollo. Por estas dos razones, para la definicin de los objetivos y requisitos se propone el uso de patrones. Un patrn es una tabla con campos definidos que el equipo de desarrollo ir completando junto con el cliente. La prctica nos ha demostrado que los patrones son fcilmente entendibles por los clientes pero que a la vez ofrecen una descripcin estructurada, concisa y detallada para el equipo de desarrollo[5]. 2.2- Anlisis de la navegacin Este segundo flujo de trabajo tiene por objetivo final el definir, a partir de las especificaciones realizadas, un modelo de navegacin coherente y sin errores. Para ello, parte de la definicin de los actores y de los prototipos de visualizacin. La primera actividad del anlisis consiste en estudiar esos prototipos y los actores definidos para observar qu roles tienen un sistema de navegacin similar. Los actores con un sistema de navegacin similar forman parte de un mismo grupo. El resto de actividades de anlisis se aplican para cada grupo de actores. La segunda actividad propone identificar los nodos del sistema. Un nodo es un punto de la navegacin en el que se ofrece informacin al usuario. NDT propone una tcnica para conseguir estos nodos de forma automtica a partir de los prototipos. En la tercera actividad se identifican lo enlaces, o lo que es lo mismo, las posibilidades de navegar de un nodo a otro. Siguiendo tambin un proceso automtico, en las tres siguientes actividades se identifican los ndices. Existen tres tipos de ndices: ndices men, se identificarn con mens, diccionarios, etc. en el diseo; ndices consulta, son puntos en los que el usuario puede realizar consultas o debe rellenar una serie de campos para seguir navegando; y por ltimo los ndices de seleccin, que son puntos de la navegacin en los que el usuario debe seleccionar la ruta de navegacin de una lista de posibilidades[8]. Para realizar todas estas actividades, NDT propone algoritmos y tcnicas que permiten conseguirla de una manera automtica. Al final del flujo, se obtiene una estructura en forma de grafo que debe cumplir una serie de mtricas marcadas por NDT para asegurar la coherencia y correccin del resultado.

2.3- Diseo de la navegacin En el ltimo flujo, se parte del resultado del anlisis para obtener lo que se conoce como modelo de navegacin. Este modelo se divide a su vez en dos: modelo de clases navegacionales y contextos navegacionales. El primero utilizando los conocidos diagramas de clases de UML[1], representa los aspectos de la navegacin. El segundo, expresa las visiones que de este modelo se ofrece dependiendo del punto de la navegacin en el que se

encuentre el usuario. Tambin ofrece NDT tcnicas propias y sistemticas para conseguir estos modelos a partir de los resultados del anlisis. El resultado de este flujo, conseguido de forma sistemtica en NDT se corresponde con modelos similares a los propuestos en algunas metodologas para el desarrollo de sistemas en la web como OOHDM o UWE. La idea es que a mediante NDT se consigan es tos modelos que servirn como base para continuar el ciclo de vida propuesto en ellas.

3. Conclusiones y trabajos futuros


Este trabajo plantea la necesidad de ofrecer un proceso que permita tratar el aspecto de la navegacin de forma independiente desde los primeros momentos del proceso de desarrollo. Para ello, ha presentado NDT que se plantea como una tcnica que permite conseguir de forma sistemtica los modelos navegacionales que sirven como base para aplicar otras propuestas metodolgicas ampliamente aceptadas. Para concluir, indicar que NDT es an un proyecto en desarrollo. Actualmente se est desarrollando una herramienta case, NDT-Tool, que d soporte al proceso de desarrollo. Hasta ahora, solo los dos primeros flujos de trabajo se han aplicado a proyectos reales y han dado bastantes buenos resultados.

4. Referencias
1. 2. 3. 4. 5. G. Booch, J. Rumbaugh, I. Jacobson. Unified Modeling Language User Guide. Ed. AddisonWesley, 1999. N. Brisaboa. M.J. Durn, C. Laln, J.R. Lpez, J.R. Param, .R. Penabad, A.S. Places. Arquitectura para Bibliotecas Virtuales, 1999. O.M.F. De Troyer, C.J. Leune. WSDM: A User Centered Design Method for Web Sites. Tilburg University, Infolab. 1997 A. Durn. Un Entorno Metodolgico de Ingeniera de Requisitos para Sistemas de Informacin. Departamento de Lenguajes y Sistemas Informticos. Universidad de Sevilla. Septiembre 2000. M.J. Escalona. Metodologa para el desarrollo de sistemas de informacin global: anlisis comparativo y propuesta. Departamento de Lenguajes y Sistemas Informticos. Universidad de Sevilla, Enero 2002. http://www.lsi.us.es/~informes M.J. Escalona, M. Mejas, J.Torres, A. Reina. NDT: una tcnica para el desarrollo de la navegacin. Congreso Ideas 2002. La Habana, Cuba. Abril de 2002 I. Jacobson. Modeling with use cases-Formalizing use-case modelling. Journal of Object-Oriented Programming, June 1995 N. Koch. Software Engineering for Adaptative Hypermedia Applications. Ph. Thesis, Reihe Softwaretechnik 12, Uni-Druck Publishing Company, Munich 2001. H. Lee, C. Lee & C. Yoo. A Scenario-based object-oriented methodology for developing hypermedia information systems. Processing of 31st Annual Conference on Systems Science. Eds. Sprague R. A. Reina, J. Torres. Analysing the navigational aspect Second Workshop on Aspect-Oriented Software Development. Febrero 2002. Bonn, Alemania. G. Rossi. An Object Oriented Method for Designing Hipermedia Applications. PHD Thesis, Departamento de Informtica, PUC-Rio, Brazil, 1996. Schwabe, D. Rossi, G. A Conference Review System with OOHDM. 1st International Workshop on Web-Oriented Software Technology. Valencia, Junio 2001 P. Vilain, D.Schwabe, C. Sieckenius. A diagrammatic Tool for Representing User Interaction in UML. Lecture Notes in Computer Science. Forthcoming. Proc. UML2000. York, 2000.

6. 7. 8. 9.

10. 11. 12. 13.

Вам также может понравиться