Nueva normalidad para el desarrollo de software: DevOps con calidad y seguridad

La implementación de DevOps tiene distintas concreciones, distintos grados de madurez, distintos entornos de trabajo, distintas formas de gestión, distintas tecnologías, distintas herramientas… pero no cabe duda de la importancia de avanzar hacia la coordinación, automatización y la gestión transversal de actividades (desarrollo, operaciones, ingeniería de la calidad, seguridad,…), en contraste con las anteriores visiones departamentales que provocaban y siguen provocando silos.  Actualmente, el mercado requiere de más iteratividad, entregas incrementales y más alineamiento con los requisitos de usuario (funcionales, de rendimiento, de seguridad, de usabilidad, de experiencia de usuario,…). Sin lugar a dudas, el ritmo de aceleración en la digitalización de software de los últimos tiempos, hace aún más necesario que los equipos busquen la excelencia tanto a nivel técnico como organizativo, aumentando así su confianza en las aplicaciones que ellos mismo desarrollan y logrando alcanzar de forma más inmediata los objetivos empresariales.

El desafío implica crear e impulsar una cultura DevOps para focalizar y mejorar la forma en que las personas trabajan y colaboran, con el objetivo común de realizar entregas de software más eficientes. Pero no es suficiente: no podemos entender DevOps solo desde el punto de vista de la velocidad de entrega, sino también en la continua mitigación de riesgos derivados de una falta de calidad en dichas entregas. Es imprescindible poner el foco en la calidad (desde todas sus perspectivas) y de manera específica en la seguridad. Las organizaciones suelen tardar más de 2001 días en descubrir una vulneración en la seguridad, que puede llegar a ser tremendamente costosa de resolver. NIST2 estimó que el coste de corregir un defecto de seguridad en la fase producción puede ser hasta 603 veces más caro que si se detecta durante el ciclo de desarrollo. Es evidente que cualquier defecto de calidad, es menos costoso de resolver (y con menor riesgo y coste) si se detecta y aborda en actividades más tempranas del desarrollo, más aún cuando hablamos de seguridad.

Es necesario, pues, planificar, definir, implementar y ejecutar actividades de aseguramiento de la calidad como parte esencial de un entorno DevOps, soportadas por una cultura de búsqueda progresiva de la eficiencia en la entrega y de mejora de la calidad, de la seguridad y de la excelencia tecnológica.

Publicado en IT User