Application integration software: A buyer's guide
A collection of articles that takes you from defining technology needs to purchasing options
Increasingly, business processes are demanding that more information be shared across many tasks, and thus, many applications. Application integration architecture is an IT process that ensures data or a function move from one application to another. Application integration architecture, in its early days, was more of a manual process, and data traveled laboriously in mostly a connector-to-connector fashion.
By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
In this article, you'll learn more about what is happening now in application integration architecture and how trends in enterprise architecture, hosting and app development are rapidly changing the landscape.
Before looking forward, however, let's dive deeper into what application integration architecture is and why it's done in the first place. In most businesses, a small number of transactions create ripples of change through a host of related applications. In the past, when these applications were developed and run independently, there was a major risk of inconsistencies developing from independent data management for each. Just as the same information will affect multiple applications, it's also likely that a failure to link the applications to avoid multiple data entry will affect productivity and introduce errors.
Quick dive into application integration architecture
Application integration defines the principles of moving data among applications to reduce these inconsistency risks and the work needed to connect applications through multiple manual updates. It involved a mixture of database design and "pipelining" of application data. Not surprisingly, applications are divided into database-related and data-flow-related, and that hasn't changed much.
What has changed is the way we build applications and the way applications are hosted. In recent years, the acceptance of enterprise architecture (EA) as a formal IT discipline, the componentization of the applications themselves, the method in which apps are now developed and the arrival of cloud computing and virtualization as a means of hosting have increased the importance of application integration and drive the need for streamlined and automated approaches to app integration. All of these factors are converging on CIOs at a time when senior management wants more IT agility and efficiency, and so a systematic approach to them all is critical.
EA defines the architecture of business processes at a high level, and derives application needs from that high-level definition. EA creates more information-sharing needs, but it also encourages users to fulfill those needs outside of traditional applications.
EA's influence on application integration
The influence of EA on application integration has been felt in a database-centric vision of information integration. If business data is stored in a form of a repository and made available through queries, then individual information use is tied to queries and analytics and not to specific applications.
Componentization of applications has broken monolithic software into dozens of pieces, each of which runs loosely coupled with the others. Information flow among components inside applications has to be highly efficient or worker quality of experience and productivity suffer. Because of this, considerable work has been done to improve component information exchange. Mobility and the empowerment of mobile workers have encouraged more and more componentization as companies try to address tactical productivity needs more efficiently.
One of the drivers of componentization is component reuse, the building of multiple applications from a common component set. Because of component reuse among applications, the boundaries of applications themselves are breaking down, and application integration and component integration are converging. Component integration tools such as service and message busses or service data definition languages can now also be used to integrate applications.
The cloud and virtualization have broken a traditional bond between an application or component and a server resource. Servers are now part of a pool, some of which might even be outside the company in a public cloud. Any piece of functionality can go anywhere, and so where it does go has to be recorded so that other components can find it. Deploying applications in a dynamic way means providing for a dynamic connection of what's been deployed.
Application integration changes as app development evolves
Application integration also continues to change because other aspects of application development evolve. Agile operations have created a need for a new set of tools, and those tools are already evolving into more complicated orchestration tools to deploy and link applications and components running on pools of resources. These tools, as they evolve and improve, are absorbing some of the functions that were traditionally part of application integration.
All of these trends influence the use of databases and information flows to link the IT support components for business processes. The most important trend in application integration today is the fact that, in the traditional sense, it's no longer the only problem or even the most significant one. If you ask CIOs today what their greatest challenge is, application integration is unlikely to figure prominently, but all three of the new factors probably will.
A modern view of application integration has to accommodate this reality. The EA-driven focus on analytics, software componentization and the cloud all affect information movement and so affect any approaches to the application integration problem. The tools that support these three factors are already converging with each other and it is clear that application integration will be included in the scope of more and more tools over time.
Convergence of trends may simplify application integration
The happy convergence of all the major application and hosting trends may simplify integration overall by creating a single set of tools that can accommodate both the past and current trends in information flow integration and data harmonization. That hasn't happened yet, and in the near term the reality is that users may have to cope with all of the past and evolving challenges with as-yet-disconnected tools and practices.
These trends also mean that there is truly no avoiding the challenges of application integration, and that even companies who thought they'd fully addressed those challenges may find that today's IT drivers will force them to revisit them. An understanding of all the trends, and all the tools that address them, is critical in creating a truly unified IT environment in a future where agility and efficiency will be in even more demand than they are today.
We've multiplied the missions for application integration, which has naturally multiplied the tool choices and the distinct issue and problem sets. Today, application integration is a part of all the significant technology and business shifts in IT. Navigating through the current period of push-and-pull issue influence on the topic to a long-term cohesive vision of a cloud-and-component-and-mobile-worker future may be the most critical task for IT planners.
WSO2 ESB aims to improve enterprise app and data integration