Prev | Next |
Calendar-Based Help Desk Phone Support Simulation
In this example, we create a very simple model to simulate the Help Desk telephone support process, based on calendar settings. We assume that:
- Customers call in at different intervals on weekdays and weekends
- Processing times differ between weekdays and weekends
- There are different numbers of support resources on weekdays and weekends
We model this process step by step, then create calendars and configure the Business Process simulation, which is simple enough to be calculated with pen and paper. After that, we run the simulation to compare that result with the pen and paper analysis.
Create BPMN Model
The model itself is very simple, consisting of a Start Event, a Task and an End Event.
- Create a Start Event Customer calls in
- Add a Sequence Flow to the target abstract task Activity Service Customer
- Add a Sequence Flow to the target End Event Customer hangs up
Create a BPMN2.0 Resource named Support. Create a BPMN2.0::ResourceRole inside Service Customer, give it the name support and set the tag resourceRef to the name of the Resource element Support.
Pen and Paper Analysis
We can use pen and paper to analyze this case:
- The simulation duration is 2 hours and 10 minutes, from 8:00AM to 10:10AM
- Customers call in every 20 minutes on weekdays
- Customers call in every 60 minutes on weekends
- To service a customer takes 50 minutes on weekdays
- To service a customer takes 40 minutes on weekends
- There are 2 support resources on weekdays
- There is 1 support resource on weekends
Looking at this result, when resource constraints are applied the computation is very complicated for such a simple model.
On weekdays
- 7 customers called at intervals of 20 minutes over a duration of 2 hours and 10 minutes
- 4 customer calls were terminated normally
- 2 customer calls were interrupted because of timeout
- 1 customer call was not answered
- Support1 worked continuously for 130 minutes, Support2 worked continuously for 110 minutes
On weekends
- 3 customers called at intervals of 60 minutes over a duration of 2 hours and 10 minutes
- 2 customer calls were terminated normally
- 1 customer call was interrupted because of timeout
- Support1 worked 90 minutes, in 40-minute blocks with an interval of 20 minutes between calls
Now we will see how EABPSim can help.
BPSim Configuration
In this section, we first create the Calendars, then we set up the Duration and Start parameters.
For element parameters, you can specify one or more calendars for a given parameter. However, if any calendar is set for a parameter value, a default value (without any calendar specified) must exist, otherwise the simulation will not work.
Clicking on the button on the Configure BPSim window toolbar will automatically check this constraint for you.
Task |
Action |
---|---|
Create BPSim Artifact and Set Package |
All the BPMN elements will be loaded in to the Configure BPSim window. |
Calendars |
Click on the 'Calendars' tab, click on the to display the 'Event Recurrence' dialog and complete the fields as shown to create a calendar. Click on the and overtype the Calendar_n text with a name for the calendar. Create two calendars.
|
Start & Duration |
Click on the 'Scenario' tab.
|
Customer arrivals |
In the left-hand tree on the dialog, expand the 'StartEvent' group and click on Customer calls in; click on the 'Control' tab and, using the drop-down arrow of the 'New Parameter' fields, create these parameters:
|
Processing Times |
Expand the 'Activity' group and click on Service Customer; click on the 'Time' tab and, using the drop-down arrow of the 'New Parameter' fields, create these parameters:
|
Resources |
Expand the 'Resource' group and click on Support; click on the 'Resource' tab and, using the drop-down arrow of the 'New Parameter' fields, create these parameters:
|
Resource Selection (allocation) |
In the 'Activity' group, click on Service Customer and click on the 'ResourceRole' tab. Check that the 'Resource SelectionExpression for Activity' panel shows bpsim::getResource('Support',1) as an expression. This expression is loaded from your BPMN model by default. You can do some advanced configurations for resource selection for a task. |
Run Simulation
Weekdays
- Click on the 'Scenario' tab and set the 'Start' value to '1/7/2016'
- On the dialog Toolbar, click on the ; the 'BPSim Simulation Controller' dialog displays
- Click on the Run button drop-down arrow and select 'Standard Simulation'
A file with the name Calendar Based Support Process Simulation - Result is generated. This report file contains the result for a weekday simulation.
Weekends
- Click on the 'Scenario' tab and set the 'Start' value to '2/7/2016'
- On the dialog Toolbar, click on the Run button; the 'BPSim Simulation Controller' dialog displays
- Click on the Run button drop-down arrow and select 'Standard Simulation'
The Calendar Based Support Process Simulation - Result file is updated to show the result for a weekend simulation.
In each case, check the match between the result file and our analysis with pen and paper.