UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA CARRERA DE INGENIERIA DE SISTEMAS Gestión de Calidad Calidad de Software Nombre: Vargas Arteaga Vanessa Alejandra Docente: Valentín Laime Semestre: II-2014 COCHABAMBA - BOLIVIA
1. ACTIVIDADES DE GESTIÓN DE CALIDAD... 3 2. ESTÁNDARES ISO 9000... 4 2.1. ISO 9001... 4 2.2. CERTIFICACIÓN ISO 9000... 4 3. PLAN DE GESTIÓN DE CALIDAD... 4 3.1. ESTRUCTURA DEL PLAN DE GESTIÓN DE CALIDAD... 5 4. CALIDAD DE PROCESOS Y PRODUCTOS... 5 4.1. CALIDAD BASADA EN PROCESOS... 5 4.2. CALIDAD PROCESOS PRACTICA... 5 5. CONTROL DE CALIDAD... 6 5.1. REVISIONES DE LA CALIDAD... 6 5.1.1.1. PROCEDIMIENTOS DE REVISIÓN (FUNCIONES EN LA REVISIÓN)... 6 5.2. REVISIONES DE CALIDAD... 6 5.3. RESULTADOS DE LA REVISIÓN... 7 6. ESTÁNDARES DE SOFTWARE... 7 6.1. IMPORTANCIA DE LOS ESTÁNDARES... 7 6.2. PROBLEMAS CON ESTÁNDARES... 8 6.3. DESARROLLO DE ESTÁNDARES... 8 6.4. ESTÁNDARES DE LA DOCUMENTACIÓN... 8 6.4.1. Estándares de documentación... 8 6.4.2. Estándares de intercambio de documentos... 9 7. MÉTRICAS DEL SOFTWARE... 9 7.1. SUPOSICIÓN DE MÉTRICAS... 9 7.2. RECOLECCIÓN DE DATOS... 9 7.2.1. Exactitud de datos... 10 7.3. ANÁLISIS DE MEDICIONES... 10 8. MÉTRICAS DE LA CALIDAD DEL PRODUCTO... 10 8.1. MANTENIBILIDAD DEL DISEÑO... 10 8.2. MÉTRICAS DE ACOPLAMIENTO... 11 8.3. MÉTRICAS DE VALIDACIÓN DE CALIDAD... 11 8.4. MÉTRICAS DE CALIDAD DE UN PROGRAMA... 11 8.5. MÉTRICAS DE COMPLEJIDAD... 11 8.6. MÉTRICAS DE CALIDAD DE DOCUMENTACIÓN... 12 8.7. MADUREZ DE LAS MÉTRICAS... 12 8.8. CONSIDERACIONES PARA LAS MÉTRICAS... 12 9. RESUMEN... 12 10. BIBLIOGRAFÍA... 13
1. ACTIVIDADES DE GESTIÓN DE CALIDAD La gestión de la calidad de software posee un conjunto de actividades y se implanta por medios tales como: 1. Planificación de la Calidad del Software. 2. Control de la Calidad del Software. 3. Aseguramiento de la Calidad del Software. 4. Mejora de la Calidad del Software. Planificación de la Calidad del Software Seleccionar procedimientos aplicables y estándares para un proyecto en particular y modificar estos como sean requeridos Identificar que estándares son relevantes y cómo cumplirlos. Control de la Calidad del Software Garantizar que los procedimientos y estándares son seguidos por el equipo de desarrollo de software Proceso iterativo que asegura que los estándares de calidad sean cumplidos. El proceso se define en el plan de gestión de calidad. Los resultados del proceso pueden ser la aceptación de decisiones, rehacer el trabajo o realizar ajustes. El aspecto a considerar en el Control de la Calidad de Software es la Prueba del Software. Aseguramiento de la Calidad del Software Establecer procedimientos organizacionales y estándares para la calidad Actividades que aseguran que el servicio tendrá todos los procesos necesarios para cumplir los requerimientos de calidad. Mejora de la Calidad del Software Es la parte de la Gestión de la Calidad que contribuye, por medio de las mediciones, a los análisis de los datos y auditorías, a efectuar mejoras en la calidad del software. El manejo de calidad debe ser separado del manejo del proyecto para asegurar independencia
2. ESTÁNDARES ISO 9000 Conjunto de estándares internacionales para el manejo de calidad Aplicable a un rango de organizaciones desde industrias de servicio a industrias de manufactura La principal norma de la familia es la ISO 9001:2008: Sistemas de Gestión de la Calidad - Requisitos. La ISO 9001 es aplicable a organizaciones del cual diseñan, desarrollan y mantienen productos ISO 9001 es un modelo genérico del proceso de calidad. Está instanciado para cada organización 2.1. ISO 9001 La norma ISO 9001, o también conocida simplemente como ISO 9001, es una norma internacional acerca del sistema de gestión de calidad y que justamente se le atribuye a todas aquellas empresas públicas o privadas que disponen efectivamente de todos aquellos elementos que son necesarios para contar con una gestión de calidad que satisfaga ciento por ciento las necesidades y expectativas de sus clientes. 2.2. Certificación ISO 9000 Los Estándares de calidad y procedimientos deben ser documentados en un manual organizacional de calidad Personal externo puede certificar que una organización conforma con los estándares ISO 9000 Los clientes demandan cada vez más que sus desarrolladores tengan la certificación ISO 9000 3. PLAN DE GESTIÓN DE CALIDAD Un plan de calidad debe establecer las cualidades deseadas del producto, cómo son estimadas estas cualidades y definir de los atributos de calidad más significativos Debe definir los procesos que determinan la calidad Debe establecer cuales estándares organizacionales deberán ser aplicados y de ser necesario, definir nuevos estándares
3.1. Estructura del Plan de Gestión de Calidad Introducción del Producto Plan del Producto Descripción de los procesos Objetivos de calidad Gestión de Riesgos Los planes de gestión de calidad deben ser documentos cortos, de lo contrario nadie los leerá. 4. CALIDAD DE PROCESOS Y PRODUCTOS La calidad de un producto desarrollado está influenciada por la calidad de los procesos de producción La calidad del producto es particularmente importante para el desarrollo de software debido a que algunos atributos de calidad son difíciles de determinar Sin embargo, hay mucha complejidad y poco entendimiento entre los procesos de software y la calidad del producto 4.1. Calidad basada en procesos Enlace directo entre procesos y productos Es más complejo para software debido a: o Se requiere la aplicación de habilidades individuales y experiencia, las cuales son importante para el desarrollo de software o Factores externos como que una aplicación es novedosa o la necesidad para acelerar el calendario de desarrollo puede deteriorar la calidad del producto Se debe tenerse especial cuidado de no imponer estándares inapropiados 4.2. Calidad procesos practica Definir procesos estándares que indiquen como llevar a cabo las revisiones, la gestión de la configuración, etc. Monitorizar el proceso de desarrollo para asegurar que se están siguiendo los estándares Reportar estos procesos a la Administración del proyecto
5. CONTROL DE CALIDAD Verificar el proceso de desarrollo de software para asegurar que los procedimientos y estándares están siendo cumplidos. Existen dos enfoques de control de calidad: o Revisiones de Calidad o Software automático de estimaciones y mediciones 5.1. Revisiones de la calidad El principal método de validación de la calidad de un proceso o de un producto Un grupo debe examinar parcialmente o totalmente un proceso o sistema y su documentación respectiva para buscar problemas potenciales Hay diferentes tipos de revisiones con diferentes objetivos o Inspecciones para remover defectos (producto) o Revisiones para determinar progresos (procesos y producto) o Revisiones de calidad (estándares y producto) Un grupo de personas cuidadosamente examinará cada parte o todo un sistema de software y su documentación asociada Código, diseños, especificaciones, planes de prueba, estándares, etc. todo puede ser revisado Documentos o Software puede ser aprobados en una revisión lo cual significa que la administración ha aprobado el progreso de la siguiente etapa del desarrollo 5.1.1.1. Procedimientos de Revisión (Funciones en la Revisión) Función de calidad son parte del proceso general de gestión de calidad Función de administración del proyecto -proveen información para los administradores del proyecto Funciones de comunicación y entrenamiento -paso de conocimientos entre miembros de desarrollo del equipo 5.2. Revisiones De Calidad El objetivo es descubrir defectos en el sistema e inconsistencias Cualquier documento producido en el proceso puede ser revisado
El equipo de revisión deberá ser relativamente pequeño y las revisiones deberán ser relativamente cortas La revisión deberá ser grabada y almacenada 5.3. Resultados de la Revisión Los comentarios hechos durante la revisión deberán ser clasificados o Sin acciones. No se requiere cambiar el software o la documentación o Enviadas a reparación. El diseñador o programador deberá corregir el fallo identificado o Reconsideración total del diseño. El problema identificado en la revisión impacta sobre otras partes del diseño. Se debe hacer una evaluación completa sobre la mejor manera de solucionar el problema en relación al costo y la eficiencia. Los errores en los requerimientos y especificaciones podrían tener que enviarse al cliente 6. ESTÁNDARES DE SOFTWARE Los estándares son clave para un efectiva gestión de calidad Los estándares pueden ser internacionales, nacionales, organizacional o estándares de proyectos. Los estándares de producto definen características que todos los componentes deberán tener Los estándares de procesos definen cómo deben ser establecidos los procesos del software 6.1. Importancia de los estándares Reúne las mejores prácticas. Evita la repetición de errores pasados Proporciona un marco para el proceso de aseguramiento de calidad-involucra verificar el cumplimiento de los estándares Proporcionar continuidad. El personal nuevo puede entender a la organización entendiendo a los estándares aplicados
6.2. Problemas con estándares No son vistos como relevantes ni se encuentran actualizados por los ingenieros de software Involucra mucha burocracia en el llenado de los formularios No soportado por herramientas de software por lo que se requiere trabajo manual tedioso para mantener los estándares 6.3. Desarrollo de Estándares Involucrar a los desarrolladores. Los Ingenieros deben entender la racionalidad bajo un estándar Revisar estándares y su uso regularmente. Los estándares pueden desactualizarse rápidamente, lo cual reduce su credibilidad entre sus usuarios Los estándares detallados deberán tener asociado una herramienta de soporte. Excesivo trabajo de oficina es el más significante reclamo en contra de los estándares 6.4. Estándares De La Documentación Particularmente importantes -Los documentos son la manifestación tangible del software o De qué forma los documentos deberán ser desarrollos, validados y mantenidos Estándares de documentación o Se refiere al contenido del documento, estructura y apariencia Estándares de intercambio de documentos De qué forma los documentos deberán ser almacenados e intercambiados entre distintos sistemas de documentación 6.4.1. Estándares de documentación Estándares de identificación de documentos o De qué forma se identifica a los documentos Estándares de Estructura de Documentos o Estructura estándar para documentos de proyectos Estándares de presentación de documentos o Define estilos y letras, uso de logos, etc. Estándares de actualización de documentos o Define como los cambios de una versión vieja son reflejados en un documento
6.4.2. Estándares de intercambio de documentos Los documentos son producidos usando diferentes sistemas y diferentes computadoras Los estándares de intercambio permiten que los documentos electrónicos sean intercambiados, enviados, etc. Necesidad para archivar. El tiempo de vida de los sistemas de procesamiento de palabras puede ser mucho menos que el tiempo de vida del software existente actualmente en documentación XML es un estándar para intercambio de documentos, el cual será ampliamente soportado en el futuro 7. MÉTRICAS DEL SOFTWARE Cualquier tipo de medida relacionada al sistema de software, proceso o documentación relacionada o Las líneas de código en un programa, el índice Fog, el número de días/personas requerido para desarrollar un componente Permite cuantificar el software y procesos de software Mediciones del proceso del software o producto Deberán ser obtenidas automáticamente si es posible 7.1. Suposición de métricas Una propiedad del software puede ser medida Existe una relación entre lo que se puede medir y que se quiere conocer Esta relación ha sido formalizada y validada Puede ser difícil relacionar lo que puede ser medido en cuanto a atributos deseables de calidad 7.2. Recolección de datos Una métrica deberá estar basada sobre un conjunto de datos procesados y datos del producto
Los datos deberán ser recolectados inmediatamente (no en retrospectiva) y si es posible automáticamente Existen tres tipos de recolección automática de datos o Análisis estático del producto o Análisis dinámico del producto o Proceso de recolección de datos 7.2.1. Exactitud de datos No obtenga datos innecesarios. Las preguntas para ser contestadas deberás ser decididas por adelantado con la identificación de los datos requeridos Decir a la gente porque los datos están siendo obtenidos. Esto no deberá ser parte de la evaluación del personal No depender de la memoria. Obtenga datos cuando estos están siendo generados, no después de que el proyecto ha terminado 7.3. Análisis de Mediciones No siempre es obvio el significado de los datos. Analizar los datos obtenidos es muy difícil Profesionales en estadística deben ser consultados si se puede El análisis de datos debe tomar circunstancias locales en cuenta 8. MÉTRICAS DE LA CALIDAD DEL PRODUCTO Una métrica de calidad deberá ser una forma de predicción de la calidad del producto La mayoría de las métricas de calidad existentes son las métricas de la calidad del diseño las cuales se relacionan con la medición del acoplamiento o la complejidad del diseño 8.1. Mantenibilidad del diseño Cohesión o Como tanto las partes forman parte de un componente relacionado Acoplamiento o Que tan independiente es un componente Entendibilidad
o Que tan fácil es entender las funciones de un componente Adaptabilidad o Que tan fácil es cambiar un componente 8.2. Métricas de acoplamiento Asociado con la medida fan-in y fan-out del diseño de estructura de Yourdon en un diagrama de estructura Alta entrada (fan-in)-implica un alto acoplamiento debido a las dependencias de los módulos Alta salida (fan-out)-implica un alto acoplamiento debido a la complejidad del control 8.3. Métricas de validación de calidad Algunos estudios con Unix encontraron que la entrada/salida informativa permite identificar componentes complejos y con fallas potenciales Algunos estudios sugieren que el tamaño y número de ramas son útiles tanto en predicciones complejas como en las entradas/salidas informativas Las salidas (fan-out) por si mismas son un buen predictor de calidad Toda el área esta en investigación y no es aplicable en la practica 8.4. Métricas de calidad de un programa Las métricas de diseño son también aplicables a programas Otras métricas incluyen o Longitud. El tamaño del código fuente del programa o Complejidad ciclomática. La complejidad de control de un programa o Longitud de identificadores o Profundidad de condicionales anidados Los valores anómalos de las métricas sugieren que un componente que un número de defectos por encima del promedio, o puede ser difícil de entender 8.5. Métricas de complejidad La complejidad ciclomática es una medida de control a una estructura compleja La métrica tiene dos inconvenientes
o Es imprecisa para programas basados en manejo de datos ya que solo cuentan con construcciones de control o Pone el mismo peso para los ciclos no-anidados que para los anidados. Las estructuras profundamente anidadas son usualmente mas difíciles de entender La métrica de Oviedo modifica esto para tomar referencias de datos en cuenta C = ae+bn 8.6. Métricas de calidad de documentación La legibilidad es importante en la documentación El índice Gunnings Fog es una medida de la legibilidad o Basada en la longitud de las frases y el número de sílabas en una palabra Esto puede causar malas interpretaciones cuando se aplica a la documentación técnica 8.7. Madurez de las métricas Las métricas todavía tienen un valor limitado y no ampliamente aceptado Las relaciones entre que lo que se puede medir y lo que se quiere conocer no está bien comprendido aun Hace falta poner de acuerdo a las organizaciones sobre las métricas necesarias en el proceso de software 8.8. Consideraciones para las métricas La longitud del código es simple pero la experimentación ha sugerido que representa un buen predictor de problemas La complejidad ciclomática puede ser engañosa Nombres largos deberán incrementar la entendibilidad de un programa Condicionales profundamente anidadas son difíciles de entender. 9. RESUMEN La gestión de la calidad del software se refiere a asegurar que el software cumple con estándares requeridos
Los procedimientos de aseguramiento de calidad deben estar documentados en un manual de calidad organizacional Un plan de calidad de un proyecto deberá identificar los requerimientos específicos de calidad Los estándares de software son la reunión de las mejores prácticas Las revisiones son el medio principal para determinar la calidad del software Las métricas reúnen información acerca de procesos y productos Las métricas de control proveen información acerca del manejo del proyecto del software. Las métricas de predicción permiten la estimación de atributos del al producto Las métricas de calidad deberán ser usadas para identificar componentes potencialmente problemáticos 10. BIBLIOGRAFÍA http://es.wikipedia.org/wiki/gesti%c3%b3n_de_la_calidad#mejoras_en_calidad https://confluence.cornell.edu/display/qm/quality+management http://www.definicionabc.com/negocios/iso-9001.php#ixzz3nqkeyrue www.bhecker.com