1. ¿Qué es la metodología DevOps?
DevOps es una metodología de tecnología de la información (TI) que facilita la colaboración, la comunicación y la integración entre los equipos de desarrolladores de software y los equipos de operaciones de TI. El objetivo principal de DevOps es mejorar la calidad y la velocidad de la entrega de software, permitiendo actualizaciones continuas y frecuentes que brindan valor a los clientes.
El equipo de DevOps trabaja en conjunto para crear un entorno de producción, prueba y desarrollo coherente y automatiza el proceso de desarrollo para que la entrega de software sea eficiente, predecible, sostenible y segura.
DevOps brinda a los desarrolladores un mejor control sobre su infraestructura y una comprensión más clara del entorno de producción, y alienta a los especialistas en operaciones a participar en las primeras etapas del proceso de desarrollo. Crea una cultura de propiedad y responsabilidad compartida para el software que se ejecuta y ofrece valor en la producción.2. ¿Qué es la cultura DevOps?
DevOps no es solo una metodología o práctica, también es una cultura organizacional. La cultura DevOps se centra en equipos pequeños e interdisciplinarios que pueden trabajar de forma independiente y son conjuntamente responsables de la experiencia del usuario proporcionada por un producto de software. El equipo de DevOps vive en producción, lo que significa que se enfoca principalmente en mejorar el uso del producto en vivo.
Una cultura DevOps tiene los siguientes elementos esenciales:
- Los equipos de DevOps adoptan prácticas ágiles e integran el desarrollo y las operaciones con las responsabilidades de cada equipo. Los equipos trabajan en pequeñas iteraciones, esforzándose por mejorar la entrega de valor al cliente de un extremo a otro y eliminando el desperdicio y los cuellos de botella del proceso. Los equipos son corresponsables, eliminando silos o acusaciones.
- Los equipos de DevOps aplican una mentalidad de crecimiento: utilizan la supervisión y la telemetría para recopilar pruebas en la producción y ver los resultados en tiempo real. Experimentan con nuevas funciones en producción, utilizando técnicas como implementaciones canary o blue / green, para recopilar datos rápidamente, probar funciones y utilizar los resultados para impulsar la mejora continua.
- Los equipos de DevOps se centran en el tiempo medio para mitigar (MTTM) y el tiempo medio para remediar (MTTR) en lugar del tiempo medio entre fallas (MTBF). A diferencia de los equipos tradicionales en cascada que han hecho todo lo posible para evitar problemas en el campo, el equipo de DevOps reconoce que ocurrirán fallas y enfatiza la capacidad de actuar rápidamente, comprender el impacto y mitigar los problemas de producción.
- Los equipos de DevOps piensan en términos de competencias, no de roles; esto incluye habilidades operativas y de desarrollo. Todos los miembros del equipo comparten la responsabilidad de realizar los servicios. Los desarrolladores y las operaciones son responsables de los servicios activos y todos pueden compartir un horario de guardia rotativo. Si lo construyó, es responsable de ejecutarlo.
3. Tecnología Pipeline DevOps
La canalización de desarrollo de DevOps se basa en un conjunto de tecnologías que permiten la automatización, la eficiencia y la colaboración.
Cuando hablamos de pruebas de software que se ejecutan en la plataforma Mainframe, existe un gran desafío para las empresas, que es unir los equipos de Aplicación Funcional (Ejemplo en el Sistema Bancario = préstamos, cuenta corriente, tarjeta de crédito, etc.) con los equipos de Aplicaciones Corporativas (Ejemplo en el Sistema Bancario = tarifas, altas, parámetros, etc.), para que todas las Pruebas Integradas y/o UAT se realicen sin impactos / indisponibilidad en el Ambiente, o incluso que las reglas de negocio estén 100% validadas cubriendo todas las situaciones de código.
Muchos casos vividos a diario por la gran mayoría de empresas, es que internamente, los estudios estadísticos demuestran que alrededor del 35% del tiempo de los equipos de Aplicaciones Corporativas se dedica a poner a disposición situaciones/casos de prueba que cumplen con los equipos de Aplicaciones Funcionales, y ¿Por qué ocurre esto? Normalmente, en entornos de prueba integrados y/o mainframe UAT, las aplicaciones de los sistemas corporativos tienen su acceso limitado solo a los usuarios de esos sistemas y/o equipos de infraestructura/soporte. Además, con la gran demanda de actividades, los SLA de servicio terminan siendo cada vez más largos cada día, y muchas veces el servicio de entornos de prueba se vuelve una prioridad menor, ya que estos equipos siempre priorizan las demandas de los entornos productivos, y esto refleja directamente el entrega de nuevas aplicaciones y/o mantenimiento al cliente final.
Ante este escenario, que viene sucediendo desde hace años, Eccox Technology ha invertido fuertemente en una tecnología moderna llamada Eccox APT, que flexibiliza el día a día de los usuarios (Dev, Tester y Managers), permitiendo la creación de un Container para pruebas en un entorno mainframe sin la dependencia entre las áreas, ya que los componentes en ejecución, ya sean funcionales o corporativos, pasan a ser propiedad / patrimonio del usuario de este Container.
Para obtener más detalles, consulte nuestro material (Whitepaper | 6 Consejos para superar obstáculos en las pruebas de aplicaciones mediante la implementación de DevOps en Mainframe).