planeación de la calidad

47
1 Planeación de la Calidad Rubby Casallas Departamento de Ingeniería de Sistemas y Computación Uniandes

Upload: bunme

Post on 19-Mar-2016

80 views

Category:

Documents


0 download

DESCRIPTION

Planeación de la Calidad. Rubby Casallas Departamento de Ingeniería de Sistemas y Computación Uniandes. Referencias. Software Metrics . Normal E. Fenton and Shari Lawrence Pfleeger. Second Edition. PWS publishing Company. ISBN: 0-534-95425-1 1999 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Planeación de la  Calidad

1

Planeación de la Calidad

Rubby CasallasDepartamento de Ingeniería de Sistemas y

ComputaciónUniandes

Page 2: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 2

Procesos: TSP

Referencias

Software Metrics. Normal E. Fenton and Shari Lawrence Pfleeger. Second Edition.

PWS publishing Company. ISBN: 0-534-95425-1 1999 Metrics and Modals in Software Quality Engineering.

Stephen H. Kan Addison Wesley ISBN 0-201-6339-6 2001 Introduction to the Team Software Process SM. Capítulo 5.

Watts Humphrey. Addison Wesley. 2000

Page 3: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 3

Procesos: TSP

Ejercicio

Cuál información Ud. debe tener para poder responder a estas preguntas?

“Cuánto ha costado el proceso de pruebas en el proyecto?”

“Qué tan bueno es el código que se ha desarrollado? “

“Están los clientes satisfechos con el producto hasta ahora desarrollado?”

“Se han encontrado todas las fallas”?

“Cómo se puede mejorar el proceso?”

Page 4: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 4

Procesos: TSP

“Las métricas de Software son una obscura y esotérica especialidad”

Page 5: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 5

Procesos: TSP

Agenda

Métricas de producto y de proceso de software GQM: Objetivos, Preguntas,Métricas Plan de Calidad

Page 6: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 6

Procesos: TSP

Propósito

Las métricas de Software ayudan a una organización en dos frentes:

Evaluación de la calidad del producto

Evaluación de la calidad del proceso para producir productos de software

Page 7: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 7

Procesos: TSP

Definiciones Básicas

La acción de medir es el proceso por el cual números o símbolos son asignados a atributos de entidades en el mundo real, de tal forma que los describen de acuerdo a reglas claramente definidas.

Ejemplos: 

Entidades Atributos MedicionesCuarto área 20x30 metros

Fase de Pruebas tiempo invertido 2 horas

Aire temperatura 20C

Software Process CMM level level 3

Page 8: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 8

Procesos: TSP

Definiciones Básicas(2)

 Y ahora:

Entidades Atributos Mediciones

Software Calidad ? Programa tamaño ? Programa Complejidad ? Software Confiabilidad ?

Page 9: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 9

Procesos: TSP

Definiciones Básicas (3)

“Lo que no es medible, hágalo medible” Galileo 

Sugiere que uno de los objetivos de la ciencia es encontrar formas para medir atributos de las cosas en las que estamos interesados.

Las métricas hacen los conceptos más visibles y por lo tanto más entendibles y controlables.

Page 10: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 10

Procesos: TSP

Alcance de las métricas de Software

Métricas para entender, controlar y mejorar

ProcesoRecursos Producto

• Proceso: cualquier actividad relacionada con la producción de software

• Diseño, codificación, pruebas, administración de configuraciones

• Producto: un artefacto resultado de una actividad del proceso • Especificación, plan, código, caso de prueba

• Recurso: un elemento que es necesario para realizar el proceso• Gente, tiempo, hardware, software, método

Page 11: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 11

Procesos: TSP

Alcance de las métricas de Software(2)

Para un Producto, Proceso o Recurso tenemos: Atributos externos

Pueden ser medidos únicamente con respecto a su interacción con el ambiente.

Por ejemplo: Confiabilidad Atributos Internos

Pueden ser medidos en términos puramente de las entidades en si mismas.

Por ejemplo, líneas de código

Page 12: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 12

Procesos: TSP

Proceso Producto Recursos Atributos internos y externos

Componentes de las métricas de software

Page 13: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 13

Procesos: TSP

Ejemplos: Productos

