JaBSI
Open Source ebXML Business Service Interface implementation

JaBSI Overview

JaBSI stands for Java agent Business Service Interface, and provides implementation for executing electronically inter-organization business processes. JaBSI uses CPA (Collaboration Protocol Agreement) -standard for deploying process-related agreements/specifications into the system, ebXML BPSS -standard is used for process definition and ebXML MS -standard implementation is used for secure communications between business partners.

Process management and execution is delegated to agents which then orchestrate communications according to used CPA's and BPSS's. Agents also carry responsiblity to create audit-trail of process execution and to provide persistence-support for the process states. Back-end systems, or intra-organizational processes can receive event-notification of process execution through proxy-agents and also interaction back to JaBSI happens this way. Proxies provide required protocol-implementations towards back-end systems, e.g. Web Services.

From software point of view, JaBSI is pure-java implementation and integrates together several Open Source components. Most important components are agent-platform, secure communications, ebXML registry and repository layer. JADE is the platform that is the base for agents. In addition to JADE itself, several JADE and community add-ons are used to implement the functionality. Hermes, which is an ebXML MS -implementation, or implementation of Message Service Handler (MSH) is used to provide standard and secure communications between organizations. ebXML rr (DAREG -distribution) is used for storing CPA's, BPSS and other documents that are defining the behaviour of JaBSI. In order to provide as wide as possible support for databases, Hibernate is used as middleware to handle both persistency of processes and also storing the audit-trail.

JaBSI SourceForge project