Creación de un departamento de QA desde cero
Esta iniciativa ha permitido completar el catálogo de herramientas de QA y refinar la implementación de los automatismos asociados a la entrega y despliegue de FIATC, integrando el análisis SAST y la evaluación temprana de la seguridad de los aplicativos. Adicionalmente se han establecido las bases para la creación de una oficina de QA que gobierne estos procesos.
Sector
Seguros
Tipo de servicio
Proyecto cerrado
Área tecnológica
El Reto
FIATC, una de las principales aseguradoras en el ámbito nacional, se encuentra inmersa en un ambicioso proyecto de optimización de diferentes procesos, metodologías y herramientas enmarcados en el ámbito digital de la compañía.
Dentro de este contexto, surgió la necesidad de definir una serie de protocolos y estándares que se encargaran de procedimentar y garantizar el cumplimiento de un adecuado aseguramiento de la calidad del software desarrollado dentro de la entidad.
Como requisito inicial, FIATC demandaba la implementación y configuración de la herramienta de análisis de código estático que permitiera no sólo analizar la deuda técnica de sus activos, sino también detectar las posibles vulnerabilidades que estos pudieran tener en términos de seguridad como SQL Injection, Log Injection, cross-site scripting, etc.
Nuestra Solución
El primer paso fue establecer todos los flujos y pipelines CI/CD dentro de los distintos proyectos existentes. Todo esto se hizo sobre Jenkins, usando pipelines independientes para cada proyecto y entorno.
Inicialmente se estableció una metodología Gitflow en los proyectos más actuales y punteros, para, una vez validada, hacerla extensiva al resto de proyectos de la entidad, más de mil hasta la fecha.
A continuación, se integraron la ejecución y validación de resultados de Sonarqube en los pipelines de Jenkins, habilitando este análisis transversal para el resto de proyectos. Una vez presentados los primeros informes sobre los agujeros de seguridad y bugs detectados, se comenzó a debatir y formalizar un protocolo de actuación para afrontar este déficit lo antes posible.
Se identificaron gaps existentes como la carencia de documentación funcional, tema que fue atajado con el apoyo del equipo de QA.
Se completó el toolchain eligiendo una herramienta para prototipado y wireframes (Invision).
Mediante la herramienta de gestión de pruebas, Cucumber Studio (antes Hiptest) se organizarían y analizarían todos los escenarios y test runs de cada proyecto.
Se establecieron las bases del futuro framework de automatización en el cual se eligió un framework basado en Java, Cucumber, Junit, Extend Reports y conectado vía API a Cucumber Studio para sincronizar los resultados de cada test run que se ejecute en el futuro en Jenkins.
Finalmente, se comenzaron a sentar las bases de lo que sería la futura oficina de calidad dentro de la entidad, que se encargaría de la definición de políticas de calidad y seguridad, su ejecución y validación automatizados.