Contáctame 

Tel: 55-3694-9001

México

javlopezl@agilecoach.space

  • Google+ Long Shadow
  • Facebook Long Shadow
  • LinkedIn Long Shadow
  • Twitter Long Shadow

© 2023 por Diego Serrano. Creado con Wix.com

¿Qué entendemos por Aseguramiento de Calidad del Software?

En esta ocasión quiero hablar de dos diferentes enfoques acerca del concepto "Aseguramiento de Calidad" en el Desarrollo de Software.
 

Pruebas de Software.

 

Un primer enfoque, y el más utilizado, es para referirse a las Pruebas de Software. Esto es dentro del Ciclo de Vida del desarrollo de Software se refiere a las Pruebas que se realiza para verificar y validar el correcto desarrollo de las aplicaciones desarrolladas.

 

 

 

 

Sin intentar profundizar en el tema de las Pruebas de Software mencionaré algunos conceptos muy breves acerca de ellas.

 

Definición: Es un proceso paralelo al del Desarrollo de Software para determinar si el producto alcanza el nivel de calidad esperado y acordado.

 

Objetivos: Detectar el mayor número de defectos y verificar y validar que se cumple satisfactoriamente con los requisitos solicitados por el Cliente.

 

En la Definición del concepto de Pruebas se ha mencionado que son un proceso paralelo al de Desarrollo, esto es que las pruebas no se reducen solamente a la última fase del ciclo sino que se ejecutan en todo el Ciclo de Vida del desarrollo del Software. 

 

Esto se muestra principalmente con el Modelo en V como se observa en la siguiente imagen.

 

 

 

El Modelo en V considera realizar pruebas desde el levantamiento de los requerimientos hasta la aceptación del producto por parte del Cliente.

 

Dentro de este Modelo se consideran las Pruebas Estáticas, que se ejecutan sin la aplicación a desarrollar, es más bien una verificación y validación de los requerimientos, análisis y diseño del producto y las Pruebas Dinámicas que se ejecutan con la aplicación ya construida. Además en la medida que se va completando cada fase se pueden ir diseñando las pruebas correspondiente a cada nivel. Esto es, cuando ya se cuenta con los Requerimientos definidos se diseñan las Pruebas de Aceptación, cuando se cuanta ya con la arquitectura establecida se diseñan las Pruebas de Sistema, cuando se cuenta con el diseño de componentes se pueden elaborar las Pruebas de Integración y teniendo el código se diseñan las Pruebas Unitarias (Salvo en el caso de que se trabaje con TDD, en cuyo caso primero se diseñan las pruebas unitarias y después se ejecutan).

 

Técnicas de Prueba:

 

En las Pruebas Estáticas se pueden ejecutar lo que se conoce como revisiones de software y estas pueden ser informales como las Revisiones entre Pares o formales como la Inspección.

 

En las Pruebas Dinámicas se pueden utilizar Técnicas de Caja Negra (Cuando no se conoce el código fuente) y Técnicas de Caja Blanca (cuando se conoce el código de la aplicación).

 

Algunas Técnicas de Caja Negra son:

  • Clases de Equivalencia.

  • Valores al Límite.

  • Tablas de Decisiones.

  • Transición de Estado.

  • Grafos de Flujo.

  • All Pairs.

  • Pruebas Exploratorias.

Algunas Técnicas de Caja Blanca son:

  • Pruebas de Sentencia y Cobertura.

  • Pruebas de Decisión y Cobertura.

Las Pruebas pueden ser Funcionales, es decir, se refieren a verificar que se cumpla con la funcionalidad esperada por el cliente y las No funcionales que se refieren más bien a aspectos de rendimiento, usabilidad, desempeño, volumen, entre otras, y que son aspectos que se deben considerar para que la aplicación o producto generado cumpla adecuadamente con su objetivo.

 

Aseguramiento de Calidad de Procesos y Productos.


Un segundo enfoque es el que le da el Modelo de Referencia CMMI (Capability Maturity Model Integration) con el área de Proceso PPQA (Process and Product Quality Assurance) esto es el Aseguramiento de Calidad de Procesos y Productos.

 

El propósito de PPQA es proporcionar al personal y a la gerencia una visión objetiva de los procesos y de los productos de trabajo asociados.

 

Las Metas y Prácticas específicas son:

 

Meta 1. Evaluar objetivamente los procesos y los productos de trabajo.
   Práctica 1.1 Evaluar objetivamente los procesos.
   Práctica 1.2 Evaluar objetivamente los productos de trabajo.

 

Meta 2 Proporcionar una visión objetiva.
   Práctica 2.1 Comunicar y resolver las no conformidades.
   Práctica 2.2 Establecer los registros.


Esto es, cuando se tienen definidos y establecidos procesos de Desarrollo de Software, como pueden ser la Ingeniería de Software, la Administración de Proyectos y algunos otros procesos de soporte como lo son la Administración de la Configuración, Toma de Decisiones, etc., lo que asegura esta área es que se cumplan con los procesos establecidos, es decir, por ejemplo si se ha definido que para el levantamiento de requerimientos se van a generar especificaciones de Caso de Uso y que después se van a elaborar el diseño mediante diagramas de UML y que en la codificación se van a seguir estándares establecidos y que para probar el Software se diseñarán casos de prueba, el Asegurador de Calidad debe verificar que efectivamente se han seguido estos procesos.

 

Así mismo tiene que verificar que los productos generados mediante dichos procesos cuenten con la calidad esperada y hablamos no solo del Código sino de las Especificaciones de Casos de Uso, los Diagramas elaborados y las suite de pruebas diseñadas, se tiene que garantizar que éstas cumplan con los estándares establecidos como puede ser que estén completas, que sean consistentes, etc,

 

Cuando no se cumple con el Proceso o con los estándares de calidad establecidos para los productos generados se genera una No Conformidad, las cuales se registran y se comunican tanto al Equipo de Trabajo como a la alta dirección para su atención y resolución y para tomar las decisiones que sean necesarias para garantizar el éxito del proyecto.

 

Para lograr un mayor beneficio del Aseguramiento de Calidad se debe procurar ejecutarlo desde el inicio del proyecto hasta su cierre con un enfoque pro-activo y no reactivo, es decir, que los informes objetivos ayuden a tomar decisiones y acciones oportunas que permitan cumplir con el tiempo, costo y calidad esperada para cada Proyecto.

 

 

 

Share on Facebook
Share on Twitter
Please reload

Posts Destacados

Mapa de las Metodologías Lean Agile

15/11/2017

1/1
Please reload

Posts Recientes
Please reload

Búsqueda por Tags
Please reload

Conéctate
  • Google+ Long Shadow
  • Facebook Long Shadow
  • LinkedIn Long Shadow
  • Twitter Long Shadow