Está en la página 1de 26

Gestin de la Calidad del Software

Mtricas de la calidad en el software

1 de 29

CONTENIDO
Mtricas Medidas Indicadores Atributos de la Calidad Mtricas Internas y Externas Rangos de Calificacin Mtricas y el Sistema de Calidad

2 de 29

ISO 9126
Segn ISO 9126, el enfoque de calidad vara con el ciclo de vida del proyecto:
Al inicio del proyecto, la calidad se establece con los requerimientos de ella. Estos tienen una perspectiva externa y de usuario. Se validarn luego, cuando el software pueda ejecutarse (proceso de validacin).

Durante el diseo y desarrollo, la calidad tiene una perspectiva


interna, desde el punto de vista de los miembros del equipo de proyecto.

Durante el uso del software, la calidad mide la capacidad de


alcanzar efectividad, productividad, seguridad y satisfaccin, todos desde un punto de vista externo.
3 de 29

ISO 9126
Las perspectivas internas y externas de la calidad estn representadas por atributos los cuales sern medidos. Los atributos de calidad internos y externos estn fuertemente relacionados.
Proceso Influye Calidad del proceso Depende de Medidas de Procesos Atributos de Calidad Interna Producto de Software Influye Atributos de Calidad Externa Influye Efecto del Producto de software Calidad Calidad Calidad en Uso en Uso en Uso

Depende de

Depende de Medidas de Calidad en Uso

Contextos de uso

Medidas Internas

Medidas Externas

Calidad en el Ciclo de Vida - ISO 9126-1

4 de 29

Atributos de la Calidad ISO 9126


Resumen de atributos que presenta la norma:

5 de 29

Atributos de la Calidad ISO 9126


FUNCIONALIDAD: Capacidad del software de ofrecer la
funcionalidad que cubra las necesidades establecidas cuando el software sea utilizado bajo condiciones especificadas. ADECUACION: Capacidad de proveer un conjunto apropiado de funciones para tareas especficas y objetivos del usuario. EXACTITUD: Capacidad de proveer los resultados o efectos adecuados con el grado necesario de precisin. SEGURIDAD: Capacidad de proteger informacin y data de manera que personas o sistemas no autorizados no puedan leer o modificarlas, y que a las personas o sistemas autorizadas no se les deniegue el acceso. INTEROPERATIVIDAD: Capacidad de interactuar con uno o ms sistemas. CUMPLIMIENTO: Capacidad de adherencia a estndares, o regulaciones legales y similares relativas a funcionalidad.
6 de 29

Atributos de la Calidad ISO 9126


CONFIABILIDAD: Capacidad del software de mantener un nivel
especfico de desempeo, al ser utilizado bajo determinadas condiciones. MADUREZ: Capacidad del software de evitar el fracaso como resultado de errores del mismo. TOLERANCIA A LOS FALLOS: Capacidad del software de mantener un nivel especfico de desempeo en caso de fallos. RECUPERACION: Capacidad de re-establecer un nivel especfico de desempeo y recuperar la data directamente afectada, en caso de fallo. CUMPLIMIENTO: Capacidad de adherencia a estndares, convenciones, o regulaciones legales y similares relativas a confiabilidad.

7 de 29

Atributos de la Calidad ISO 9126


EFICIENCIA: Capacidad del software de proveer el desempeo
adecuado, relativo a la cantidad de recursos utilizados, bajo condiciones establecidos.
EN TIEMPO: Capacidad del software de proveer respuesta, tiempos de procesamiento, y ratios de entrada y salida apropiados. EN RECURSOS: Capacidad del software de utilizar las cantidades y tipos de recursos apropiados. CUMPLIMIENTO: Capacidad de adherencia a estndares, convenciones, o regulaciones legales y similares relativas a la eficiencia.

8 de 29

Atributos de la Calidad ISO 9126


