Among its other area of expertise, LINAGORA is proud to be a software editor focused solely on developing free and open source software. This openness has many benefits, including making integration between in-house applications much easier, and ultimately allowing for the consolidation of its portfolio.
We will illustrate how another in-house software, Petals ESB — which is currently being integrated to OpenPaaS — can team-up with OpenPaaS to offer customers an even more complete experience. But first, we will shed some light on the kind of problems Entreprise service buses (ESB) software are trying to solve and where they come from.
Any given institution has various sets of needs when it comes to software — overlapping or not — from the organization itself to the individual worker: the finance department needs accounting-related software; the marketing department requires customer relationship management software; almost everyone needs an office suite; etc. The information technology (IT) department, which seeks stability above anything else, is nonetheless expected to quickly satisfy this internal demand, while coping with external pressures to adopt new technology (blockchain, anyone?).
As a result of this, the number of software your IT department is managing is likely to grow steadily — to the point of becoming unmanageable. Without thoughtful architectural decisions along the way, entropy, understood as the gradual decline into disorder, may ensue, driven by strong centrifugal forces.
Unsurprisingly, this particularly problematic outcome, which can be called application wilderness, is especially acute for organizations that have decades-old IT departments. Application wilderness is the coexistence within one company, business or information technology environment of a great number of isolated software, which have grown over time like weeds, with desperate need for integration.
Application wilderness is not just a made-up expression: it has real negative consequences. Among them is information siloization. When insular software are coexisting within a specific domain, the information sent to them will eventually grow to constitute compartmentalized silos. In information management, this phenomenon is called information silo, and is illustrated in the diagram below. How can we avoid this outcome?
The letter A represents an individual using software B and C. As shown by this illustration, those two software are unable to talk to each other. The result is information siloization, and yes, it is bad for your health. Diagram by Theodoxxi CC BY-SA 4.0
Petals ESB meets OpenPaaS
More concretely, Petals ESB receive as input information from applications (in the REST, SOAP or any other format it understands) and when an application requests data back Petals ESB will convert it so that the output will be compatible with what the application is requesting (for example the SOAP format).
Architecturally speaking, Petals ESB is made up a kernel called the container and of many extensions known as Petals components. These components support various standards such as SOAP, BPEL, SCA, XSLTalongside communication standards such as HTTP, Mail, FTP, and others.
Petals ESB’s main characteristics are:
- Distributivity: Petals ESB is a distributed platform, made out of many instances that are able to communicate with each other over a network.
- Guaranteed Message Delivery: a message that is sent to a service will always be delivered. If the service is off-line or unreachable, the message will be either stored, or sent to an equivalent service.
- Message Routing: the effective recipient of a message can be chosen at runtime in function of various criteria.
- Robustness: In case of an incident, the platform can restore its last-known working state and resent messages that were not processed.
- Respect of standards: Petals ESB is built around open standards.
- Monitoring: the content and the properties of the messages that transit in the bus can be monitored.
- Extensibility: with its component-based architecture, it is possible to extend, update and modify the platform dynamically.
- Tools: Petals ESB is completed by several tools, including a development environment, a web console, a governance solution, a Maven plug-in, and administration ANT scripts and many more, making it a complete suite.
Not unlike the DevOps trend, which is bridging the gap between developers and system administrators, ESB like Petals ESB brings business people and information technology specialists closer together.
What will Petals ESB brings to OpenPaaS? Petals ESB will allow legacy applications to transfer data back and forth to OpenPaaS. But not only that, depending on the context, it will also play the role of a gateway, allowing multiple instances of OpenPaaS to talk to each other. For instance, each and very municipalities could manage its own instance of OpenPaaS and decide through Petals ESB what service should be available to other instances.