Title: Medici
1Medició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
2CONTENIDO
- Introducción
- Medición de especificaciones de requisitos
- Medidas basadas en modelos
- Arquitectura de gestión de calidad de ERS
- Conclusiones
- Referencias
31. Introducción
41. Introducción
- Calidad del software
- Medición del software necesidad de obtener datos
objetivos que ayuden a mejorar la calidad - Creación de modelos de calidadútiles para
discutir, planificar y obtener Ãndices de calidad - Aplicación de estándares de calidad directrices
para el aseguramiento externo e interno de la
calidad
51. Introducción
- Los siguientes conceptos se han desarrollado
tomando como base la experiencia de varias
organizaciones - 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
Victor R. Basili
61. Introducción
- Necesitamos frameworks de medidas para
- Caracterizar
- Construir modelos comparativos y lÃneas base
- Entender
- Analizar modelos
- Evaluar
- Comparar modelos
- Predecir
- Construir modelos predictivos
- Motivar
- Construir modelos prescriptivos
Victor R. Basili
71. Introducción
- Modelos de calidad
- Modelo de Boehm Boehm et al., 1978
- Modelo FCM (Factors/Criteria/Metrics) McCall et
al., 1977 - Marco ISO 9126 ISO/IEC, 1991
- Paradigma GQM (Goal-Question-Metric) Basili y
Rombach, 1988 - Modelo de Gilb Gilb, 1988
- Modelo CMM (Capability Maturity Model) Paulk,
1993 - Modelo SPICE (Software Process Improvement and
Capability determination) Rout, 1995, SPICE,
1999
81. Introducción
- CaracterÃsticas de los modelos
- Algunos modelos (FCM, GQM...) incluyen métricas
para evaluar diferentes atributos de calidad del
producto casi siempre en el nivel del diseño o
del código - Los modelos de calidad más recientes (CMM, SPICE)
están orientados a la mejora de procesos -
92. Medición de especificaciones de requisitos
102. Medición de especificaciones de requisitos
- Métricas de especificación de requisitos
- Tamaño y funcionalidad
- Puntos de función Albrecht, 1979
- Métrica Bang DeMarco, 1982
- Puntos objeto Boehm et al., 1995
- 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
112. Medición de especificaciones de requisitos
- Calidad en sistemas OO
- Métricas de diseño Chidamber y Kemerer, 1994
- Métricas orientadas a clases Lorenz y Kidd 1994
- Métricas orientadas a operaciones Churcher y
Shepperd, 1995 - Métricas para pruebas Binder, 1994
- Métricas de calidad y complejidad en modelos OMT
Genero et al., 1999 - Métricas de calidad de los diagramas de clases en
UML Genero et al., 2000 - Medición de modelos conceptuales basados en
eventos Poels, 2000
122. Medición de especificaciones de requisitos
- Calidad en sistemas OO
- 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)
132. Medición de especificaciones de requisitos
- Atributos de la ERS
- Corrección validación de requisitos, modelos
técnicamente correctos, etc. - Completitud grado en que los requisitos cumplen
las necesidades de los usuarios - Consistencia ausencia de requisitos
contradictorios - Carencia de ambigüedad un único requisito debe
tener una única interpretación (ortogonalidad del
lenguaje de especificación) - Trazabilidad seguimiento de la evolución de los
requisitos - Facilidad de comprensión
142. Medición de especificaciones de requisitos
- Algunas caracterÃsticas de la ERS dificultan la
aplicación de métricas - Diferentes perspectivas de modelado
- Es necesario contemplar múltiples notaciones
- Evolución
- Hay que asegurar la consistencia de los cambios
- Transformación
- Se requieren medidas de calidad que valoren la
trazabilidad - Abstracción
- Es difÃcil medir directamente los atributos de
calidad
152. Medición de especificaciones de requisitos
- Necesidad de Modelos
- Minimizar la complejidad y relatividad inherentes
al concepto calidad del software - Manejar diferentes perspectivas de modelado
- Gestionar la evolución y asegurar la consistencia
de los cambios - Crear FactorÃas de la experiencia
163. Medidas basadas en modelos
MPC ? ci M1, M2, ...,Mn P 1 - (ET/ER)
173. Medidas basadas en modelos
- El éxito en la medición del software está ligado
a la obtención, definición y manipulación
conjunta de dos modelos - Modelos empÃricos
- Contexto empÃrico del mundo real
- Modelos numéricos
- Formalización de las medidas del contexto empÃrico
183. Medidas basadas en modelos
Medida
Matemáticas/ estadÃstica
Comprensión/ refinamiento
Interpretación
193. Medidas basadas en modelos
Modelo de jerarquÃa genérico que recoge los
aspectos evolutivos y/o de transformación de dos
modelos
204. Arquitectura de gestión de calidad de ERS
214. Arquitectura de gestión de calidad de ERS
- Objetivos
- Gestionar conjuntamente la calidad de diferentes
perspectivas de modelado - Formular directamente objetivos de calidad y
planes de medida - Proporcionar una base para la automatización de
las medidas - Mantener registros de información histórica
- Proporcionar soporte para estudios empÃricos y
construcción de modelos predictivos
224. Arquitectura de gestión de calidad de ERS
- Modelos en el ámbito de los requisitos
Entorno de desarrollo
Meta metamodelo
IngenierÃa de métodos
Lenguaje de modelado
Modelado conceptual
Modelos
Instancias y escenarios
Uso
Entorno de aplicación 2
Entorno de aplicación 1
Estructura de referencia ISO IRDS (Information
Resource Dictionary System)
234. Arquitectura de gestión de calidad de ERS
- Basada en la arquitectura IRDS de cuatro capas
- Escenarios e instancias contiene objetos no
instanciables (datos, estados...) - Modelos representa las clases
- Metamodelos nivel de lenguajes de modelado que
define la estructura de las clases - Meta metamodelo Definición de múltiples
lenguajes de modelado
244. Arquitectura de gestión de calidad de ERS
Metamodelo
Modelo M2
Modelo
Escenario
254. Arquitectura de gestión de calidad de ERS
- Implementación en un repositorio
- Construcción de modelos empÃricos de entidades
medibles - Recuperación de modelos y datos para realizar
medidas - Realización de análisis de datos, presentación e
interpretación de resultados - Almacenamiento de modelos y resultados para uso
futuro - Automatización de la recolección de datos y
aplicación de métricas
264. Arquitectura de gestión de calidad de ERS
275. Conclusiones
285. Conclusiones
- Construir modelos para
- ayudar a entender qué estamos haciendo
- proporcionar una base para definir objetivos
- proporcionar una base para la medición
- Construir modelos de
- gente, procesos, productos
- y estudiar sus interrelaciones
295. Conclusiones
- Usar modelos para
- clasificar el proyecto en curso
- distinguir los entornos pertinentes del proyecto
- encontrar tipos de proyectos con caracterÃsticas
y objetivos similares - Los modelos proporcionan un contexto para
- Definición de objetivos
- Objetos/experiencias reutilizables
- Selección de procesos
- Evaluación/comparación
- Prediccion
305. Conclusiones
- El enfoque propuesto proporciona
- Un marco para definir modelos de calidad y
objetivos especÃficos del proyecto - Un mecanismo para evaluar la calidad en las
primeras fases del ciclo de vida - Soporte para el registro y uso provechoso de
experiencias pasadas - Un medio para gestionar la evolución y la
consistencia de los cambios
316. referencias
326. Referencias
- Albrecht, A.J., Measuring application
development, Proc. of IBM Applications
DevelopmentJoint 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 Software
Environments, IEEE Transaction on Software
Engineering,14(6), 758-73 1988. - 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.
336. Referencias
- DeMarco, 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 and
requirements specification, Information and
Software Technology, 32 (1), pp 60-64, 1990. - 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 2nd 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, IDEAS2000, 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, Software Product Evaluation
Quality Characteristics and Guidelines for their
Use , 1991.
346. Referencias
- Lorenz, M. and Kidd, J., Object_oriented
Software Metrics, Prentice Hall 1994. - McCall, 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. 4th
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.