Qué es QA testing y su importancia en el desarrollo de software
Cuando se trabaja en un proyecto para un cliente, lo primordial es el aseguramiento de la calidad (QA) del producto y que todo funcione como se especificó en el requerimiento.
Cuando se trabaja en un proyecto para un cliente, lo primordial es el aseguramiento de la calidad (QA) del producto y que todo funcione como se especificó en el requerimiento.
POR ANGÉLICA GARCÍA, CRISTHIAN LEÓN, GERSON PUENTE, NYDIA HERNÁNDEZ Y HEIDY HERNÁNDEZ / QA EN HTECH
Quality Assurance (QA) es el proceso utilizado para asegurar que el producto sea de la mayor calidad posible. Busca ofrecer una gran experiencia de usuario y cumplir con las expectativas generales del proyecto. Como lo menciona Muhammad Raza: “Calidad, se refiere a la conformidad de requisitos, expectativas y normas implícitas o explícitas”.
Para lograr la calidad en un producto es fundamental detectar errores y corregirlos a tiempo, por lo tanto, es importante que el equipo de QA esté presente en cualquier fase de desarrollo del proyecto, aplicando distintos tipos de pruebas para validar que cada funcionalidad, integración o nuevo módulo cumpla con los requisitos solicitados por el cliente.
Con la evolución de la era digital, los sistemas de software se volvieron de uso básico en la vida. Hoy en día existen aplicaciones de actividades bancarias, entretenimiento, consumo etc. Sin embargo, la mayoría de las personas ha tenido una mala experiencia usando alguna aplicación, lo que ocasiona muchos problemas a las partes interesadas.
A pesar de que existen diversas causas que pueden afectar la calidad de un software es indispensable hacer conciencia sobre los resultados de los errores que se cometen al no contar con un control de calidad, ya que existe una amplia probabilidad de que se presente un sinnúmero de problemas en el uso del sistema. Esto perjudica visiblemente la imagen de la empresa, le hace perder clientes potenciales y le trae costos visibles e invisibles que la desfavorecen, como la pérdida de dinero y tiempo o una mala reputación comercial.
Anteriormente, la compañía Htech no contaba con un departamento de calidad, lo que generaba un alto índice de defectos en entornos de producción. Esto afectaba los costos y tiempos de la empresa, como comentaba Fernando Flores, CTO de la empresa:
“Antes, las tareas de testing se repartían entre programadores, project managers e incluso directivos. Éramos pocos, una empresa de 50 personas aproximadamente, con un ambiente tipo startup, donde todos hacíamos de todo, pero, conforme fueron creciendo los proyectos en tamaño y en número se empezó a descuidar la calidad, se pasaban muchos errores en producción y reproducir algunos errores afectaba en los tiempos de desarrollo.“
Basado en eso se tomó la iniciativa de crear el departamento de QA en la compañía, con lo que se obtuvo beneficios y se fomentó la confianza en el nivel de la calidad del producto.
Por lo tanto, contar con un equipo que se encargue de validar la calidad del software es una forma de prevenir y reducir los riesgos en la operación final. Los objetivos principales que busca un QA son:
En esta época, todavía hay quien no podría tomar la importancia necesaria de las pruebas de software. También sabemos que tener un área de QA a veces puede ser costoso, pero aplicando técnicas y buenas prácticas puede aportar grandes beneficios como:
Como se mencionó al inicio, para validar si el producto cumple con los requisitos, un QA debe realizar las actividades de pruebas en diferentes entornos, de acuerdo con los objetivos que se persiguen en el proceso de desarrollo, a fin de garantizar el control y el aseguramiento de la calidad dentro de un proyecto. Podemos diferenciar entre dos conjuntos de pruebas principales:
Para finalizar, si bien la labor de QA es detectar la presencia de defectos y tratar de prevenirlos, no representa la ausencia de éstos. Por lo tanto, para conservar y garantizar la calidad de un producto, todos los implicados deben trabajar en conjunto aportando conocimientos y esfuerzos.