Blog Series | Agile Integration | #2
Author: Thomas Stuber
The IT departments of many companies are under great pressure from the market - agility, efficiency and speed are required. At the same time, technologies are evolving rapidly. For example, cloud or event streaming solutions have made their way into many IT landscapes. These need to be integrated with existing IT.
Traditional integration solutions such as an enterprise service bus (ESB) can no longer meet the technical and organizational challenges described above (see blog post Rethink your integration strategy) - agile integration solutions (see blog post Forms of agile integration - an outline) offer an answer here. During the implementation of agile integrations in everyday project work, we were able to gain some insights. This blog shows 5 learnings and insights from our everyday project work, which we would like to share with you.
Agile integration requiSpecify interfaces well
Interfaces should not only be cleanly specified, but also made accessible for use by other teams. This is necessary for decentralized development as well as for a scalable way of collaboration. In particular, emphasize again:
Monitoring should be considered at an early stage. Depending on the operating model, monitoring must be ensured for operations and also made available to the right teams. Depending on the integration platform, the connection to the monitoring as well as the monitoring (dashboards, etc.) is already predefined. Nevertheless, it is an advantage if the DevOps teams can use the monitoring system in a self-service approach to be able to implement their additional monitoring needs independently.
Likewise, modern monitoring concepts such as OpenTelemetry should be leveraged to monitor integrations in cloud-native distributed systems. These concepts address the typical monitoring scenarios (collecting log files, metrics and traces) and offer vendor-neutral standards.
Using self-service portals enables your DevOps teams to develop without dependencies on other teams, which is why a "do it yourself" approach applies to integrations. It is important that the team providing the integration platform supports and secures the DevOps teams with governance controls. This includes templates, guidelines, or even compliance checks (e.g., validation of metadata when ordering messaging queues). Whenever possible, governance aspects are already ensured automatically in self-service.
Building an agile integration solution also means new challenges for the organization. These cultural and organizational changes should not be underestimated. For example, the change from a centralized ESB to a distributed integration platform must be supported by the teams. There is a shift of know-how and responsibilities. It is therefore essential that the teams are empowered accordingly. Two approaches are particularly suitable here:
Modern, agile integration solutions support business goals in terms of agility and speed. Likewise, such an integration solution must be flexible enough to handle future technologies. This creates long-term value for the business. Nevertheless, there are some points to consider when switching to agile integration. We have discussed 5 learnings on this in this blog.
#2 | 5 Learnings for agile integration
#3 | Integration as a Microservice (coming soon)
#4 | Controlled Risks: Agile integration requires automated testing (comming soon)
#5 | Agile Integration made easy with Red Hat (comming soon)