iBrain Agile ESB - License Free

Technology

OVERVIEW

With iBrain you are ensured agile integration as a supplement to all the major ESB's (Enterprise Service Bus). With iBrain you will be able to integrate any system in your system portfolio to any system inside or outside of your company. Your business logic will be managed in an easy accessable and maintainable way, while keeping your business applications and ESB clean. Keeping your business application and ESB
free of any integration and conversion logic, will ease the replacement or maintenance process for any of these. With a wide range of standard mainstream communication protocol adapters you can connect to almost any system on any platform, and with the rich rule and transformation utility you can convert messages in a flash using standard XSLT. As development with iBrain is based on the major mainstream technologies XML and
XSLT, your developers will most likely already be equipped with all the skills necessary to develop within the iBrain environment All rules configuration settings and conversion templates are stored and versioned in a repository controlled by iBrain, this means that you do not have to worry about misplacing or losing your valuable XSLT conversion templates.

IBRAIN IN A NUTSHELL

iBrain is a lightweight integration tool, used for integrating two or more systems. iBrain unites a rich set of wizard based tools with a powerful backend, which together gives us a unique and easy to use product. iBrain provides you with a simple and user-friendly interface, which provides you with wizard based tools for configuring integration between two or more systems. Configuring a new integration flow is simple and easy,
as the graphical wizard guides you through every step in the process, eliminating erroneous and inconsistent integration flows. Configuring a new integration flow involves configuration of the business rule tree, an optional preprocessor, a XSLT for simple and fast conversion, an optional postprocessor, and a writer for writing the converted message. iBrain is extremely lightweight, and more importantly, it ensures true SOA in your
integration architecture. This is done by keeping only a minimum of data in iBrain, heavy business logic is called from but not stored within iBrain, instead these components are created in whatever environment is most convenient for your business.

IBRAIN BACKEND ENGINE

The iBrain backend engine is a lightweight Java JTA based component. As it is pure Java based, it will run on any JVM running JRE 1.5 or newer.
When running on a Microsoft Windows platform the iBrain engine will run as a wrapped Microsoft Windows service. 2.2. PROTOCOL ADAPTERS A protocol adapter is responsible for connecting to, and communicating with various communication protocols. Basically a protocol adapter has two roles, reading messages and writing messages. iBrain supports all major enterprise protocols used today, giving you the power to connect to almost any system.

These protocols includes: SOAP (web services), IBM MQ Series (MQ), JMS, REST, Oracle Advanced Queuing (AQ), Tibco Rendezvous and Certified Rendezvous (RV and RVCM), Microsoft Message Queuing (MSMQ), iHedge Queuing (IQ), FTP/FTPS, HTTP/HTTPS, UDP, TCP/IP and regular files.

2.3. RULETREE

The rule tree grants you an overview of all systems and products involved in your integration architecture. Also the rule tree ties together business rule and processing logic for the given input message. This is done by looking at data and/or metadata within the message. The rule tree itself is maintained by a visual tool found in the iBrain tool suite. When a listener intercepts a new incoming message, the rule tree is triggered by the main job thread. This thread will tell the rule tree to process the message read by the listener, and return any output leaf found. An output leaf describes an integration flow, being a pre/post processor, an XSLT and a protocol writer. These are described in detail below.

2.4. PRE- AND POST PROCESSORS

A list of business adapters is associated with
the iBrain database. Some business adapters are deployed along with the standard iBrain installation, and others can be deployed as a Java .jar file or as a URI web service reference. These business adapters are used for message pre- and/or post processing where more advanced conversion logic is needed.
All business adapters are completely generic and will be called runtime using reflection. This means that your current staff of developers can create components using whatever language they prefer, as long as the component or business adapter implements a simple interface. This goes for Java as for all programming languages exposed through a web service. Also by having just a reference to the components, instead of actually developing the code inside iBrain, you are ensured true SOA, meaning that you can replace iBrain with a similar product for your convenience, with minimal effort and costs.

2.5. CONVERSION TEMPLATES

The major part of all conversion is done via conversion templates, also known as XSLT. The XSLT is specified on the given output leaf defined in the rule tree. XSLT is a powerful language containing logic for handling tags, attributes and data within an XML message, and outputting this to a format suiting your needs.

Conversion logic which can’t be handled by XSLT on its own is handled via pre-/post processors.

2.6. SECURITY AND STABILITY

To ensure that no message is ever lost, a strict and consistent commit flow is used. This means that the iBrain backend engine will not commit any incoming message, until all write operations are complete. The commit method used is a two phase
commit. In this way you are guaranteed that iBrain will never loose any of your mission critical messages, even if your servers running iBrain should go down.

2.7. PERFORMANCE AND SCALABILITY

The engine can run on a single server or as part of a server farm. It can even run on a standard workstation, or in workstation grid architecture. You can run as many instances as you need, each instance improving performance, until the maximum performance has been reached on the given server or workstation, with the given hardware. The recommended number of instances to run, will greatly depend on the hardware installed on a given server or workstation. Please consult our support team for a more detailed analysis of your setup if needed.

2.8. MESSAGE TRACKING

All messages arriving in iBrain will be stored in the iBrain database for consistency, audit and tracking purposes. The message is assigned meaningful Meta data and a unique iBrain message ID. After the message has been stored, all system specific keys will be extracted from the incoming message for indexing.
This enables the user to search for messages using keys defined in the end user’s local system. A graphical flow will show the user the status and the route of the message, meaning when was the message processed and how, and where was the message sent to after conversion.
The key extraction is done, based on Meta data defined in the Message Tracking window. If no patterns are recognized for the incoming message, the message will show up on the Unhandled Message Type tab in the Message Tracking window.

IBRAIN DATABASE

The iBrain database mainly stores information for audit and tracking purposes. Also release management and configuration data is stored in this database. Depending on your chosen
settings iBrain can log trace and debug information in dedicated tables. Also simple resources such as XSLTs and the rule tree are stored in the database.
Currently Oracle 9i or newer is supported along with MS SQL Server 2005 or newer.