You are on page 1of 6

NDT: Navigational Development Techniques

M.J. Escalona, J.Torres, M.Mejas, M.C. Jurado, L.L. Fillerat


Departamento de Lenguajes y Sistemas Informticos. Universidad de Sevilla escalona@lsi.us.es Abstract. Durante los tres aos que ha durado el proyecto coordinado Dolmen, en el grupo Madeira de la Universidad de Sevilla, se ha ido desarrollando una propuesta para el tratamiento del aspecto de la navegacin de manera metdica en los sistemas para la web, NDT (Navigational Development Technique) [8]. Este trabajo pretende ser un resumen de la propuesta y presenta una visin general del estado del arte en el que se encuentra. Adems presenta las lneas futuras de investigacin que se prevn seguir a partir del trabajo realizado con NDT. 1.

Introduccin

Dentro de las lneas de investigacin que se marcaron dentro del grupo Madeira al comienzo del proyecto coordinado Dolmen se encontraba la de Metodologas de Desarrollo. Cuando el proyecto comenz se haba planteado dentro del grupo la necesidad de estudiar las propuestas metodolgicas, las tcnicas y los modelos que la comunidad investigadora ofreca en el entorno de las bibliotecas digitales, la multimedia y la web. Desde haca aos, el personal del grupo Madeira haba trabajado con sistemas y proyectos reales en estos entornos y se haba encontrado con la problemtica de qu metodologa usar. Las propuestas clsicas no permitan modelar correctamente aspectos como la navegacin o la interfaz que en este tipo de sistemas son tan importantes. Por ello, dentro del grupo se abri una nueva lnea de investigacin encaminada hacia este tema[4]. La investigacin comenz con un anlisis de la situacin y un estudio comparativo de las diferentes metodologas propuestas en aquel momento por la comunidad investigadora [6]. El trabajo se bas en analizar y describir el proceso de desarrollo de cada una de estas metodologas y en aplicarlas al desarrollo y modelado de un mismo ejemplo real que se estaba desarrollando en el grupo: la aplicacin integrada para la gestin y difusin del patrimonio histrico de Andaluca [6]. De este trabajo de investigacin se obtuvieron numerosas conclusiones, pero quizs la ms relevante fue el hecho de descubrir que la gran mayora de estas propuestas se movan en las fases de diseo e implementacin[10], dejando al margen aspectos como la ingeniera de requisitos o la comunicacin con el usuario. En la tabla 1, se presenta un resumen de esta conclusin obtenida en dicho estudio. El smbolo indica que la propuesta cubre en su proceso la etapa indicada; el smbolo indica que no la contempla; y el smbolo indica que a pesar de que la contempla no ofrece un proceso o unas tcnicas suficientemente desarrolladas como para servir de soporte al desarrollo [5]. Movidos por esta motivacin, y teniendo en cuenta que en el departamento de Lenguajes y Sistemas Informticos se haban realizado ya trabajos en ingeniera de requisitos[3], se comenz a trabajar en el grupo Madeira en el desarrollo de una nueva propuesta que permitiese desarrollar de manera metodolgica el aspecto de la navegacin en sistemas para la web. Esta propuesta, que finalmente ha sido denominada NDT (Navigational Development Technique) [8], es un proceso de desarrollo para sistemas web que se mueve

M.J. Escalona, J.Torres, M.Mejas, M.C. Jurado, L.L. Fillerat

en las primeras fases del ciclo de vida. Su caracterstica principal es que se centra en una exhaustiva fase de requisitos que sirve como base para todo el proceso de desarrollo. Este trabajo presenta un resumen de NDT, as como una visin general de NDT-Tool[9], la herramienta CASE que se est desarrollando para dar soporte a NDT. Para ello, en el apartado segundo se describe el proceso y las caractersticas de NDT. En el apartado tercero se describe de manera general la herramienta NDT-Tool. Y por ltimo, en el apartado cuarto, se presentan los futuros trabajos y conclusiones. Especificacin Anlisis Diseo Implementacin Pruebas

HDM RMM EORM OOHDM WSDM SOHDM RNA HFPM Conallen UWE WebML WebComposition W2000 WUML Proyecto UWA OO-H NDT Tabla 1: fases contempladas en las propuesta para la web
2.

Visin general de NDT

El proceso de desarrollo de NDT es un proceso que se podra definir como bottom-up. El proceso de NDT se centra en una detallada fase de ingeniera de requisitos guiada por objetivos, que contempla tanto la captura, como la definicin y la verificacin de requisitos. El proceso comienza definiendo los objetivos y en base a stos se describe un proceso por el que se pueden capturar y definir los diferentes requisitos del sistema[7]. stos son clasificados y tratados dependiendo de la tipologa a la que pertenezcan. NDT divide los requisitos en: Requisitos de almacenamiento de informacin, que definen qu informacin se va a manejar en el sistema y cmo se relacionan entre s. NDT permite tambin definir nuevas naturalezas de datos que se vayan a utilizar en el sistema. Requisitos de actores, en los que se definen los roles que podrn interactuar en el sistema y las relaciones que se puede producir entre ellos. Requisitos funcionales, que permitirn definir la funcionalidad del sistema.

