Por qué un enfoque automatizado y shift-left de las pruebas de rendimiento en el mainframe es crucial

DevOpsProyectosSoftware

Veronique Dufour-Thery, Vicepresidenta Sur de Europa, Oriente Medio y Norte de África de Compuware a BMC company, resalta la importancia de acelerar la entrega de aplicaciones sin que la calidad del software se vea afectada.

Mientras seguimos avanzando hacia un futuro en el que lo digital es lo primero, cada vez es más importante para las empresas basadas en software acelerar la entrega de nuevas aplicaciones y proporcionar a sus clientes la mejor experiencia de usuario. Sin esta capacidad será cada vez más difícil seguir el ritmo de los nuevos nativos digitales y de los competidores tradicionales, puesto que la velocidad en la innovación es determinante para el éxito. Son muchas las grandes organizaciones -de hecho, alrededor del 70% de las empresas Fortune 500- en las que el mainframe soporta la mayoría de las funciones nucleares en las que el negocio apoya su oferta de servicios digitales. Como resultado, la capacidad para permitir a sus desarrolladores trabajar en aplicaciones COBOL con mayor velocidad y fiabilidad es crucial para el éxito empresarial.

La paradoja del rendimiento

A pesar de la importancia de acelerar la innovación en el mainframe, la escasez de programadores COBOL y la ola de demanda de nuevos servicios digitales y funcionalidades en las aplicaciones provocan que los desarrolladores cada vez estén más abrumados y se vean obligados a elegir entre velocidad o calidad del código. Sin embargo, ofrecer aplicaciones de alta calidad y alto rendimiento es fundamental para proporcionar a los clientes experiencias únicas y perfectas, y las pruebas son parte crucial del proceso de entrega. Desgraciadamente, para muchos resulta difícil encontrar el equilibrio entre probar el código a fondo y realizar ese trabajo de forma rápida y eficiente; especialmente porque el ritmo creciente de la transformación digital implica que hay más código para probar que nunca.

Un estudio de Vanson Bourne subraya el alcance de este desafío al constatar que, para garantizar que los servicios funcionarán tal y como se espera, los equipos de desarrollo dedican el 51% de su tiempo a las pruebas durante el lanzamiento de una nueva aplicación mainframe, impactando así en la capacidad competitiva de la organización. No obstante, sacrificar la calidad por la velocidad al reducir el alcance de las pruebas también puede significar costes, en tiempo y en recursos. Es probable que el código que progresa rápidamente sin pruebas exhaustivas deba ser reelaborado en una etapa posterior del desarrollo, lo que en última instancia ralentiza el ritmo de innovación y aumenta el coste.

La cuestión clave ante este paradigma entre velocidad y calidad radica en que los procesos de testing a menudo son manuales y existe también una escasez de desarrolladores COBOL con las habilidades necesarias para realizar esas pruebas. Esto significa que las pruebas que requieren mucho tiempo y son repetitivas y, sin embargo, necesarias, agotan los recursos de

los equipos de desarrollo, ya de por sí reducidos. No solo es necesario más tiempo para promover el código a través del pipeline, sino que también los programadores disponen de menos tiempo para desarrollar tareas de valor añadido como desarrollar nuevas aplicaciones, lo que retrasa la innovación en la organización.

Resolver el dilema velocidad versus calidad

Las empresas no dejan de buscar formas para aliviar la demanda que suponen las pruebas de rendimiento en el tiempo de los desarrolladores, y ya son muchas las que reconocen la automatización como la mejor solución. De hecho, el 82% de las organizaciones afirma que, a menos que puedan automatizar más casos de prueba, no serán capaces de cubrir las necesidades de negocio en términos de velocidad, lo que impactaría negativamente en la innovación y en la experiencia del cliente.

La combinación de procesos automatizados de pruebas y el shifting-left -que el rendimiento del software se pruebe de forma más temprana en el ciclo de vida del desarrollo- ayuda a los equipos mainframe a entregar software de forma más rápida y a asegurar que únicamente pasa a producción código de alta calidad. Además, al automatizar tareas repetitivas y al ejecutar las pruebas de rendimiento al principio del ciclo de vida del desarrollo, se obtiene feedback rápidamente sobre todos los aspectos del código. Esto significa que los problemas de rendimiento pueden identificarse y resolverse antes de que afecten a la experiencia del cliente o provoquen retrasos en las últimas etapas del desarrollo.

