DevOps y la tendencia de cambio a la izquierda (Shift-left)
- Gestión de apps
Hoy en día, el software se desarrolla de una manera diferente al estilo de cascada del pasado. Muchos equipos ahora tienen como objetivo ofrecer un "producto mínimamente viable", o MVP, lo antes posible. Luego pueden obtener retroalimentación temprana sobre el MVP y usar esa retroalimentación para impulsar un mayor desarrollo incremental del producto.
Para lograr una entrega de software incremental a alta velocidad y calidad, el software debe probarse lo antes posible y debe repetirse cada vez que se realice un cambio. Aunque se habla mucho de "turno a la izquierda", el término es en realidad un tanto engañoso.
No significa sacrificar las pruebas que se realizan hacia el final del desarrollo de una función en favor de las pruebas por adelantado. Más bien, se refiere a las pruebas en todo el ciclo de vida del desarrollo del software, una práctica conocida hoy en día como "prueba continua".
La prueba continua es la idea de que la prueba se infunde en todo el proceso de entrega y es la clave para una integración continua efectiva. Desde el diseño de una historia de usuario, el equipo debe considerar cómo se debe probar esa historia. Deben pensar cómo se utilizará, cómo se integrará con otros componentes de software, el entorno en el que se ejecutará, la cantidad de personas que lo usarán, los datos que recopilará y expondrá, y más.
Esto guiará al equipo mientras escriben el código y también determinará las pruebas que necesitan ejecutar.
Estas pruebas se ejecutan a medida que se escribe el código, y también cuando se confirma al sistema de control de código fuente, algo que sucede muchas veces al día para un equipo que practica la integración continua. Si una prueba falla, el desarrollador recibirá una alerta casi de inmediato, para que pueda repararse de inmediato. Una vez que el código está en el sistema de control de código fuente, se realiza automáticamente una compilación.
A medida que avanza la compilación, se ejecutan muchas pruebas. Si alguno de ellos falla, la compilación se detiene y el equipo recibe una alerta para resolver el problema.
Para acortar los tiempos de prueba y obtener la mejor cobertura de prueba, las pruebas deben ser automatizadas.
Shift-left vale la pena el esfuerzo
A pesar de los desafíos, a las organizaciones se les recomienda que cambien de puesto y adopten pruebas continuas. Para que sigan siendo competitivos, deben diseñar la calidad y la seguridad en todo lo que hacen. Al introducir y aumentar gradualmente la automatización en sus procesos, eventualmente podrán implementar entornos de prueba y datos de prueba confiables y consistentes, y ejecutar pruebas automatizadas en todo el proceso de implementación.
El cambio de las pruebas a la izquierda significa que los defectos se encuentran más rápido y su reparación es menos costosa, además de permitir que los equipos centren sus esfuerzos en el valor comercial en lugar de la depuración. Todo esto ayudará en gran medida a garantizar una transformación digital exitosa, creando una experiencia de usuario segura, de alto rendimiento y de alto rendimiento.
Descubre la innovación
Para asegurar el éxito empresarial, ahora y a futuro, es imprescindible maximizar el retorno de la inversión existente en software, a la vez que innovar y adoptar nuevas tecnologías. Los retos que hay abordar para competir en un mundo de TI Híbrida incluyen DevOps, Seguridad, Gestión de riesgos y Análisis predictivo. Puedes obtener más información sobre cómo abordar estos retos e innovar en este enlace.