Oracle CCI and OJAudit SonarQube Plugins

In this blog I introduce to you two sonarQube plugins for Oracle FMW products.

The CCI (Code Compliance Inspector) plugin and the OJAudit plugin.

Both plugins use standard JDeveloper tooling for screening the sources of your JDeveloper project and place the result in a XML report.

The OJAudit plugin introduced in SonarQube a new language and repository both called OJAudit. With the use of the rulehelp.txt file, in the default conf directory of the SonarQube installation, the (more...)

How to Keep Your Business Process Looking Simple

There are two key words in Business Process Management Notation (and Language) or BPMN for short that very often seemed to be missed. The first is "business" the second "management". In this posting I will discuss the significance of the first, and how you are in control of that.

In BPMN the word business does not wants to express that it is "just" about modeling business processes. The idea is also that these models should (more...)

Oracle SOA/BPM: Payload Validation per Composite

In this article I will explain how you can enable payload validation in the Oracle SOA/BPM Suite per composite, both design and deployment time. This works for 11g as well as 12c

When developing BPM processes or SOA services it is advisable enable payload validation on the development server. The reason being that this will force you to work with more representable test data, and in some occasions help you preventing coding errors (like (more...)

Oracle SOA/BPM 12c: Propagation of Flow Instance Title and Instance Abortion

Recently I wrote this posting regarding an improvement for setting the title of a flow instance in Oracle BPEL, and BPMN 12c. In this posting I will discuss two related improvements that comes with SOA/BPM Suite 12c, being that the flow instance abortion is automatically propagated from one instance to the other, as well as the flow instance title. Or more precisely, for every child instance the initiating instance is shown together with its name.

(more...)

Our new book “Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c” got published

DesignPrinciplesBPMandSOA

In the past year I have contributed to a new Packt book titled “Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c”. I’m very happy that we have managed to publish it this June.

This book is a design handbook and provides skills to successfully design, implement, and optimize business processes on top of SOA. Starting with business process modeling, it shows design principles to architect sound process architectures. It (more...)

How to Hide Actions in OBPM 12c Workspace

In this article I explain how to hide the actions in the drop-down in Workspace.

In some situations you may need to hide the actions that are shown in the Actions drop-down in Workspace.


One way to do so is by configuring the access that users with a specific Workspace role have for a specific task (not to be confused with a swim-lane role), by going to the task definition -> Access -> Actions. For (more...)

Starting a Process using a Timer with a Duration in Oracle BPM

In this blog article I explain three options to configure a timer start event based upon some configurable duration.

As far as I know firing a timer based on a duration is only applicable in case of a Timer Event Sub-process. Let me know if you think otherwise.

In case of an Event Sub-process the timer starts at the same moment when the process instance starts. There is no way to change it at any (more...)

Subversion revision of a deployed BPM/SOA composite?

So there you are: a production error was reported … in your code (of all places) … but no one knows what release the code came from?

holmes

Wouldn’t it be great if it was easy to link deployed composites to their Subversion location and revision?

This article show an approach based on ‘Subversion keywords expansion’. This is illustrated with the following steps:

  1. Add properties to the composite.xml file
  2. Set Subversion keywords for composite.xml
  3. (more...)

Using a Parallel Gateway without a Merge in OBPM

In this blog article I give a brief explanation regarding some aspect of the behavior of the parallel gateway in Oracle BPM.

For the BPMN modelers among us, I have a small quiz.

Given a process model like this, what would be the behavior of Oracle BPM?



  1. It does not compile because OBPM thinks it is not valid BPMN
  2. The flows with Activity 1 and 2 are merged, the token moves to the End event (more...)

Groovy Time! How to use XML dateTime and duration in BPM 12c

In this article I show some examples of handling XML dateTime and durations in Groovy in the context of a Oracle BPM 12c application.

Working with dates and durations in Java has always been painful. Mainly because date and time is a complex thing, with different formats and time zones and all, but I sometimes wonder if it has not been made overly complex. Anyway. Working with XML dates is even more complex because the (more...)

Oracle BPEL & BPM 12c Set Flow Instance Title

In this article I describe how to set the instance title for a composite in Oracle BPEL or BPM 12c.

Sometimes little, annoying things that are fixed with a new release can give great joy. With 11g you could set the composite instance title using the (advanced) XPath function setCompositeInstanceTitle(). This helps to find or identify instances in Enterprise Manager. However, for high volume composites you may want to configure in-memory-optimization as well by adding (more...)

Oracle and Adaptive Case Management: Part 2


This posting is the second of a series about Oracle Adaptive Case Management. The first one can be found here. I discuss the different options to define an activity, and the setting you can use to configure when and how activities are started.

There are two ways to implement an activity in ACM. The first one is by creating a Human Task and then "promote" it (as it is called) to an activity. The other (more...)

Oracle and Adaptive Case Management: Part 1

In this blog posting I address four key concepts that are used in Oracle Adaptive Case Management, or ACM for short. This article is the first in a series on ACM.

Recently I was involved in an Oracle Adaptive Case Management (ACM) project. Although some people involved knew about case management in general, it turned out that not everyone immediately understood how case management works with Oracle ACM. As you may be one of them, (more...)

Oracle BPM / SOA Instance Migration Script Issues

In this blog posting I explain some changes you need to apply to get instance migration to work for the Oracle BPM 11g Suite.

While figuring out a couple things about instance migrations I have been doing a few Bundle Patch installations lately. Up to 11.1.1.7.0 + BP4 I had issues with migration even after applying patch 18025048. I just applied BP7 and installed the latest 11.1.1.7.0 (more...)

The Secret Feature of Bucketsets in Oracle Business Rules

In Oracle Business Rules one can use so-called "Bucketsets". I never liked the term as it is not in the dictionary (did you mean bucketseat?), and never understood what is wrong with "list of values" (LoV) as that is what it is.

See for example the following bucketset that defines a list of values to be used for some status field:


Anyway, bucketsets are typically used in decision tables to define the set (more...)

OBPM versus BPEL, That’s the Question

Recently I was pointed to the so-called Oracle Learning Streams http://education.oracle.com/streams which provide short presentations on all kind of topics.

While ironing my clothes on a Sunday afternoon, I watched one with the title "Leveraging OBPM vs BPEL" by David Mills. An excellent story where he explains in less than 13 minutes the high-level difference using a practical example.

One reason why I like about this stream is that it is in line (more...)

Why You Should Create BPM Suite Business Object Using element (and not complexType)

In this article I describe why you always should base your business object based upon an element, instead of a complexType.

With the Oracle BPM Suite your process data consists of project or process variables. Whenever the variable is based on a component, that component is either defined by some external composite (like a service), or is defined by the BPM composite itself, in which case it will be a Business Object. That Business (more...)

Work-around Instance Migration Limits of BPM Suite 11g

The following describes a work-around for 2 situations for which instance patching and migration is not supported, being changing the level of an activity, and removal of an embedded sub-process. In short this work-around consists of re-implementation of the activities to move, and emptying the reusable sub-process.

There are a couple of restrictions for the Oracle BPM Suite that can make that process instances cannot be patched (deployment using same revision number) or migrated (deployment (more...)

I’m speaking at BPM Integration Days 2014

Vom 24. – 25. Februar 2014 finden in München die BPM Integration Days 2014 statt.

Die BPM & Integration Days konzentrieren sich diesmal auf die praktischen Synergien von BPM mit Systemintegration, Mobile, BI und Cloud, gepaart mit Erkenntnissen aus vielen Jahren Projekterfahrung aller Referenten.

Am ersten Tag haben wir ein erstklassiges Programm mit insgesamt 18 Sessions, einer Keynote und einem Panel zusammengestellt:

NewImage

 

Am zweiten Tag werden die wichtigsten Schwerpunktthemen in vier Halbtagesworkshops und (more...)

Poster published: Adaptive Case Management (ACM) in Practice

Knowledge-driven processes are typically unpredictable in their execution. Experts working on them decide what’s the next best action to take. This is in contrast to traditional BPM, in which all possible paths of a process are predetermined and modeled into the process. Adaptive Case management is a way to control and implement these unstructured processes.

We (Masons of SOA) published the poster Adaptive Case Management (ACM) in Practice, showing some of the (more...)