Supply Chain Management (SCM) applications (for managing inventory and shipping), Customer Relationship Management (CRM) applications (for managing current and potential customers), Business Intelligence (BI) applications (for finding patterns from existing data from operations), and other types of applications (for managing data such as human resources data, health care, internal communications, etc) typically cannot communicate with one another in order to share data or business rules throughout a company. Enterprise Application Integration (EAI) is the process of linking such applications within a single organization together in order to simplify and automate business processes to the greatest extent possible, while at the same time avoiding having to make sweeping changes to the existing applications or data structures.
Enterprise Application Integration (EAI) is defined as the unrestricted sharing of data and business processes among any connected applications and data source in the enterprise. It is considered as a framework that is formed of a collection of technologies and services forming a middle-ware allowing the integration of different systems across the enterprise such as legacy systems, enterprise resource planning systems, and best-of-breed business. It is considered as a business computing term for the plans, methods, and tools aimed at modernizing, consolidating, and coordinating the computer applications in an enterprise. It usually comes in the form of middle-ware connecting such kind of applications that are usually running on different systems and databases making a difficulty of communicating and sharing information within the enterprise. One large challenge of EAI is that the various systems that need to be linked together often reside on different operating systems, use different database solutions and different computer languages, and in some cases are legacy systems that are no longer supported by the vendor who originally created them.
EAI – Uses and Purposes
Enterprise Application Integration (EAI) serves different purposes throughout an enterprise that allows organizations to be more flexible and responsive to market demands improving their efficiency, some of these uses are data integration, vendor independence and common facade.
- Data integration: Data Integration is also well known as Enterprise Information Integration (EII) which is considered as the integration of information used for viewing all the data within the organization and representing them. Its goal is to get data from various data sources to appear to a system user as a single unified data source. It ensures that information in multiple systems is kept consistent. It works by providing homogeneous data representations to a range of wide data sources, by providing a ‘front end’ tool by which users can access data from many different databases, the software can greatly increase the efficiency of business processes that rely on these disparate databases.
- Process Integration: Full benefit will be extracted from computer systems, only by making resources available to every single process and user within an enterprise. Unfortunately, the development of department specific systems has encouraged applications becoming more isolated and available only to a small portion of the enterprise; this kind of isolation is called ‘islands of automation’. EAI software offers the opportunity to make a connection and removing the gap between these applications. Whereas data integration standardizes data across an enterprise, process integration standardizes access to the technology and resources. It is finally considered as the linking of business processes across applications.
- Vendor independence: As mentioned EAI software is designed for allowing integration of new applications. By extracting rules and business policies from current data and applications and implementing them in the EAI system, it becomes possible to apply these rules to new applications added in the future with little disruption, that even if one of the business applications is replaced with a different vendor’s application, the business rules do not have to be re-implemented.
- Common facade: An EAI system offers a complete front-end solution, a front-end for a cluster of applications, providing a single consistent access interface to these applications. Single interface helps in reducing the complexity of many business processes throughout and enterprise, moreover will remove the necessity of training users to operate a range of different applications, so a small basic training can be sufficient for allowing users to operate the EAI interface in a professional manner.
Barriers to Effective EAI and Implementation Pitfalls
Enterprise Application Integration projects suffers from a nearly 70% of failure. These failures was not due to a software problem nor a technical one, however almost were due to management issues. According to EAI Industry Consortium workshop there are seven main pitfalls that were taken by companies using EAI systems explaining solutions to each problem.
- Change is constant: EAI require changes frequently in different components, spreading across value chains into companies as an integrated business process. Budgeting in the end of a particular project gets companies into trouble when service level and many requirements increase after deployment, that’s the reason companies should create a post project investment that allows more than for basic maintenance.
- EAI skills are rare: The market suffers from a lack in persons that have skills considering EAI complex parallel processing and data combinations which can distract programmers and other staff who are used to a straight line approach. Moreover organizations that prefer the third party vendor route must be aware of its drawbacks. In addition, local language, knowledge transfer and issue contingencies should be considered.
- Standards are never universal: Sometimes vendors deviate from inconsistent specifications and from different standards bodies such as those for Web services. On top of that, these standards bodies often have quite a heavy involvement from vendors, and vendors might be deciding to pursue their own agendas. Since standards can’t guarantee interoperability, companies should budget for testing and validation, though relying on standards.
- Thinking of EAI as a tool as opposed to a system: Other critical organizational issue which was not realized till companies experienced it was a failure to realize that EAI can sometimes be difficult to control and sometimes affects other projects and service levels throughout and beyond the enterprise. It requires a set of tools and some procedures to deal with things such as security, capacity, change management and monitoring. Here comes roles and responsibilities, in which business analysts are responsible for defining the flows, IT people are the ones responsible for the actual execution and EAI administrators who interface with both business and IT staff, and finally Competence Centers are highly recommended.
- Treating interfaces as a science as opposed to an art: IT staff prefers solving problems using analytic solutions and inaccurate definitions to solve business unit requirements; however EAI is about linking those business components together while maintaining the value of business data. That’s the reason why building some kind of negotiation process that everybody agrees with would be a plus. That will help in resolving issues with the business departments. Without taking that into account time will be lost, deadlines will be exceeded and finally the service delivered will lack in quality considering business needs.
- Discarding details along the way: Within an organization as its EAI system expands, information that may seem unimportant today may become important. As an example operational requirements often differ beyond the project development stage. Keeping a record of definitions, structures, interfaces and flows, and gathering statistics would decrease lots of effort later on when it is needed. Companies must look at such kind of information at a much higher level, that one day they might need it. EAI implementation should be extensible and modular to be flexible for future changes.
- Unclear accountability and protectionism: Lots of companies suffers from unclear accountability as business driven integration has a need to cross corporate boundaries, engage partners, and even touch customers. As an example when there is a run time issue, it has to be addressed in some kind of coordinated fashion combining both business and IT skills. Moreover applications whose data is being integrated sometimes belong to different departments that have cultural, technical and political reasons for preventing their data to be shared with other departments. It makes it so difficult considering internal corporate politics which could take months trying to resolve simple questions like “Where does the help desk report?”
Benefits and Advantages of EAI
Imagine a company having many systems each serving a certain department and not connected nor integrated together, such a company will fall apart and will not be able to compete in the business any more as lack of communication leads to inefficiencies, Enterprise Application Integration is the soluble glue needed for modular relationships that allow organizations to be flexible and responsive to market demands, that’s the reason an integration is required.
Enterprise Application Integration benefits can be categorized into four groups operational, managerial, strategic, and technical. The operational benefit is that it increases productivity, improves planning in supply chain management and quick response to change. Shifting to the managerial benefit it results into more organized business process, increases the performance, improves data quality, and supports decision making. EAI strategic benefit would be that it increases collaboration between partners, achieves return on investment (ROI) and customer satisfaction. And finally the forth and last category which is the technical benefits in which it reduces the redundancy of tasks and data, having an integrated process, increases flexibility, and reduces development risks. It also allows organizations to do business more effectively.
It allows diverse systems to connect with one another quickly to share data, communicate, and processes the information silos that plague many businesses. EAI solutions provide a way to connect the systems of collaborators, partners, and others for as long as necessary, decoupling when the relationship ends. EAI is the soluble glue for the modular corporation. It not only integrate various enterprise applications it also provides better customers and supplier services applications, and aid in promoting organizational goals. There are many cited advantages of implementing EAI, including an increased operational performance, a higher customer satisfaction. Moreover, EAI is not only about an ad hoc response to business needs, but also about gaining competitive advantage and strategic use of information technology.
Finally Enterprise Application Integration is the unrestricted sharing of data and business processes throughout the networked applications or data sources in an organization. It provides real time information access among systems, helps raise organizational efficiency, and maintains information integrity across multiple systems. It is facilitates the integration problems that ERP systems failed to solve and facilitates market and economical growth.
Drawbacks and Disadvantages of EAI
However, given all the benefits of Enterprise Application Integration, many companies hesitate to adopt Enterprise Application Integration technology. High initial development costs, especially for small and mid-sized businesses, require a fair amount of up front business design, which many managers are not able to envision or not willing to invest in.
One drawback of Enterprise Application Integration is that the various systems that need to be linked together often reside on different operating systems, use different database solutions and different computer languages, and sometimes there are legacy systems that are outdated and no longer supported by the vendor. In some cases, such systems are dubbed because they consist of components that have been jammed together in a way that makes it very hard to modify them in any way. In addition that Enterprise Application Integration costs a lot, it introduces changes to organizations and the way of doing their business. Moreover it is more likely to be implemented in large organizations than in companies. Finally most Enterprise Application Integration projects usually start off as point to point efforts, quickly becoming unmanageable as the number of applications increase.