Entidad Interno Externo

Especificaciones tamaño, reutilización, modularidad, corrección sintáctica

Entendiblemantenibilidad

Diseños tamaño, reuse, modularidad, acoplamiento, funcionalidad

calidad, complejidadmantenibilidad

Código tamaño, reuse, complejidad algorítmica, flujo de control estructuración

confiabilidad, mantenibilidad

Page 14: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 14

Procesos: TSP

Entidad Interno Externo

Especificar tiempo, esfuerzo, número de cambios en los requerimientos

calidad, costo, estabilidadefectividad

Pruebas tiempo, esfuerzo, número de defectos encontrados

costo, costo-efectividad

Planeación tiempo, esfuerzo, error de estimación

Precisión, costo

Ejemplos: Proceso

Page 15: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 15

Procesos: TSP

Entidad Interno Externo

porsonal Edad, salario Productividad, experiencia

Software Precio, tamaño Uso (Usability), Confiabilidad

Oficinas Temperatura, tamaño, luz Confort, calidad

Ejemplos: Recursos

Page 16: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 16

Procesos: TSP

Escalas de medición: Ejercicio

“En un estudio reciente sobre calidad de los procesos en las organizaciones, se encontró que:

15 organizaciones fueron nivel 1

20 organizaciones fueron nivel 2

9 organizaciones fueron nivel 3

6 organizaciones fueron nivel 4

y 1 organización fue nivel 5.

  Entonces, podemos decir que el nivel de CMM promedio es:

2.17?

Page 17: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 17

Procesos: TSP

Tipo de escala Relaciones Ejemplo de estadísticas

Nominal Equivalencia ModaFrecuencia

Ordinal EquivalenciaMás grande que

Mediapercentile

Intervalo EquivalenciaMás grande que

Conoce la diferencia en cualquier intervalo

MediaDesviación estándar

Proporción EquivalenciaMás grande que

Conoce la diferencia en cualquier intervalo

Conoce la diferencia en cualquier intervalo y escala

Media geométricaCoeficiente de variación

Page 18: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 18

Procesos: TSP

Agenda

Métricas de producto y de proceso de software GQM: Objetivos, Preguntas,Métricas Plan de Calidad

Page 19: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 19

Procesos: TSP

Hechos: Una métrica es útil sólo si ésta ayudad a entender o el proceso

o el producto producido

Reconocer mejoramiento del proceso o del producto de software solo puede ocurrir cuando los objetivos (del proceso y del producto) fueron claramente definidos

GQM

Page 20: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 20

Procesos: TSP

El método GQM ayuda en la definición de objetivos de una organización

Una vez establecidos los objetivos, se pueden refinar a través de preguntas cuya respuesta permitirá concluir si los objetivos se cumplieron o no.

Asociado a las preguntas se definen métricas cuyos valores ayudaran a contestar las preguntas

GQM

Page 21: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 21

Procesos: TSP

GQM

Page 22: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 22

Procesos: TSP

Ejemplo

Objetivos: Evaluar la efectividad de usar un estándar de codificación

Preguntas: Quién usó el estándar?

Cuál es la productividad de codificación?

Cuál es la calidad del código?

Page 23: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 23

Procesos: TSP

Ejemplo cont.

Métricas: Quién usó el estándar?

Proporción de codificadores usando el estándar Experiencia de los codificadotes con el estándar, el lenguaje,

la plataforma Cuál es la productividad de codificación?

Tamaño del código, esfuerzo• Cuál es la calidad del código?

• Defectos/LOC

Page 24: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 24

Procesos: TSP

Definición de Objetivos

Propósito: Para (caracterizar, Evaluar, predecir, motivar, etc.) el (proceso,

producto, métrica, etc.) para poder (entender, evaluar, controlar, administra, aprender, mejorar, etc.)

Perspectiva: Examinar el (costo, efectividad, defectos, cambios, etc.) desde el

punto de vista del (desarrollador, gerente, cliente, usuario,, etc.) Ambiente (dentro de ciertas características de):

Factores de proceso, la gente, los métodos, las herramientas, las restricciones

Page 25: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 25

Procesos: TSP

Objetivos: Ejemplo

Propósito

Caracterizar el proceso de inspección de software para poder evaluarlo

