INGENIERÍA DE SOFTWARE II Garantía de Calidad

Slides:



Advertisements
Presentaciones similares
Proceso de desarrollo con UML y el modelo CMM
Advertisements

Ingeniería de Software II
UNIVERSIDAD "ALONSO DE OJEDA"
UNIVERSIDAD "ALONSO DE OJEDA"
UNIVERSIDAD "ALONSO DE OJEDA"
Control Interno Informático. Concepto
CERTIFICACION ISO 9000, ,12207 Y MODELO CMM
Aclaraciones de la Realización del Producto
NORMALIZACIÓN ISO 9000: GESTION DE LA CALIDAD.
TEMA 4.- SISTEMAS DE GESTIÓN MEDIOAMBIENTAL (I): ANTECEDENTES
CALIDAD DE PRODUCTO PORTADA CALIDAD DE PRODUCTO.
CALIDAD EN DESARROLLO DE SOFTWARE
INTERPRETACIÓN DE NORMAS ISO
Sistemas de Calidad / ISO 9001:2000
METRICAS DE PROCESO Y PROYECTO
Planificación de Proyectos Informáticos
Introducción a la calidad en el desarrollo de software
CALIDAD EN EL DESARROLLO DE SOFTWARE
Medición, Análisis y Mejora
Evaluación de Productos
La calidad del software.
Juan Antonio Siqueiros Pérez
AUDITORIA DE SISTEMAS DE INFORMACIÓN
NORMA ISO 9126 Carlos Mario Zapata J. 11/04/2017 Calidad de Software.
Requerimientos /Metas:
Modelo McCall PRESENTA: Liliana Hilario, Anabel peña, Jessica Carbajal, Ricardo Díaz.
IIS Evaluación de productos, procesos, recursos Mejorando las predicciones (¿o estimaciones?)
Métricas de calidad de software
AUDITORIAS RESUMEN DE ASPECTOS RELEVANTE EN LA GESTION BASADO EN EL REFERENCIAL ISO 9001:2008.
Mantenimiento del Software
Medición y Métricas del Software
DIRECTRICES PARA LA MEJORA DEL DESEMPEÑO
Calidad y Garantía de Calidad
VII Congreso de Expotecnología UVM 2007 Jonás A. Montilva C.
Armillas Mendieta Brenda Angélica De León Campos Arturo Delgado Sosa Luis Alberto Rodríguez Ortega Sandra Vergara Carranza Carlos.
EL APORTE DE LA INGENIERIA DE SOFTWARE A LAS ORGANIZACIONES
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Factores de Calidad McCall Métricas
35 años de investigación, innovando con energía 1 Mayo, 2012 P LAN DE ASEGURAMIENTO DE LA CALIDAD DEL DESARROLLO DE SOFTWARE E STÁNDAR IEEE 730 Y G UÍA.
SGSI: Sistemas de Gestión de la Seguridad de la Información
El rol de SQA en PIS.
Universidad de Aconcagua SISTEMA DE GESTION DE CALIDAD
INGENIERÍA DEL SOFTWARE GESTIÓN DE PROYECTOS
INGENIERIA DE SOFTWARE
Factores y Métricas que determinan la Calidad de un producto
Ciclo de vida de un sistema
Método iterativo Integrantes : Paola Ramón Armando 19 octubre 2011.
Metodologías Lsi. Katia Tapia A., Mae.
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
Métricas de calidad de software
Control de Calidad de Software
TIPOS DE AUDITORÍAS EN SISTEMAS DE INFORMACIÓN
Introducción al proceso de verificación y validación.
Ingeniería de Software
Alumno: Gerardo Mario Valdés Ortega Matricula: Asignatura: Análisis y diseño de Sistemas Computacionales Cuatrimestre: Tercero Carrera: Licenciatura.
problemas de la calidad del software
Calidad de Software Centro ISYS Escuela de Computación
Sistema de control de calidad de software
NIVELES DE CALIDAD DEL SOFTWARE
ANGIE PAOLA SOLANO CASTIBLANCO DAR SOPORTE A LOS PROCESOS NORMAS ISO DOC. JOHANA LÓPEZ CHAVEZ SENA 2010.
INGENIERIA DE SOFTWARE
Proceso de desarrollo de Software
Administración de Calidad de Software
EI, Profesor Ramón Castro Liceaga IV. AREAS DE EVALUACIÓN DE LA AUDITORIA EN INFORMÁTICA. UNIVERSIDAD LATINA (UNILA)
Bachillerato Ingeniería en Informática Fundamentos de Computación.
Objetivos de la prueba Los objetivos principales de realizar una prueba son: Detectar un error. Tener un buen caso de prueba, es decir que tenga más probabilidad.
MODULO 4 Sistema Integrado de gestión 1 Sistema Integrado de gestión – conceptos, fundamentos y requisitos comunes MÓDULO 4.
Entregables del Proyecto
Transcripción de la presentación:

INGENIERÍA DE SOFTWARE II Garantía de Calidad

Objetivos Conocer el concepto de Calidad del Software, el proceso de Garantía de Calidad y de verificación y validación Identificar diferentes métricas del software que aportan al proceso de Garantía de Calidad Conocer un método de definición de métricas de calidad Contenido Garantía de Calidad del Software Métricas de Calidad GQM: Goals Questions Metrics

Si los ingenieros civiles construyeran edificios de la misma forma en que los “ingenieros de software” construyen aplicaciones computacionales, correríamos el riesgo de que un simple pájaro carpintero destruyera la civilización. Weinberg.

Garantía de Calidad del Software Qué es calidad del software ? “Concordancia con los requisitos funcionales y de rendimiento explícitamente establecidos, con los estándares de desarrollo explícitamente documentados, y con las características implícitas que se espera de todo software desarrollado profesionalmente” [PRE98] “Concordancia con los requisitos funcionales y de rendimiento explícitamente establecidos, ...” Se refiere a la concordancia con los Requerimientos, requisitos y diseño del Software “...con los estándares de desarrollo explícitamente documentados, ...” Se refiere a la concordancia con estándares universales de calidad: ISO 9000 - ESA “...y con las características implícitas que se espera de todo software desarrollado profesionalmente ...” Se refiere a las características propias del software como Correctitud – Robustez – etc.

Garantía de Calidad del Software “El conjunto de características de una entidad que le confieren su aptitud para satisfacer las necesidades expresadas y las implícitas” ISO 8402 Conclusiones Los requisitos del software son la base de las medidas de calidad. La falta de concordancia con los requisitos es una falta de calidad Los estándares o metodologías definen un conjunto de criterios de desarrollo que guían la forma en que se aplica la ingeniería del software. Si no se sigue ninguna metodología siempre habrá falta de calidad Existen algunos requisitos implícitos o expectativas que a menudo no se mencionan, o se mencionan de forma incompleta (por ejemplo el deseo de un buen mantenimiento) que también pueden implicar una falta de calidad.

Garantía de Calidad del Software La calidad de un producto de software está fuertemente determinada por la calidad de los procesos de desarrollo Definir la calidad como la sola entrega de un producto con mínima cantidad de defectos, es una idea anticuada y conformista. Garantía de Calidad del Software (SQA) es un planificado y sistemático diseño de acciones que se requieren para asegurar la calidad del software

Garantía de Calidad del Software Existen diferentes “Visiones” respecto de la Calidad de un Producto de Software Visión del Usuario: Grado de adecuación al propósito Visión del Productor: Conformidad con la especificación Visión del Producto: Ligada a características propias de todo software

Garantía de Calidad del Software Los factores que influyen en la Calidad del Software son: Mecanismos utilizados para la determinación de requisitos Mecanismos para minimizar las correcciones e iteraciones Mecanismos para la detección de fallas Mecanismos para el uso eficiente de los recursos

Factores que determinan la calidad del software Operaciones del producto: características operativas Corrección (¿Hace lo que se le pide?) El grado en que una aplicación satisface sus especificaciones y consigue los objetivos encomendados por el cliente Fiabilidad (¿Lo hace de forma fiable todo el tiempo?) El grado que se puede esperar de una aplicación lleve a cabo las operaciones especificadas y con la precisión requerida Eficiencia (¿Qué recursos hardware y software necesito?) La cantidad de recursos hardware y software que necesita una aplicación para realizar las operaciones con los tiempos de respuesta adecuados Integridad (¿Puedo controlar su uso?) El grado con que puede controlarse el acceso al software o a los datos a personal no autorizado Facilidad de uso (¿Es fácil y cómodo de manejar?) El esfuerzo requerido para aprender el manejo de una aplicación, trabajar con ella, introducir datos y conseguir resultado