NDT: Navigational Development Techniques

Requisitos de interaccin, que definen cmo se muestra la informacin, cmo se podr navegar en el sistema y los criterios de recuperacin que se ofrecen[1]. Requisitos no funcionales, que recogern otros requisitos del sistema. Una vez validados estos requisitos, el proceso de NDT propone generar tres modelos: el modelo conceptual, que representa mediante un diagrama de clases la estructura esttica del sistema; el modelo de navegacin, que representa mediante un conjunto de diagramas de clases la forma en que se podr navegar en el sistema; y el modelo de interfaz abstracta, que mediante un conjunto de prototipos evaluables permitir mostrar cmo se va a interactuar con el sistema. La caracterstica ms destacable del proceso propuesto por NDT es que el paso de especificacin de requisitos a estos modelos se hace de una manera sistemtica e independiente. Es una manera sistemtica porque NDT define algoritmos que indican cmo conseguir cada modelo a partir de la definicin de requisitos. Y es independiente porque, a pesar de que existen relaciones entre los modelos[2], hecho que es imposible de evitar puesto que todos se refieren a un mismo sistema, no es necesario conseguir el modelo conceptual para conseguir el modelo de navegacin o el de interfaz abstracta. Desde los requisitos se definen tres procesos que permiten conseguir estos tres modelos. A estos modelos que se consiguen de manera sistemtica se les denomina modelos bsicos. As se tendr el modelo bsico conceptual, el modelo bsico navegacional y el modelo bsico de interfaz abstracta. Estos modelos bsicos deben ser estudiados por el grupo de analistas y podrn ser modificados si se estima oportuno. Sin embargo, un cambio en alguno de estos modelos puede ser fuente de un error o incongruencia cometida durante la ingeniera de requisitos o puede generar cambios en otros modelos. Por ello, tras los procesos de generacin de los modelos bsicos, NDT ofrece una gua con todos los cambios que se pueden realizar y en qu medida afectan a otros modelos del sistema o a la propia definicin de requisitos. Para dejar ms claro el proceso de NDT, en la figura 1 se muestra un grfico que describe las actividades de NDT en sus dos fases y los resultados que se obtendrn en cada una de ellas. Para terminar con la descripcin general de NDT, indicar que se caracteriza por varios aspectos: 1- El proceso de NDT est totalmente basado en la definicin de requisitos. Si se entra ms en detalle, se ver que a su vez, el proceso de definicin de requisitos se basa mucho en los diferentes roles de usuario que puedan aparecer en el sistema. 2- NDT no contempla las fases avanzadas del ciclo de vida del proyecto, como podran ser implementacin o mantenimiento. Es un proceso que permite conseguir el modelo conceptual, el modelo de navegacin y el modelo de interfaz abstracta del sistema de una manera sistemtica. 3- En NDT estos flujos de trabajo se realizan de una forma sistemtica, como la generacin de los modelos bsicos, se pueden realizar de manera automtica si se hace uso de una herramienta CASE que acompaa a NDT: NDT-Tool. 4- NDT es una propuesta orientada al proceso, puesto que para cada actividad define de manera concreta cul es el proceso a seguir, detallndolo de manera exhaustiva. 5- NDT es tambin una propuesta orientada al producto. En la figura 1 se muestra los resultados que se obtienen. En la especificacin de requisitos se genera un documento de especificacin de requisitos y en el anlisis el documento de anlisis del sistema y los prototipos que permitirn evaluar los resultados a los usuarios y

M.J. Escalona, J.Torres, M.Mejas, M.C. Jurado, L.L. Fillerat

clientes. La estructura que deben tener estos resultados se encuentra detallada de manera concreta en NDT 6- Adems, tambin se podra aadir que NDT es una tcnica orientada a la tcnica puesto que define de manera exhaustiva todas las tcnicas y modelos que propone.

Fig. 1. Diagrama con el proceso de desarrollo de NDT 3.

NDT-Tool

Los procesos sistemticos que se han comentado en el apartado anterior pueden ser implementados, consiguindose as una herramienta que permite aplicarlos de manera automtica. Con este objetivo se est desarrollando NDT-Tool. NDT-Tool no es ms que una herramienta en la que, los algoritmos y tcnicas propuestas por NDT, han sido implementados con idea de que su aplicacin sea ms sencilla y con menos errores. NDT-Tool est actualmente desarrollndose en un prototipo mediante Visual Basic y Access. Una vez que esta herramienta piloto sea generada y todos los algoritmos sean probados, se pretende emigrar a un entorno ms potente que permita la publicacin de la herramienta en la web. NDT-Tool tiene un men principal dividido en tres apartados: 1- Gestin de proyectos: esta opcin permite dar de alta nuevos proyectos que vayan a ser desarrollados mediante NDT o modificar los datos de los ya existentes. Adems, si el proyecto lo requiere, permite dar de alta y gestionar los datos de los participantes del proyecto, tanto equipo de desarrollo como grupos de usuarios y clientes, para posteriormente hacer un seguimiento del mismo. En la figura 2 se presenta esta opcin.

