jueves, 7 de marzo de 2013

Aseguramiento de la calidad del software (Software Quality Assurance)


Definición

SQA se define como un conjunto de actividades planificadas y sistemáticas, cuyo primer objetivo es evaluar la calidad de los productos de software, la aplicación de procesos, procedimientos y de estándares de desarrollo. 

Tiene como objetivo entregar a la administración una visibilidad adecuada del proceso utilizado y los productos construidos mediante acciones planificadas y sistemáticas que aseguren la calidad de dichos procesos y productos.


Objetivos principales

  • Planificar las actividades de SQA. 
  • Verificar la adherencia de los productos de trabajo y de las actividades a los estándares, procedimientos y requerimientos establecidos. 
  • —Informar a los grupos e individuos afectados sobre las actividades de SQA y sus resultados. 
  • —Comunicar a la administración superior sobre desviaciones no resueltas dentro del proyecto. 

Actividades del grupo SQA
  • —Preparar el Plan de SQA para cada proyecto. 
  • —Participar en el desarrollo de la descripción del proceso de software para un proyecto. 
  • —Revisar las actividades de ingeniería en acuerdo con el proceso definido. 
  • —Auditar los productos de trabajo designados, para verificar su adherencia con aquellos definidos en el modelo de proceso. 
  • —Asegurar que las desviaciones en el desarrollo y en los productos de trabajo sean documentadas y apoyadas por el procedimiento de documentación. 
  • —Registrar cualquier disconformidad e informar a la administración superior. 
  • —Coordinar la gestión de configuración. SCM.
  • Apoyar la recolección y análisis de métricas de software


Actividades del proceso de SQA


—Estándares

Los estándares son los cimientos de cualquier sistema de calidad de software, pues proveen la base para la evaluación y medición de las actividades y de los productos de trabajo durante todo el ciclo de vida del software. Por tanto, ellos establecen el marco de trabajo para el desarrollo de software, constituyéndose en un factor crítico.


Campo de acción que cubren :
  • –Ciclo de vida del software 
  • –Documentación 
  • –Código fuente 
  • –Criterios para denominar los ítems de configuración 
  • –Procedimientos y protocolos 
—Revisiones

Las revisiones constituyen la primera forma de monitorear y evaluar la calidad de los productos de trabajo, y además, proveen mayor visibilidad al desarrollo. Las revisiones son una metodología definida, estructurada y disciplinada para la detección e identificación de defectos en los productos de trabajo durante el ciclo de vida del software. Cuenta con seis etapas: planificación, orientación, preparación, inspección, rework y seguimiento, las cuales son llevadas a cabo por un equipo con tareas y responsabilidades definidas, con documentación específica y por un período determinado.

Prueba

La prueba es la última actividad de evaluación del producto que permite detectar defectos y establecer el nivel de satisfacción de los requerimientos. Sus actividades incluyen la planificación, diseño, ejecución y reporte sobre los diferentes niveles de prueba existentes durante el proyecto. Estos niveles van desde las pruebas de unidad, pasando por la de integración, hasta las del sistema y aceptación. 

Por lo tanto, SQA debe garantizar que:
◦Los procedimientos de prueba verifican los requerimientos según el plan.
◦La versión del software evaluada sea la actual.
◦Los procedimientos sean utilizados.
◦Cualquier problema detectado durante esta actividad, sea registrado e informado oportunamente.
◦Los informes entregados correspondan a la realidad y sean completos.
◦La corrección de los errores sea realizada antes de la entrega del producto final.

—Análisis de defectos

Los defectos ocurren a lo largo de todo del ciclo de vida del software sin excepción. Por ello resulta natural concentrar esfuerzos en su detección y corrección. No obstante a que la corrección de defectos es importante, más lo es su prevención. Esta sólo puede alcanzarse a partir del registro y seguimiento de los defectos, puntapié inicial para un posterior análisis. Es, entonces, el análisis de defectos la actividad responsable de corregir las deficiencias actuales en el proceso y así disminuir los defectos en futuros proyectos.  

—Gestión de configuración

El propósito de la Gestión de Configuración (Software Configuration Management, SCM) es establecer y mantener la integridad de los productos a través de todo el ciclo de vida del software, proveyendo un adecuado control de los cambios producidos en los diversos ítems de configuración1. Para ello, SCM se compone de cuatro actividades principales:



La identificación de la configuración proporciona un método único y especifico para identificar cada instancia (release, versión, etc.) de un producto de software.
–El control de cambios asegura que cada modificación sobre alguna instancia del producto sea conocida, autorizada y documentada.
–La contabilidad de la configuración permite establecer un seguimiento e informar sobre el estado de la configuración en un tiempo dado.
–Las auditorías establecen si el producto ha sido construido de acuerdo a los requerimientos y que el software esté realmente representado por la documentación que le acompaña.


No hay comentarios:

Publicar un comentario