Está en la página 1de 20

Mtricas de calidad de software

Procesos
Normas Los procesos deben ser controlados, predictivos y mejorables para lograr objetivos. Desarrollador La medida es necesaria y permite visualizar que se debe mejorar en el proceso

Cliente

o o o o o o

Definir el proceso: Disea el proceso apropiado, su infraestructura, herramientas, y mtodos que la organizacin pueda asimilar. Ejecutar procesos: Llevar acabo el procedimiento definido. Medir el proceso: cuantificar el grado en que el proceso cumple con su propsito, su rendimiento, estabilidad, y capacidad. Controlar el proceso: permite determinar si todo esta bajo control, identifica variables de rendimiento, eliminar causas y estabilizar el proceso. Mejorar el proceso: entender las caractersticas, su capacidad, implementar las acciones, para obtener mejores beneficios del proceso. Variacion del proceso: son las anomalas presentadas durante su ejecucin.
Mejora del proceso

Definir el proceso

Control del proceso

Medir el proceso

Ejecutar el proceso

Herramientas para encontrar races y soluciones o o o o o Diagramas de esparcimiento Diagramas de proyecciones Diagramas de cawa y etecto Historia gramas Graficas de proyeccin

Son importantes para la identificacin, causas principales, discriminan falsas alarmas, determinan la capacidad y producen estabilidad.

Las actividades de los procesos y subprocesos, las materias, las herramientas y los procedimientos son la base donde buscar cuando se busque una mejora. Estndares relacionados con el proceso del software o o o o SE1s CMM ISO 9000 IEEE 1074-1998 IEEE/E1A (ISO/IEC) 12207

Proceso del software Conjunto de actividades y resultados que producen un producto de software

Existen 4 actividades fundamentales para todos los procesos del software: o o o o Especificaciones del software Desarrollo del software Validacin del software Evolucin del software

Distintos procesos del software originan estas actividades de diferentes formas y las describen con diferente nivel de detalle, enfocndose algunas veces en determinadas actividades. Sin embargo para determinados tipos de aplicaciones algunos procesos son ms convenientes que otros. Estndar: Conjunto de criterios aprobados, documentos disponibles para realizar una accin. Puede ser un estndar del proceso o de producto. Los estndares son tiles por que agrupan las buenas prcticas del desarrollo del software, aparte engloban los buenos conocimientos de las organizaciones.

Modelos SEIs CMM (capability madure model)

Inicial: El xito depende de los esfuerzos personales ms que de los procesos adecuadamente definidos.

o o

Repetible: Se establecen polticas y procesamientos para llevar acabo un proyecto, alguien se asegura que se cumplan dichos procedimientos. Definido: Se adopta un proceso. Su estndar y se adapta a cada proyecto. Gestionado: La calidad del proyecto y el proceso es medible predecible y cuantificable, las mtricas sirven para detectar desviaciones y corregirlas. Optimizado: El proceso es continuamente mejorado usando las medidas obtenidas de procesos anteriores.

Multitud de estandares, metodos y tecnicas.

Diferentes tipos de desarrollo y herramientas

dificultat para administrar el proyecto.

Dificultad para administrar el proyecto Es necesario conseguir un marco comn para hablar el mismo lenguaje en el desarrollo y administracin de proyectos. Estndar de calidad ISO 9001 a) Inspeccin, medicin y el tipo de prueba b) Sistemas de calidad c) Inspeccin y estado de la prueba d) Revisin del contrato e) Acciones correctivas f) Control del producto no aceptado

g) Control de documento h) Tratamiento, almacenamiento, empaquetamiento, entrega

i) j)

Compras Productos proporcionados

k) Registro de calidad l) Identificacin y seguimiento del producto

m) Auditorias internas de calidad n) Formacin o) Control del proceso p) Servicios q) Inspeccin del producto r) Tcnicas de estadsticas

