MEDICIONES DE CALIDAD DEL SOFTWARE

51
MEDICIONES DE CALIDAD DEL SOFTWARE Ing. Alejandra Colina Vargas Mayo, 2018

Transcript of MEDICIONES DE CALIDAD DEL SOFTWARE

Page 1: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Ing. Alejandra Colina Vargas

Mayo, 2018

Page 2: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Medidas y Métricas.

Medición del

Producto

Técnicas de evaluación

Page 3: MEDICIONES DE CALIDAD DEL SOFTWARE

¿Por qué MEDIR?

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 4: MEDICIONES DE CALIDAD DEL SOFTWARE

₮ Mejoras en la calidad y productividad.

₮ Planificación y estimación de proyectos con alguna precisión.

₮ Disposición del personal adecuado, bien utilizado y motivado.

₮ Existencia de una adecuada estructura organizacional.

₮ Uso de técnicas y herramientas efectivas para el proceso.

₮ Obtención de un espacio físico y ambiente de trabajo óptimo.

MEDICIONES DE CALIDAD DEL SOFTWARE

“Medimos para mejorar”

Page 5: MEDICIONES DE CALIDAD DEL SOFTWARE

¿Qué es UNA MEDIDA?

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 6: MEDICIONES DE CALIDAD DEL SOFTWARE

Medida

Proporciona una descripción cuantitativa de extensión, cantidad,

dimensiones, capacidad y tamaño de algunos atributos de un

proceso o producto

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 7: MEDICIONES DE CALIDAD DEL SOFTWARE

Tipos de Medidas:

₮Medidas directas una entidad o atributo no involucra a ninguna

otra entidad o atributo (longitud del código fuente, duración del

proceso de prueba, número de defectos...).

₮Medidas indirecta se obtiene a partir de medidas directas

(productividad, estabilidad de requisitos, densidad de defectos en

un módulo...).

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 8: MEDICIONES DE CALIDAD DEL SOFTWARE

Medición

Consiste en llevar una representación desde el mundo real y

empírico a una representación matemática, donde puede ser más

fácilmente entendible en atributos de entidad y las relaciones entre

las otras entidades.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 9: MEDICIONES DE CALIDAD DEL SOFTWARE

Para la CALIDAD DEL SOFTWARE se desea medir:

₮ Procesos o tareas a ejecutar (modelado, diseño, prueba).

₮ Productos entregados durante el proceso (documentación de

diseño, código fuente, registro de pruebas).

₮ Recursos que permiten realizar el proceso (personal,

computadoras, dinero).

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 10: MEDICIONES DE CALIDAD DEL SOFTWARE

Para la CALIDAD DEL SOFTWARE se desea medir:

• Atributos internos: Son aquellos que pueden ser medidos

examinando el proceso, producto o recurso mismo.

• Atributos externos: se miden con respecto a como el proceso,

producto o recurso se relaciona con su entorno.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 11: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Medidas según los Atributos:

Page 12: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Medidas según los Atributos:

Page 13: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Medidas según los Atributos:

Page 14: MEDICIONES DE CALIDAD DEL SOFTWARE

¿Qué es UNA MÉTRICA?

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 15: MEDICIONES DE CALIDAD DEL SOFTWARE

Métrica

Medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo dado (IEEE, 1993).

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 16: MEDICIONES DE CALIDAD DEL SOFTWARE

Las métricas del Software comprenden un amplio rango de

actividades diversas, estas son algunas:

‣Medidas y modelos de estimación de coste y esfuerzo

‣Aseguramiento y control de calidad

‣Modelos de fiabilidad

‣Modelos y evaluación de ejecución

‣Modelos y medidas de productividad

Uso de métricas

Page 17: MEDICIONES DE CALIDAD DEL SOFTWARE

Métrica

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 18: MEDICIONES DE CALIDAD DEL SOFTWARE

Métrica

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 19: MEDICIONES DE CALIDAD DEL SOFTWARE

Indicador

Métrica o combinación de métricas que proporcionan una visión

profunda, del proceso de software, del proyecto de software o del

producto en sí.

MEDICIONES DE CALIDAD DEL SOFTWARE

Tener una visión profunda de la eficacia

Proceso

Evaluar el estado del proyecto

Proyecto

Permiten evaluar su calidad

Producto

Page 20: MEDICIONES DE CALIDAD DEL SOFTWARE

Taller N° 5

1. Explique cuales son los elementos que conforman un plan de medición de

software.

2. Dado el siguiente enunciado “Supongamos una organización que lleva a cabo

el proyecto A de desarrollo de un software. En un determinado momento el

responsable del proyecto necesita saber si la productividad es adecuada, es

decir, la necesidad de información es conocer el nivel de productividad de los

programadores del proyecto en comparación con lo habitual en otros proyectos

