This post is aimed at helping users and potential users of simulation make good use of the software. There is plenty of advice and guidance that can be offered, particularly to people new to simulation, clearly this post only scratches the surface. The content here is also largely independent of software, so it does not refer directly to functionality within ARIS Business Simulator.
Business Value
The potential users of the simulation in the BPM field are likely to be in the majority fairly inexperienced with simulation. Some may come to initially ‘try it out’ and then hopefully begin to use the technology to get business value. Simulation is a powerful approach to process optimisation and improving business performance and whilst simulation can provide a wide range of information about the process being studied it is important to be very clear as to the objective at the outset.
Rule 1: Be clear as to the Question being answered, and the focus of the simulation.
Two common areas of focus are;
- Process Validation
- Process Optimization
This focus should guide the way the user looks to determine which results are collated and presented in the project. The user must be clear as to the ‘Measure’ of ‘what good looks like’, and also the ‘target’ or level of this measure that the business is looking to achieve. Often determining this measure is not simple and may require diplomatic consultancy skills. An old story can be used to indicate the importance of getting the measure right…CEO says ‘I want to minimize the costs incurred by my process’…..the answer to this is obvious ‘shut down your operation’!
Rule 2: Develop the appropriate measures and targets, after all you can’t improve what you aren’t measuring.
Ideally thinking in this way will aid clarity, this will mean that new users will get a better first exposure to simulation and non-simulation specialists will reduce the amount of output data they have to sift through, making it easier to design the simulation exercise in terms of experimentation and data.
Process Validation
This is about testing a process in terms of its structure and the frequency that tasks take place. This simulation does not need the full process data in terms of task timings, token arrival patterns or resource information. It merely requires the process model and percentages for XOR junctions. This is in fact partly what simulation provides as an engine within ARIS Business Optimiser.
The simulation would first run an arbitrary number of tokens through the system, reporting the number of times each task is fired and count the number of tokens at each end event. Potentially in a process which has an error in it, a token could get stuck….the simulation would need to recognise that and report accordingly. This use of simulation can help identify potentially little used steps in a process which could be eradicated by changes to the process.
A second run would then be done with more tokens and the results offered to the user, if the results of the second run are ‘different’ to the first….the user could be offered the chance to run again with even more tokens to ensure a ‘statistically valid’ result…..i.e. output values which have ‘settled’ down sufficiently for the user to be confident.
This use of simulation could be an ‘end in itself’ or a preliminary step in a deeper study.
Rule 3: Simulation with little data still has value in terms of validating processes
Process Optimization
This is the main fully functional use of the simulation; data is now required on token arrival patterns, task timings, task priority, resource availability and usage. The user would also have to provide some input in terms of service level required and the parameters which are to be optimized.
Service Level can be expressed in a number of ways, measured at end events. I suggest below two examples;
- ‘x’% of tokens completed with ‘T’ time units per time period. The time period could be an hour or a day etc. or left blank in which case the time period is the length of the simulation run, so the results provided for each token type is a list of percentages.
- Rather than % completed with a time ‘T’, the service level could be purely described as a throughput figure per time period.
This type of measure and target could equally apply in a ‘back office’ environment or in a manufacturing facility, supply chain or where any service is being provided, e.g. Health sector, Military pilot training.
To provide better guidance for the user simulation tools could provide default scenarios based on a working week, with 5 * 8 hour days, each hour being a time period for service level calculations and for entering token arrival figures. The user being able to change this default work week structure. The user would also select a number times the ‘week’ would be run to provide results. In my experience many simulation modellers have an approach that they reuse for many projects as the techniques are clearly transferable from project to project.
To optimize the process to hit the required service level the user needs to describe the parameters for which he is looking to identify optimum values. In the BPM world this could be (1) resources….so the user would need to select a number of settings for resource levels with other data items being held constant. Alternatively the resource levels could be held constant and the (2) arrival pattern of tokens changed to try and optimize throughput given a resource level. A third (3) optimization parameter would be task priorities and max tasks in parallel, which are effectively optimizing resource allocation rules. It is important to change parameters in a structured way to be sure about ‘cause and effect’. Some simulation software tools including ARIS Business Simulator do provide automated Optimization functionality to support the user in this search for the parameter settings which best meet the requirements in terms of Measures achieved.
Rule 4: Determine a defined list of parameters and ranges that are under consideration and experiment accordingly
Experimentation
Simulation experimentation normally uses the concept of replications, where the random number seeds are changed to provide a range of answers for the same data. Results are normally made available for each replication so the user can see the range of results and decide if sufficient replications have been run. The simulation software normally provides the individual replication results if required, but could also offer the option to supply a single averaged set of results.
Rule 5: Undertake sufficient experimentation and replications to be sure valid answers are obtained.
When a number of scenarios (sets of parameter values) deliver very similar results, the decision of which to adopt is normally taken based on other criteria rather than purely the simulation output. Accuracy of results does depend to some extent on the business question being answered, is Scenario A better than Scenario B does not need totally accurate results, merely confidence of the relative difference between the output measures. If however the purpose is to predict a specific service level metric e.g. 90% of emergency patients are served within 2 hours, more accuracy is required, particularly if failure to meet the target resulted in penalty costs.
Readers of this short post will no doubt recognise that Simulation Modelling and Project Management is a large topic, indeed many text books have been written on the subject. This post has been successful if it has provided some light for new users embarking on simulation projects.
Geoff Hook
The Lanner Group provides the simulation software used in ARIS Business Simulator and has many years’ experience in undertaking simulation projects, developing simulation software and providing business solution using simulation.
Hello,
This is a very nice article.
However, I have a question specific to Input event.
In ARIS, What we can provide as an input is Process Instantiations. But we can provide only a fixed number for Process instantiations.
Example: - 1000 in month of october, 500 in month of November etc.
Is there a way to define a distribution pattern for the input instead of giving a fixed number. Say for example I have past data from which I come to know that I had a Normal Distribution, I just need to input the equation of that Normal Distribution and input event values will start flowing in.
Please let me know if we have this capability in ARIS Simulation.
Thanks,
Nikhil