As your business grows, it becomes more diversified and specialised. The volume and variety of your transactions, systems and processes expands; but not in an orderly, linear fashion. With each new employee, work group, partner and business function, the web of links, exchanges, and dependencies proliferates exponentially. This phenomenon is described by Brooks’s Law, from the seminal project management book “The Mythical Man-Month”, by Fred Brooks. An innocuous name for a potentially fatal disease; businesses can choke on their inability to manage their growth.
As your business adds new IT services to cope with new operations and complexity, each new system must connect and communicate with many of the existing ones. The diagram below is an illustration of how connections proliferate as more groups develop in an organisation. Although 12 groups are only 4 times as many as 3 groups, they require up to 22 times as many point-to-point conversations.
In the early growth stages of a business, integration and coordination of systems is often not a priority; most of the effort goes into keeping up with customer demand. At some point management may recognise that systems are not connecting, transactions are handled more than once, and there are multiple versions of the truth. But often when the realisation dawns, productivity and profitability have already been damaged, and it may be difficult and expensive to change course and recover. And in some cases, businesses never understand that they have built a Tower of Babel that is eroding their competitiveness, and they may eventually fail.
The field of Enterprise Application Integration (EAI) provides strategies, tactics and technology to address this problem. Amongst them is the concept of Service Oriented Architecture (SOA), an architectural approach to solution design involving the decomposition of business problems to self-contained independent logical services that can be assembled into complete solutions. These services are developed to conform to a set of uniform standards and interfaces (there are a number of recognised standards), and this allows them to coexist and interact with each other and with an integration server, often known as an Enterprise Service Bus (ESB).
An ESB may be thought of as a communications hub and transaction exchange. Applications can send transactions to the ESB in the form of messages, and the ESB performs translations and transformations on the transactions and routes them to other applications that they are addressed to. In this way, enterprise applications no longer need point-to-point connections and an intimate understanding of each other’s formats and operations in order to communicate. Instead they just need to implement one set of standardised, self-contained transaction messages that can be sent, received and transformed by the ESB.
When an ESB is put in place to mediate transaction flow between all enterprise applications, the interfaces between applications grow at a linear rate, instead of exponentially. As the diagram below illustrates, 12 groups require at most 12 hub-and-spoke connections, instead of up to 66 point-to-point connections. This represents a substantial ongoing saving of money, effort and complexity in one of the major expense categories across a business’s whole application life cycle.
We support the WSO2 Carbon Enterprise Application Integration suite (EAI) to deliver these benefits. WSO2 Carbon is an extensive collection of open source middleware products developed and based on projects of the Apache Software Foundation, the world's premier, most successful and most respected open source organisation. The WSO2 Carbon product range consists of these products:
WSO2 offers industry and technology solutions, public and private cloud services, online enterprise support subscriptions, and consulting and training services, so you can have complete confidence and assurance in your WSO2 EAI installation and operations.
Let's have a quick chat about your web needs, and we'll get you pointed in the right direction for a quick, effective solution.