en la organización”. Se desea que Usted explique cuáles son las medidas o

medición que debe realizar el ANALISTA.

3. Explique la clasificación de las métricas de software para procesos, proyecto y

recursos.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 21: MEDICIONES DE CALIDAD DEL SOFTWARE

Por qué medir el Proyecto?

₮ Evaluar el estado del proyecto en curso.

₮ Seguir la pista de los riesgos potenciales.

₮ Detectar las áreas problemas antes de que se conviertan encriticas.

₮ Ajustar el flujo y las tareas del trabajo.

₮ Evaluar la habilidad del equipo del proyecto en controlar la calidadde los productos de trabajo del software.

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas de Proyecto.

Page 22: MEDICIONES DE CALIDAD DEL SOFTWARE

₮ Se usa por el equipo del software para adaptar el flujo de trabajo del

proyecto y las actividades técnicas.

₮ El uso de las métricas tiene dos aspectos fundamentales:

₮ Minimizar la aplicación de desarrollo haciendo los ajustes necesarios que

eviten retrasos y reduzcan problemas y riesgos potenciales.

₮ Evaluar la calidad de los productos en el momento actual y cuando sea

necesario.

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas de Proyecto.

Page 23: MEDICIONES DE CALIDAD DEL SOFTWARE

Todo proyecto debe medir:

₮ Entradas:

Recursos (personas, entornos) que se requiere para realizar el

trabajo.

₮ Salidas:

Medidas de la entrega o productos creados durante el proceso de

ingeniería de software.

₮ Resultados:

Medidas que indican la efectividad de las entregas.

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas de Proyecto.

Page 24: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas del Software.

Se utilizan para:

₮ Indicar la calidad del producto

₮ Evaluar la productividad personal

₮ Evaluar beneficios

₮ Tener una línea base de estimación

₮ Justificar el uso de nuevas herramientas

Page 25: MEDICIONES DE CALIDAD DEL SOFTWARE

Medidas directas:

• Del proceso del software:

• Coste, el esfuerzo en horas o personas

• Del producto:

• LDC, velocidad de ejecución, tamaño de memoria

Medidas indirectas:

• Funcionalidad

• Calidad

• Complejidad

• Eficiencia

• Fiabilidad

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas del Software.

Page 26: MEDICIONES DE CALIDAD DEL SOFTWARE

De productividad:

Rendimiento del proceso de la ingeniería

del software

De calidad:

Como se ajusta el software a las

especificaciones del cliente

Técnicas:

La complejidad del software, su facilidad de

mantenimiento

Orientadas al tamaño:

Medidas directas del software

Orientadas a la función:

Medidas indirectas

Orientadas a la persona:

Cuanto produce el personal, dependiendo de las herramientas que

usan

Clasificación de las métricas de un Software

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas del Software.

Page 27: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas de Calidad del software.

Permite medir el número de defectos no manifiestos en la prueba, la

facilidad de mantenimiento del sistema y la eficiencia de eliminar los

defectos.

Esta Calidad se ve afectada por:

₮Operación del producto (uso)

₮Revisión del producto (modificación)

₮Transporte (modificación para que funcione en otro entorno)

Page 28: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Taller N 6.

Dada las siguientes métricas de Calidad del Software se desea que Usted

complete el siguiente cuadro:

Definición Medida Dificultades o debilidades

Corrección

Facilidad de

mantenimiento

Page 29: MEDICIONES DE CALIDAD DEL SOFTWARE

MEDICIONES DE CALIDAD DEL SOFTWARE

Taller N 6.

Definición Medida Dificultades o

debilidades

Integridad

Facilidad de uso

Page 30: MEDICIONES DE CALIDAD DEL SOFTWARE

• El producto puede ser descrito en función de su tamaño.

• Se pueden definir un conjunto de atributos para medir el tamaño del

software:

Longitud: tamaño físico del producto.

Funcionalidad: funciones que proporciona el producto al usuario.

Complejidad(de tiempo o espacio): recursos necesarios (de tiempo o

memoria de ordenador) para implementar una solución particular.

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas del Producto.

Page 31: MEDICIONES DE CALIDAD DEL SOFTWARE

Las propiedades estructurales del software son atributos relacionados con la calidad del producto.

Los tipos de medidas estructurales son:

₮Flujo de control: secuencia en que se ejecutan las instrucciones.

₮Flujo de datos: seguimiento de cómo los datos se crean y se manejan por un programa.

₮Estructura de los datos: organización de los datos independiente del programa.

Los principales productos que resulta útil medir son la especificación, el diseño y el código.

MEDICIONES DE CALIDAD DEL SOFTWARE

Métricas del Producto.

Page 32: MEDICIONES DE CALIDAD DEL SOFTWARE

Pruebas de Ruta Básica