Ciclos de vida del proceso define las actividades que constituye los procesos para desarrollo y mantenimiento del software. Es una aproximacin lgica a la adquisicin su ministro y desarrollo a la explotacin y al mantenimiento del software.

o o o o o o o o o

Proceso principal: (adquisicin, suministro, desarrollo, explotacin y mantenimiento) Proceso de soporte: (documentacin, administracin de la configuracin, aseguramiento de la calidad (verificacin, validacin, revisin conjunta auditoria) Procesos de organizacin: (administracin, infraestructura, mejora e informacin) Procesos principales: Son tiles para las personas que realizan el desarrollo dan mantenimiento, utilizan el software o son las responsables de la adquisicin. Proceso de soporte: Contribuye al efecto y la calidad del proyecto se aplica durante todo el ciclo de vida Proceso de la organizacin: Tiene como objetivo mejorar la organizacin, subprocesos y la integracin y/o informacin del personal no pertenece a ningn proyecto especfico Proceso adaptacin: Permite adaptar los estndares a cada proyecto y/o organizacin, se ve influenciado por los requisitos del sistema o poltica de la organizacin. Proceso de adquisicin: Las actividades o tareas que el comprador el cliente o el usuario realizan para adquirir un sistema Proceso suministro: Este proceso contempla la firma de un contrato o una factura para proporcionar un producto de software; generalmente concluye con la entrega del producto Proceso de desarrollo: Integra las siguientes actividades:

o o o

Anlisis, diseo, diseo de la arquitectura, implantacin, pruebas, soporte en el proceso de aceptacin. Anlisis de requisitos que influye interfaces de sistemas, restricciones del diseo y requisitos de aceptacin, rendimiento esperado, la seguridad Diseo: Incluye los componentes principales del software requisitos de la pruebas, diseo de interfaces, diseo de las bases de datos, documentar los requisitos de la prueba. Diseo de la arquitectura: Verificar el hardware con que cuenta el cliente Codificacin prueba: Incluye desarrollo de los componentes y las bases de datos

Implementacin del sistema


Instalacin del sistema en el entorno donde vaya a funcionar incluyendo la capacitacin se debe a dar a poyo a la revisin y a las pruebas por parte del cliente o o o o o o o o o Proceso de explotacin: Es la etapa en el que sistema esta operando y requiere soporte para funcionamiento (mantenimiento) Proceso de mantenimiento: Es la documentacin necesaria para poder modificar el software necesidades, mejoras o adaptacin. Proceso de soporte: Documentacin consiste en registrar toda la informacin que se produce en los dems procesos. Administracin de la configuracin: Consiste en solucionar los problemas que se presenten en el proyecto La calidad aseguramiento: Debe ser interno y externo verificando que se cumplan los requisitos y que se ajuste a los planes establecidos. Verificacin: Indica si los requisitos estn bien identificados y documentados Validacin: Indica si el sistema cumple con la necesidades Revisin conjunto: Evala el estado del software durante el ciclo de vida, puede ser a nivel administrativo o tcnico Proceso de auditoria: Se cumple los requisitos, planes y el contrato, produce un documento de recomendaciones

Tipos de auditoria informticas y y y y De sistema Documentacin Proyecto Seguridad

Trata de disponer una manera para garantizar que todos los problemas encontrados se registren se analicen y se eliminen.

o o

o o

Procesos de la administracin: Implica la planificacin el seguimiento, el control, la revisin y la evaluacin Proceso de infraestructura: Establece la infraestructura necesaria para el desarrollo el uso y el mantenimiento del sistema (hardware, software, herramientas, normas e instalaciones) Mejora: Sirve para establecer, medir, controlar y mejorar los procesos Proceso de formacin: Sirve para mantener un grupo de persona desarrollando con las herramientas.

Modelo de procesos Que Normativa (Que proceso) Moprosoft Como Informativa (Como implantarlos) Pelforming an assesment ISO 1220 SLCP Modelo de capacidades de procesos (que evaluar) Relacin Anexos Requisitos ISO-IEC

Norma

Mtodo de evaluacin (Como evaluar)

ISO-IEC Requisitos Guidance on performing Guas An asesment

Productos por procesos (moprosoft (normas mexicanas))

1. Gestin de negocios -Entradas o o o -salidas o o o plan estratgico plan de comunicaciones plan de implantacin plan de procesos propuestas tecnolgicas Reportes financieros

-productos internos o o o reportes de validacin reportes de verificacin propuesta de mejores

2. GESTIN DE PROCESOS -Entradas o o o -salidas o o o plan de proceso documentacin del proceso lecciones aprendidas plan estratgico reportes de mediciones asignacin de recursos

-productos internos o o o o plan de acciones plan de mejora evaluaciones reportes

3. GESTIN DE PROYECTOS -Entradas o o o o o -salidas o o o o contratos adquisiciones registros del proyecto lecciones aprendidas cartera de proyectos plan de comunicaciones plan estratgico asignacin de recursos plan del proyecto

-productos internos o o comentarios y quejas del cliente mecanismos de comunicacin

4. GESTIN DE RECURSOS -Entradas o o o o o -salidas o o plan operativo de RH propuestas tecnolgicas plan estratgico plan de Implantacin plan de proceso reporte de RH disponibles bases de conocimiento

-productos internos o o plan de capacitaciones verificaciones

5. RECURSOS HUMANOS Y AMBIENTE DE TRABAJO -Entradas o plan operativo de RH

o -salidas o o o o

acciones correctivas (polticas)

reportes RH resultados de capacitacin lecciones aprendidas evaluacin de desempeo

6. BIENES, SERVICIOS E INFRAESTRUCTURA -Entradas o o -salidas o o reportes de bienes, servicios e infraestructura lecciones aprendidas plan de procesos plan operativo de bienes y servicios

-productos internos o o o plan de mantenimiento solicitud y registro de bienes y servicios catlogo de proveedores

8. ADMINISTRACION DE PROYECTOS ESPECIALES -Entradas o o o o -salidas o o o solicitud de cambio plan del proyecto plan de adquisicin plan de comunicaciones plan de implantacin plan de proceso descripcin del proyecto

-productos internos o o minutas acciones correctivas

9. DESARROLLO Y MANTENIMIENTO -Entradas o o o o -salidas o o o o o especificaciones de requisitos anlisis y diseo componentes y mdulos manuales pruebas plan de desarrollo entregable calendario mediciones

-productos internos o o verificaciones validaciones

MODELO DE PROCESOS

CALIDAD ETAPAS Artesanal Revolucin industrial II. Guerra mundial Post-guerra Control de calidad aseguramiento Calidad total Finalidad Satisfacer la necesidad del cliente, satisfaccin personal, crear nuevos productos. Satisfacer la demanda, ganar dinero Garantizar la materia prima para las tropas (Minimizar costos, ser competitivo), producir bienes, resto del mundo Control del producto Satisfacer al cliente, reducir costos, prevenir errores Mescla continua

Definicin de calidad: Es la totalidad de las caractersticas de aspecto de un producto o servicio en lo que se vasa su actitud para satisfacer una necesidad dada. Grado en el que un conjunto de caractersticas inherentes cumple con los requisitos (ISO 9000) Calidad es un concepto relativo, multidimensional, con restricciones y ligado a compromiso. No es necesario alcanzar una calidad perfecta, solo la necesaria para cada contexto a la hora de entrega o aceptacin con el cliente. HENRY FORD: Calidad significa hacer lo correcto cuando nadie te est mirando

Administracin de calidad Administracin de la calidad: son las actividades para dirigir y controlar una organizacin en lo relativo a la calidad, verificando que se lleven a cabo las polticas y directrices generales. Aseguramiento de la calidad: es la que se encarga de verificar que se cumplan los requisitos de la calidad, porque se ha seguido un proceso

previamente verificado y auditado. Control de calidad: incluye las tcnicas y actividades de carcter operativo secentra en dos objetivos fundamentales 1. Mantener el proceso bajo control 2. Eliminar las causas de defecto. Son las actividades para evaluar la calidad del producto.

Calidad programada (Como se debe hacer)

Calidad realizada (Como se realizo) Calidad necesaria (Lo que esperaba el cliente)

Caractersticas del software o Se desarrolla, no se fabrica o Se trata de un producto lgico (idea) sin existencia fsica o No se degrada o Suele ser complejo y flexible La calidad del software se obtiene a medida que se va construyendo el producto, no hay que esperar hasta el final para verificarlo.

Proyecto1 Adecuar el proceso normas y exigencias del cliente Plan de calidad adaptado de acuerdo a condiciones Obtencin de resultados de encuestas

Proyecto 2 Adecuar el proceso normas y existencia del cliente Plan calidad adaptado =

Proyecto n Adecuar el proceso normas y existencia del cliente Plan calidad adaptado =

Calidad del proceso La norma ISO 9003 proporciona una gua para establecer, documentar, implementar y mantener un sistema para la administracin de localidad del software y mejorar continuamente. Contiene los siguientes requisitos: o o o Identificar procesos y determinar la secuencia e interaccin de los mismos. Determinar criterios y mtodos para asegurarse que la operacin y el control son eficaces Asegurarse de la disponibilidad de recursos

o o

Realizar el seguimiento, la medicin y el anlisis de los procesos. Implementar las acciones necesarias para la mejora continua

Calidad del producto El ISO 91-26 proporciona un modelo de calidad de los productos de software, se divide en cuatro partes. o o o Modelo de calidad Mtricas externas Mtricas de la calidad de uso

Valida la completitud de los requisitos, identificar objetivos para el diseo y las pruebas as como los criterios de aceptacin.

Mtrica calidad de uso

Datos Los datos representan unos de los activos ms importantes de las organizaciones, ya que son claves en las tomas de decisiones estratgicas y operativas. Los datos se convierten en fuentes de problemas si no son usados, son innecesarios, redundantes o intiles. Estos problemas afectan negativamente el rendimiento de los procesos de los negocios en varios niveles. o o Tcnicos Organizacional y legal

Tcnicos errores en la implementacin de almacenes de datos organizacionales, perdida de cliente prdidas financieras, descontento organizacional, legal dependiendo de ciertas leyes. Calidad de datos Caractersticas que deben tener los datos para que se puedan generar un producto de informacin Calidad de informacin Caractersticas que deben tener un producto de informacin para cumplir con los requisitos del usuario. Dimensiones de calidad de datos Son criterios que permiten juzgar la calidad de los datos (se definen en la norma ISO 25012) La calidad de los datos depende de: o o o Los propios datos (dependencia de la semntica del negocio) El esquema de los datos (tablas normalizadas internamente) Procesos tcnicos(implementados en el gestor de base de datos

SQM (software qualyty management) Es aplicable a los productos, procesos y recursos aplicados en el desarrollo del software Tiene los siguientes objetivos: o Satisfacer los requisitos del cliente y dems (stakeholder) buscando alcanzar la calidad necesaria Instaurar la cultura de calidad

Los principales procesos de SQM son aseguramiento de la calidad, verificacin y validacin SQA (aseguramiento de la calidad) El plan SQA define los medios para asegurar que el software satisfaga los requerimientos del usuario; debe ser consistente con la administracin de la configuracin del software. Identifica documento, estndares, practicas y convenciones aplicable al proyecto y como este ser controlado y supervisado. Validacin y verificacin Es un conjunto de procedimientos, actividades tcnicas y herramientas que se utilizan paralelamente al desarrollo para asegurar que un producto de software resuelve el problema planteado. Actividades verificacin o o o Verificando si estamos construyendo correctamente el producto Debe ser conforme a sus especificaciones Tiene como objetivo demostrar la consistencia y completitud de los artefactos en cada una de las fases del proyecto

Validacin o o o Que se est construyendo el producto correcto El software debe hacerlo que el usuario quiere Determinar las correcciones respect a las necesidades del usuario

Tipos de revisiones Las revisiones pueden ser informales, formales o una combinacin de las dos Revisiones informales. No hay procedimientos definidos tiene como ventajas una preparacin corta y un costo mnimo. Como desventajas detectan menos defectos. Revisiones semiformales. Se definen los procedimientos mnimos a seguir (se dice el qu y no el cmo) Revisiones formales Se define el proceso, los roles los documentos y las inspecciones Inspecciones Estn orientadas a las detecciones de defectos de un producto intermedios. Consiste en: o o o Informes Proporcionan informacin de los resultados de las inspecciones. Deben incluir una lista de defectos pueden usarse una checklist de comprobacin Verificar que satisfaga especificaciones y estndares Sealar desviaciones Recopilar datos para retroalimentar inspecciones posteriores

El responsable de SQA debe: o Asegurarse que se desarrollen prototipos para probar y delimitar riesgos en el proyecto Realizar mediciones para comprobar la calidad del proyecto Registrar las mtricas de aceptacin. con el cliente Debe conocer los requerimientos del sistema Debe conocer los estndares para asegurar la calidad Revisar los ajustes al proceso Realizar el informe final de calidad Debe realizar los siguientes entregables(pan de calidad, informes formales, informes de revisiones) Informes final de calidad

o o o o o o o

Actividades o o o o o Priorizar requerimientos Validar requerimientos validar prototipos Seguimientos de la satisfaccin del cliente Reuniones de equipos

10 mejores prcticas para una implementacin efectiva de SQA.

1. proceso: es crucial definir un proceso robusto y certificado para iniciar una cultura de control de calidad del software. Deber serse oficial y ver que se lleve a cabo por todo el personal. 2. compromiso gerencial: todos deben de estar consciente del valor que aportan el SQA al negocio el compromiso debe provenir desde la gerencia. 3. experiencia del personal: evitar contratar a alguien que carezca de la experiencia para cada puesto se debe conocer que para cada posicin requiere determinado conocimiento y experiencia

4. productos finales: es necesario definir los productos finales tales como requerimientos, planes y pruebas desde una perspectiva de calidad del software.

5. uso de herramientas: casi para rastreos, administraciones defectos, creacin de casos de pruebas y ejecucin. 6. mtricas: desarrollar y crear mtricas aumentan el valor y la madurez del proceso de pruebas 7. ambientes de pruebas: crear ambientes apropiados que permitan a los desarrolladores reproducir la ejecucin de los sistemas en ambientes de produccin 8. datos de pruebas: se deber asegurar la disponibilidad de los datos para la ejecucin de las pruebas 9. administracin de cambio: se debern identificar los cambios en la configuracin tanto en el ambiente de prueba como en el de produccin 10. concientizacin de los desarrolladores: es crucial concientizar a cada una de las unidades de negocio y a los desarrolladores relacionados que las actividades de pruebas y de calidad dan valor a su trabajo.

Mtrica
Medir el software nos sirve para indicar la calidad del producto, evaluar la calidad de las personas, evaluar los beneficios de nuevos mtodos y herramientas, para establecer una lnea base para la estimacin y para justificar la necesidad de capacitacin El software se puede medir con medidas directas e indirectas

Medidas directas El costo o o o o o Esfuerzo Lneas de cdigo Velocidad de ejecucin Nmeros de defectos Tamaos de los archivos

Medidas indirectas o o o Funcionalidad Complejidad Confiabilidad

Mtricas orientadas Al tamao Mtricas orientadas A la funcin Mtricas orientadas A la personas

Medidas directas del sw

(Productividad= Kloc/personas-mes) Calidad=#errores/Kloc

Medidas indirectas del sw Medidas de la efectividad de los mtodos

Caractersticas del as mtricas del software o o o o Simple y fcil de calcular Emprica e intuitiva Sin ambigedades objetivas Aumenta la calidad del software