Title: Gestin de Calidad
1Fundamentos de Ingeniería del Software
- Tema 8. Gestión de Calidad.
Asignatura Fundamentos de Ingeniería del
Software Titulación Ingeniera Técnica de
Informática de Gestión Curso Académico
2004-2005 Curso 3º Cuatrimetres
Primero Créditos 6(33) Página Web
dis.um.es/lopezquesada Profesor Juan Antonio
López Quesada Departamento Informática y
Sistemas
2Métrica 3 v2 Aseguramiento de la Calidad
La familia de estándares ISO (Organización
Internacional de Estandarización) 9000 está
compuesta por los siguientes estándares ISO
9001 ISO 9002 ISO 9003 ISO 9004
3Definición de Calidad
- Definición de Pressman Concordancia con los
requerimientos funcionales y de rendimiento
explícitamente establecidos, con los estándares
de desarrollo explícitamente documentados y con
las características implícitas que se espera de
todo software desarrollado profesionalmente. - Lo anterior enfatiza 3 puntos
- Los requerimientos son los fundamentos desde los
que se mide la calidad. - Los estándares definen un conjunto de criterios
de desarrollo. - Hay requerimientos implícitos que no se mencionan
como, por ejemplo, el deseo de que un programa
sea fácil de mantener y de depurar.
4Definición de Calidad
- Definición de Boehm Para que haya calidad de
software debe tener estas características - Fiabilidad
- Portabilidad
- Eficiencia
- Ingeniería Humana
- Facilidad de Prueba
- Facilidad de mantenimiento
5Garantía de la calidad de Software
- La garantía de calidad del software (o SQA,
software Quality Assurance) es una actividad de
protección que se aplica en todo el proceso de
ingeniería del software. - Corresponde a muchos en la organización, a los
ingenieros de software, a los gestores de
proyecto, clientes, comerciantes, personas del
grupo de desarrollo. - La gente que forma el SQA debe mirar el software
desde el punto de vista del cliente.
6Actividades de la SQA
- Aplicación de metodologías técnicas.
- Realización de revisiones técnicas formales.
- Prueba del software.
- Ajuste a los estándares.
- Control de cambios.
- Mediciones.
- Registro y realización de informes.
7Revisiones técnicas
- Hay dos motivos básicos para esto
- El trabajo técnico necesita ser revisado.
- Hay errores que son percibidos mas fácilmente.
por otras personas que por los creadores. - Por definición es un grupo de personas que
permiten - Señalar la necesidad de mejoras.
- Señalar que NO hay que mejorar.
- Conseguir un trabajo técnico mas homogéneo.
8Revisiones técnicas
- Revisiones Formales VS Informales las informales
se llevan a cabo constantemente, sin tales
revisiones la programación y comprensión de un
proyecto serian imposibles. - Las revisiones formales tienen tres
elementos - Informe escrito del estado del producto revisado.
- La participación activa y abierta de todos los
del grupo de revisión. - Total responsabilidad de todos los participantes
en la calidad de la revisión.
9Revisiones técnicas
- Ventajas de las revisiones técnicas
- Reduce sustancialmente el coste del software.
- Tiene gran valor educativo para los
participantes. - Sirve para comunicar la información técnica.
- Fomenta la seguridad y la continuidad.
10Revisiones Técnicas Formales-RTFs
- Objetivos
- Descubrir errores en la función,la lógica o la
implementación. - Comprobar que el software bajo revisión cumple
los requisitos de software. - Garantizar que el software esta bajo los
estándares. - Uniformidad en el software.
- Facilitar el manejo de proyectos.
11Revisiones Técnicas Formales-RTFs
- Proceso
- El productor informa al jefe de proyecto la
terminación del producto. - Jefe de proyecto contacta el jefe de revisión.
- Revisores y jefe de revisión revisan el producto.
- La reunión revisión es llevada a cabo por el jefe
de revisión, los revisores y el productor. - Al final todos los participantes deben decidir
si - Aceptan el producto sin posteriores
modificaciones. - Rechazan el producto por errores.
- Aceptan el producto provisionalmente.
- Una vez tomada una decisión todos firman.
12Índices de la Calidad de Software
- Según estándar IEEE 982.1 (1982) de la fuerza
aérea norteamericana, determinan un índice de
calidad (ICED) cuyo valor esta entre 0 y 1. Para
calcular este índice se tienen que averiguar una
serie de valores - S1 Número total de módulos definidos en la
arquitectura del programa. - S2 Número total de módulos cuya correcta función
depende de los datos de entrada o que produce
datos que se usan en cualquier parte. - S3 Número de módulos cuya correcta función
depende del procesamiento previo. - S4 Número total de elementos de una base de
datos. - S5 Numero total de elementos de Base de Datos
únicos.
13Índices de la Calidad de Software
- S6 Número de segmentos de base de datos.
- S7 Número de módulos con una sola entrada y una
sola salida. - Una vez determinados los valores anteriores, se
calculan los siguientes valores intermedios - Estructura del programa D1 1 si el diseño
arquitectónico se desarrolló con un método
característico (p.e., Diseño orientado a objetos
0 en otro caso) - Independencia de módulos D2 1- S2/ S1.
- Módulos no dependientes del procesamiento previo
D3 1- S3/ S1.
14Índices de la Calidad de Software
- Tamaño de la base de datos D4 1- S5/ S4.
- Compartimentalización de la base de datos
D5 1- S6/ S4. - Característica de entrada /salida del módulo
D6 1- S7/ S1. - Con lo anterior
- ICED ?piDi
- Donde i varía de 1 a 6 y pi es el peso relativo a
la importancia de cada uno de los valores
intermedios y ?pi1.
15Índices de la Calidad de Software
- Índice de madures del software IMS
- Se determina la siguiente información
- MT Número de módulos en la versión actual.
- Fm Número de módulos en la versión actual que
han sido modificados. - Fa Número de módulos en la versión actual que
han sido añadidos. - Fe Número de módulos de la versión anterior que
han sido eliminados de la versión actual.
16Índices de la Calidad de Software
- El IMS se calcula así
- IMS MT-(Fa FmFe)/MT
- A medida que el IMS se aproxima a 1, el producto
comienza a estabilizarse.