Integration and API development, in simple terms, involves designing and implementing interfaces (APIs) and integration processes between different services and applications. APIs provide access to the data contained in systems, and integrations implement application logic for data transfer, processing and enrichment. Integration and API solutions are increasingly being developed on centralised integration and API platforms instead of separate point-to-point implementations. These platforms offer methods and tools for the development and lifecycle management of implementations, such as reporting and logging.
At Digia, we have previously blogged about utilising AI to support integration development. In 2020, we discussed (in Finnish) the AI features the Boomi integration platform offers. At that time, Boomi’s AI features assisted with tasks such as data format conversions, error analysis, and filter recommendations for different connection calls. These AI solutions were based on metadata collected by Boomi from the configurations of customer implementations built on the platform, which were used to make suggestions for different use cases.
Today, Boomi and several other integration and API platforms used by Digia offer AI-based virtual assistants, such as Microsoft Copilot in Azure, Mulesoft Einstein and Boomi AI, to support the development process. These solutions can generate configurations, integration process models or even process documentation.
Benefits of AI
We recently discussed the role of AI with our experts at Digia during a tribe meeting arranged around the topic. Many of our experts mentioned using various AI-based solutions to solve everyday problems, such as coding, testing, or troubleshooting. AI can also enhance the learning of new technologies and features.
The same themes have also been highlighted in various studies published by research firms such as Gartner. These studies have also pointed out the risks we discussed in our tribe meetings, such as the challenges of managing intellectual property rights and the emergence of skill gaps and cognitive biases. Additionally, our discussions brought up alternative approaches to problem-solving, such as Low-Code/No-Code application platforms, which have gained significant traction in integration and API development tools. The use of alternative methods does not, of course, exclude the utilisation of AI solutions.
Describing the surrounding context and relevant details in inputs given to AI can be challenging, even impossible. In such cases, the application code generated by AI may only be somewhat appropriate, and the developer's work may shift to troubleshooting or debugging the AI-generated code. In some cases, the time required for testing may also increase. The difficulty of describing large entities and context limits the use of AI in architectural design. At least when writing this blog, AI is a good tool for solving narrowly defined problems – when designing large entities, such as integration architecture, human insight and understanding of cause-and-effect relationships and context are still needed. However, AI can significantly help generate individual functions, APIs, and data transformations and go through large log masses as part of error investigations.
Other potential use cases include various conversion needs in migration projects and creating test cases: