Está en la página 1de 28

SQA Software Quality Assurance)

Debemos fabricar software de calidad, satisfaciendo las necesidades


del cliente (usuario) bajo unos mtodos o herramientas efectivos y
siguiendo unas revisiones tcnicas formales
El SQA Revisa y audita los productos y procedimientos verificando
que cumplan con los estndares requeridos e implementando
mecanismos de medicin y generacin de pruebas SQA envuelve
todo el proceso de desarrollo de software, monitoreando y
mejorando el proceso, asegurndose que los problemas sean
encontrados y solucionados, obteniendo as la calidad del resultado

Principios fundamentales para desarrollar sistemas de


gestin de calidad: Foco en el cliente
Liderazgo
Resultados basados en los procesos
Gerencia de las interrelaciones entre procesos
Implicacin del personal
Mejora continua
Relacin con los proveedores
Decisiones basadas en el anlisis de la informacin

El equipo SQA participa en


el desarrollo de la
documentacin y
estructuracin del proceso
de desarrollo del proyecto,
revisa las actividades de
ingeniera de software para
verificar que se ajusten al
proceso definido y audita
los productos para
asegurar que las
desviaciones se
documenten de acuerdo a

Establecimiento de un plan de calidad para un proyecto


Evaluaciones a realizar
Auditoras y revisiones a realizar
Estndares que se pueden aplicar al proyecto
Procedimientos para informacin y seguimiento de errores
Documentos producidos por el grupo de SQA
Retroalimentacin al equipo del proyecto
Establecimiento de un plan de calidad para un proyecto
Participacin en el desarrollo de la descripcin del proceso de software del proyecto
in de las actividades de ingeniera del software para verificar su ajuste al proceso de
software definido
Auditora de los productos de software designados para verificar el ajuste con los
elementos 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 el procedimiento establecido
Registrar e informar lo que no se ajuste a los requisitos

Revisiones del software


Conjunto de actividades que obtenemos como resultado despus de realizar
el anlisis, diseo y codificacin realizado al software.
Adems se hace necesario para sealar las mejoras que se le debe realizar a
una persona o a un equipo.
Objetivos de la revisin Mejorar las necesidades del producto (software)
Decidir que partes del producto (software) no necesitan o no se deben
mejorar
Obtener calidad uniforme o ms predecible, facilitando el trabajo tcnico.
Usar como modelo para detectar errores.

Reunin de revisin
Revisar el producto, no al programador
Fijar una agenda y mantenerla
Limitar debates e impugnaciones
Enunciar las reas de problemas, pero no intentar resolver cualquier
problema que se ponga manifiesto
Tomar notas escritas
Limitar nmero de participantes e insistir en la preparacin anticipada
Desarrollar una lista de comprobacin para cada producto que se vaya
a revisar
Entrenar a los revisores de una manera rigurosa
Repasar las revisiones anteriores

Actividades Importantes antes de una revisin


Las actividades que permiten materializar el monitoreo de procesos, la evaluacin del
producto y las auditoras al interior de una organizacin, son:
Estndares:Los estndares son bsicos en el sistema de calidad del software y proveen la
base para la medicin de las actividades y productos de trabajo durante el ciclo de vida
del software
Revisiones:Las revisiones son la forma de monitorear la calidad de los productos de
trabajo detectando defectos
Prueba:La prueba es la ltima actividad de evaluacin del producto y permite establecer
el nivel de satisfaccin de los requerimientos, aqu se incluye la planificacin, diseo,
ejecucin y reporte sobre los diferentes niveles de pruebas existentes durante el proyecto
Anlisis de defectos:Los defectos ocurren durante todo el ciclo de vida del software, por
ende es necesario concentrar esfuerzos en su deteccin y correccin, siendo el anlisis de
defectos la actividad responsable de corregir las deficiencias y disminuir defectos
Revisiones:Las revisiones son la forma de monitorear la calidad de los productos de
trabajo detectando defectos.
Gestin de configuracin:El propsito de la gestin de configuracin, es mantener la
integridad de los productos a travs de todo el ciclo de vida del software

GESTION DE LA CONFIGURACIN
La gestin de la configuracin cubre la administracin de los
elementos tcnicos que forman parte del proyecto)
Una disciplina fundamental en la ingeniera de software es la
gestin de la configuracin. Esta es donde se identifican, gestionan
y auditan todos los recursos involucrados en un proyecto, con el
objetivo de mantener la integridad de los productos de trabajo.
Otro rol de la gestin de la configuracin es el de tramitar la
aprobacin, rechazo o implementacin de cambios en un proyecto
o algn otro tem que forme parte de la configuracin.

Actividades de gestin de la configuracin


Identificar los productos
Definir estndares de nombramiento y control de versiones
Establecer la estructura de directorios
Definir las caractersticas de los elementos.
Definir polticas, reglas y perfiles para la gestin de la configuracin.
Establecer las lneas base de trabajo.
Gestionar los cambios.
Definir el uso de herramientas.
Generar informes de estado de los productos.
Establecer mecanismos de auditora para la configuracin

Elementos que forman parte de la configuracin


Planes de trabajo y cronogramas
Documentos de especificacin de requerimientos
Documentos de anlisis y diseo
Modelos de datos
Documentos de estndares
Procedimientos
Archivos de configuracin
Scriptsy cdigo fuente del proyecto
IDE's, ensambladores, compiladores y herramientas
Libreras propias y externas
Documentos planeacin y ejecucin de pruebas
Documentacin del producto

Lo que no se mide no se
puede mejorar, la medicin
entrega herramientas para
ser exacto a la hora de
tomar una decisin, los
procesos de ingeniera de
software logran medirse en
cada una de sus fases
(anlisis,
diseo,
implementacin
o
implantacin) esto mediante
la definicin de mtricas que
permitan evaluar, predecir o
retroalimentar cada proceso.

Para qu se mide?

Se definen mtricas en un proyecto para ayudar a entender qu sucede y estimar costos y


esfuerzos. Adems para saber exactamente el grado de avance y evaluar los riesgos.

Midiendo se pueden establecer planes de mejoras y ajustar flujos de trabajo o tareas.

Con la medicin podemos obtener informacin de calidad, complejidad, desempeo, funcionalidad,


confiabilidad, o cualquier otro factor de calidad incluido en el modelo MCCALL referenciado
anteriormente en este programa de formacin.

IMPORTANTE: NO SE MIDE POR MEDIR!!

Caractersticas de una mtrica


Sencillas y exactas.
Calculables.
Intuitivas.
Consistentes y objetivas.
Consistencia con el uso de unidades.
Tener su mecanismo definido para
retroalimentacin de alta calidad.

Caractersticas de una mtrica


Los atributos de una mtrica se muestran en el siguiente
ejemplo de tabla

Mtricas Internas y Externas

La medicin interna de un atributo de un sistema comprende especificacin, documentacin y procesos


de desarrollo, aplican a un producto de software no ejecutable y permiten medir la calidad intermedia
del proceso de desarrollo. A continuacin se relacionan varios ejemplos de posibles mtricas:
Exactitud: son fiables los clculos del sistema?
Complecin: qu tan completa esta la implementacin?
Concisin: qu tan compacta es la aplicacin en trminos de lneas de cdigo?
Estandarizacin de datos: qu tan estandarizados estn los tipos de datos, estructuras y
almacenamiento utilizados?
Modularidad: qu tan independiente, desde lo funcional est el software ?
Facilidad de auditora: se cumplen los estndares?
Eficiencia de ejecucin: cul es el desempeo del sistema?
Independencia del hardware: qu tan portable es el sistema?
Operatividad: qu tan fcil es operar el sistema?

Es el proceso de desarrollo de software desde su fase de inicio hasta


su fase final, logrando un software que cumpla con los
requerimientos exigidos, asegurando que se cumplan los requisitos
de aplicacin y verificacin en los diferentes procesos de desarrollo
Para lograr esto, se debe tener en cuenta estos procedimientos:
Definir objetivos
Anlisis de requisitos y viabilidad
Diseo general y en detalle
Programacin e implementacin
Prueba de unidad

Es el proceso de desarrollo de software desde su fase de inicio hasta su fase final,


logrando un software que cumpla con los requerimientos exigidos, asegurando que
se cumplan los requisitos de aplicacin y verificacin en los diferentes procesos de
desarrollo
Al principio, durante la recopilacin de requerimientos y anlisis, la calidad se
encuentra especificada por los requisitos de los usuarios, sobre todo desde el
punto de vista externo
En la fase de diseo e implementacin, la calidad externa se traduce en un diseo
tcnico, confrontndose con el punto de vista de los desarrolladores sobre la
calidad interna y complementndose con los requisitos implcitos que el software
debe cumplir
La calidad final (la del uso) debe ser apropiada para los usuarios y el contexto de
uso
No existe una calidad perfecta o absoluta. Existe solamente una calidad necesaria
y suficiente para un contexto dado

Eficacia: capacidad de ayudar al usuario a realizar sus


objetivos con exactitud y completitud, en un contexto
dado
Productividad: capacidad de ayudar al usuario en emplear
una apropiada cantidad de recursos para obtener sus
resultados
Satisfaccin: capacidad de complacer a un usuario en un
contexto de uso dado
Seguridad: capacidad de lograr niveles aceptables de
riesgo para las personas, el ambiente de trabajo, y la
actividad, en un contexto de uso determinado

McCall propone tres factores de calidad:


Revisin del producto: este incluye 3 factores de calidad, mantenibilidad, flexibilidad
y testeabilidad
Transicin del producto: incluye los siguientes factores: portabilidad, reusabilidad e
interoperabilidad
Operacin del producto, aqu se incluyen los siguientes factores de calidad,
correctitud, confiabilidad, eficiencia, integridad y usabilidad
La mantenibilidad es el esfuerzo requerido para localizar y corregir fallas
La flexibilidad es la facilidad para realizar cambios
La testeabilidad es la facilidad para realizar la prueba y asegurar que el producto no tenga
errores
La portabilidad es el esfuerzo requerido para transferir entre distintos ambientes de operacin
La reusabilidad es la facilidad de usar el software en distintos contextos

McCall propone tres factores de calidad:


Operacin del producto, aqu se incluyen los siguientes factores de
calidad, correctitud, confiabilidad, eficiencia, integridad y usabilidad
La interoperabilidad comprende el esfuerzo requerido para acoplar el producto
con otros sistemas
La correctitud es el grado del producto que cumple con la especificacin
La confiabilidad es cuando el producto responde ante situaciones no esperadas
La eficiencia hace referencia al buen uso de los recursos requeridos
La Integridad es la proteccin de datos y del programa
La Usabilidad hace referencia a la facilidad de operacin del producto

Es el proceso de desarrollo de software desde su fase de inicio hasta su fase


final, logrando un software que cumpla con los requerimientos exigidos,
asegurando que se cumplan los requisitos de aplicacin y verificacin en los
diferentes procesos de desarrollo
Al principio, durante la recopilacin de requerimientos y anlisis, la calidad
se encuentra especificada por los requisitos de los usuarios, sobre todo
desde el punto de vista externo
En la fase de diseo e implementacin, la calidad externa se traduce en un
diseo tcnico, confrontndose con el punto de vista de los desarrolladores
sobre la calidad interna y complementndose con los requisitos implcitos
que el software debe cumplir
La calidad final (la del uso) debe ser apropiada para los usuarios y el
contexto de uso
No existe una calidad perfecta o absoluta. Existe solamente una calidad
necesaria y suficiente para un contexto dado

También podría gustarte