Medicin de la calidad del software en el

  • Slides: 34
Download presentation
Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos María N. Moreno García Francisco J. García Peñalvo María José Polo Martín Universidad de Salamanca Departamento de Informática y Automática

CONTENIDO 1. 2. 3. 4. 5. 6. Introducción Medición de especificaciones de requisitos Medidas

CONTENIDO 1. 2. 3. 4. 5. 6. Introducción Medición de especificaciones de requisitos Medidas basadas en modelos Arquitectura de gestión de calidad de ERS Conclusiones Referencias

1. Introducción

1. Introducción

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 1. Introducción n Calidad del software Medición del software: necesidad de obtener datos objetivos que ayuden a mejorar la calidad u Creación de modelos de calidad: útiles para discutir, planificar y obtener índices de calidad u Aplicación de estándares de calidad: directrices para el aseguramiento externo e interno de la calidad u JISBD´ 2000 4

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 1. Introducción n Los siguientes conceptos se han desarrollado tomando como base la experiencia de varias organizaciones u u u Pradigma para establecer objetivos corporativos y del proyecto y un mecanismo para medir dichos objetivos Paradigma Objetivos/Preguntas/Metricas Un mecanismo de mejora evolutiva para el software Paradigma Mejora de la Calidad Un enfoque organizativo para construir competencias de software y suministrarlas a los proyectos Factoría de la experiencia JISBD´ 2000 Victor R. Basili 5

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 1. Introducción n Necesitamos “frameworks” de medidas para: u Caracterizar Construir modelos comparativos y líneas base u Entender • Analizar modelos u Evaluar • Comparar modelos u Predecir • Construir modelos predictivos u Motivar • Construir modelos prescriptivos JISBD´ 2000 Victor R. Basili 6

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 1. Introducción n Modelos de calidad: u Modelo de Boehm [Boehm et al. , 1978] u Modelo FCM (Factors/Criteria/Metrics) [Mc. Call et al. , 1977] u Marco ISO 9126 [ISO/IEC, 1991]: u Paradigma GQM (Goal-Question-Metric) [Basili y Rombach, 1988]: u Modelo de Gilb [Gilb, 1988]: u Modelo CMM (Capability Maturity Model) [Paulk, 1993]: u Modelo SPICE (Software Process Improvement and Capability determination) [Rout, 1995], [SPICE, 1999]: JISBD´ 2000 7

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 1. Introducción n Características de los modelos: u Algunos modelos (FCM, GQM. . . ) incluyen métricas para evaluar diferentes atributos de calidad del producto casi siempre en el nivel diseño o del código u Los modelos de calidad más recientes (CMM, SPICE) están orientados a la mejora de procesos “Desafortunadamente, organizaciones que cumplen los requisitos CMM o ISO no están produciendo software de calidad” David Cook JISBD´ 2000 8

2. Medición de especificaciones de requisitos

2. Medición de especificaciones de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Métricas de especificación de requisitos: u Tamaño y funcionalidad: • Puntos de función [Albrecht, 1979] • Métrica Bang [De. Marco, 1982] • Puntos objeto [Boehm et al. , 1995] u Calidad • Métricas basadas en especificaciones formales [Samson et al. , 1990] • Calidad de las especificaciones informales en lenguaje natural [Samson y Palmer], [Finkelstein et al. ] • Métricas de calidad de la documentación [Arthur y Stevens, 1989], [French et al. , 1997], [Roth et al. , 1994] • Listas de comprobación [Brykczynski, 1999] [Farbey, 1990] JISBD´ 2000 10

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Calidad en sistemas OO Métricas de diseño: [Chidamber y Kemerer, 1994] u Métricas orientadas a clases [Lorenz y Kidd 1994] u Métricas orientadas a operaciones [Churcher y Shepperd, 1995] u Métricas para pruebas [Binder, 1994] u Métricas de calidad y complejidad en modelos OMT [Genero et al. , 1999] u Métricas de calidad de los diagramas de clases en UML [Genero et al. , 2000] u Medición de modelos conceptuales basados en eventos [Poels, 2000] u JISBD´ 2000 11

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Calidad en sistemas OO u Características de las métricas: • Centradas en el diseño • Dirigidas a la medición de la complejidad, reusabilidad, acoplamiento y cohesión • Enfocadas en el modelado estructural o estático • Las métricas desarrolladas en niveles próximos a la especificación de requisitos del software (ERS) no miden sus atributos de calidad (exceptuando las técnicas formales) JISBD´ 2000 12

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Atributos de la ERS: Corrección: validación de requisitos, modelos técnicamente correctos, etc. u Completitud : grado en que los requisitos cumplen las necesidades de los usuarios u Consistencia: ausencia de requisitos contradictorios u Carencia de ambigüedad: un único requisito debe tener una única interpretación (ortogonalidad del lenguaje de especificación) u Trazabilidad: seguimiento de la evolución de los requisitos u Facilidad de comprensión u JISBD´ 2000 13

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Algunas características de la ERS dificultan la aplicación de métricas u Diferentes perspectivas de modelado • Es necesario contemplar múltiples notaciones u Evolución • Hay que asegurar la consistencia de los cambios u Transformación • Se requieren medidas de calidad que valoren la trazabilidad u Abstracción • Es difícil medir directamente los atributos de calidad JISBD´ 2000 14

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 2. Medición de especificaciones de requisitos n Necesidad de Modelos: Minimizar la complejidad y relatividad inherentes al concepto “calidad del software” u Manejar diferentes perspectivas de modelado u Gestionar la evolución y asegurar la consistencia de los cambios u Crear “Factorías de la experiencia” u JISBD´ 2000 15