USABILIDAD: Capacidad del software de ser entendido,
aprendido, utilizado, y de ser atractivo para el usuario, al ser utilizado bajo condiciones especficas.
ENTENDIMIENTO: Capacidad del software de permitir que el usuario comprenda su aplicabilidad, y cmo puede ser utilizado para tareas y condiciones de uso. APRENDIZAJE: Capacidad del software de permitir que el usuario aprenda sobre su aplicacin (uso). OPERABILIDAD: Capacidad del software de permitir que el usuario lo opere y controle. ATRACTIVO: vistoso. CUMPLIMIENTO: Capacidad de adherencia a estndares, convenciones, o regulaciones legales y similares relativas a usabilidad.
9 de 29

Atributos de la Calidad ISO 9126


MANTENIBILIDAD: Capacidad del software de ser modificado.
Incluye correcciones, mejoras o adaptaciones. ANALIZABILIDAD: Capacidad del software de ser diagnosticado por deficiencias o causas de fallos, o de permitir la identificaciones de las partes a ser modificadas. FACILIDAD PARA EL CAMBIO: Capacidad del software de permitir que un determinado cambio sea implementado. ESTABILIDAD: Capacidad del software de evitar efectos inesperados por modificaciones implementadas. CAPACIDAD DE SER PROBADO CUMPLIMIENTO: Capacidad de adherencia a estndares, convenciones, o regulaciones legales y similares relativas a la mantenibilidad.

10 de 29

Atributos de la Calidad ISO 9126


PORTABILIDAD: Capacidad del software de ser transferido de
un entorno a otro. ADAPTABILIDAD: Capacidad del software de ser adaptado a entornos especficos sin aplicar acciones o medios adicionales a los que sean necesarios para este fin. INSTALABILIDAD: Capacidad del software de ser instalado en un entorno especfico. COEXISTENCIA: Capacidad del software de coexistir con otro software independiente en un entorno comn, y compartiendo recursos tambin comunes. REEMPLAZO: Capacidad del software de ser utilizado en lugar de otro software para el mismo propsito e igual entorno. CUMPLIMIENTO: Capacidad de adherencia a estndares, convenciones, o regulaciones legales y similares relativas a portabilidad.
11 de 29

Mtricas Internas y Externas


En un proceso de desarrollo de software, se selecciona qu atributos de calidad mencionados deben medirse. Recordemos que no podemos esperar cumplir todos! ISO 9126 indica que los atributos mencionados se pueden medir desde una perspectiva externa e interna.

12 de 29

Mtricas Internas y Externas


Ejemplo: Atributo de Calidad: CONFIABILIDAD
PERSPECTIVA EXTERNA Ejecutamos el sistema y observamos (por ejemplo): -Qu tan libre de fallos se encuentra. - Qu tan fcilmente se recupera ante fallos. PERSPECTIVA INTERNA Ejemplo: Contamos el nmero de defectos encontrados y removidos durante el diseo y programacin. Cuntos patrones de prueba de caja blanca se establecieron? Ej. CONFIABILIDAD Pruebas de rangos mximos de data, deadlocks, etc.

Verificar los puntos de recuperacin establecidos: a nivel de base de datos, transaccin, etc. 13 de 29

Mtricas Internas
Pueden ser aplicadas a productos no-ejecutables: especificaciones, cdigo fuente, etc. Miden la calidad de los productos intermedios, a partir del resultado de actividades de verificacin.

14 de 29

Mtricas Internas
Buscan predecir los niveles de calidad externos. Miden atributos internos Posibilitan la identificacin de errores de forma temprana.

15 de 29

Mtricas Internas
La correccin de defectos cuesta menos cuando estos se detectan temprano en el proceso. $ 100 DEFECTOS COSTO 10

TIEMPO

Requerimients Diseo Implementacin

Testing

Entrega

Datos de Gilb, T. y Graham, D. Software Inspection. Addison-Wesley, 1993.

16 de 29

Mtricas Internas
$ Sin deteccin temprana de defectos RECURSOS Con deteccin temprana de defectos

Requerimientos Diseo

Implementacin

Testing

Entrega

