Monday 9 June 2008

BPA Suite Workshop Brussels 04-05 june 2008

Last week I was in Belgium to attend the BPA Suite Workshop, organized by Oracle Product development. My former colleague Hugo Brandt did a nice job in introducing us into the Business Process Architect, the BP Repository and the BPA Publisher.

I must say that I was pretty tiered because of a few busy days before and the long drive from home (Amersfoort the Netherlands) to the Oracle BeLux (Belgium Luxembourg) headquarters near Brussels Airport. Which is an extra compliment for both Hugo and the BPA Suite, keeping mee interested for two days.

First after an introduction we had to install the bunch of software. I downloaded the lot from edelivery.oracle.com and found that the zips are not as straight forward as you would expect. Zip 1 contained CD1 + part of CD2, Zip 2 part of CD2 and part of CD3 and Zip3, as you might expect by now, the remaining of CD3. So you had to unzip the whole into one directory and so combining the cd-parts.

For the installation you had 3 possible topologies:
1. Business Process Architect with a local repository in Oracle Lite
2. Business Process Architect with a local repository in Oracle XE
3. A "Remote" repository in a "real" database (Oracle XE/10g/11g or SQL Server) and BP Architect.

Since I'm no enthousiastic Oracle Lite user and I had the downloads in a VM with allready SoaSuite against a proper 10g database, I choose topology 3. The installation went straight forward. Just start OracleBPA.exe from the second cd and follow the arrows (Like Asterix and Obelix in "The Odyssey of Asterix" ). Then you can install the BPArchitect from cd1.
BPA Suite needs a UTF-8 database. So if you want to use Oracle XE do use the "universal" version of XE (not the standard one). If you, just like me, want to use an 10g/11g Enterprise Edition database, it have to be a database with a UTF-8 characterset.

At the end of the course I had some difficulties in getting the BPA Publisher installed and configured correctly. It turns out that it had to be installed in the same directory as the repository and the architect. And also it was "self-wise" to install against Oracle Lite (while there is no OLite service installed). So we had to reconfigure it with note 556414.1 from metalink to get Publisher configured against a standard Oracle Database.

I was quite enthusiastic about BPA Suite. It is really a great product to capture your BPMN models and also the upper levels of the ARIS House. Since Im no Business Analyst (and at the moment I've no ambitions to become one) I've no real comparison to other tools, exept for Oracle Designer perhaps. But besides that Oracle is doing a nice job in filling in the gap between BPMN and BPEL with the BPEL Blueprinting additions.

With BPA Suite it is possible to "publish the bpmn to the IT-Department". This means that you create a BPEL Blue print from the BPA suite. This blue print can be picked up by jDeveloper with the BPA Suite plugin found at the Add-on folder on the BPA Suite cd's. With that you create a BPA repository Server connection that enables you to browse through the repository for Processes that are handed over to the IT Department. Each activity in the BPMN model will become a scope in BPEL that can be detailed by the BPEL Developer. The right XSD's have to be imported, the wsdl's/services have to be detailed and the correct assignments and/or transformation between the variables have to be added.

Then after technically detailing the bpel-blueprint to a real working bpel process the BPEL specialist can upload the project again to the BPA Suite. By doing so the process may be subject to change by the Business Analyst without loosing the technical detailing. Unless ofcourse the Business Analyst removes some activities and replaces them by others. Then the detailing of the removed activities are lost and the new ones have to be detailed again. So keep in mind that the BPA Suite is by no means a replacement for a version-control system.

Publisher is by the way a nice tool that enables the rest of your enterprise browse to the published copy of the repository. In Oracle Designer we had a Repository Object Browser which enabled you to browse with a regular internet browser to the definitions in the Designer repository (it probably still works in the latest Designer). BPA Business Process Publisher however works on an own workset that is a publishment of a part of the BPA Repository.
So you have to regularly publish the latest state of your work.

I'm now philosophizing how one could migrate existing BPEL Processes to BPA suite. It should not be too hard I think. I'm thinking of the next step plan:
  1. In BPA Suite create a new model with a start and an end activity and one automated activity in between. Give it a name that resembles the name of your bpel process.
  2. Publish it to the IT Department/Create a BPEL Blueprint of it.
  3. In jDeveloper pick-up the blueprint
  4. Merge the two projects, this probably means smart copy and pasting your exisiting bpel project and additional artefacts to the new BPA Suite BPEL Project. Leave the generated scopes of the BPEL Blueprint in tact.
  5. In the BPMN View of your process add Abstracts according to the scopes and structure of your bpel project.
  6. Distribute your bpel code over the scopes that are added during step 5. Also take care of the logic between the scopes.
  7. Upload the bpel process to the BPA Repository.
  8. In BPA Architect you'll find that the BPMN proces is locked/read only and there is a copy of it with "(1)" at the end. Architect will notify you of the fact that "IT updated your model". In the new model you have to accept the changed by IT (you can do that with the accept-changes-button in the upper right corner in the toolbar).
  9. Then you could refine the model, get the conditional logic right etc. Publish again and possibly refine the technical details.
I'ts probably a tedious job when it's about a large BPEL Process. Also I don't know yet how to cater for the Data-grams (the so-called Technical Terms) that Architect keeps as input and output for each automated activity. But I probably am going to try in the near future.

By the way, I just stated I've no ambitions to become a Business Analyst. My ambitions are more in the line of being a Technical/Integration Architect. And since February (2008) I'm certified TOGAF consultant. Until now I lacked (is that the correct English saying?) in making that known.

No comments :