CalidadySotware.com / Testing / Softwarte Testing vs Quality Assurance - ¿En que se diferencian? ¿Que aplicar?

Autor: Ing. Jimena Ortiz Velásquez.

SOFTWARE TESTING VS. QUALITY ASSURANCE

 

Con el paso de los años se han ido inventando nuevas formas de mejorar los sistemas. Estas mejoras son tomadas en cuenta dada la necesidad de obtener productos (software) de mejor calidad.

Este artículo ha sido escrito precisamente para tratar de aclarar 2 de los conceptos más mencionados al referirse a la calidad del software: Pruebas de Software (Software Testing) y Aseguramiento de la calidad QA (siglas de las palabras en inglés Quality Assurance).

Para tener una idea clara de las diferencias y relación entre ambos, es necesario conocer los conceptos.

 
 

Las Pruebas de Software son una fase muy importante dentro de casi todos los modelos conocidos de Ciclo de Vida del Software. Por ejemplo; en el venido de los 70’s pero aún utilizado, modelo Cascada, se realizan las pruebas una vez terminada la construcción del sistema, en el Incremental se realizan las pruebas en cada incremento del sistema, o por ejemplo, en el Evolutivo mediante la retroalimentación de los usuarios, en el espiral durante su verificación y validación del desarrollo, o en los enfoques XP (eXtreme Programming o Programación Extrema) con repetidas pruebas de cada una de las mejoras debido a su desarrollo iterativo e incremental. Así podríamos ir mencionando otros modelos no tan conocidos pero que seguramente incluyen Pruebas también para entregar sistemas de Calidad.

Por otro lado, QA se refiere a asegurar (como su nombre lo dice) la calidad en cada una de las fases de la elaboración de un producto final, cualquiera que éste sea. En el caso de QA de software, se referirá entonces, a asegurar la calidad de los resultados de cada una de las fases del ciclo de vida del software y con esto, asegurar la calidad del producto final. Para cumplir con este aseguramiento se deberán definir estándares y establecer procedimientos contra los cuales se pueda comparar lo alcanzado durante cada una de las fases. Por ejemplo; si para el Análisis de Requisitos dentro de un modelo cascada, se ha definido un tipo determinado de documento a presentar, entonces para pasar a la fase de Diseño, el documento de Análisis deberá estar conforme al documento estándar ya que una fase que no se ejecutó de forma correcta podría causar (y muy probablemente lo haga) defectos en las fases posteriores. La idea es que mientras más temprano se detecten las fallas, menor será el costo (monetario, de tiempo, recursos, calidad, etc.) de repararlas y mayor la calidad del producto final.

Una vez con estos conceptos en mente será más sencillo señalar un par de diferencias y relaciones entre ambos:

  • Las Pruebas de Software se realizan en una de las fases del ciclo de vida del software; mientras que QA de software se deberá ejecutar en todas las fases (incluida la fase de Pruebas).
  • Las Pruebas de Software utilizarán Casos de Pruebas para ser ejecutados; en cambio QA de software utilizará los estándares y procedimientos establecidos para cada una de las fases del ciclo de vida del software.
  • Ambas permitirán verificar y afirmar la calidad del producto final, el software.
  • Ambas definen un conjunto de actividades a realizarse dentro del ciclo de vida del software para mejorar y asegurar la calidad del mismo.

Este tema es sumamente amplio y en este artículo sólo se ha tocado una pequeña parte de él, pero como se mencionó inicialmente, QA y Pruebas de Software son de los conceptos más utilizados al hablar de Calidad de Software así que hay que tenerlos siempre claros para saber cuándo utilizarlos!

Ing. Jimena Ortiz Velásquez



 
 
 
CalidadySoftware.com 2009 - © Todos los derechos reservados
Sitio Web Alojado por NazcaSoft.com