Enterprise application integration
Enterprise Application Integration EAI is an area of computer systems architecture that gained wide recognition from about 2004 onwards. The basic approach is to use a message bus to connect numerous separate systems together. Other approaches have been explored, connecting at the database level or at the user-interface leve, however the message bus approach has generally been adopted as the strategic winner. Individual applications can publish messages to the bus, and also subscribe to receive certain messages from the bus. Without an EAI system many point-to-point connections grow up across an organisation, commonly referred to as spaghetti. Another common term for the situation without EAI is islands of automation, where the value of individual systems is not maximised because they are working in partila or full isolation. With EAI each application only requires one connection, which is to the bus. Attending to EAI requires looking at the system of systems. EAI is also known as middleware, plumbing, or overall as delivering a service-oriented architecture. Such message bus approaches can be extemely scalable, and also highly evolvable.
EAI messages are ideally in XML format, following agreed XML Schemas.