“Nuevos Enfoques para la Utilización del Concepto de Documento

Anuncio
Curso 2006/07
Título del trabajo de investigación
“Nuevos Enfoques para la Utilización del
Concepto de Documento como Mecanismo de
Integración de Procesos y Herramientas”
(Resumen)
Departamento de
Lenguages y Sistemas Informáticos
e Ingeniería del Software
Facultad de Informática
Universidad Politécnica de Madrid
Autor: Agustín Yagüe Panadero
(ayague@eui.upm.es)
Tutores: Juan José Moreno Navarro
Juan Garbajosa Sopeña
Nuevos Enfoques para la Utilización del Concepto de Documento
como Mecanismo de Integración de Procesos y Herramientas
Septiembre 2007
Tabla de contenidos
1.
2.
3.
Objetivos y justificación........................................................................................... 2
Conclusiones............................................................................................................. 3
Bibliografía............................................................................................................... 3
Agustín Yagüe Panadero
1
Nuevos Enfoques para la Utilización del Concepto de Documento
como Mecanismo de Integración de Procesos y Herramientas
Septiembre 2007
1. Objetivos y justificación
El trabajo realizado tiene como objetivo presentar un enfoque para la generación
automática o semi-automática de entornos de validación de sistemas especificos de
dominio basados en pruebas de aceptación. Esto se ha estudiado en el contexto de
herramientas y entornos de desarrollo orientados a documento.
Desde hace mucho tiempo, las pruebas han sido consideradas una actividad importante.
Sin embargo, los esfuerzos reales de que se han dedicado en muchos proyectos
informáticos no ha sido el esperado como se muestra en [1]. La aparición de las
metodologías ágiles, oficialmente iniciadas con “Manifesto of Agile Software” [2], ha
hecho que el peso relativo de las pruebas haya aumentado, lo que se pone de manifiesto
con el auge que está teniendo el desarrollo dirigido por pruebas [3] (Test Driven
Development - TDD). Todo lo anterior puede extenderse a las pruebas de aceptación,
que están tomando relevancia bajo el amparo de las metodologías ágiles.
En este trabajo se ha profundizado en el soporte a la automatización de las pruebas de
aceptación. Dado que los conceptos relacionados con las pruebas son muy extensos en
la comunidad de software y sistemas, se han presentado de forma breve los conceptos
fundamentales que son necesarios para la comprensión de este trabajo.
Las pruebas de aceptación son una parte del proceso de validación. Según [4], el
objetivo del proceso de validación es asegurar que los requisitos de software y sistemas
se cumplen mediante la ejecución de diferentes tipos de pruebas: integración, sistemas y
aceptación. Las pruebas se estructuran en procedimientos de test que están formados por
un número de pasos.
Otro aspecto importante relacionado con las pruebas es la automatización. Es
interesante resaltar que la mayoría de los trabajos en este área, se centran en producir
soluciones particulares para problemas específicos aplicando diferentes enfoques. En la
mayoría de los casos la automatización se ha fijado en la generación automática de
casos de prueba buscando el mayor recubrimiento de requisitos posible y no he
encontrado referencias sobre la automatización de la generación de entornos de
validación basados en pruebas de aceptación.
En la ejecución de este trabajo se ha estudiado aplicación de herramientas de ejecución
de pruebas en diferentes fases del ciclo de vida. Esto se manifiesta de forma más
relevante en las pruebas de aceptación como se describe en [5]: las pruebas unitarias son
más cercanas a las especificaciones y las pruebas de aceptación son más próximas a los
usuarios finales, que son quienes ejecutan las pruebas y que están alejados de
especificaciones abstractas.
Esta distancia es la que se pretende solventar con los enfoques de modelado específico
de dominio utilizados en este trabajo, lo que ha dado un fuerte impulso a la reducción de
la distancia entre usuarios y pruebas de aceptación.
El trabajo se ha desarrollado de la siguiente forma. En primer lugar se ha estudiado el
estado del arte de las tecnologías relacionadas con las pruebas de aceptación. A
continuación se ha abordado una visión general del proceso de generación de las
herramientas para la ejecución de pruebas de aceptación. Una vez analizado el proceso
general, se estudiaron los tipos de requisitos necesarios para la generación de este tipo
Agustín Yagüe Panadero
2
Nuevos Enfoques para la Utilización del Concepto de Documento
como Mecanismo de Integración de Procesos y Herramientas
Septiembre 2007
de entornos de validación. Posteriormente se presentan los modelos identificados para la
generación del entorno de pruebas de aceptación aplicando un enfoque dirigido por
modelos y finalmente se han obtenido conclusiones.
2. Conclusiones
La primera aportación del trabajo es la identificación de las posibles fuentes de
conocimiento necesarias para la generación de herramientas de validación específicas de
dominio basadas en pruebas de aceptación. Este conocimiento se representa en forma de
requisitos y los modelos definidos a partir de los requisitos.
Este trabajo también presenta un enfoque dirigido por modelos para derivar las
herramientas y los entornos de validación a partir de los modelos previamente definidos.
Este acercamiento se basa en la definición de transformaciones de modelos. La
derivación se puede realizar de forma semiautomática o completamente automática
dependiendo de características del sistema.
A través de estos enfoques, los ingenieros de software y sistemas pueden tener acceso a
herramientas específicas de dominio para la validación de sistemas en las primeras fases
del ciclo de vida y con un coste limitado.
Las líneas de trabajo futuras que se pueden plantear a partir de éste pueden estar
orientados a la definición formal de los modelos mediante lenguajes de modelado de
sistemas para que sean utilizados como entrada de herramientas de generación. Otra
posible línea consistiría en la aplicación del enfoque de lineas de producto presentado
en [6] como salida de las transformaciones de modelos presentadas en el trabajo.
Como resultado del trabajo realizado se ha escrito el artículo de título “Applying the
knowledge stored in systems models to derive validation tools and environments” cuyos
autores son Agustín Yagüe y Juan Garbajosa Sopeña y que ha sido aceptado y
presentado en “ICCI 2007. The 6th IEEE International Conference on COGNITIVE
INFORMATICS” que se ha celebrado del 6 al 8 de agosto de 2007 en Lake Tahoe,
California, USA. Dicho artículo aparece publicado en las páginas 391-400 de los
proceedings de la Conferencia cuyo ISBN es 1-4244-1327-3.
3. Bibliografía
1. D. O’Connor, “Neglect testing at your peril,” Spectrum, IEEE, 2001.
2. K. Beck and al., “Manifesto for agile software development,” web.
[Online]. Available: http://agilemanifesto.org
3. D. Janzen and H. Saiedian, “Test-driven development: Concepts, taxonomy, and
future di- rection,” Computer, vol. 38, no. 9, pp. 43–50, 2005.
4. IEEE, IEEE Std 1012-2004, IEEE Standard for Software Verificiation and
Validation. Published: IEEE-STD:adr: IEEE, 2005.
5. R. O. Rogers, “Acceptance testing vs. unit testing: A developer’s perspective.”
in XP/Agile Universe, ser. Lecture Notes in Computer Science, C. Zannier, H.
Erdogmus, and L. Lind- strom, Eds., vol. 3134. Springer, 2004, pp. 22–31.
6. B. Magro, “Arquitectura de referencia para una familia de entornos de
validación de sistemas,” M. Eng. thesis, Facultad de Informa´tica, Madrid,
Spain, jun 2005.
Agustín Yagüe Panadero
3
Descargar