Factores que determinan la calidad del software Revisión del producto: capacidad para soportar cambios Facilidad de mantenimiento (¿Puedo localizar los fallos?) El esfuerzo requerido para localizar y reparar errores Flexibilidad (¿Puedo añadir nuevas opciones?) El esfuerzo requerido para modificar una aplicación en funcionamiento Facilidad de prueba (¿Puedo probar todas las opciones?) El esfuerzo requerido para probar una aplicación de forma que cumpla con lo especificado en los requisitos

Factores que determinan la calidad del software Transición del producto: adaptabilidad a nuevos entornos Portabilidad (¿Podré usarlo en otra máquina?) El esfuerzo requerido para transferir la aplicación a otro hardware o sistema operativo Reusabilidad (¿Podré utilizar alguna parte del software en otra aplicación?) Grado en que partes de una aplicación pueden utilizarse en otras aplicaciones Interoperabilidad (¿Podrá comunicarse con otras aplicaciones o sistemas informáticos? El esfuerzo necesario para comunicar la aplicación con otras aplicaciones o sistemas informáticos.

Factores que determinan la calidad del software

Aseguramiento de la Calidad del Software El aseguramiento de calidad del software es el conjunto de actividades planificadas y sistemáticas necesarias para aportar la confianza en que el producto (software) satisfará los requisitos dados de calidad. El aseguramiento de calidad del software se diseña para cada aplicación antes de comenzar a desarrollarla y no después. Algunos autores prefieren decir garantía de calidad en vez de aseguramiento. Garantía, puede confundir con garantía de productos Aseguramiento pretende dar confianza en que el producto tiene calidad

Aseguramiento de la Calidad del Software El aseguramiento de calidad del software está presente en: Métodos y herramientas de análisis, diseño, programación y prueba Inspecciones técnicas formales en todos los pasos del proceso de desarrollo del software Control de la documentación del software y de los cambios realizados Procedimientos para ajustarse a los estándares (y dejar claro cuando se está fuera de ellos) Mecanismos de medida (métricas) Registro de auditorias y realización de informes

Aseguramiento de la Calidad del Software Las actividades de SQA comprenden Aplicación de métodos técnicos Para obtener productos de alta calidad en las diferentes etapas del desarrollo del software, se deben usar herramientas y métodos técnicos probados que aseguran especificaciones de alta calidad Revisiones Técnicas Formales (RTF) Inspecciones formales cuyo objetivo es encontrar errores en la función, la lógica o la implementación de cualquier representación del software Verificación de los requisitos Garantizar la correcta aplicación de estándares

Garantía de Calidad del Software Las actividades de SQA comprenden Pruebas del Software Aplicación de estrategias de prueba Planes de prueba Ajuste a los estándares Garantía de seguimiento de estándares Auditorías a los procesos, entregables y documentos partes del Software Control de cambios Gestión de configuración del software Formalización de peticiones de modificación, evaluación y control del impacto durante y después de la liberación del producto de software

Garantía de Calidad del Software Las actividades de SQA comprenden Definición de métricas y medición Mejoramiento continuo requiere seguimiento y medición Se deben recolectar métricas del software, las que engloban un amplio conjunto de medidas técnicas orientadas a la gestión Registro y difusión Reportes e informes de cada RTF Documentación y análisis de métricas Permite el aprendizaje y la evolución de la organización

Garantía de Calidad del Software Las actividades de SQA son medidas de protección que se aplica a cada paso del proceso de desarrollo de software La garantía de calidad del Software es un conjunto de actividades de Verificación y Validación Verificación Estamos construyendo el producto correctamente ? Validación Estamos construyendo el producto correcto ?

Metricas de Calidad Negligencias de medición No se establecen objetivos medibles para los productos (“Nuestro producto es amistoso, confiable y mantenible” No se comprenden y cuantifican los costos del proyecto No se cuantifica o predice la calidad de los productos Nos auto convencemos basándonos en evidencia anecdótica: “nuestra técnica garantiza 100% de confiabilidad”

Metricas de Calidad Qué es una medición de software ? Asignación de números o símbolos a atributos de entidades del mundo real en una forma significativa Persona: Talla, edad, peso, color de pelo, color de ojos, número de zapato, sexo, etc. Salud: Presión arterial, temperatura, pulso, nivel de colesterol, etc. Estudiante: Notas, cursos tomados, especialidad, etc. Computador: Marca, procesador, RAM, Disco, velocidad procesador, etc. Software: Líneas de código, errores, número de módulos, velocidad

Metricas de Calidad Porqué hacer mediciones de software? Porque queremos aplicar métodos de ingeniería al desarrollo y mantención del software Porque permite Determinar costo de los procesos Productividad del personal Calidad del código Satisfacción del usuario Identificar caminos de mejoramiento PERMITE ESTIMAR.....................Futuro PERMITE EVALUAR LOGRO DE OBJETIVOS..................Post Mortum

Metricas de Calidad Existen mediciones del producto y del proceso Producto: defectos, LOC, número de módulos, complejidad, etc. Proceso: defectos/KLOC, horas ingeniero/KLOC, Defectos encontrados en el testing, etc. Qué mediciones debemos considerar ?. Pueden recolectarse ? Manual o automáticamente ? Cuál es el esfuerzo de recolección ?

Metricas de Calidad Ámbito de las métricas Procesos: Colecciones de actividades relacionadas con la construcción de SW Duración, costo, efectividad o eficiencia Producto: Entregables que resultan de una actividad del proceso Tamaño, calidad Recurso: Entidades requeridas por una entidad del proceso Magnitud, costo, calidad, productividad

Metricas de Calidad Modelo de Calidad de McCall Propone una clasificación de los factores que afectan a la calidad del software centrados en tres aspectos Características operativas, capacidad de soportar el cambio, adaptabilidad a nuevos entornos Corrección – Fiabilidad – Eficiencia – Integridad – Facilidad de uso – Facilidad de mantenimiento – Portabilidad – Reusabilidad – Facilidad de interoperción Métricas usadas para desarrollar expresiones para cada uno de los factores: Facilidad de auditoría, exactitud, Normalización de las comunicaciones, completitud, concisión, consistencia, etc.

Sistemas de Calidad Estructura organizativa, procedimientos, procesos y recursos necesarios para implantar la gestión de calidad El sistema de calidad se debe adecuar a los objetivos de calidad de la empresa La dirección de la empresa es la responsable de fijar la política de calidad y las decisiones relativas a iniciar, desarrollar, implantar y actualizar el sistema de calidad.

Un sistema de calidad consta de varias partes Documentación Sistemas de Calidad Un sistema de calidad consta de varias partes Documentación Manual de calidad. Es el documento principal para establecer e implantar un sistema de calidad. Puede haber manuales a nivel de empresa, departamento, producto, específicos (compras, proyectos,…) Parte física: herramientas, computadores, etc. Aspectos humanos: Formación de personal Creación y coordinación de equipos de trabajo

Sistemas de Calidad Normativas ISO (La Organización Internacional para la Estandarización) ISO 9000: Gestión y aseguramiento de calidad (conceptos y directrices generales) Recomendaciones externas para aseguramiento de la calidad (ISO 9001, ISO 9002, ISO 9003) Recomendaciones internas para aseguramiento de la calidad (ISO 9004) Software Engineering Institute (SEI) Capability Maturity Model (CMM-CMMI) for software. http://www.sei.cmu.edu/

GQM: Goal – Question - Metric Enfoque para seleccionar e implementar métricas, que involucra tres pasos: 1. Listar los objetivos principales 2. Derivar de cada objetivo las preguntas que deben responderse para determinar si los objetivos se satisfacen 3. Decidir qué medir para ser capaz de responder las preguntas de manera adecuada

GQM: Goal – Question - Metric Ejemplo: Goal: Mejorar el proceso de revisiones de diseño Questions: Cómo se hacen las revisiones de diseño actualmente ? Cuánto tiempo toman las revisiones de diseño ? Cuánto cuestan las revisiones de diseño ? Qué métodos de revisiones de diseño se usan ? Qué tan efectivo es el proceso de revisión de diseño ? Metrics: Número de revisiones de diseño por módulo Tiempo utilizado en revisiones por módulo Costo de las revisiones Costo por error encontrado % de errores de especificación y de diseño encontrados