Deciding why and when to use an integration framework
An integration framework is an important tool for managing the movement of data between applications and organizations.
Integration frameworks are an important tool for managing the flow of data between organizations and applications. Deciding whether a framework is the right approach, or which framework to adopted, is potentially confusing.
An integration framework can exist in any language, said Kai Wähner, IT Consultant and Presales Consultant EMEA for Talend Inc., a provider of open source integration software. However, most integration projects are realized on the Java platform since almost all major software vendors use it. "The only other platform, which I sometimes see as customers for complex integration projects, is Microsoft's .NET," Wähner said.
That being noted, Wähner said most powerful integration solutions end up in the Java world. Even if a different platform is used, developers often have to write their framework or product. On the other hand, if developers do not want to write a lot of custom glue code, an integration framework, enterprise service bus (ESB) or integration suite can be used, he said.
Benefits of an integration framework
Integration frameworks can be used to integrate different technologies, applications and products without needing to write a lot of glue code, according to Wähner. Connectors, implicit type converters, domain specific languages and enterprise integration patterns are already implemented in the framework.
Some other benefits of integration frameworks, according to Wähner, include:
- More lightweight than ESBs or integration suites
- Can be attached as simple libraries into a project
- Are Open Source
- Feature great flexibility
Integration frameworks are also beneficial because they reduce complexity in intricate integrations. "They should support you with realizing routing, connectivity, error handling and testability [and] you should not need to write a lot of glue code for integrating different technologies, applications and products," Wähner said.
Selecting an integration framework
Integration frameworks provide a kind of try-before-you-buy option.
There are differences among frameworks , and individuals can develop strong prejudices. However, Gartner Research Vice President Ross Altman said what leads people to integration frameworks is typically a combination of working on their own, not having access to deep corporate IT pockets and simply feeling comfortable with open source concepts.
"Developers may want access to software immediately; they can download a framework and don't have to get permission from someone to spend money. They can just do it with no RFP," Altman noted. Thus, he added, integration frameworks provide a kind of try-before-you-buy option.
From there, implementation is a "non-issue," according to Wähner. Since integration frameworks implement connectivity and routing options on their own, they just have to be called. He explained that each connector is a string; each routing is a method call. "The basic idea is that the framework implements all integration features under the hood," he said. "You can call and configure these implementations and combine them to solve your custom integration problem."
Wähner said selection criteria should include:
- Availability and fit of connectors
- Patterns
- Extendibility
- Flexibility
- Price
- Support
- Quality of community
Where integration frameworks fall short
Integration frameworks can be valuable, but Jess Thompson, a research vice president at Gartner, said he sees technology evolving rapidly in directions that will make them less relevant.In particular, he cited the growth of integration platform-as-a-service offerings such as Dell Boomi. Those kinds of services are mostly built on HTML5 and a drag-and-drop interface that is targeted at "citizen-developers," Thompson said.
Wähner warned that an integration framework, as the name says, is just a framework. A lot of coding, debugging, analyzing and project maintenance is necessary. Furthermore, vendors usually don't offer commercial support for integration frameworks. They typically support their own products, not open source frameworks.
Altman agreed, noting that coding in Java with some configuration in XML is something developers need to be comfortable with. "There is certainly some development work required," he said. "None of this is the kind of thing that actual end users would ever consider."
The use of simple and easy-to-learn technologies means that traditional developers are sometimes left out of the equation entirely. "That is being combined with organizations moving away from traditional waterfall-based development processes toward more Agile approaches where you iterate to produce an ultimate solution," Thompson said.
Commercial support
Many integration projects have to operate around the clock and often support mission-critical communications, making commercial support something many don't want to go without. "This is where tooling comes into play," according to Wähner, citing the potential value of an ESB -- either of the open source variety or a proprietary alternative.
Alternatives should always be looked at, advised Wähner, such as integration frameworks, ESBs and integration suites. "Choose the right tool for your problem to reduce complexity and costs [because] with the wrong decision, productivity goes down instead of up," he said, adding that it's important not to depend on consultants or vendors.
About the author:
Alan Earls is a Boston-area freelance writer focused on business and technology, particularly data storage.
Follow us on Twitter @SearchSOA and like us on Facebook .