'Collaborate or Die' said an advert from a major Business Application vendor.
Openness has become a recognised business driver, and not just the best way to
ease the pains of System Integration. When we started the development of
WareLite Business Operating Support System we did it with Enterprise Application
Integration in mind. However, we soon began questioning the concept of System Integration
itself.
'[...] If a company has Siebel, SAP and People Soft installed, the user must
contend with three application layers, three workflow engines, three flavours of APIs,
three application servers. This equates to three sets of specialised skills required to
manage the applications, expensive app-to-app interfacing, disjointed processes, and user
complexity. It's time for a reality check. [...] Now it's time for SAP, Oracle,
People Soft, Siebel and others to recognise that [...] their real value is developing,
within industry standards technology frameworks, the business logic that lets key business
processes run more effectively'
('The end of the Enterprise Application Era', AMR Research, February 2002)
Today System Integration is necessary because a system, an application, cannot natively
communicate with other systems and applications.
We believe that it is possible to create a Technology framework where System Integration
will not be needed anymore.
We believe that any kind of logic that supports an Enterprise's business can immediately
populate an open and common environment. In this new scenario, a Business Rule will already
be natively integrated with any logic and data within the wider enterprise infrastructure,
the Enterprise Ecosystem.
The framework that today enables integration will not be developed as a retrofit solution
anymore, but will become the platform hosting all the Business Rules and Business Processes
that an Enterprise needs. We believe that in order to achieve the interoperability required
today by the most complex enterprise ecosystems, Business Applications must be decomposed in
a set of Business Rules internal to the platform providing openness. This kind of approach
offers openness in term of modularity: a complex problem can be realistically broken down
into a set of simpler business rules within an event driven environment.
The picture below shows what is today considered to be a good architecture.
An Exchange Hub is adopted in order to avoid the so called "spaghetti
integration" (peer-to-peer nightmare). This architecture, however, presents
some quite costly issues.
Every application exposes its own interface
toward other systems (USER); moreover, any application has the responsibility
to apply the proper transformational logic whenever communicating to any other
application via the exchange hub.
The transformation logic may be more or less complex depending on whether enrichment
or aggregation is required. When enrichment/aggregation is required the integration
becomes increasingly complex. It is not by chance that many enterprises are still pursuing
the single-view (i.e. over the customer) holy grail. Very often any transformational logic
that may be required is the responsibility of a single uncoordinated application.
This ultimately implies having a set of replicated -and not easily re-usable logics-
between applications and the exchange hub.
So, while an integration based on the exchange hub paradigm (or application network) is
good as it might dramatically reduce the cost of peer-to-peer integration, it cannot offer
a truly plug-in, re-usable solution.
The architectural paradigm adopted for WareLite Business Operating Support System (BOSS)
is shown in the following picture.
With this new paradigm the concept of Business Application (as an aggregation of several functions)
tends to disappear. Instead the logic serving the business is implemented as a set of independent
business rules –grouped into business processes- that share a common set of resources. Somehow, this
new paradigm is already emerging (think of Web Services), but what we are proposing goes well beyond
what's available today, offering an effective support for strongly integrated services with a very
low-cost development.
The first fundamental innovation is that the Enterprise Application Framework within WareLite
BOSS exposes one single logic entry point. An external system interfaces with the BOSS framework via
such single entry point. Any transformational logic is thus well isolated and contained within that
single entry point rather than being dispersed and duplicated as it happens in the exchange hub paradigm.
Each USER will access and/or trigger a pre-defined set of Business Rules and Business Processes specific
for its Role.
Secondly, we have introduced a new way for a client to interact with the business rules hosted by the BOSS.
Differently from the traditional approach, based on remote calls, with WareLite BOSS the client
must not be aware of any specific application interface exposed by the enterprise application framework.
In other words, the BOSS doesn’t expose any proprietary API. Also, when interacting with the WareLite
BOSS run-time environment the client does not need to know which are the functions (or remote methods,
or services) hosted by the framework itself; it only needs to know which are the data frames that can
be computed by the WareLite BOSS. The data frame will not have to contain, as in other paradigms, any
information about how to activate a specific function. The data frame will just contain pure data.
The semantic (or how to process that particular data frame) will be responsibility of the BOSS run-time
environment. We can compare a business process hosted by the WareLite Business Operating Support System
to a neural receptor waiting for a specific event - a data frame - to happen in order to trigger a cascade
of actions. This is of special relevance when looking at the evolution of the distributed computing paradigm,
as it represents the next step towards loose coupling.
Thanks to the decoupling between data and business processes, WareLite BOSS can effectively strengthen
the separation between the client's logic and the logic of the 'back-end', thus creating the basis for the
scalability and flexibility required to support a continuously growing and evolving enterprise ecosystem.
The third most important innovation is that, within the enterprise ecosystem, every business process
can access every persistent (or global) object. Every object is stored and retrieved via a layer
immediately accessible by every rule and business process. The same layer has the responsibility
to coordinate the access to such objects. The BOSS run-time environment owns the data sources as a set
of coordinated resources, so that there is never the need to cross several 'applications' or systems in
order to provide enrichment or aggregation.
Of course the benefits deriving from WareLite's innovations would be immediate if all the 'applications'
were developed as a set of classes, business rules and business processes populating the WareLite BOSS
Enterprise Application Framework. However, the Enterprise Ecosystem reality is still made of multiple,
different systems that have to be integrated.
So, how can we enable the shift towards the new paradigm while supporting today's business reality?
The next picture shows the approach to System Integration enabled by the WareLite BOSS.
The main concept behind such approach is that every single business rule populating the WareLite BOSS
can implement an interface towards any external system. In other words, a business rule can be developed
as an 'adaptor' between the WareLite BOSS and an external (legacy) system. A business rule can utilise
any Application Programming Interface (or any other kind of interface) exposed by an external system to
'connect' it to the WareLite Enterprise Application Framework. A USER, depending on its role, will then
be able to consume the services offered by an external system through the same single interface it uses
to access/trigger any business rule and business process within WareLite Business
Operating Support System. Of course, the USER depicted in the previous picture can well be yet another
(or a set of) application, consuming the services hosted by the enterprise backbone.
Thanks to WareLite BOSS, applications from different vendors can really become part
of a truly co-ordinated Enterprise Ecosystem.