SCHEDULE
Adaptado de Fagan, M. Advances in Software Inspections, IEEE Transactions on Software Engineering, July 1986

17 de 29

Mtricas Externas
Se derivan del comportamiento del sistema, aplicando testing, uso y observando los ejecutables. Se orientan a validar el sistema basndose en los objetivos de negocio relacionados a su uso, explotacin y gestin.

18 de 29

Qu medir?
La medicin no es beneficiosa si no medimos lo correcto. El costo de medicin es alto. Incluye: Preparacin de los datos El acto de medicin, verificacin, registro, etc. Tabulacin, preparacin de informes Interpretacin y anlisis Consolidacin para soporte a otros procesos de mayor nivel. Debemos medir lo necesario.
19 de 29

Qu medir?
Adems, vimos que podemos medir muchas caractersticas del software. Sobre cules nos enfocamos? Respondamos las siguientes preguntas: Quin es el cliente de la mtrica? Cules son sus objetivos con respecto del producto, proceso o recurso que se est midiendo? Qu mtricas permitirn demostrar si alcanzamos o no los objetivos?
20 de 29

Qu medir?
Existen diversos mtodos. Ejemplo: Enfoque de medicin Objetivo-Pregunta-Mtrica (OPM) 1. Identificar el objetivo del producto, proceso o recurso (alineado a objetivos organizacionales, o de mayor nivel) 2. Determinar las preguntas que caracterizarn la manera de evaluar el cumplimiento del objetivo. 3. Definir las mtricas que respondern cuantitativamente la pregunta. Estas pueden ser objetivas y subjetivas
21 de 29

Ejemplo
Objetivo: Entregar un software que cubra las expectativas funcionales del cliente. Pregunta: Cul es la desviacin entre el software entregado y los requerimientos del cliente? Mtrica 1: Nmero de defectos encontrados. Mtrica 2: Nivel de satisfaccin del cliente, indicado en alguna encuesta Mtrica subjetiva, basada en el punto de vista del cliente.
Fuente: Software Measurement and Estimation Linda M.Laird, M.Carol Brennan

22 de 29

Qu medir?
Otro mtodo: Mtricas Orientadas a Estndares Se basa en conjuntos de mtricas genricas estndar de ingeniera. Ejemplo: Los modelos de madurez del Software Engineering Institute (SEI) requieren que se mida: Tamao del proyecto Tiempo Esfuerzo Defectos Segn SEI, estas mtricas se integran con las requeridas para controlar todos los procesos del desarrollo de software.
23 de 29

Buenas prcticas de Medicin


Tomaremos aquellas definidas por CMMi: Establecer objetivos de medicin y definir las mtricas. Definir procedimientos de recoleccin, almacenamiento, anlisis, reporte y retroalimentacin. Brindar resultados que se puedan utilizar en tomar decisiones y tomar accin correctiva. Estas prcticas pueden ser estndar o ad-hoc por proyecto (dependiendo del nivel de madurez). Todas estas prcticas se deben planificar y controlar; asignar recursos para ellas e involucrarlos; entrenar en su uso; establecer polticas que las normen y asegurar su cumplimiento.
24 de 29

Rangos de calificacin
Las mtricas de procesos estables pueden utilizarse para analizar el comportamiento de un proceso. Los cuadros de control son herramientas que muestran ese comportamiento, indicando los rangos (que encierran la variabilidad controlada) y las seales que podran indicar problemas.
Valores fuera del rango. Pueden ser seales de algn problema en el proceso.

Lmite superior

Lmite inferior

25 de 29

Rangos de calificacin
Lograr utilizar cuadros de control no es una tarea fcil, pues requieren estabilidad en los procesos, lo cual se logra en organizaciones con altos niveles de madurez. Sin embargo, se recomienda establecer lmites o umbrales que sealen el comportamiento esperado o ideal de cada mtrica (basado en informacin histrica).

Significa que para esta organizacin, un 85% de cobertura les permite lograr sus objetivos de calidad. Por ello, esperan alcanzarlo.

26 de 29

También podría gustarte