La prueba de ruta o trayectoria básica es una técnica de prueba de caja blanca propuestapor primera vez por Tom McCabe.

El método de ruta básica permite al diseñador de casos de prueba derivar una medida decomplejidad lógica de un diseño de procedimiento y usar esta medida como guía paradefinir un conjunto básico de rutas de ejecución.

Los casos de prueba derivados para revisar el conjunto básico tienen garantía para ejecutartodo enunciado en el programa, al menos una vez durante la prueba

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 33: MEDICIONES DE CALIDAD DEL SOFTWARE

Notación de Gráfico

Se usara una notación simple para la representación del flujo de control, llamado gráficode flujo (o gráfico de programa).

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 34: MEDICIONES DE CALIDAD DEL SOFTWARE

Notación de Gráfico

a) Una forma de la mostrar la estructura de control del programa es a

través de un diagrama de flujo.

b) Se mapea el diagrama de flujo en un gráfico de flujo correspondiente

haciendo referencia a cada círculo, llamado nodo de gráfico de flujo,

representa uno o más enunciados de procedimiento.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 35: MEDICIONES DE CALIDAD DEL SOFTWARE

Rutas Programadas Independientes

Una ruta independiente es cualquiera que introduce al menos un nuevo

conjunto de enunciados de procesamiento o una nueva condición en el

programa.

Cuando se establece como un gráfico de flujo, una ruta independiente

debe moverse a lo largo de al menos una arista que no se haya recorrido

antes de definir la ruta

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 36: MEDICIONES DE CALIDAD DEL SOFTWARE

Rutas Programadas Independientes

Por ejemplo, un conjunto de rutas independientes para el gráfico de flujo que se

ilustra en la figura b) es

ruta 1: 1-11

ruta 2: 1-2-3-4-5-10-1-11

ruta 3: 1-2-3-6-8-9-10-1-11

ruta 4: 1-2-3-6-7-9-10-1-11

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 37: MEDICIONES DE CALIDAD DEL SOFTWARE

Rutas Programadas Independientes

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 38: MEDICIONES DE CALIDAD DEL SOFTWARE

Determinar la complejidad ciclomática del grafico resultante.

• Es una medida del software que aporta una valoración cuantitativa de la

complejidad lógica de un programa.

• Dentro del contexto del método de pruebas del camino básico define el

número de caminos independientes de un programa.

• Por camino independiente se entiende aquel que introduce un nuevo

conjunto de sentencias o una nueva condición. En términos del grafo, por

una arista que no haya sido recorrida antes.

• Nos da una cota o límite superior para el número de casos de prueba.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 39: MEDICIONES DE CALIDAD DEL SOFTWARE

Rutas Programadas Independientes

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 40: MEDICIONES DE CALIDAD DEL SOFTWARE

Rutas Programadas Independientes

Al usar el diseño o el código como cimiento, dibuje el grafico de flujo correspondiente.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 41: MEDICIONES DE CALIDAD DEL SOFTWARE

Determinar la complejidad ciclomática del grafico resultante.

Formas de Cálculo

El número de regiones del grafo es igual a la complejidad

V(G) = A - N + 2Donde A es el número de aristas y N es el número V(G) = P + 1

Donde P es el número de nodos predicados

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 42: MEDICIONES DE CALIDAD DEL SOFTWARE

Determine un conjunto básico de rutas linealmente independientes.

Ruta1: 1-2-10-11-13

Ruta 2: 1-2-10-12-13

Ruta 3: 1-2-3-10-11-13

Ruta 4: 1-2-3-4-5-8-9-2…

Ruta 5: 1-2-3-4-5-6-8-9-2…

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 43: MEDICIONES DE CALIDAD DEL SOFTWARE

Determine un conjunto básico de rutas linealmente independientes.

Los datos deben elegirse de modo que las condiciones en los nodos predicado

se establezcan de manera adecuada conforme se prueba cada ruta.

Cada caso de prueba se ejecuta y compara con los resultados esperados.

Una vez completados todos los casos de prueba, el examinador puede estar

seguro de que todos los enunciados del programa se ejecutaron al menos una

vez.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 44: MEDICIONES DE CALIDAD DEL SOFTWARE

La métrica de punto de función (PF) puede usarse de manera efectiva como

medio para medir la funcionalidad que entra a un sistema.4 Al usar datos

históricos, la métrica PF puede entonces usarse para:

1) estimar el costo o esfuerzo requerido para diseñar, codificar y probar el

software

2) predecir el numero de errores que se encontraran durante las pruebas

3) prever el numero de componentes y/o de lineas fuente proyectadas en el

sistema implementado.

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 45: MEDICIONES DE CALIDAD DEL SOFTWARE

Los valores de dominio de información se definen en la forma siguiente

