Continuing my recent post re simulation analysis and BPMN… (Since then I’ve finished my BPMN training materials, including simulation analysis, and it’s now in beta… almost ready to go! Also since that post, the histogram of costs and times is now out of the box. I told ITP Commerce how I did it and they put that in the standard simulation output. How’s that for customer service!)
Use case 2. Here the problem is usually framed in terms of “bottlenecks.” I’m not sure how typical that situation is in real life. Usually static analysis gives you a rough idea of the staffing requirement even without simulation. For example, if over the workday you create 100 instances an hour, and Task A takes 1 hour, you need “around” 100 people to perform Task A to keep up. But what if instead of creating 100 instances an hour, you are getting 800 instances overnight and your resource for Task A also is responsible for Task B? Then simulation gives answers you can’t get from static analysis.
But it turns out simulation gives surprising results even in the case where static analysis says you have enough to do the job. For example, in preparing use case 2 scenarios for my BPMN training, for a given instance creation volume I would vary staffing counts in a set of scenarios. But when the resource utilization rate – the ratio of active time on tasks to the resource’s total avalable time – got up to around 80%, the process could not keep up with the instance creation rate. I had heard anecdotally that 80% was some kind of rough maximum for real utilization rate, but I didn’t think it would show up so dramatically in the simulation analysis.
I think in the past I commented on those “smart” analysis tools in BPM that give you hints like – big backlog at activity XYZ, try adding resources. Well duh! It doesn’t take a genius to know that if you add resources to an activity you’re going to reduce the backlog. But at what cost? Use case 2 is really about the tradeoff between cycle time, resource utilization rate, and total cost.
And here is where the “standard” costing reports out of my simulation tool were not the most helpful out of the box… although they provided the data I needed in my custom reporting Excel template. That’s because the cost you want is NOT the resource’s active time x the resource cost per hour, but the resource’s total available time x the resource cost per hour. As you add resources, the total active time for N+1 resources is the same as for N resources, so the cost measured the standard way doesn’t change. But try telling the hiring manager the cost won’t change by adding that N+1st guy. So I had to make custom costing reports, but it was easy. The total cost for a resource is basically the active labor cost divided by the utilization rate, which is provided in the tool.
[…] The previous discussion leads naturally into simulation use case 3, which deals with Activity Based Costing. A number of users have asked me if simulation provided activity based costing, and I always said yes, since I assumed it could. But it’s not built into the tools at all. This turned out to be a really interesting part of the training to develop. All completely original, since the modeling tool vendors don’t really talk about it (or at least correctly), and the ABC literature doesn’t mention simulation, either. […]
[…] The third section, Simulation Analysis with BPMN, shows how to do practical performance analysis using BPMN in combination with the modeling tool’s simulation engine. Simulation isn’t standardized by BPMN, so this part is somewhat tool-dependent, although the principles behind it are not. We walk through three specific use cases, which I have discussed previously: cycle time improvement from eliminating handoff delays and other inefficiencies, optimizing resource configuration and utilization, and activity-based costing. We show you how to use various diagram patterns, how to set up the simulation parameters, and how to customize the simulation output to give meaningful results. […]