Software quality assurance Elaborado por: Colín Serna Guadalupe Magali
El aseguramiento de calidad del software es el conjunto de actividades planificadas y sistemáticas necesarias para aportar la confianza adecuada en que el producto (software) satisfacerá los requisitos dados de calidad. El Aseguramiento pretende dar confianza en que el producto tiene calidad. Aseguramiento de de calidad se enfoca enfoca en identificar y evaluar los defectos que puedan afectar al software. Si los errores se pueden identificar de forma temprana en el proceso de software, las características del diseño de software se pueden especificar de modo que eliminarán o controlarán los peligros potenciales, al corregir los errores mucho antes en cada etapa es decir durante el proceso, ahorrando esfuerzos, tiempo y recursos. Sridharan indica que mientras el el software que se está desarrollando reúne los requerimientos y su desempeño sea el esperado, es preciso que se supervisen las actividades de desarrollo del software y su rendimiento, en distintas oportunidades durante cada fase del ciclo de vida. Este es el papel del aseguramiento de la calidad del software.
Describa Hay tres aspectos muy importantes con relación al aseguramiento de la calidad del software:
La calidad no se puede probar, se construye. El aseguramiento de la calidad del software no es una tarea que se realiza en una fase particular del ciclo de vida de desarrollo. Las actividades asociadas con el aseguramiento de la calidad del software deben ser realizadas por personas que no estén directamente involucradas en el esfuerzo de desarrollo.
Mejorar la calidad de los procesos de desarrollo y mantenimiento del software, monitoreando, durante el transcurso del ciclo de vida de los diferentes proyectos, el cumplimiento de los estándares y procesos establecidos, antes de su puesta en productivo.
Establecer planes, estándares y procesos que satisfagan las políticas de la organización y se ajusten a las necesidades de cada proyecto en particular. Revisar y auditar los productos y actividades desarrolladas para verificar que ellos satisfacen los procesos y estándares definidos. Proveer las herramientas necesarias que den soporte al proceso definido, facilitando su ejecución, visualización, administración y seguimiento. Proveer al equipo de proyecto y a otros interesados, los resultados sobre las revisiones, auditorías y actividades. Escalar problemas no resueltos dentro del equipo de un proyecto hacia un nivel apropiado de administración para su resolución.
Mapa para institucionalizar la garantía de calidad del software. Es una plantilla para definir las actividades de SQA aplicables a de software.
El plan incluye:
Tareas y actividades de SQA dentro del proceso de software y los roles y responsabilidades relativas a la calidad del producto Detalle de los productos de trabajo del proceso de software que podrán ser revisados. Detalle de lo que está acordado y establecido para el proceso y los productos a obtener. (Ejemplos: estándares de documentación, estándares de codificación, pasos para la revisión, métricas a obtener, etc.) Revisiones que se llevarán a cabo durante el proceso y los responsables de cada una de ellas. (Ejemplos: Revisiones de documentación, revisiones técnico formales (RTF’s),etc.) Plan y procedimiento de Pruebas del Software y de gestionar los defectos detectados. que soportan las actividades de SQA
Planeamiento de la calidad
Control de la calidad
Mejoramiento de la calidad
Precisar los clientes internos y externos Determinar las necesidades y elaborar productos y servicios que las satisfagan Monitorear, medir, comparar y ajustar productos y servicios de acuerdo a lo planificado Mejorar los procesos críticos y eliminar las actividades que no agregan valor
Calidad Planificada
Imperfecciones de la calidad detectadas
Imperfecciones de la calidad corregidas
Dos tipos de estándares estándares del producto: se aplican al producto a desarrollar
estándares de documentos (p.ej., estructura del documento de requerimientos a producir)
estándares de documentación (encabezados estándar de comentarios para una definición de clase) estándares de codificación (cómo utilizar un lenguaje de programación)
estándares del proceso: definen los procesos a seguir durante el desarrollo
definiciones de los procesos de especificación y análisis, diseño, validación, descripción de los documentos a generar en cada uno de estos procesos.
Formulario para revisión del diseño Estructura del documento de requerimientos Formato del encabezado del procedimiento Estilo de programación en Java Formato del plan del proyecto Forma de petición de cambios
Conducto para la revisión del diseño Sometimiento de documentos a revisiones Proceso de entrega de las versiones Proceso de aprobación del plan del proyecto Proceso de control del cambio Proceso de registro de las pruebas