INVESTIGADORES
ESTEVEZ Elsa Clara
congresos y reuniones científicas
Título:
Testing para Desarrollo Basado en Componentes
Autor/es:
ELSA ESTEVEZ; MARISA SANCHEZ
Lugar:
San Luis
Reunión:
Workshop; III Workshop de Investigadores en Ciencias de la Computación; 2001
Institución organizadora:
Red de Universidades Nacionales con Carreras en Informática
Resumen:
La ingeniería de software basada en componentes (component-based software engineering) cumple un rol muy importante en el desarrollo de software, por ejemplo, considerar las infraestructuras de componentes que se ofrecen en el mercado como Enterprise JavaBeans, COM+, CORBA.Un sistema basado en componentes se construye integrando módulos que encapsulan datos y funcionalidad mediante parámetros en tiempo de ejecución. La European Conference of Object-Oriented Programming de 1996 (ECOOP96) define componente como ?una unidad de composición que posee una interface especificada mediante contratos y dependencias de contexto explícitas. Una componente de software es entregada en forma independiente y sujeta a integración por terceras partes?. El objetivo principal de invertir en componentes es facilitar el reuso. Los usuarios de componentes esperan para las mismas un nivel de calidad superior al exigido para el software tradicional que debe ser asegurado por el proveedor. La composición es la técnica clave a partir de la cual se construye el software e introduce nuevos aspectos a considerar. El usuario está interesado en ensamblar componentes, y por lo tanto, necesita analizar las consecuencias de la integración. Las componentes que funcionan correctamente en forma individual pueden dejar de hacerlo una vez que son integradas. Es por esto que para el desarrollo de software basado en componentes el testing de integración cumple un rol destacado. Debido a que en la mayoría de los casos el usuario no tiene acceso al código no se pueden aplicar muchas de las técnicas de testing basadas en el análisis del mismo. Solo podemos analizar las propiedades de lo ensamblado a partir de la representación de ?caja negra? de las componentes y de la información ofrecida por el proveedor. Generalmente, el proveedor describe el comportamiento de una componente especificando: una lista de nombre de operaciones y sus correspondientes parámetros de entrada y salida, una descripción textual informal sobre la funcionalidad de la misma, una descripción informal sobre el contexto en el cual opera la componente (plataforma de hardware y sistema operativo), datos de performance y disponibilidad para una ejecución típica. Sin embargo, para facilitar el testing de una solución completa se necesitan descripciones más detalladas y rigurosas. Este trabajo describe nuestra línea de investigación dentro de este contexto.