The all-star, mostly ACE(D) team consisting of Lonneke, Steven, Luc, Edwin, Ronald and Lucas did a very entertaining jam session with Fusion Middleware most of all day yesterday at the OBUG 2012 Connect Conference (Oracle Benelux User Group). The third performance of its kind – ODTUG 2011 and UKOUG 2011 in Long Beach, California (USA) and Birmingham (UK) being the preceding gigs – successfully realized an end-to-end business process implementation with ingredients such as ADF, JHeadstart, Human Task, BPEL, Mediator, AQ, Event Delivery Network, Technology Adapters, UMS for Emails en of course the database.
In front of a live audience, the challenge was outlined. The high level design introduced and the various components discussed. The left-hand screen (for the audience) displayed the business process and the work done to it in terms of design and implementation. The screen in the middle demonstrated the user interface development using ADF and the right hand screen played various roles, from service development to Enterprise Manager display, BPM worklist and Email client.
The members of the band played the following instruments: Steven on ADF and JHeadstart, Luc on ADF and ADF DVT (Data Visualization Components) for the business dashboard, Ronald on SOA Suite – Mediator, Adapters – and Lonneke on BPEL and Human Task. Edwin played virtually every instruments and Lucas was the lead singer and audience participation person.
Being a fairly unknown group of artists, we do not yet have the luxury of groupies and roadies that prepare the stage for us.
Here is what we had accomplished after the first architectural discussions about the layout of our performance area:
Next the cables for the network:
Then the real work got underway:
The business challenges by the way was the following: the company organizing conferences such as ODTUG, UKOUG, OBUG and OOW has this key business process of coordinating the presentations that make up the beef of the conference. This process is started with speakers submitting abstracts that need to be reviewed; upon acceptance, the speaker needs to upload the slides for the presentation, the presentation should be planned in the overall schedule, the speaker should be informed and when the presentation has taken place, an evaluation should be executed and the results fed back to the speaker. Only then – weeks and months after it was commenced – is the process complete.
During this live development show, we implemented two user interfaces (yellow tier in the picture below): the Speaker Portal and the Back Office Portal – the latter including the Dashboard. The Portals communicate with the database (green tier) via ADF BC, with the Human Workflow Engine in the SOA Suite and with the Event Delivery Network, also in the SOA Suite (red tier). The process coordination or orchestration takes place in BPEL (could also be BPM) and is positioned in the blue tier. The process works with various services and adapters – the red tier again – to get started, allocate tasks and retrieve and manipulate data.
Even though we have done it before, we can also do it better and a lot of discussion and brainstorming takes place during the session:
much to the enlightenment of the audience:
and work continues during our own breaks – when the audience is in the break-out sessions around the conference venue:
We were able to complete the session with an end-to-end demo of a speaker submitting an abstract through the speaker portal, the dashboard being updated with this information in the back office portal, a message getting published to AQ in the database, triggering an inbound AQ adapter that initiates a SOA Composite application. After the initial transformation, the Mediator in this instance invoked the Business Process – a second SOA Composite with a BPEL process and several Human Task components. The BPEL process initiates a Human Task allocated to the Back Office staff. An email is sent to all staff members and through the special Task UI in the Back Office Portal – ADF interacting with the Human Workflow API – the abstract submitted by the speaker is accepted. The process continues now the task is complete, updates the database via a service call and sends an email to inform the speaker of acceptance (or rejection) and a request for uploading the slides of the presentation via the speaker portal. The upload will cause the speaker portal to publish an event – slides uploaded event – from ADF BC to the Event Delivery Network in SOA Suite where the process will pick it up and once again continue with the next step – a human task for scheduling the exact slot for the presentation.
As always, it was great fun to collaborate with this high class team. Great job. We should do it again some time…