NDT: Navigational Development Techniques

Fig. 2. Ejemplo de pantalla de gestin de proyectos

2- Ingeniera de Requisitos: en este apartado se pueden cumplimentar todos los patrones de los requisitos propuestos en NDT, comprobando incongruencias y restringiendo las posibilidades en los mismos para que sean cumplimentados de manera adecuada. Adems, permite aplicar tcnicas de validacin como la matriz de rastreabilidad y genera automticamente el documento de requisitos en formato word. En la figura 3 aparece un ejemplo de patrn cumplimentado mediante NDT-Tool.

Fig. 3. Ejemplo de patrn 3- Modelos de Anlisis: este apartado realmente se divide en tres opciones: a. La correspondiente al modelo conceptual b. La correspondiente al modelo navegacional c. La correspondiente al modelo de interfaz abstracta

M.J. Escalona, J.Torres, M.Mejas, M.C. Jurado, L.L. Fillerat

En las tres se genera de manera automtica el modelo bsico, aplicando los algoritmos de NDT. Por otro lado, NDT-Tool genera los scripts de Rational para visualizar los modelos conceptual y de navegacin y los prototipos en HTML de la interfaz abstracta. Decir adems que, al igual que en el apartado anterior, desde esta opcin se puede generar el documento de anlisis del sistema en formato word. En la actualidad slo los mdulos 1 y 2 estn totalmente implementados. El punto 3 se encuentra en fase de desarrollo. Se han implementado los algoritmos para la generacin de los modelos bsicos y ahora se est trabajando en su visualizacin mediante Rational y en el control de modificaciones.
4.

Conclusiones y trabajos futuros

El presente trabajo ha pretendido mostrar una visin general de la propuesta metodolgica NDT del grupo Madeira. Para ello, se ha comenzado presentando una visin general de la propuesta describindose su entorno de trabajo, su ciclo de vida y sus objetivos. Tras esto se ha ofrecido una visin general de la herramienta que se est desarrollando junto con NDT, NDT-Tool. Se han resumido sus mdulos y se han presentado, de manera muy general, las posibilidades que ofrece. Como trabajos futuros indicar que se pretende seguir perfilando la propuesta y terminar de implementar la herramienta NDT-Tool, que actualmente se encuentra en fase de desarrollo. Por otro lado, decir que NDT ha sido aplicado en diferentes proyectos reales y que, por supuesto, esta es una lnea abierta de trabajo futuro. La idea final de NDT y NDTTool es que, una vez desarrollada la herramienta se migre al entorno web de manera que pueda ser utilizada por equipos de desarrollo reales.Por ltimo, otra lnea de investigacin que se pretende seguir es enriquecer la propuesta de NDT con mtricas de calidad de sitios web y en la actualidad se estn abriendo colaboraciones con otros grupos de investigacin que trabajan en este tema.
5. 1.

Referencias

N.R. Brisaboa, M.R. Penabad, A.S. Places, F.J.Rodrguez. A Documental Database Query Language. String Proccessing and Information Retrieval -SPIRE 2001. 2. C. Cachero. OO-H: una extensin a los mtodos OO para el modelado y generacin automtica de interfaces hipermediales. P.h. Tesis. Universidad de Alicante, 2003. 3. A. Durn,B. Bernrdez, A. Ruiz, M. Toro. A Requirements Elicitation Approach Based in Templates and Patterns. Workshop de Engenharia de Requisitos. Buenos Aires, Argentina,1999 4. M.J. Escalona, M.Mejas, J.Torres. Aproximacin metodolgica al desarrollo de sistemas para el tratamiento de bibliotecas digitales. V JISBD. Valladolid, Noviembre 2000. 5. M.J. Escalona, M. Mejas, J.Torres. Requirements Capture Workflow in Global Information Systems . Proceedings of the OOIS2002. Springer Verlag. Montpelier. Septiembre 2002. 6. M.J. Escalona, J. Torres, M.Mejas. Metodologas de desarrollo de sistemas de informacin en la web y anlisis comparativo. Novtica, nmero 160, noviembre-diciembre 2002. 7. Escalona, M.J., Koch, N. Ingeniera de Requisitos en Aplicaciones para la Web- Un estudio comparativo. Department of Language and Computer Science. December, 2002. 8. M.J. Escalona, M. Mejas, J. Torres, A.M. Reina. The NDT Development Process. Proceedings ICWE 2003. Springer Verlag. 2003. 9. M.J. Escalona, J. Torres, M. Mejas. NDT-Tool: A case tool to deal with requirements in web information systems. Proceeding of the ICWE 2003. Springer Verlag. 10. Koch, N. Software Engineering for Adaptive Hypermedia Applications. Ph. Thesis, FAST Reihe Softwaretechnik Vol(12), Uni-Druck, Munich, Germany. 2001

You might also like