Unidad 2 Aseguramiento de La Calidad Del Software
Unidad 2 Aseguramiento de La Calidad Del Software
Unidad 2 Aseguramiento de La Calidad Del Software
Necesidad de ingeniería
PERSPECTIVA HISTÓRICA DEL DESARROLLO DE
SOFTWARE
Década 50-60 Software como un añadido
Desarrollo artesanal, a la medida
Lenguaje de bajo nivel
Década 60-70 Software como producto
Década lenguajes y compiladores
Crisis de software
Década 70-80 Tecnología de SGBD, SO.
Nuevos paradigmas de programación y de productos
• Algunas causas:
• Naturales no física de la programación
• Problemas derivados de la intervención de grupos
• Problemas de comunicación con los clientes
• Poco esfuerzo en el análisis y diseño
• Problemas de gestión
• A veces, el software debe solucionar los problemas del
• sistema global.
• Difusión limitada a las nuevas técnicas, métodos y
• herramientas.
DIFERENCIAS EN COMPARACIÓN A OTRAS
DISCIPLINAS:
• El software es un producto mental
• Se desarrolla, no se fabrica.
• Los costos se concentran en las tareas de ingeniEl software no se deteriora con el tiempo.
• Es artesanal en gran medida.
• Su mantenimiento es mucho más complejo.
• Los cambios son engañosamente fáciles.
• Como disciplina el desarrollo de software es joven.
• Se debe satisfacer una amplia gama de entes.
• Es necesario crear una cultura de calidad.
2.2 DEFINICIÓN Y PROPÓSITO DEL SQA
(GARANTÍA DE LA CALIDAD DEL SOFTWARE)
• 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.
• Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan
tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes
posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los
plazos de implementación y en los costos asociados.
2.5 ROLES Y RESPONSABILIDADES EQUIPOS
DESARROLLO
Debe conocer los conceptos y técnicas de Gestión de Calidad del Software. Debe identificar las propiedades de
calidad que deben cumplir los productos del proyecto.
Centralizar y revisar las entregas que se realizan durante el ciclo de vida del proyecto.
Realiza las Revisiones Técnicas Formales con los responsables de los productos a revisar.
EL RESPONSABLE DE SQA DEBE:
•Asegurarse de que se desarrollen prototipos para probar y eliminar riesgos técnicos que hagan fracasar el
proyecto así como también disminuir la calidad del mismo
•Asegurarse de que se realicen estudios de factibilidad
•Realizar mediciones para comprobar la calidad del proyecto
•Asegurarse de que se realice la actividad de implementación y se haga según los estándares de calidad
propuestos
•Evitar el desperdicio de esfuerzo en conjunto con el Administrador y el Arquitecto
•Registrar las métricas de aceptación tomando en cuenta el Documento de Validación con el Cliente.
2.7 ACTIVIDADES DEL SQA.
• Para poder lograr una buena adherencia con los estándares se debe medir cuantitativamente, donde
sea posible, los aspectos de calidad (por ejemplo complejidad, confiabilidad, mantenimiento, seguridad,
defectos, número de problemas) utilizando métricas bien establecidas. Para cumplir con esto, se deben
realizar chequeos de: - Administración.
- Documentación.
- Estándares, prácticas, convenciones y métricas.
- Revisiones e intervenciones.
- Actividades de testeo.
- Reporte de errores y acciones correctivas.
- Herramientas, técnicas y métodos.
- Control del código
- Control de medios.
- Colección de registros, mantenimiento y retención.
- Control de los proveedores
- Entrenamiento.
- Administración del riesgo
2.8 MÉTODOS Y HERRAMIENTAS.
Metodologia SQA:
En los sistemas operativos, es prácticamente imposible eliminar todos los errores antes de liberar la versión, esto se debe a los diferentes puntos
de vista y a las limitaciones de tiempo. Diferentes aplicaciones de SW requieren distintos enfoques en lo que respecta a las pruebas.
Los métodos más comunes para el aseguramiento de la calidad son los
siguientes:
1) Auditorías PPQA (Process and Product Quality Assurance)
Es la actividad de garantizar que el proceso y el product de trabajo se ajustan al plan acordado.
2) Pruebas de Validación:
Es el acto de introducir datos, los cuales el testar sabe que son erróneos en la aplicación.
3) Comparación de datos:
Técnica que se realiza comparando los resultados de una aplicación con parámetros específicos con los resultados de otra aplicación previamente
creada, introduciendo los mismos parámetros de manera que se obtenga un resultado exacto.
4) Prueba de esfuerzo (Stress Testing)
Se realiza cuando el SW es utilizado de la manera más “ruda” posible en un período de tiempo para ver si trabaja con altos niveles de carga.
5) Pruebas de Uso:Aveces conseguir usuarios que no estén familiarizados con el SW para probarlo por un tiempo determinado, ofrece
retroalimentación a los desarrolladores acerca de las dificultades que encontraron. Esta es la mejor maneta de realizar mejoras a la interfaz.
HERRAMIENTAS BÁSICAS.
Diagrama de flujo.
Se dicen que los diagramas de flujos tienen como objetivo descomponer los pasos de un proceso en una secuencia. Se pueden emplear los siguientes elementos: secuencias de
acciones, servicios o materiales que entran o salen delo proceso, personas implicadas, tiempo empleado en cada uno de los pasos y medidas del proceso.
Herramientas de gestión
DIAGRAMA DE RELACIONES.
Es una herramienta utilizada para identificar las causas más significativas de un problema y representar gráficamente los vínculos que pueden existir entre los factores
relacionados con ese problema. Esta herramienta ayuda a un grupo de trabajo a identificar los enlaces naturales entre diferentes aspectos de una situación compleja
Herramientas de creatividad
Es una herramienta de trabajo en grupo basada en la creatividad de los componentes del grupo de trabajo. Se pretende obtener el mayor número de ideas o soluciones en el
menor tiempo posible, seleccionando posteriormente las más indicadas, es decir, aquellas que mejor se adaptan a los objetivos del problema.
Herramientas estadísticas.
CONTROL ESTADISTICO DEL PROCESO.
Se entiende por capacidad de un proceso el grado de aptitud que tiene para cumplir con las especificaciones técnicas deseadas. Para determinar si un proceso es no capaz, se
pueden utilizar las siguientes herramientas: Histogramas, Gráficos de control, Gráficos de probabilidad, Estudios de índices de capacidad, Se considera un índice de capacidad
como la relación entre la variación natural del proceso y el nivel de variación especificada.
Herramientas de diseño
El diagrama de despliegue de la función de calidad es una técnica utilizada para planificar nuevos productos y servicios o realizar mejoras en los existentes a partir de métodos
matriciales, cuyo objetivo es que los requisitos del cliente lleguen a estar completamente contenidos en las especificaciones técnicas del producto o servicio. La principal ventaja
de esta técnica es la reducción del tiempo del diseño y la disminución de los costes, manteniendo y mejorando la calidad.