Jarvis Pizzeria blog refresh part 1 of 3

 

In this blog I do a quick refresh of the first 13 Jarvis Pizzeria blog posts
(note: the different headers in this blog contain a link to the actual blog).

1. An Introduction to Jarvis Pizzeria!

This is the introduction to the blog series in which the original team is introduced and the scope of the blogs is indicated.

As stated before (Jarvis Pizzeria is back again), the scope has been extended from PCS only to the entire OIC. But this refresh is only about PCS (because that was the former scope). So also the solutions that we describe that we would do differently nowaday with the complete OIC toolbox. ICS and VBCS will be added more and more visibly over time in new posts.

2. Collaborate in PCS

The purpose of this blog is to find out the team collaboration capabilities of PCS. In this field nothing has really changed in itself during the last year. I think that this already works fine, so changes are not really necessary.

In the initial blog we states the following:

“It looks like the saved, but not yet published, changes within the application are automatically published, since we verified that the user taking over the lock directly sees those changes. But this might not be the desired behaviour.”

I assume that this behavior was an error, that has been resolved as a recent test has shown.

3. Integration in PCS

In this blog we demonstrated the creation and use of both a SOAP and a REST service in PCS (not yet in ICS, that will certainly be shown in a new blog later on).

4. Setting up the Jarvis 1.0 process

The purpose of the blog is to try out / demonstrate the various options for starting a process. In the structured process we start the 3 pizzeria sub-processes in different ways.

  1. Payment with a call activity.
  2. Preparation with a send- and receive activity.
  3. And finally delivery with a throw- and catch activity.

5. Functional Description of the Pizza Preparation Process

Most of the Jarvis Pizzeria blogs cover one or more technical components of PCS. A functional framework and a number of goals of Jarvis are set out in this blog.

The learning objectives for the preparation part of our blog series were:

  1. Find out the (im)possibilities during the conversion of an 12c on-premise BPM process to PCS. Determining alternatives for the impossibilities.
  2. Starting a process via a SOAP User Interface (SoapUI).
  3. Using an Oracle Content and Experience Cloud (CEC) Integration. (Start a process via a Document, Archive the Order.)
  4. Usage of a Decision Service.
  5. Implementing correlation.
  6. Transforming the Preparation process into a reusable subprocess.

At present, we have not yet met some of these objectives. Below I have described what the current status is of each objective:

  1. A separate blog was dedicated to this (Import 12c On-premise Preparation process into PCS).
  2. A separate blog was dedicated to this (Using the SOAP interface to start a Process).
  3. Not sure yet if I will be able to write a blog with CEC because I don’t have access to an environment where this is possible.
  4. We have written several blogs about this (Using a Decision Model in the Delivery Process, The various Decisions of a Decision Model, Fourth step in Implementing the Order Processing, Decision Model).
  5. A separate blog was dedicated to this (Third step in Implementing the Order Processing, Correlation),
  6. not yet done.

6. Functional Description of the Payment Process

Most of the Jarvis Pizzeria blogs cover one or more technical components of PCS. A functional framework and a number of goals of Jarvis are set out in this blog.

The learning objectives for the payment part of our blog series were:

  1. How do the business rules work in PCS and how do they differ from their on-premises counterpart?
  2. What types of gateways do we have at our disposal?
  3. Do we have multi-instance subprocesses?
  4. How do we implement correlation?
  5. Using the notification task.

At present, we have not yet met some of these objectives. Below I have described what the current status is of each objective:

  1. A separate blog was dedicated to this (Implement (OBR) rules).
  2. Not done. Andre Boaventura has mentioned this to some extend in his blog post Migrating your Oracle BPM assets into Oracle Process Cloud Service (PCS)
  3. A separate blog was dedicated to this (Second step in Implementing the Order Processing, Multi Instance Subprocess).
  4. This was already done during the Pizza preparation. See the above Functional Description of the Pizza Preparation Process.
  5. A separate blog wat dedicated to this (Notification Task in PCS).

7. Import 12c On-premise Preparation process into PCS

In this blog we discussed to what extent it is possible to import BPM processes from an on-premise environment into PCS.

In the on-premise BPM Suite version 12.2.1.3, the projectVersion used is still unchanged (20120601) compared to the previously tested version. The manual adjustment of this projectVersion into 20140730 still works.

The bug with regard to importing XSDs with enums has also been fixed. But unfortunately the imported types are not yet usable in the web forms. I will come back to this in part 2 of the blog refresh.

My expectation is that I will never use this import functionality in a real project. All does not work optimally and has little added value. Rebuilding is a lot easier. I think that Oracle also looks at it this way because it looks like the don’t pay much attention to it.

8. The Document Only Delivery Process

If a process is for descriptive use only, select the Document-Only check box, then the process isn’t validated and can coexist with deployable processes in applications.

In this post we described this functionality. The document only functionality still works the same as before. And that’s fine.

9. Implement (OBR) rules

Do Oracle Business Rules still work the same as before in the on-premise environment? This blog provides the answer.

Because Decision Models are preferable to Business Rules I will not go into this topic any further anymore in the future, with the assumption that no changes have been made and also will not be made in the future by Oracle.

10. Using a Decision Model in the Delivery Process

This blog contains an example where we make a Decision Service based on a simple Decision Table and how this Decision Service can be used from a process.

A question I will try to answer somewhere in the near future:

Is a call to a Decision Model Service directly from PCS a good practice?

There are business cases where I believe this is not the case. But from a process is the simplest way. I will come back to this in a separate blog soon.

11. Using the SOAP interface to start a Process

In this blog we show how a process can be started from SoapUI.

A commonly used, if not the most commonly used way to test a process.

12. Using the REST interface to start a Process

In this blog we show how a process can be started from Postman.

Starting processes in PCS via a REST call is not built in as standard as via SOAP. But it remains just a service call that is possible both via SOAP and REST.

13. Deployment and using the workspace

In this blog we show how an application can be activated. We also show how you can view executed / running instances of a process and we carefully consider the out-of-the-box error handling options.

This has brought me to the end of part 1 of 3 of the Jarvis Pizzeria blog refresh.

note: also check Rick Keller’s blog for the latest Jarvis Pizzeria news.

2 thoughts on “Jarvis Pizzeria blog refresh part 1 of 3

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s