xBus
 Version 1.7, released 17 November 2009

Overview

xBus Principle


The xBus is a central EAI (Enterprise Application Integration) instance which has two substantial tasks:

  • Routing, i.e. receiving of messages from different sources and passing through to different target systems.
  • Transformation, i.e. converting the data between different formats and transformation of content.

The xBus is an Open Source software tool. Its architecture is very open and flexible. The reliability has been proven during usage in several commercial projects. Contrary to many commercial EAI products, the xBus is a very slim and efficient solution.

 Features
  • Published under an Open Source License similar to the Apache License.
  • Platform-independent by implementation in Java 1.4
  • Different operating modes:
    • As a standalone background service
    • Manually started single operation or triggered by a scheduler
    • Running inside a servlet engine
    • Integrated into other Java applications
  • Two communication modes are supported:
    • Request/Acknoledgement
    • Request/Response
  • High flexibility and simple extensibility achieved by a consistent layer architecture and a plugin mechanism
  • Powerful transformation engine using standardized XML technology
  • High number of configuration options
  • Flexible addressing of sources and destinations
  • Journaling of all data streams possible
  • Future-proof by the implementation of standardized APIs
 Motivation

Business processes need to be changed or extended frequently and in a short period of time. This influences information systems:

  • The subsystem needs to be integrated very well
  • Communication with systems outside of the own enterprise gets more important
  • Often the data communication mechanisms must support near-time communication or even work like direct function calls
  • The technologies and data structures used by the different applications are very heterogeneous.

The term EAI(Enterprise Application Integration) is used as a summary for all these topics.

The solution is a flexible middleware, which interconnects all relevant external and internal systems. A single instance realizes a controlled and optimized interaction between all systems. From the technical point of view, only one interface is necessary between each system and the central instance. Direct interfaces between individual systems are not necessary anymore. The number of the interfaces decreases considerably and concomitantly also the costs for maintenance and change processes.