EAI also provides a simplified integration model that does not involve each application team developing in-house code to make systems work together. By offering a single platform for centralized integration, EAI vendors promise to reduce the amount of work each application team must do to retrieve data from other systems.
Most EAI products sell server software and one or more development tools to write interfaces between systems. Many of the products currently on the market are Java-based, using Java Application Servers to provide a solid base for EAI to build on.
And that base is pretty healthy. In researching this article, we heard over and over that integration is one area of IT still being funded. Gartner research supports that, estimating that by 2005, more than 90 percent of large enterprises will have integration technology in place.
Mixing It Up
Integration is critical to keeping systems synchronized. Today, the vast majority of IT shops come down on the "buy" side of the "build versus buy" debate, meaning your corporation is likely full of systems you didn't build and for which you have no source code. Making them communicate is a tall and expensive order, often requiring that your network and server administrators have intimate knowledge
of the assumptions made when the integration code was written.
Take, for example, a simple case of a customer information system purchased several years ago and an order-fulfillment system just put into place. How do you relate orders to customers? Can you easily connect a failed delivery back to a customer?
Without EAI, the typical process to resolve these problems is:
1. A businessperson determines the process that occurs and defines what needs to be done.
2. These business requirements are then turned over to an analyst, who determines the best way to achieve the business goal.
3. A programmer implements the solution.
4. The network and server staffs are charged with keeping the new process running and monitoring its health--even if the monitoring tools are not built in.
Now add two more systems to the mix, each needing to interface with existing apps. That gives you a total of 12 interfaces for four systems, each requiring maintenance by two separate project teams (see "Without EAI" in the illustration).