Este avance es crucial en un entorno TI ágil como el actual y no solo significa liberar tiempo, también permite a los programadores, con independencia de su nivel de experiencia, equilibrar sus responsabilidades de desarrollo y pruebas. Así, los profesionales contratados para reducir la brecha de habilidades COBOL no tienen que dedicar su tiempo a familiarizarse con tareas triviales del día a día y pueden centrar sus esfuerzos en funciones de más valor añadido, como entregar nuevas aplicaciones y servicios para el usuario final. De hecho, uno de los bancos más grandes del Reino Unido ya disfruta de los beneficios de este enfoque al reducir el tiempo de ejecución de pruebas de dos semanas a solo cinco minutos. Como consecuencia, si antes un proyecto típico solía alargarse entre seis y nueve meses, ahora puede completarlo en un tercio de ese tiempo. La automatización ha eliminado el esfuerzo manual del proceso y los programadores pueden concentrarse en escribir código y en hacer el mejor uso posible de sus habilidades para innovar y crear mejores servicios para los clientes.

Datos de pruebas, elemento vital

Un componente clave de las pruebas de software se encuentra en el suministro de datos. El uso de los datos correctos beneficia enormemente a las pruebas de software y conduce al incremento de la velocidad, la calidad y la eficiencia en el desarrollo y la entrega. La utilización de datos significativos y debidamente protegidos genera, de hecho, grandes dividendos en la transición a DevOps y la adopción de prácticas ágiles.

A medida que las empresas buscan aumentar la velocidad y optimizar los procesos de desarrollo de software en el entorno mainframe, las prácticas de prueba y, específicamente, la automatización, ganan importancia. La experiencia del banco británico mencionado anteriormente demuestra que la adopción de la solución Topaz for Total Test para sus pruebas en mainframe, ha aumentado sus story points, es decir, los puntos de referencia en términos de tiempo, complejidad, esfuerzo y riesgo; a la vez que ha reducido tiempos.

Sin embargo, los esfuerzos para mejorar estas prácticas no acaban con la automatización. La configuración de los entornos de prueba y la gestión de los datos necesarios para ellas también juegan un papel clave. Los datos son un elemento vital de DevOps y por ello es imperativo que sean datos reales, que se encuentren relacionalmente intactos y que reflejen las condiciones y relaciones de producción -en un escenario ideal, que sean datos de producción-; además, por supuesto, de enmascararse para garantizar la privacidad. Por lo tanto, en un entorno ágil, la capacidad para extraer datos útiles y relevantes que cumplen con las condiciones antes citadas es determinante para garantizar el éxito de las pruebas, hasta el punto de poder afirmarse que las pruebas serán tan buenas como los datos en los que se basen.

Cabe destacar aquí la importancia de utilizar las herramientas adecuadas para simplificar la gestión de los datos. Estas herramientas tienen que poder operar en todas las plataformas y ser capaces de extraer rápidamente conjuntos de datos, tanto del mainframe como de sistemas distribuidos. Otra característica crucial es la protección de los datos y la capacidad para operar tanto en entornos de producción como en entornos de prueba. Este conjunto de herramientas debe ser una “navaja suiza de datos”, es decir, realizar diferentes funciones críticas y hacerlo, además, en una variedad de entornos.

Alcanzar un término medio más elevado

En suma, competir en la economía digital actual exige velocidad, pero para equilibrarla con la creación de experiencias de calidad, las empresas han de automatizar y practicar el ‘shift-left’ en las pruebas de rendimiento. Esta combinación permite a los equipos de desarrollo, con grupos cada vez más reducido de especialistas en COBOL. gestionar mejor sus responsabilidades de desarrollo y pruebas del código mainframe. A largo plazo, el avance elimina los cuellos de botella en las pruebas de rendimiento que ralentizan la innovación y permite alcanzar el objetivo último: acelerar el ritmo con el que las empresas ofrecen nuevos servicios digitales satisfactorios para los clientes y adelantarse así a los rivales.

Autor