El mes pasado, General Motors (GM) anunció que estaba reestructurando su función de TI para respaldar una estrategia que hará que la empresa aumente los ingresos por servicios habilitados por software a $ 25 mil millones al año para 2030. La función de TI se ha dividido en dos roles: uno se enfoca en TI de back-office, mientras que la otra es una nueva función de software empresarial digital. GM también tiene una nueva plataforma de software, Ultifi.
Al igual que otros fabricantes de automóviles, GM está pasando de un enfoque en el diseño, el aspecto mecánico y de ingeniería de sus vehículos a una funcionalidad definida por software que se ejecuta sobre una plataforma automotriz común. Ultifi ofrecerá una entrega frecuente y sin problemas de funciones, aplicaciones y servicios definidos por software a los clientes por aire. Según GM, la plataforma de software ofrece el potencial para más servicios basados en la nube, un desarrollo de software más rápido y nuevas oportunidades para aumentar la lealtad de los clientes.
Crown Agents Bank es otra organización tradicional que está reconsiderando cómo el software impulsa el negocio. El banco ha estado emprendiendo una transformación digital debido a la forma en que la integración punto a punto entre sus sistemas de TI estaba limitando la capacidad de la organización para ampliar el procesamiento de transacciones. El equipo de arquitectura quería ir más allá de la integración punto a punto adoptando un enfoque dirigido por la interfaz de programación de aplicaciones (API).
El primer proyecto implicó la integración de dos servicios básicos de procesamiento para respaldar su paso a pagos y cambio de divisas (FX). Esto permitió a Crown Agents Bank crear una capacidad interna de selección de sanciones para poder manejar un mayor volumen de transacciones pequeñas sin aumentar el riesgo de lavado de dinero.
Al describir el flujo de datos de transacciones, Osita Ngene, arquitecto empresarial líder en Crown Agents Bank, dice que el banco usa el agente Oracle IF en Oracle Forms para recoger transacciones. Necesitaba desarrollar una envoltura alrededor de Oracle Forms para transformar la aplicación de modo que pudiera ofrecer siete servicios web publicados. Estos se enrutan a través de la gestión de API de MuleSoft para proporcionar las API para el software de detección del banco.
El banco también ha utilizado MuleSoft para agregar aprendizaje automático para analizar el apetito por el riesgo. “Diseñamos una aplicación de pantalla de riesgo para ver escenarios y patrones”, dice Ngene. “Esto reduce los costos de tener personas adicionales para validar las transacciones”. Gracias a la nueva integración, Crown Agents Bank ahora puede procesar de forma segura 1.900 transacciones en solo cinco minutos.
En 2019, Crown Agents Bank adquirió Segovia para ofrecer a sus clientes una pasarela de pago a mercados fronterizos y emergentes. MuleSoft se utilizó nuevamente para integrar la pasarela de pago de Segovia con sus sistemas bancarios centrales y otros servicios de pago internos y de terceros. Esto le ha permitido al banco aumentar la cantidad de pagos que puede procesar de 1.500 a 50.000 por día. En el futuro, estas API permitirán que Crown Agents Bank dependa menos de sus sistemas heredados, impulsando aún más su agilidad digital.
La oportunidad de crecimiento para empresas tradicionales como GM y Crown Agents Bank requiere un cambio de mentalidad desde el uso de software para lograr un objetivo comercial al desarrollo de productos de software como la columna vertebral de todos los productos y servicios que brinda la empresa. Una empresa de este tipo funciona como una empresa de software y, en teoría, debería poder utilizar el software de forma estratégica para adaptarse rápidamente a los cambios del mercado y la demanda de los clientes.
El analista Gartner pronosticó recientemente que, para 2024, el 80% de los CIO incluirán el rediseño empresarial modular, a través de la capacidad de composición, como una de las cinco razones principales para un rendimiento empresarial acelerado.
El software hace que una empresa sea componible
Según Gartner, los CIO progresistas están cambiando su forma de pensar para ver la volatilidad como una oportunidad. La componibilidad empresarial, o el rediseño modular de los activos operativos para minimizar las interdependencias, permite recomponer el trabajo de forma rápida, sencilla y segura. Es una adición competitiva a la caja de herramientas de una organización que permite a los CIO dominar los riesgos de acelerar el cambio.
Computer Weekly habló recientemente con dos empresas que han puesto el desarrollo de software en el centro de su estrategia empresarial. La firma de servicios financieros Kore Labs está utilizando la capacidad de composición para ayudarla a adaptarse a los cambios rápidamente, mientras que Intelligent Growth Solutions (IGS) ha optimizado las pruebas y la depuración para permitirle ofrecer agricultura controlada de forma remota.
Kore Labs es una empresa de tecnología financiera (fintech) que ofrece software de gestión de productos financieros que tiene como objetivo reducir los riesgos regulatorios, los costos y el tiempo de comercialización de productos financieros. Al reconocer que cada institución financiera se encuentra en una etapa diferente de su viaje a la nube, Kore ha centrado sus esfuerzos en crear software centrado en el cliente que, según dice, está diseñado para adaptarse a las necesidades de sus clientes, sin importar dónde se encuentren en su camino de modernización tecnológica. .
Por ejemplo, la empresa necesitaba un enfoque que le permitiera admitir versiones locales y basadas en la nube de su software de gestión de productos, KorePRM. Como proveedor de tecnología financiera, uno de los muchos desafíos que enfrentó fue cómo proporcionar flexibilidad en la forma en que las empresas de servicios financieros se podían conectar a KorePRM.
Después de implementar KorePRM en una gran empresa europea de servicios financieros, la empresa decidió que necesitaba volver a desarrollar el software de gestión del ciclo de vida de los productos de servicios financieros para admitir una mayor escalabilidad y agilidad.
James Farquhar, Laboratorios Kore
Angelo Ovidi, arquitecto en jefe y jefe de tecnología de Kore, dice que la empresa ha pivotado estratégicamente su hoja de ruta tecnológica hacia una rearquitectura completa de la plataforma. Esto permite a la empresa migrar de su anterior arquitectura obsoleta a favor de un marco modular ágil que apoyará de manera más adecuada a su base de clientes en rápido crecimiento.
“Dado que nuestros clientes son nuestra principal prioridad, queríamos proporcionarles una solución modular centrada en API que les permitiera seleccionar de un subconjunto específico de nuestra oferta y satisfacer rápidamente sus necesidades comerciales inmediatas”, dice Ovidi.
Para la segunda versión del producto, Kore Labs quería usar tecnología de módem para permitirle iterar cambios rápidamente, dice James Farquhar, director de tecnología (CTO) de la compañía. La arquitectura que decidió se basa en la puerta de enlace de la API de Kong y MongoDB, que se implementa en Kubernetes en Google Cloud.
La empresa ha adoptado un enfoque de microservicios para el desarrollo de aplicaciones y está utilizando la infraestructura como código en el entorno de implementación. “Ahora estamos obteniendo una configuración de referencia y recién estamos finalizando el proceso para los flujos de trabajo específicos del cliente”, dice Farquhar.
El objetivo es hacer que la aplicación sea efímera, lo que permite que KorePLM se implemente en capas desde un inicio cero, donde la infraestructura, los datos de referencia y las configuraciones específicas del cliente se pueden implementar de una manera muy flexible.
“Podemos girar en el casco o rechazar los diales para que la aplicación no consuma CPU [processor cycles]”, Agrega Farquhar.
La empresa está desarrollando un entorno parametrizado que está totalmente automatizado, lo que permite a los clientes de Kore Labs decidir qué aspectos del producto necesitan utilizar. Para permitir este nivel de flexibilidad, Farquhar dice que el desarrollo de software en Kore Labs se ejecuta de una manera que mantiene la compatibilidad con versiones anteriores de microservicios para reducir las posibilidades de que un nuevo trabajo de desarrollo rompa el código existente.
“Tratamos de mantener la integridad en un microservicio”, agrega. “Esta es una decisión de ingeniería de software. La velocidad de entrega es uno de los objetivos. Tenemos que trabajar para mantener la agilidad mediante la gestión activa del código “.
Automatizar las pruebas de software
A principios de este año, Computer Weekly habló con la startup escocesa Intelligent Growth Solutions (IGS) sobre la tecnología detrás de su sistema de cultivo controlado en interiores. La idea es que al monitorear directamente la luz, los nutrientes y el agua, IGS puede proporcionar “recetas” para lograr objetivos particulares de crecimiento de cultivos.
IGS vende la máquina para cultivar plantas con una receta basada en datos que utiliza software para definir parámetros específicos que afectan el crecimiento de las plantas, para lograr el resultado correcto para sus clientes.
Owen Adams es el líder de ingeniería de confiabilidad del sitio (SRE) en IGS, y un pequeño equipo de aproximadamente 20 desarrolladores de software produce software internamente utilizando Kubernetes. La aplicación principal es la interfaz web Growth Tower Management de IGS, que se utiliza para administrar y crear recetas que controlan los controladores lógicos programables (PLC) para proporcionar el nivel correcto de luz y las dosis de nutrientes y agua. “Estas recetas deben conectarse al hardware en los momentos correctos”, señala.
El software se basa en AKS, el tiempo de ejecución de Kubernetes para Microsoft Azure, y utiliza un servidor de base de datos SQL. Comprende alrededor de nueve microservicios, que brindan funcionalidad de administración y métricas, que se utiliza para controlar la granja de un cliente de forma remota, dice Adams. “Enviamos señales a los PLC, que luego toman una serie de pasos en el sitio del cliente”.
Dado el papel del software en el control del entorno agrícola, los errores en la codificación tienen el potencial de afectar significativamente el resultado que el cliente desea lograr para el cultivo que se está cultivando. Cuando se le preguntó cómo IGS minimiza los errores de codificación, Adams dice: “Comenzamos con el propietario del producto, la administración del proyecto y el equipo de ingeniería para asegurarnos de que todos comprendan lo que estamos desarrollando. El QA [quality assurance] el equipo también está involucrado “.
Owen Adams, IGS
Además de asegurarse de que todo el equipo comprenda exactamente cuál será la función del software que se está desarrollando, también es importante ejecutar suficientes pruebas para simular y validar que el código hace lo que se supone que debe hacer, dice.
El papel principal del SRE es monitorear eventos en los entornos IGS que tienen el potencial de apagar el sistema IGS por completo, dice Adams. “Kubernetes es bastante complejo; necesitamos tener una supervisión suficiente para asegurarnos de que podemos solucionar cualquier problema”.
El equipo de SRE usa Relay from Puppet para flujos de trabajo de corrección automática de código bajo en el entorno de Kubernetes para escuchar estos eventos y responder a ellos rápidamente. Al combinar una experiencia de código bajo con disparadores y pasos, IGS ha podido crear una automatización que su equipo en crecimiento puede usar.
Más allá de la automatización de las pruebas, también existe un gran interés en cómo proporcionar diversos conjuntos de datos para verificar que el algoritmo se comporta como se espera en todos los escenarios de prueba.
John Lovelock, vicepresidente de investigación de Gartner y analista distinguido, dice que debido a que la complejidad del software aumenta cada año, las herramientas para respaldar el desarrollo de software también han aumentado en sofisticación. “Cuando escribí software, pasamos por casos de uso de prueba”, dice. “Ahora el software está automatizando las pruebas. La computadora usa IA [artificial intelligence] para generar los scripts de prueba “.
También existe una demanda para proporcionar cada vez más datos de entrenamiento para aplicaciones basadas en IA, dice Lovelock. “Algunas de las novedades de los coches están basadas en IA, pero es difícil obtener datos de IA. Una idea es crear datos sintéticos para entrenar algoritmos de IA ”, agrega. Para 2028, Gartner estima que casi la mitad de los datos serán sintéticos.
Talento creciente
El crecimiento y desarrollo del grupo de talentos es quizás el aspecto más importante de la tecnología emergente para impulsar a las empresas a centrarse verdaderamente en el software.
En un artículo reciente que analiza la agenda del CIO para los próximos 12 meses, McKinsey instó a las empresas a utilizar a sus mejores desarrolladores para el trabajo más importante. En el artículo, el socio principal de McKinsey, Aamer Baig, escribió: “Así como los militares no tendrían un piloto de combate de primer nivel que hiciera el trabajo mecánico básico, las empresas deberían darles a sus principales desarrolladores la prioridad más alta y los proyectos más emocionantes”.
Según Baig, las empresas líderes están invirtiendo en plataformas de código bajo y sin código, lo que libera a los desarrolladores experimentados para que se concentren en las tareas más desafiantes. “Los CIO deben implementar un proceso disciplinado para rastrear en qué están trabajando los mejores talentos y reubicar rápidamente a los más capacitados en las iniciativas más significativas”, dice.