A Foreword about Oracle BPA Suite
Oracle Business Process Analysis Suite allows the business & IT community (process owners, business analysts and architects) to perform process modeling & analysis, simulation and publishing of business processes. It provides an integrated and comprehensive toolset, powered by the industry leading ARIS platform.
Many organizations use Oracle BPA Suite to model their organization’s process from the highest level (strategy) down to the operational process level.
Mark Nelson writes that
“There are a lot of benefits to organizations in using this structured modeling approach in terms of visibility into their processes, optimization/improvement of processes, especially through approaches like LEAN or Six Sigma, and documentation and compliance, just to name a few.”
He has also covered how a BPA blueprint can be exported as a BPMN process and imported in JDeveloper Studio in his post.
Simulating a Process in Oracle BPA Suite
What I would be covering in this blog post is how you can run simulations on a BPMN process modeled using Oracle BPA Suite.
Here is a step by step detail of how it can be done.
For the purpose of simulation i have created our favorite Sales Quote Approval Process (a rather simple version of this in Oracle BPA).
Create/Model a process similar to the diagram below or simply create a one of your own.
Right click on the Input Sales Quote Data human task and go to Select-> Select all of this type
Press F8 to open the Attributes pane. Alternatively Click on the tab Edit->Attributes
In the Attributes pane we will try to put simulation data for Time and Cost for each activity in the business process workflow. Expand Times and Costs in the pane.
You can enter simulation data based on predetermined process SLA’s.
You can also enter more precise time settings by entering Orientation and Wait time for each activities as well.
Similarly enter the Total Costs associated with each activity. Here i have removed the columns that are served by Automatic activities in the business process. However still you can keep them and associate a cost for these activities as well.
Instead of entering Total costs you can even drill down to an even lower level of cost settings. Save the changes and close the Attributes Pane.
Wait till all models are loaded for simulation. The BPA suite converts all activities into corresponding Models.
Now for the most important part we have to define the number of maximum/available participants that can be allocated for the simulation have any significance.
Open the InputSalesQuoteData Model and click on the sequence flow from Single Approver to Sales Rep. Click F8 to open the attribute pane and click on the Simulation Attribute.
Enter a value for Number of employees and Number of required employees. Save and close.
Similarly open Model for each of the Task activity and enter the required number of resources required/available for them. If the Task is a Management/Group task you will have more than one participant type for them. Make sure that for you enter the number of participants for each type.
Similarly add the same for Contract Terms Approval and Freeze Contract.
Now we have to add simulation data (probability) for sequence flows from Gateways. This is really important as this will determine how many times the quote is done and redone. Every time a quote is redone the business process executes again leading to significant and redundant repeated costs.
Go to the SalesQuoteApprovalWorkflow Model and click on the sequence flow marked as No from the gateway Business Group Approval. Click F8 to open the Attribute Pane. Click on Simulation and enter a value for probability.
Add a probability factor for other sequence flow as well in a similar way.
For the purpose of this demonstration here I have added .7 probability factor for every Yes/Approved transition.
Now click on the Start event in SalesQuoteApprovalWorkflow and open the Attributes Pane. Go to Frequency and set the daily value of Quote Creation as 50.
The simulation is run and we would get the simulation animation (that include the count of quote flow at every activity) and also simulation statistics. The simulation was run for 4 days.
Click on the Activities (cumul.) tab in the statistics pane and select all values under the Processing time sum column. Right click and Generate a Column chart.
You can see that the Business Group Review activity takes the maximum amount of time. This is probably because this is a Management Task which requires a multi step approval to complete.
Also see how the process fared in terms of cost. Click on the Activity Costs tab, select all values under the Avg. total costs and right click to generate a column chart.
The Input Sales Quote Data task consumes the bulk of Quote processing cost as this task is redone at every point of non approval.
Additionally you can also save the simulation statistics as .xml or csv data.
That concludes this article that deals with introductory steps towards simulation in Oracle BPA Suite.