Evaluar la calidad del producto para mejorarla

Page 26: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 26

Procesos: TSP

Objetivos: Ejemplo

Preguntas Cuánto cuesta el proceso de inspección?

Cuánto tiempo calendario toma el proceso de inspección?

Cuál es la calidad del software inspeccionado?

Cuál es el grado de conformidad de la gente con el proceso de inspección?

Cuál es la productividad del proceso de inspección?

Page 27: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 27

Procesos: TSP

Objetivos: Ejemplo

Métricas Promedio de esfuerzo por KLOC

Porcentaje de reinspecciones

Promedio de fallas detectadas por KLOC

Total KLOC inspeccionadas

Promedio de líneas de código inspeccionadas

Eficiencia de los defectos removidos

Promedio de esfuerzo por defecto detectado

Page 28: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 28

Procesos: TSP

Cuál es la relación entre métricas y madurez del proceso?

GQM

Page 29: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 29

Procesos: TSP

CMM

Initial (1)

Repeatable (2)

Defined (3)

Managed (4)

Optimizing (5)

Disciplined process

Standard, consistent process

Predictable process

Continuously improving process

Unpredictable and poorly controlled

Can repeat previously mastered tasks

Process characterized,fairly well understood

Process measured andcontrolled

Focus on continuousprocess improvement

Page 30: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 30

Procesos: TSP

Agenda

Métricas de producto y de proceso de software GQM: Objetivos, Preguntas,Métricas Plan de Calidad

Page 31: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 31

Procesos: TSP

Plan de Calidad Construir un plan de calidad basado en ciertos índices de

desempeño. Contenido del Plan

1. Resumen de Porcentajes

2. Porcentaje libre de defectos (PDF)

3. Defectos por Página

4. Defectos por KLOC

5. Proporción de defectos (Ratio)

6. Proporción de tiempos de desarrollo

Page 32: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 32

Procesos: TSP

Plan de Calidad Contenido del Plan

7. A/FR

8. Porcentaje de revisión e inspección

9. Porcentaje de inyección de defectos

10. Porcentaje de eliminación de defectos

11. Rendimiento (yield) de fase

12. Rendimiento (yield) de proceso

Page 33: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 33

Procesos: TSP

Plan de Calidad1. Resumen de Porcentajes

Las tres medidas del resumen dan una perspectiva global de la calidad del Proceso:

LOC/Horas: mide la productividad global del grupo. Un número grande indica gran productividad y bajos costos

% Reutilización: mide el porcentaje global de este producto que fue reutilizado de proyectos anteriores

% Reutilización nuevo: mide la contribución de este ciclo al mejoramiento de la productividad en ciclos posteriores o proyectos.

Page 34: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 34

Procesos: TSP

Plan de Calidad2. Porcentaje libre de defectos (PDF)

Mide el porcentaje de los componentes de un producto que no tiene defectos en una fase dada.

Ejemplo: Un componente con 5 partes y cuatro tenían defectos

en la fase de compilación, el PDF del componente en la fase de compilación es del 20% (no se tiene en cuenta el número de defectos)

Entre mayor el número de partes, mayor la precisión del PDF para medir la calidad del componente.

Datos de PDF en todas las fases de eliminación de defectos permite ver el mejoramiento de la calidad a través del proceso de desarrollo.

Page 35: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 35

Procesos: TSP

Plan de Calidad3. Defectos por Página

Muestra el número de defectos removidos de cada página del documento de requerimientos y del diseño de alto nivel

Page 36: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 36

Procesos: TSP

Plan de Calidad4. Defectos por KLOC

Un defecto es cualquier elemento asociado con los requerimientos, el diseño o la implementación que de no ser cambiado puede causar un diseño, implementación, prueba, uso o mantenimiento del producto no adecuados.

Un defecto mayor es cualquier problema que cuando se arregla cambia el código ejecutable.

Defectos en formatos o comentarios son considerados menores.

Page 37: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 37

Procesos: TSP

Plan de Calidad4. Defectos por KLOC (cont ...)

El número de defectos encontrados en una fase de pruebas indica la calidad del producto entrando y saliendo de esa fase.