3. Medidas basadas en modelos = ci MPC , . . . , M

3. Medidas basadas en modelos = ci MPC , . . . , M n M 1, M 2 R) (ET/E 1 P=

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 3. Medidas basadas en modelos n El éxito en la medición del software está ligado a la obtención, definición y manipulación conjunta de dos modelos: u Modelos empíricos • Contexto empírico del mundo real u Modelos numéricos • Formalización de las medidas del contexto empírico JISBD´ 2000 17

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 3. Medidas basadas en modelos Modelo empírico Medida Comprensión/ refinamiento Resultado empírico Interpretación JISBD´ 2000 Modelo numérico Matemáticas/ estadística Resultado numérico 18

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 3. Medidas basadas en modelos Meta-metamodelo Modelo i j Modelo’ I’ k J’ K’ Modelo de jerarquía genérico que recoge los aspectos evolutivos y/o de transformación de dos modelos JISBD´ 2000 19

4. Arquitectura de gestión de calidad de ERS

4. Arquitectura de gestión de calidad de ERS

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS n Objetivos: Gestionar conjuntamente la calidad de diferentes perspectivas de modelado u Formular directamente objetivos de calidad y planes de medida u Proporcionar una base para la automatización de las medidas u Mantener registros de información histórica u Proporcionar soporte para estudios empíricos y construcción de modelos predictivos u JISBD´ 2000 21

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS n Modelos en el ámbito de los requisitos Entorno de desarrollo Meta metamodelo Ingeniería de métodos Modelado conceptual Lenguaje de modelado Modelos Instancias y escenarios Uso Entorno de aplicación 1 Entorno de aplicación 2 Estructura de referencia ISO IRDS (Information Resource Dictionary System) JISBD´ 2000 22

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS n Basada en la arquitectura IRDS de cuatro capas : Escenarios e instancias: contiene objetos no instanciables (datos, estados. . . ) u Modelos: representa las clases u Metamodelos: nivel de lenguajes de modelado que define la estructura de las clases u Meta metamodelo: Definición de múltiples lenguajes de modelado u JISBD´ 2000 23

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS Metamodelo M 2 UML Nombre: UML tipo: gráfico nº de notaciones: 9 Modelo Escenario CU-0 Aplicación: contabilidad Nivel: contextual Casos de uso Diagrama: casos de uso Clasificadores: 2 JISBD´ 2000 24

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS n Implementación en un repositorio Construcción de modelos empíricos de entidades medibles u Recuperación de modelos y datos para realizar medidas u Realización de análisis de datos, presentación e interpretación de resultados u Almacenamiento de modelos y resultados para uso futuro u Automatización de la recolección de datos y aplicación de métricas u JISBD´ 2000 25

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 4. Arquitectura de gestión de calidad de ERS Repositorio ME de gestión CASE de Calidad SGBD Aplicación 1 n JISBD´ 2000 26

5. Conclusiones

5. Conclusiones

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 5. Conclusiones n Construir modelos para: ayudar a entender qué estamos haciendo u proporcionar una base para definir objetivos u proporcionar una base para la medición u n Construir modelos de: gente, procesos, productos u y estudiar sus interrelaciones u JISBD´ 2000 28

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 5. Conclusiones n Usar modelos para clasificar el proyecto en curso u distinguir los entornos pertinentes del proyecto u encontrar tipos de proyectos con características y objetivos similares u n Los modelos proporcionan un contexto para: Definición de objetivos u Objetos/experiencias reutilizables u Selección de procesos u Evaluación/comparación u Prediccion u JISBD´ 2000 29

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 5. Conclusiones n El enfoque propuesto proporciona: Un marco para definir modelos de calidad y objetivos específicos del proyecto u Un mecanismo para evaluar la calidad en las primeras fases del ciclo de vida u Soporte para el registro y uso provechoso de experiencias pasadas u Un medio para gestionar la evolución y la consistencia de los cambios u JISBD´ 2000 30

6. referencias

6. referencias

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 6. Referencias Albrecht, A. J. , “Measuring application development”, Proc. of IBM Applications Development. Joint SHARE/GUIDE Symposium, Monterey, CA, pp 83 -92, 1979. Arthur, J. D. y Stevens, K. T. , “Assessing the adequacy of documentation through document quality indicators”, Proceedings of the IEEE Conference of Software Maintenance, pp. 40 -49, 1989. Basili, V. R. y Rombach, H. D. , “The TAME Project: Towards Improvement-Oriented Environments”, IEEE Transaction on Software Engineering, 14(6), 758 -73 1988. Software Basili, V. R. y Weiss, D. , “A Methodology for Collecting Valid Software Engineering data”, IEEE Transaction on Software Engineering, 10 (6), 728 -38 1984. Binder, R. , “Testing Object-Oriented Systems”, American Programmer, 7(4), 22 -29, 1994. Boehm, B. W. , Kaspar, J. R. y otros “Characteristics of Software Quality”, TRW Series of Software Technology, 1978. Boehm, B. W. , Clark, B. , Horowitz, E. et al. , “Cost Models for future life cycle processes: COCOMO 2. 0”, Annals of Software Engineering 1(1), pp 1 -24, 1995. Brykczynskki, B. , “A survey of software inspection checklist”, ACM Software Engineering Notes, 24(1), pp 82 -89, 1999. Chidamber, S. R. y Kemerer, C. F. , “A Metrics Suite for Object-Oriented Design” , IEEE Transactions of Software Engineering, 20(6), 476 -493, 1994. Churcher, N. I. and Shepperd, M. J. , “Towards Conceptual Framework for Object-Oriented Metrics”, ACM Software Engineering Notes, 20 (2), 67 -76, 1995. JISBD´ 2000 32

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 6. Referencias De. Marco, T. , “Controlling Software Projects”, Yourdon Press, 1982. Dolado, J. J. y Fernández, L. (coordinadores). “Medición para la Gestión en la Ingeniería del Software”. Ra -ma, 2000. Farbey, B. , “Software Quality metrics: considerations about requirements specification”, Information and Software Technology, 32 (1), pp 60 -64, 1990. and requirements Fenton, N. E. y Pfleeger, S. L. , “Software Metrics. A Rigorous & Practical Approach” , PWS, 1997. French, J. C. , Knight, J. C. y Powell, A. L. , “Applying hipertext structures to software documentation”, Information Processing and Management”, 33 (2), pp 219 -231, 1997. Genero, M. , Manso, M. E. , Piattini, M. y García F. J. “Assessing the quality and the Complexity of OMT Models” 2 nd European Software Measurements Conference-FESMA 99, Amsterdam, Netherlands, pp 99 -109, 1999. Genero, M. , Piattini, M. y Calero, C. “Una propuesta para medir la calidad de los diagramas de clases en UML”, IDEAS´ 2000, Cancun, México, pp 373 -384, 2000. Gilb, T. “Principles of Software Engineering Management”, Addison-Wesley, 1988. ISO/IEC "Information Technology - Information Resources Dictionary System (IRDS) - Framework", ISO/IEC intl. Standard edition, 1990. ISO/IEC 9126, 1991. “Software Product Evaluation – Quality Characteristics and Guidelines for their Use ”, JISBD´ 2000 33

Medición de la calidad del software en el ámbito de la especificación de requisitos

Medición de la calidad del software en el ámbito de la especificación de requisitos 6. Referencias Lorenz, M. and Kidd, J. , “Object_oriented Software Metrics”, Prentice Hall 1994. Mc. Call, J. A. , Richards, P. K. and Walters, G. F. “Factors in Software Quality”, RADC TR-77 -369, US Rome Air Development Center Reports NTIS AD/A-049 014, 015, 055, 1977. Paulk, M. , Curtis, B. , Chrissis, M. , and Weber, C. “Capability Maturity Model for Software: Version 1. 1”. Technical Report SEI-93 -TR-24, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, USA, 1993. Poels, G. , “On the measurements of event-based object-oriented conceptual models”. 4 th International ECOOP Workshop on Quantitative Approaches in Object Oriented Software Engineering, Cannes, France, 2000. Roth, T. , Aiken, P. y Hobbs, S. , “Hypermedia support for software developmemt: a retrospective assessment”, Hypermedia, 6 (3), pp 149 -173, 1994. Rout, T. P. “Software Process Improvement and Practice”, 1(1), pp 57 -66, 1995. Samson, W. B. , Nevill, D. G. Y Dugard, P. I. , “Predictive software Metrics based on a Formal Specification”, Software Engineering Journal, 5(1), 1990. SPICE, “SPICE Document Suite, Software Process Improvement and Capability determination”, , 1999. JISBD´ 2000 34