Valor de dominio de información Descripción

Número de entradas externas (EE). Cada entrada externa se origina de un usuario o se transmite desde otra aplicacion, y proporciona distintos datos orientados a aplicacion o información de control

Número de salidas externas (SE). Cada salida externa es datos derivados dentro de la aplicacion que ofrecen informacion al usuario(pantallas, reportes, mensajes)

Número de consultas externas (CE). Una consulta externa se define como una entrada en linea que da como resultado la generacion de alguna respuesta de software inmediata en la forma de una salida en linea

Número de archivos lógicos internos (ALI).

Cada archivo lógico interno es un agrupamiento logico de datos que reside dentro de la frontera de la aplicación.

Número de archivos de interfazexternos (AIE).

proporciona información que puede usar la aplicacion.

Page 46: MEDICIONES DE CALIDAD DEL SOFTWARE

MÉTRICAS PARA EL MODELO DE REQUERIMIENTOS

Para calcular puntos de funcion (PF), se usa la siguiente relacion:PF = conteo total X [0.65 + (0.01 X (Fi))]

donde conteo total es la suma de todas las entradas PF obtenidas del ejercicio.

Los Fi (i = 1 a 14) son factores de ajuste de valor (FAV) con base en respuestas a las siguientesPreguntas:

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 47: MEDICIONES DE CALIDAD DEL SOFTWARE

1. .El sistema requiere respaldo y recuperación confiables?

2. .Se requieren comunicaciones de datos especializadas para transferir información hacia o desde la

aplicación?

3. .Existen funciones de procesamiento distribuidas?

4. .El desempeño es crucial?

5. .El sistema correrá en un entorno operativo existente enormemente utilizado?

6. .El sistema requiere entrada de datos en línea?

7. .La entrada de datos en línea requiere que la transacción de entrada se construya sobre múltiples

pantallas u operaciones?

8. .Los ALI se actualizan en línea?

9. .Las entradas, salidas, archivos o consultas son complejos?

10. .El procesamiento interno es complejo?

11. .El código se diseña para ser reutilizable?

12. .La conversión y la instalación se incluyen en el diseño?

13. .El sistema se diseña para instalaciones múltiples en diferentes organizaciones?

14. .La aplicación se diseña para facilitar el cambio y su uso por parte del usuario?

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 48: MEDICIONES DE CALIDAD DEL SOFTWARE

EJEMPLO

Para ilustrar el uso de la métrica PF en este contexto, considere la representación simple de

modelo de análisis para una función dentro del software CasaSegura.

La función gestiona la interacción del usuario, acepta la contraseña de este para activar o

desactivar el sistema y permite consultas sobre el estado de las zonas de seguridad y de varios

sensores de seguridad. La funcion despliega una serie de mensajes de advertencia y envía

señales de control adecuadas a varios componentes del sistema de seguridad.

El diagrama de flujo de datos se evalúa para determinar un conjunto de medidas de dominio

de información clave que son requeridas para calcular la métrica de punto de función. En la figura

se muestran tres entradas externas (contraseña, botón de pánico y activar/desactivar),

junto con dos consultas externas (consulta de zona y consulta de sensor). Se muestra

un ALI (archivo configuración sistema) y también estan presentes dos salidas externas

(mensajes y estado de sensor) y cuatro AIE (sensor de prueba, establecimiento de zona,

activar/desactivar y alerta de alarma). Para los propósitos de este ejemplo, suponga que (Fi) es

46 (un producto moderadamente complejo).

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 49: MEDICIONES DE CALIDAD DEL SOFTWARE

Simple Media Compleja TotalCantidad * Peso Cantidad * Peso Cantidad * Peso

Entradas * 3 * 4 * 6

Salidas * 4 * 5 * 7

Consultas * 3 * 4 * 6

Fic. Lógicos * 7 * 10 * 15

Fic. Interfaz * 5 * 7 * 10

Total puntos de función sin ajustar (PFSA)

EJEMPLO

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 50: MEDICIONES DE CALIDAD DEL SOFTWARE

Un sistema tiene 12 entradas externas, 24 salidas externas,

presenta 30 diferentes consultas externas, gestiona 4 archivos

lógicos internos y tiene interfaz con 6 diferentes sistemas legados

(6 AIE). Todos estos datos son de complejidad promedio y el

sistema global es relativamente simple (30). Calcule PF para el

sistema.

EJEMPLO

MEDICIONES DE CALIDAD DEL SOFTWARE

Page 51: MEDICIONES DE CALIDAD DEL SOFTWARE

El software para System X tiene 24 requerimientos

funcionales individuales y 14 requerimientos no funcionales.

¿Cuál es la especificidad de los requerimientos y cual es la

completitud?

EJEMPLO

MEDICIONES DE CALIDAD DEL SOFTWARE