Book Review: Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c (Packt, June 2015)

I recently came across an unexpected gem: this book titled “Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c” by a collective of authors I know well and happily collaborate with: Torsten Winterberg, Mark Simpson, Guido Schmutz, Danilo Schmiedel, Hajo Normann, Sven Bernhardt, Matjaz B. Juric.

In this book, the authors present a clear overview of why and how to automate business processes – in various ways. They discuss normative business processes – whose execution is predictable, frequently even straight through – and show how BPM(N) is a great means to implement those, leveraging BPM Suite 12c and SOA Suite 12c. Then they tame the unpredictable in Adaptive Case Management (ACM): dealing with the category of business processes that is not so much restricted to a predictable flow and in which professional users – knowledge workers – have to exercise control over the execution of the business process. The authors explain how adaptive case management is supported in Oracle BPM Suite 12c – using very clear language and some compelling examples.

I truly appreciate the logical way the topics are presented in this book. Clear structure, historical background, some scientific references, introduction of relevant industry standards and many practical examples that show how challenges originate in the real world and solutions work in the real world.

For most topics, the book provides patterns and reference architectures – that explain the general structure of solution architectures to address specific challenges and also map these to the latest Oracle products. Solution architects such as myself will gladly make use of this valuable material in our daily jobs.

Some of the chapters I would like to specifically mention:

* ACM – the authors explain very well when and why Adaptive Case Management is a much better approach to process automation than the normative BPM(N) way of thinking. They show how to design a case (for lack of a better term – as they argue) and tell how their sample for insurance claim processing made its way into the CMMN standard for ACM modeling’s reference material:


* Business Rules – a tricky subject for several reasons including lack of common understanding what business rules are, the  interaction of technology and business (objectives) and the not so easy to understand and use technology; the authors do a good job of positioning the Business Rule component and explaining how to make use of Business Rules in business processes

* Mobile and Multi Channel – a discussion of putting custom and mobile user interfaces to provide insight and interaction points for human users on top of and into business processes; the reference architecture provided for mobile applications is valuable, rich and very clear.

* Event Processing – always a favorite topic of mine, this chapter provides a great introduction, overview and set of examples and guidelines for leveraging events and implementing an EDA (Event Driven Architecture). Many guidelines any organization will arrive at after lengthy discussions are available for free in this chapter. The conceptual architecture diagram is well thought out and very comprehensive. I am impressed!

* Business Activity Monitoring – this chapter explains how process analytics can be gathered from BPEL and BPM processes and leveraged in BAM 12c to interpret and analyze, visualize and turn into action. The chapter does not discuss case analytics for ACM – which I can understand since as far as I know there is no current support in this area; I feel like the author could have mentioned this fact and preferably provide a work around suggestion. However, this is only a very mild suggestion, not a harsh criticism.

The book uses the case of a car rental company (Rent Your Legacy Car) to illustrate various topics. Even though it does not delve into details – you will not find step by step instructions to implement the case – it does provide enough details to get a firm grasp of what the tooling can do for you as well as some indication of how to achieve that. It makes the book accessible to developers as well as architects looking for an overview and not necessarily every last little detail.

The preface states the intended target audience: “This book is intended for BPM and SOA architects, analysts, developers, and project managers who are responsible for, or involved in, business process development, modeling, monitoring, or implementation of composite, process-oriented applications.” I can confirm that indeed this audience will benefit from reading this book.

I can only congratulate the authors on their achievement: a seriously valuable and very readable book. Job well done, gentlemen! And to you as prospective reader I would like to enthusiastically and respectfully suggest that indeed you should read this book to grasp how Oracle Fusion Middleware 12c will help to design and realize process driven architecture with the potential for tremendous business value.

SOA Suite 12c – Create, Deploy, Attach and Configure a Custom OWSM Policy – to report on service execution

This article describes how to develop a straightforward custom assertion that can be used as part of custom OWSM policy to be attached to Web Services in WebLogic, such as services exposed by SOA Composite applications and Service Bus projects as well as custom JAX-WS or ADF BC Web Services.

The custom assertion that I demonstrate here reports the execution of web service operations to a JMS Destination and/or the system output. It shows how to access property values set on the policy binding (values specific for the service the policy is attached to) and how to inspect the headers and contents of the request and response messages. Most custom assertions will use a subset of the mechanisms shown in this example.

Note: this article was published on the AMIS Technology Blog:

Article: Oracle BPM Multi-Instance Subprocess Activity

published by Dan Atwood (AVIO Consulting):

Oracle BPM’s Multi-instance Subprocess is a type of a subprocess activity that can take an array of items as input and then handle each individual item in the array separately. The number of times the subprocess is executed can be determined at runtime by the size of the array at runtime.  Each work item that is spawned is then acted on individually.

A typical use case for this is when you have an order with many order items inside of it.  If each inidivdual order item needs some kind of approval or handling, consider doing this using Oracle BPM’s BPMN based Multi-instance Subprocess activity…