Cuando un producto tiene muchos defectos, una fase de pruebas encontrará muchos de ellos poro también dejará sin encontrar muchos.

Si hay muchos defectos en pruebas unitarias, probablemente habrá todavía muchos terminada esa fase.

Page 38: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 38

Procesos: TSP

Plan de Calidad4. Defectos por KLOC (cont ...)

La experiencia muestra que cuando un producto tiene menos de 0.5 defectos/KLOC en construcción y pruebas de integración y menos de 0.2 defectos/KLOC en pruebas de sistema, generalmente no habrá defectos para que encuentre el usuario (producto de alta calidad).

Page 39: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 39

Procesos: TSP

Defectos/KLOC

0

10

20

30

40

50

60

70

Rev

isio

n D

D

Rev

isió

nC

ódig

o

Com

pila

ción

Prue

bas

Uni

taria

s

Inte

grac

ión

Prue

bas

deSi

stem

a

AB

Page 40: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 40

Procesos: TSP

Plan de Calidad5. Proporción de defectos (Ratio)

Provee un mayor detalle de la calidad de las revisiones de diseño y de código

La experiencia muestra que cuando se encuentra el doble de defectos en revisión de código que en compilación, la revisión de código fue realizada a conciencia. En este caso la proporción de defectos es 2.0

Número de defectos encontrados en revisión de diseño contra número de defectos encontrados en pruebas unitarias. Esta proporción debería ser más de 2.0 !!

Page 41: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 41

Procesos: TSP

Plan de Calidad6. Proporción de tiempos de desarrollo

Según la experiencia, las siguientes proporciones dan una idea de la buena calidad del producto (no es una garantía poro la probabilidad es alta):

25% del tiempo de requerimientos debe ser en inspección de requerimientos

50% del tiempo de diseño de alto nivel debe ser en revisiones e inspecciones

>100% del tiempo de diseño detallado debería ser en revisiones e inspecciones

Page 42: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 42

Procesos: TSP

Plan de Calidad7. A/FR (appraisal to failure ratio)

(Revisión/Pruebas)

Para programas pequeños debería ser alrededor de 2.0

Para programas grandes debería ser alrededor de 1.0 porque aun si los programas tienen pocos defectos en pruebas, probarlos es dispendioso.

Page 43: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 43

Procesos: TSP

Plan de Calidad8. Porcentaje de revisión e inspección

Requerimientos: <2.0 páginas de texto a espacio simple por hora

Diseño de alto nivel: <5.0 páginas de diseño por hora

Diseño detallado: < 100 líneas de pseudo código por hora

Código: < 200 líneas de código por hora

Page 44: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 44

Procesos: TSP

Plan de Calidad9. Porcentaje de inyección de defectos

de acuerdo con datos de varios cientos de programas escritos por estudiantes y por ingenieros experimentados en un curso de PSP, se tiene que:

la proporción de inyección de defectos durante diseño detallado es de 2 defectos por hora

y es de 6 defectos por hora en codificación

Page 45: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 45

Procesos: TSP

Plan de Calidad10. Porcentaje de eliminación de defectos

Tomando la misma muestra, los datos fueron más variados: en revisión de código va de 0 a 20 defectos por hora, el

resultado fue de 6 defectos por hora para el 61.5% de los ingenieros

en revisión de diseño, 2 o más defectos por hora para el 57.9% de los ingenieros

Page 46: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 46

Procesos: TSP

Plan de Calidad11. Rendimiento (yield) de fase

Porcentaje de defectos en un programa que fueron removidos durante una fase dada.

Ejemplo: 19 defectos en el programa a la entrada de la revisión de código se inyectó un defecto durante la revisión de código se encontraron 15 durante la revisión yield = 100* (defectos encontrados)/(defectos en el producto) =

100* 15/(19+1) = 75% Se puede calcular sólo cuando se ha terminado el programa y se

sabe el número total de defectos

Page 47: Planeación de la  Calidad

Rubby Casallas G.Departamento de Ingeniería de SistemasUniversidad de los Andes 47

Procesos: TSP

Plan de Calidad12. Rendimiento (yield) de proceso

El porcentaje de defectos removidos antes de una fase dada.

Ejemplo, antes de pruebas de sistema debería ser de 99%