Oracle Process Cloud - first impressions img s1 1 Oracle Process Cloud Service

Oracle Process Cloud – first impressions

As of this week, Oracle has released the Oracle Process Cloud Service (PCS): https://cloud.oracle.com/process. This PaaS cloud service offers a development platform for implementing business processes. Underpinning technology for this cloud service is the Oracle Fusion Middleware BPM stack. As a result, using the Process Cloud Service should be easy for people that are already familiar with Oracle Fusion Middleware BPM. For example, familiar platform components like BPM Composer and BPM WorkSpace are also present in PCS. With that in mind, we decided to give it a go!

This article outlines the steps for implementing a simple process in the Oracle Process Cloud Service. We were inspired during a discussion with a customer on SOA Governance, more specifically: how to handle/grant access to specific services. The customer mentioned that ‘he had people were complaining that it was unpredictable how long it took before access to a specific service in a specific environment was granted’. These types of processes can be handled very well within the Oracle Process Cloud. So, the ‘ServiceAccessApproval’ process will be shown in this example.

Sample process ServiceAccessApproval

The process ServiceAccessApproval in short consists of the following steps:

  1. a Project Member requests access to a specific service in a specific environment
  2. when approval is required, the Service Access Approver will get a human task where he/she has to approve access to the service
  3. after service access is approved, the weather forecast of Amsterdam is retrieved… so … um … well … we can show a webservice invoke
  4. then, a human task is created for the Service Access Granter. This person will (technically) configure the service, so the requesting party can really access it

Implementation steps

The implementation of the ServiceAccessApproval process is done in the following steps:

  1. 1. create a new application: ServiceAccessApproval
  2. 2. model the process flow (BPMN flow, without the implementation)
  3. 3. model the Business Object types (data modelling)
  4. 4. model the Decisions (business rules)
  5. 5. configure external Web Services
  6. 6. model the Web Forms (task screens)
  7. 7. finalize the process implementation
  8. 8. deploy the process
  9. 9. run the process

Step 1. create application ServiceAccessApproval

Login as user weblogic into Process Composer

Log in into Oracle Process Composer

Create a new application: ServiceAccessApproval

Create a new application: ServiceAccessApproval

Pick the ‘Web From / start your process with a web form’ option

Start your process with a web form

Step 2. model the process flow

Model the process flow in the following 2 steps:

  • Make 3 swim lanes: ProjectMember, ServiceAccessApprover, ServiceAccessGranter
  • Add all process activities

The process flow:

Step 3. model the Business Object types

Now, add a business object ServiceAccessBO

Add business object

Note that already a lot of pre-defined business types are present, mainly coming from/with the NotificationService

Pre-defined business types

Step 4. model the Decisions

Create a Decision (business rule) with a string as input (service name) and a boolean as output. The boolean output indicates if the requested service access has to be approved. The decision logic checks for the presence of the substring “GEN”in the service name. If present, the service access has to be approved, so the boolean output is set to true.

Decision logic

Step 5. configure external Web Services

Create a web service for retrieving weather information. Note that for adding a web service, the WSDL has to be uploaded. If there are imports included, the WSDL and the accompanying files have to be uploaded in a ZIP file. The used web service WSDL can be found on http://www.webservicex.net/globalweather.asmx?WSDL

External web service

Step 6. model the Web Forms

Make 3 webforms: ‘ServiceAccessStart’ for starting a process, ‘ApproveServiceAccess’ for approving access to a service, and ‘GrantServiceAcess’ for indicating that access has actually been granted.

Model 3 web forms

The basis web forms look like

Basic web form

So, let’s do some layout work on them…

Do some layout work

Ah, that looks better 😉

Step 7. finizalize the process implementation

So, by now we have all the pieces. They only need to be used in the proces implementation. So, we go back to the process and …

Add the process data objects

Add the process data objects

And for each of the process activities, link them to the right implementation. For example, link the Decision Service

Link decision implementation

And when that is done for all of the process activities, the data associations have to be established. Again for the ‘ApprovalRequired’ Decision Service:

Establish data associations

Step 8. deploy the process

Now that the process is done, go to the management console:

Management console

Select the appropratie environmetn and click on ‘deploy’

Deploy

Now, go through the deployment screens:

Deployment screens

Step 9. run the process

Now, the ‘project member’ can start a process instance. First, he will log in into the workspace and then select the SA application:

Login into Process WorkSpace

Then, the ‘project member’ will enter the details on his request:

Enter service access request details

Next step, the ‘service access approver’ can approve:

Approve service access request

Next step, the ‘service access granter’ will configure service access and then confirm his task:

grant access

Summary

First impressions on the Process Cloud Service is that it is fairly straightforward to use, especially for those with experience with the current FMW BPM Suite. More detailed investigations on the Process Cloud Service will follow in other blog articles.

The code for this example can be downloaded:exported process

One Response

  1. Bishnu August 25, 2015