Oracle Service Bus : Agility in Action

Yesterday I followed a session regarding OSB given by Jeff Davis, it was an interesting session with a lot of demo’s regarding using business services and proxy services.

Topics that we’re interesting to me during the session and I would like to share with the community:

  • Coherence ships with OSB/Weblogic which gives you the possiblity to cache service results to speed up performance. As Jeff mentioned a case could be that your users need to get the latest financial results each day which is a long running business process. This process can be launched asynchronously when the user is logged on in the background. The result of the process is then put in the service cache so when the user needs the information it’s shown to him without delay. The Service Result Caching functionality is integrated within OSB 11G, Release 1.
  • OSB 11g, Release 1 is also fully integrated with Enterprise Repository which gives you the possiblity to index all your existing services using your metadata such as XML, XSD, WSDL, … Using Enterprise Repository the impact of changes made to individual services is clear which makes your release management process a lot easier! Make sure to check out the features and functionality delivered by the Enterprise Repository to be able to govern your services throughout the enterprise.
  • OSB12C (C stands for Cloud) is the next upcoming release of OSB which holds a lot of new interesting functionality such as templating/prototyping services, development is integrated within Jdeveloper, … The fact that the development will be integrated within Jdeveloper gives your development team the possibility to use one and only one IDE to have E2E development from database to business components, to services such as bpel, osb, external services, business rules untill the end-user interface

During the demo Jeff showed how you can expose functionality of an EJB 3.0/2.1 module as a service using business services and proxy services. You can transform from an EJB 3.0 business service to an EJB 2.1 Proxy Service using XQuery and the JEJB protocol.

Aqualogic vs. Oracle Shoot-out (Oracle Mix Winning Session)

I went to the presentation of Lonneke and Ronald regarding AquaLogic vs. Oracle, which was a really great presentation with a good overview and an objective comparison of both environments.

This mix session was 1 of the winning sessions for Oracle Open World and it’s a hot topic nowadays of course.

What were the tools that were compared:

  • Oracle BPA/Oracle BPEL PM vs. BEA ALBPM
  • Oracle ESB vs. BEA ALSB

One of the first tips Lonneke has discussed was how to govern such a SOA Project using waterfall approach or not. She mentioned that bottom-up and top-down should be combined instead of sticking with one of both methodologies because when choosing one you would either have a load of services that weren’t used, or a combined service with not enough granularity.

You need to think about an Enterprise Model, once you’ve defined that model, the high level architecture, you can start going into the business processes itself and the description of all the artefacts.

Trying to rush your business process analysis without a firm understanding of the enterprise model will spare you a lot of rework and of course a firm approach for as well the business as it department.

The comparison which was made by them, is put in their presentation slides, which will be made available by Oracle.

The main points I’ve written down (which maybe aren’t all documented in the presentation).

Enterprise Architecture:

  • Strength of Oracle BPA Suite: A Complete Architecture Tool for as well design as simulation as monitoring as execution (but for monitoring you need to use BAM (real-time monitoring on in-flight processes) and for execution you need BPEL (round tripping is supported)
  • Weaknesses of Oracle BPA Suite: Representation of process in BPA and BPEL is different, you have a logical model of your process in BPMN and an execution model in BPEL, these don’t match 1-on-1 (one could argue if this is really what you want because you’re talking about 2 separate standards, one for modelling purposes and one for execution purposes)
  • Strength of AL BPM: 1 representation of business process and execution is support by the runtime engine which trully gives you 1 view.
  • Weaknesses of AL BPM: BPMN Spec isn’t fully supported, AL uses proprietary coding and uses some sort of templating to put another flavor on your process model (uml view, bpmn view, …) + no abstraction available between system centric and human centric activities (kpi’s) + no optimization of your business process possible because you don’t have a context within your business process

Composite Services:

  • Strengths of Oracle ESB (rebranded to Oracle Service Bus = OSB): Usage of JCA + adapters being provided (no ability for enrichment in a declarative way)
  • Weaknesses of OSB: No native support for resource management (e.g. centralized XSD)
  • Strengths of ALSB: Use a logical name for an XSD and not a physical location (let’s you use a central repository for all your definitions) + ability to define generic transformations which can be used within different composite services
  • Weaknesses of ALSB: only runs on Weblogic + adapters are technology driven and JCA isn’t provided

I would really like to thank Ronald and Lonneke for the great presentation and the different demo’s they provided during the session. I’m sure this session was of great value for many customers struggling with the very hot topic right now: what to choose ;o)