See the original article at:

Generate Docker Containerized Run Time and Design Time for Oracle StreamExplorer, Event Processor and JDeveloper using Vagrant, Puppet and VirtualBox

The objective of this article: prepare an environment for experimenting with Oracle StreamExplorer using two Docker containers inside a Linux VM running on my Windows laptop. And with the smallest number of manual steps possible – as to make the environment provisioning process highly repeatable.

In recent weeks, I have published a number of articles, investigating pieces of the puzzle that come together in today’s challenge. After general introductions of the combination of Vagrant and Docker – First steps with provisioning of Docker containers using Vagrant as provider and Vagrant and Docker – Next and Advanced steps with folders, ports, volumes, linking and more – that explained how Vagrant can be used on a Windows host to easily build, run and manage Docker containers – I discussed a number of more advanced topics such as the use of Puppet to do complex environment provisioning for the Docker containers – Vagrant and Docker followed by Puppet to provision complex environments – and how to configure and containers with GUI applications – Vagrant, Docker, VirtualBox and the Graphical Desktop for GUI applications in Docker Containers.

I have also discussed at length how to install OEP – using Puppet and without using Puppet: Generation of VM image for Oracle Event Processor and Stream Explorer using Vagrant and Puppet and Oracle StreamExplorer and Oracle Event Processor – installation instructions to quickly get going.


With all these findings under my belt, I felt ready to take on the challenge.

This article describes what I did and what the final result was – as visualized in this figure:


Lees verder

BPM: Process Data Definition

Red Mavericks’ blog published an  article on the Process Data definition. “We have our BPMN process and if we only want to document our process, this is almost all the work we’ll need to do. However, Akino Fishing Co. wants to not only document, but also automate and execute the processes. For that, we need to define our process data.”

See for the complete article.

Getting Started with BPM: Free Oracle University Video Tutorials by Bob Rhubart


(republished from the original by Jürgen Kress at

Want to sharpen your BPM skills? Settle in for an educational video binge these free tutorials from Oracle University:

Getting Started with BPM – Episode 1: BPMN Overview [40 minutes]
  Meera Srinivasan, Director of Product Management for Oracle Business Process Management Suite, explains how Oracle BPM Suite uses BPMN models for process design and analysis. She then describes the four major groups of BPMN constructs: activities, gateways, events, and subprocesses.

Getting Started with BPM – Episode 2: BPM Composer and BPM Studio Overview [60 minutes]
  Meera Srinivasan describes the main features of the two Oracle BPM modeling tools—Oracle BPM Composer and Oracle BPM Studio—in their 11g PS6 (11.1.17) releases. Then she highlights the significant changes in the new 12c ( releases of each tool.

Looking for other training/certification resources from Oracle University? Click here.

Making the Business Case for BPM/SOA

From the blog by AVIO Consulting:

Business Process Management (BPM) and Service-Oriented Architecture (SOA) provide enterprise-level IT environments the benefits of flexibility, versatility, and a relative ease-of-use that makes BPM attractive to business managers and SOA to IT executives.
BPM has become the go-to solution for optimizing a wide range of business processes and improving an organization’s efficiency and agility. BPM’s popularity is due in large part to the way it can seamlessly integrate a variety of human, document, and system-based processes to streamline and simplify the enterprise ecosystem and make businesses more agile, responsive, and competitive. But what makes it especially attractive is the capability it provides non-technical employees to alter software processes and change rules without having to delve into coding.

SOA , on the other hand, provides organizational flexibility much like BPM, but on a fundamental infrastructure level. Simply put, it lowers software development and management costs by providing the ability to create reusable software modules. SOA, by its very nature, enables simple services to be combined to make more complex ones with increased functionality, while speeding development and time-to-implementation.
Given their similarities, it stands to reason that if BPM and SOA are valuable on their own, they’re even more valuable together. However, it can be a hard sell because the two methodologies seem, on the surface, to be somewhat redundant and integration (along with the cost) unnecessary.

Here are some ideas for making a solid business case for BPM/SOA: – see the original article.

September 2015 – New content in SOA & BPM Community

As aggregated and published by Jürgen Kress at 

Slides: Web- and Mobile-Oriented Architectures with Oracle Fusion Middleware

Presented at Oracle OpenWorld 2014: Mobile applications as well as a large class of modern HTML5 web applications are built on top of an architecture with special provisions, such as RESTful services; the personal cloud, to provide a cross-device experience; push; cache; localization; scalability; and secure interaction with the enterprise back end. Gartner refers to this as the web-oriented architecture. Oracle Fusion Middleware offers key products (Oracle SOA Suite, Oracle Identity Management, and Oracle API Gateway) to implement this architecture, possibly in combination with cloud services such as Oracle Mobile Cloud Service, Oracle Messaging Cloud Service, and Oracle Storage Cloud Service. This session discusses the architecture itself and what it entails.