Atributos de Calidad para Componentes COTS Manuel F
Atributos de Calidad para Componentes COTS Manuel F. Bertoa y Antonio Vallecillo Universidad de Málaga {bertoa, av}@lcc. uma. es Atributos de Calidad para Componentes COTS
Motivación n Desarrollo de software basado en componentes n n Componentes COTS Búsqueda, evaluación, selección de componentes Análisis de las aplicaciones construidas Los esfuerzos hasta ahora se han concentrado en los aspectos funcionales n n n ¿aspectos extra-funcionales? ¿atributos de calidad? ¿métricas para medir los atributos? Atributos de Calidad para Componentes COTS 2
Situación actual n n No existe una clasificación consensuada de los atributos de calidad Los estándares de calidad actuales: n n Son demasiado generales No se adaptan a los requisitos específicos de los componentes COTS Están en proceso de revisión (e. g. Squa. RE) Los fabricantes de componentes software no proporcionan información de este tipo Atributos de Calidad para Componentes COTS 3
Objetivo de nuestro trabajo n n Clasificar las características de calidad (desde el punto de vista del DSBC) Definir un modelo de calidad para componentes COTS n n Características Atributos Métricas Apoyarnos en estándares internacionales (ISO 9126, IEEE 830 -1993) Atributos de Calidad para Componentes COTS 4
Contenido 1. Características de calidad de componentes (COTS) 2. Clasificación de características 3. Atributos de los Componentes n n Medibles en tiempo de ejecución Medibles durante el ciclo de vida 4. Documentación de los componentes Atributos de Calidad para Componentes COTS 5
Características de calidad de componentes n Terminología: basada en ISO 9126 n Característica de Calidad n Atributo n Métrica n Modelo de Calidad Atributos de Calidad para Componentes COTS 6
Características de calidad de componentes n Característica de Calidad : un conjunto de propiedades mediante las cuales se evalúa y describe la calidad de un producto n n n Una característica se puede refinar en múltiples niveles de sub-características Atributo: una propiedad de calidad a la que puede asignársele una métrica Métrica: es un procedimiento que examina un componente y produce un dato simple Atributos de Calidad para Componentes COTS 7
Características de calidad de componentes n Un Modelo de calidad es el conjunto de características y sub-características, y de cómo estas se relacionan entre sí. n n El modelo de calidad a utilizar va a depender del tipo de producto a evaluar. Modelo de Calidad de ISO 9126 Atributos de Calidad para Componentes COTS 8
Modelo de Calidad ISO/IEC 9126 -1 Características • Funcionalidad Idoneidad Subcaracterísticas Corrección Interoperatividad Seguridad Conformidad • Fiabilidad Madurez Tolerancia a Fallos Recuperabilidad • Usabilidad Facilidad de aprendizaje Operatividad Facilidad de comprensión • Eficiencia Comportamiento Temporal Utilización de Recursos • Mantenibilidad Analizabilidad Cambiabilidad Estabilidad Facilidad de Prueba • Portabilidad Adaptabilidad Facilidad Instalación Adecuación Atributos de Calidad para Componentes COTS Reemplazabilidad 9
Modelo de Calidad para Componentes COTS Características • Funcionalidad Idoneidad Subcaracterísticas Corrección Interoperatividad Seguridad Conformidad • Fiabilidad Madurez Tolerancia a Fallos Recuperabilidad • Usabilidad Facilidad de aprendizaje Operatividad Facilidad de comprensión • Eficiencia Comportamiento Temporal Utilización de Recursos • Mantenibilidad Analizabilidad Cambiabilidad Estabilidad Facilidad de Prueba • Portabilidad Adaptabilidad Facilidad Instalación Adecuación Atributos de Calidad para Componentes COTS Reemplazabilidad 10
Modelo de Calidad para Componentes COTS Características • Funcionalidad Idoneidad Subcaracterísticas Corrección Interoperatividad Seguridad Conformidad • Fiabilidad Madurez Recuperabilidad • Usabilidad Facilidad de aprendizaje Operatividad Facilidad de comprensión • Eficiencia Comportamiento Temporal Utilización de Recursos • Mantenibilidad Cambiabilidad Atributos de Calidad para Componentes COTS Facilidad de Prueba 11
Modelo de Calidad para Componentes Caracteristicas • Funcionalidad Idoneidad Subcaracteristicas Compatibilidad Corrección Interoperatividad Seguridad Conformidad • Fiabilidad Madurez Recuperabilidad Complejidad • Usabilidad Facilidad de aprendizaje Operatividad Facilidad de comprensión • Eficiencia Comportamiento Temporal Utilización de Recursos • Mantenibilidad Cambiabilidad Atributos de Calidad para Componentes COTS Facilidad de Prueba 12
Clasificaciones de las características de calidad Atributos de Calidad para Componentes COTS
Características de Calidad de Componentes. Clasificaciones 1. Atendiendo a su ámbito de aplicación: n Características locales: tienen sentido para los componentes aislados n n P. e. : La "madurez'' Características globales: valoradas a nivel de la arquitectura software. n P. e. : La "tolerancia a fallos" Atributos de Calidad para Componentes COTS 14
Características de Calidad de Componentes. Clasificaciones 2. Atendiendo al instante en el cual una característica puede ser observada o medida n Observable en tiempo de ejecución n n (p. e. el Rendimiento) Observable durante el todo ciclo de vida del producto software n (p. e. la Mantenibilidad) Atributos de Calidad para Componentes COTS 15
Características de Calidad de Componentes. Clasificaciones 3. Dependiendo de los usuarios a los que se dirige el modelo n Los arquitectos software que necesitan evaluar n los componentes COTS Los usuarios finales Atributos de Calidad para Componentes COTS 16
Características de Calidad de Componentes. Clasificaciones 4. Atendiendo al tipo de características que observan del producto que miden n n Métricas internas: miden los atributos internos del producto final o de los productos intermedios Métricas externas: realizan las mediciones en función del comportamiento del sistema Atributos de Calidad para Componentes COTS 17
Características observables en tiempo de ejecución Subcaracterísticas • Funcionalidad Corrección Seguridad • Fiabilidad Recuperabilidad • Eficiencia Comportamiento Temporal Utilización de Recursos Atributos de Calidad para Componentes COTS 18
Características observables durante el ciclo de vida Subcaracterísticas • Funcionalidad Compatibilidad Idoneidad • Fiabilidad • Usabilidad Interoperatividad Conformidad Madurez Complejidad Facilidad de aprendizaje Operatividad Facilidad de comprensión • Mantenibilidad Cambiabilidad Atributos de Calidad para Componentes COTS Facilidad de Prueba 19
Atributos de los componentes Atributos de Calidad para Componentes COTS
Atributos de los componentes n Tipos de métricas que utilizaremos n Atributos medibles en tiempo de ejecución n Atributos medibles durante el ciclo de vida Atributos de Calidad para Componentes COTS 21
Atributos de los componentes n Métricas: n Presencial n Tiempo n Nivel n Ratio Atributos de Calidad para Componentes COTS 22
Atributos de los componentes n Presencial n n Esta métrica indica si un atributo está presente en el componente o no n variable booleana n variable de tipo string (false, ””) (true, ”implements interface Resource”) Atributos de Calidad para Componentes COTS 23
Atributos de los componentes n Tiempo n n Esta métrica se utiliza para medir intervalos de tiempo. n variable de tipo entero (valor absoluto) n variable de tipo string (unidades) (10, “ms”) Atributos de Calidad para Componentes COTS 24
Atributos de los componentes n Nivel n n n Se utiliza para indicar un grado de esfuerzo, habilidad, etc. . . Cuantifica medidas subjetiva dentro de una escala de valores. Variable entera: 0 (Muy Bajo), 1 (Bajo), 2 (Medio), 3 (Alto), 4 (Muy Alto) Atributos de Calidad para Componentes COTS 25
Atributos de los componentes n Ratio n Se utiliza para expresar un porcentaje (entre 0 y 100) n variable de tipo entero Atributos de Calidad para Componentes COTS 26
Atributos de los componentes medibles en tiempo de ejecución Atributos de Calidad para Componentes COTS
Atributos de los componentes medibles en tiempo de ejecución Funcionalidad n Corrección n 1. Precisión Ratio 2. Exactitud computacional Ratio Seguridad n n n 3. Cifrado de Datos 4. Capacidad de Control 5. Capacidad para Auditar Atributos de Calidad para Componentes COTS Presencial 28
Atributos de los componentes medibles en tiempo de ejecución Fiabilidad n Recuperabilidad n n 6. 7. 8. 9. Secuencializable Persistente Transaccional Tratamiento de Errores Atributos de Calidad para Componentes COTS Presencial 29
Atributos de los componentes medibles en tiempo de ejecución Eficiencia n Comportamiento Temporal n n 10. Tiempo de Respuesta Tiempo 11. Capacidad en Emisión Entero 12. Capacidad en Recepción Entero Utilización de Recursos n n 13. Requisitos de Memoria 14. Utilización de Disco Atributos de Calidad para Componentes COTS Entero 30
Atributos de los componentes medibles durante el ciclo de vida Atributos de Calidad para Componentes COTS
Atributos de los componentes medibles durante el ciclo de vida Funcionalidad (1/2) n Idoneidad n n 1. Cobertura Ratio 2. Exceso Ratio 3. Cobertura de Implementación Ratio Interoperatividad n 4. Compatibilidad de los Datos Presencial Atributos de Calidad para Componentes COTS 32
Atributos de los componentes medibles durante el ciclo de vida Funcionalidad (2/2) n Conformidad n n n 5. Conformidad con Estándares 6. Certificaciones Presencial Compatibilidad n 7. Compatibilidad hacia atrás Atributos de Calidad para Componentes COTS Presencial 33
Atributos de los componentes medibles durante el ciclo de vida Fiabilidad n Madurez n n n 8. Volatilidad 9. Evulocionabilidad 10. Fallos Eliminados Tiempo Entero Atributos de Calidad para Componentes COTS 34
Atributos de los componentes medibles durante el ciclo de vida Usabilidad (1/2) n Facilidad de Aprendizaje n n 11. 12. 13. 14. Tiempo para Usar Correctamente Tiempo para Configurar Correct. Periodo para Administrar Correct. Periodo para Dominar Atributos de Calidad para Componentes COTS Tiempo 35
Atributos de los componentes medibles durante el ciclo de vida Usabilidad (2/2) n Facilidad de Comprensión n n 15. 16. 17. 18. 19. Documentación de Usuario Sistema de Ayuda Documentación Computacional Formación Cobertura de la Demostración Atributos de Calidad para Componentes COTS Nivel Presencial Ratio 36
Atributos de los componentes medibles durante el ciclo de vida Usabilidad(3/3) n Operatividad n 20. Esfuerzo para Operar Nivel n 21. Esfuerzo para Configurar Nivel n 22. Esfuerzo para Administrar Nivel n Complejidad n 23. Interfaces Ofrecidas Entero n 24. Interfaces Externas Utilizadas Entero n 25. Índice de Complejidad Índice Atributos de Calidad para Componentes COTS 37
Atributos de los componentes medibles durante el ciclo de vida Mantenibilidad n Cambiabilidad n n 26. Modificabilidad Entero 27. Índice de Modificabilidad Índice 28. Capacidad de control de cambio Nivel Facilidad de Prueba n n 29. Auto-test de Arranque Presencial 30. Batería de Pruebas Presencial Atributos de Calidad para Componentes COTS 38
Discusión y Conclusiones n Modelo de Calidad para componentes COTS n n n Particularización del modelo general de calidad ISO Identificación de un conjunto de atributos de calidad para componentes COTS, junto con una serie de métricas para evaluarlos. Objetivo: la mejora y posible automatización de los procesos de evaluación y selección de componentes COTS Atributos de Calidad para Componentes COTS 39
Discusión y Conclusiones n n ¿Cuáles son los parámetros para medir la calidad? ¿Quién facilita esta información? n n Definir y consensuar modelos de calidad para productos muy específicos Evaluación por entidades independientes Hacia una “Ingeniería” del Software Basada en Componentes Atributos de Calidad para Componentes COTS 40
Fin de la presentación http: //www. lcc. uma. es/~av/Publicaciones/02/ideas-97. pps Atributos de Calidad para Componentes COTS
- Slides: 41