SQA: (Software Quality Assurance; esp.
Garantía de la Calidad del Software) Esta
relación implica a varios responsables
durante el proceso de la elaboración del
software de calidad, estos son:
Ingenieros de software
Jefes de proyecto
Clientes
Vendedores
Quienes trabajan dentro de un grupo de la
SQA
Estos últimos pueden ser independientes y tendrán las
siguientes actividades para llegar al objetivo de la SQA:
Establecimiento de un plan de la SQA para un proyecto.
En este plan se identifica:
Evaluaciones a realizar
Auditorías y revisiones a realizar
Estándares que se pueden aplicar al proyecto
Procedimientos para información y seguimiento de errores
Documentos producidos por el grupo SQA
Realimentación de información proporcionada al equipo de
proyecto del software
Participación en el desarrollo de la descripción del proceso de
software del proyecto
Revisión de las actividades de ingeniería del software para
verificar su ajuste al proceso de software definido
Auditoría de los productos de software designados para verificar
el ajuste con los definidos como parte del proceso de software
Asegurar que las desviaciones del trabajo y los productos del
software se documenten y se manejen de acuerdo con un
procedimiento establecido
Registrar lo que no se ajuste a los requisitos e informar a sus
superiores
Definición:
SQA es un set de actividades sistemáticas que
aseguran que el proceso del software y productos
conformados por requerimientos, estándares, y
procedimientos.
Los procesos incluyen todas las actividades
involucradas en el diseño, codificación, pruebas y
mantenimiento; Los productos incluyen software, datos
asociados, documentación, y toda la documentación
para soporte y reportes.
El Rol:
El rol para SQA es brindar a la administración la a
seguranza de que procesos oficialmente establecidos
están siendo implementados. Y asegura que:
1.-Una metodología de desarrollo apropiada este
establecida
2.-Que los proyectos utilicen estándares y
procedimientos en su trabajo
3.-Que la documentación sea creada para
mantenimiento y mejoramiento
4.-La administración de configuración de software
este adecuada para controlar cambios
5.-Se realicen pruebas y que se aprueben
6.-Cualquier deficiencia y desviaciones sean
identificadas y llevadas con atención a la
administración.
Propósito:
Proporcionar visibilidad sobre los procesos utilizados
por el proyecto de software y sobre los productos
que genera.
Objetivos:
1.-Planificar las actividades de aseguramiento de la
calidad.
2.-Revisar y auditar objetivamente los productos y las
actividades para verificar que están conformes con
los procedimientos y estándares aplicables.
3.-Proporcionar los resultados de estas revisiones o
auditorías informando a la dirección cuando sea
necesaria su mediación.
Aumenta las posibilidades de el éxito final del
proyecto
Ayuda a definir los parámetros de medición
de la calidad del software
Verifica que los estándares sean aplicados
correctamente
Define un plan de monitoreo del proceso de
desarrollo del software (ciclo de vida)
El término ciclo de vida del software describe el
desarrollo de software, desde la fase inicial hasta la
fase final. El propósito de este programa es definir
las distintas fases intermedias que se requieren
para validar el desarrollo de la aplicación, es
decir, para garantizar que el software cumpla los
requisitos para la aplicación y verificación de los
procedimientos de desarrollo: se asegura de que
los métodos utilizados son apropiados.
El ciclo de vida básico de un software consta de los
siguientes procedimientos:
• Definición de objetivos: definir el resultado del proyecto
y su papel en la estrategia global.
• Análisis de los requisitos y su viabilidad:
recopilar, examinar y formular los requisitos del cliente y
examinar cualquier restricción que se pueda aplicar.
• Diseño general: requisitos generales de la arquitectura
de la aplicación.
• Diseño en detalle: definición precisa de cada
subconjunto de la aplicación.
• Programación (programación e implementación): es la
implementación de un lenguaje de programación para
crear las funciones definidas durante la etapa de diseño.
Prueba de unidad: prueba individual de cada
subconjunto de la aplicación para garantizar que se
implementaron de acuerdo con las especificaciones.
• Integración: para garantizar que los diferentes
módulos se integren con la aplicación. Éste es el
propósito de la prueba de integración que está
cuidadosamente documentada.
• Prueba beta (o validación), para garantizar que el
software cumple con las especificaciones originales.
• Documentación: sirve para documentar información
necesaria para los usuarios del software y para
desarrollos futuros.
• Implementación
• Mantenimiento: para todos los procedimientos
correctivos (mantenimiento correctivo) y las
actualizaciones secundarias del software
(mantenimiento continuo).
El orden y la presencia de cada uno de estos
procedimientos en el ciclo de vida de una
aplicación dependen del tipo de modelo de
ciclo de vida acordado entre el cliente y el
equipo de desarrolladores.