While the industry is moving to more modern software development approaches in order to become more agile and stay competitive, there is still one piece to the puzzle that is missing: The valuable digital assets that are contained in the systems built before the modern approaches.
As organizations move towards microservices, cloud native and greenfield application development, monolithic, legacy, and waterfall-based applications still power significant parts of the business, and modern CIOs are loath to undeploy older systems that are working well, according to David Codelli, product marketing manager for Red Hat.
For example, a development team might be using microservices to build an immersive website that enables users to order products. The microservices handles the functionality and data stores, but in order for the website to actually work it often needs to integrate with an older system like SAP to for order processing.
Typically to get a new application to work with a legacy system, developers need to go to the IT department to facilitate this, but Codelli believes there is a better way.
“Agile developers shouldn’t have to go to the IT department, they should be able to serve themselves via an API portal to access those older systems,” he said. “This is because the amount of code software teams are writing every day is increasing that they can no longer rely on the IT department,” Codelli went on to explain.
Businesses are also reluctant to replace their older, legacy systems because “unless you are in the top tier of web players, more CIOs would rather invest in something new than invest in replacing something old,” said Codelli.
To address this, teams are trying to leverage agile integration. Red Hat defines agile integration as “an approach to compartmentalizing connectivity logic to bring your entire infrastructure together through open APIs and events.”
The three pillars to Agile integration
The traditional approach to integration is through an enterprise service bus (ESB), but the problem is that ESBs were designed for rigid infrastructures and exist on a very waterfall schedule, Codelli explained. This approach doesn’t work well for modern agile developers because they need something compatible with CI/CD, deployable as a container and microservice, and the ability to run in the cloud or on premise
Today’s loosely coupled applications also need an approach that is equally as agile and scalable to its development, in addition to connecting to legacy applications and data.
Agile integration was developed to bridge this gap between the state of development and legacy systems, Codelli explained.
According to Codelli, there are three pillars to agile integration:
- Distributed integration: handles transformation, routing, parsing, error handling and alerting capabilities and treats each integration point as separate units — unlike ESBs that treat integration as a centralized application. Treating each point separately enables integration to be containerized and deployed locally without impacting other integrations.
- Containers: provide immutable capabilities and consistent deployment across environments, enabling them to be rapidly deployed, changed or replaced without conflict.
- APIs: provide the communication layer than enables applications to connect to one another. They can enable collaboration between teams and work as building blocks within projects.
“Integration is not a subset of infrastructure—it is a conceptual approach to infrastructure that includes data and applications with hardware and platforms. By aligning integration technologies with agile and DevOps technologies, it is possible to create a platform that provides your teams with the ability to change as quickly as the market demands,” the company wrote in a blueprint for agile integration.
How Red Hat can help
Red Hat has a number of different products in its technology stack that can help agile developers with their agile integrations.
Red Hat Integration consists of Red Hat Fuse, AMQ and API Management. These products are suitable for the distributed integration and API pillars. Red Hat Fuse allows developers to treat integration as code, enabling it to run anywhere. Bundled with Red Hat AMQ, developers can create a strong messaging infrastructure for routing events and data between systems.
Red Hat OpenShift works well for containers because containers require orchestration. OpenShift combines the power of Docker containers with the container orchestration platform Kubernetes to provide centralized administration, instance management, monitoring, logging, traffic management and automation.
Lastly, Red Hat’s 3scale API Management Platform, which is a part of the Red Hat Integration suite, ensures APIs are consumable, authenticated, and able to integrate with cloud providers.
“Agility is a process, not a project,” the team at Red Hat writes in their book. “It has never been more important for organizations to be able to react to change in the market, and it is largely IT systems that must deliver this ability to launch new services or update existing ones quickly. Rethinking IT infrastructure has never been more important, as it is the foundation of digital services.”
Content provided by SD Times and Red Hat.