Introduction to the simulation model V1 20Oct2016 Wolfgang Steffens
Create a list of workitems Overview Perform a simulation Simulation 1 - Teams’ workload ratio as a function of workitems Simulation 3 - Teams’ workload ratio as a function of workitems with parameter team size Simulation 5 - Teams’ utilization as a function of team size with parameter workitems (content fixed) Simulation 6 - Create CFD and teams’ utilization Simulation 7 - Teams’ utilization as a function of team size with parameter workitems (time fixed) Create a list of workitems Length up to 1000 items Max Value and Max Size are user-defined Value and Size are baed on equally-distributed random function Team Allocation Teams’ capacity and number of teams (max 100) are user-defined Teams which contribute to a work item and their workload are both chosen per equally-distributed random function
Simulation 1 – Teams’ workload ratio as a function of workitems Content FIXED Display Maxratio, minratio, avgratio, median ratio as a function of workitems Allocate #work to #teams using random function (#runs) Read #ofitems from the workitem list Example: Ratio is calculated as the maximum workamount of a single team across all items divided by the minimum workamount of a single team across all items. This ratio calculation is done for #runs. The max/min/avg/med ratio is derived across all the ratios from those #runs.
Simulation 3 – Teams’ workload ratio as a function of workitems with parameter team size Content FIXED Display Maxratio, median ratio as a function of workitems for each #teamsize Allocate #work to #teams using random function (#runs) Read #ofitems from the workitem list Example: Ratio is calculated as the maximum workamount of a single team across all items divided by the minimum workamount of a single team across all items. This ratio calculation is done for #runs. The max ratio is derived as an average from the top 20% of all max ratios across all the ratios from those #runs. The med ratio is derived across all the ratios from those #runs. The simulation can handle and display up to three different team sizes.
Simulation 5 – Teams’ utilization as a function of team size with parameter workitems Allocate #work to #teams using random function (#runs)* Content FIXED Display Team utilization rate in (%) as a function of team size for varying # of workitems Read #ofitems from the workitem list and read #teamcapacity Example: * Additionally: The amount of how many cycles the team is involved is calculated based on the workload of a team across all workitems and its capacity. The minimum and average utilization rate is calculated based on in how many cycles the team is involved in. The average of the top 20% of the averaged team utilization is displayed as a function of teamsize with the amount of workitems as a parameter.
Simulation 6 – Create CFD and teams’ utilization Examples: Create CFD Team utilization rate in (%) Teams’ involvement in #cycles Read #ofitems from the WI list #teamcapacity Single run!!! If needed: Allocate #work to #teams using random function Content FIXED Teams pull in work from workitem list. If a team has no more capacity left, the cycle count is increased by 1 and the team gets again capacity assigned (reduced by the amount of leftover work). This is done for all teams. Each workitem is tracked in which cycle it was started and when ended. The CFD is created with this data. Further, it is displayed in how many cycles a team is involved in in absolute and relative graph.
Simulation 7 – Teams’ utilization as a function of team size with parameter workitems Allocate #work to #teams using random function (#runs)* Time FIXED Display Team utilization rate in (%) as a function of team size for varying # of workitems Read #ofitems from the workitem list and read #teamcapacity Example: Deduction what is the maximum number of workitems until a team hits the capacity*cycle boundary. Determine each team’s maximum cycle. Utilization ratio is calculated based on the cycle data. Utilization ratio average, maximum and minimum are calculated.
The Dirty details Disclaimer: Macros are written in VBA excel with Office365 (Excel 2016) and Windows 7. The macros might not work on other Excel versions
Team Allocation (generic for all) A workitem is allocated to random number of teams The allocated amount of work is random Team’s total workload is summed up over all worktiems. The team with the biggest and the smallest load. The ratio is 5.7 = 162/28 Note for Analysis 3: the max rate is based on top 20% and min rate is based on the bottom 20%.
Teams’ utilization rate (Analysis 1-5) Minimum utilization rate is 22% (=2/9) Average utilization rate is 69% Using a capacity of 20. Team 4 needs 9 cycles (roundup 162/20) Team 5 needs 2 cycles (roundup 28/20) Note for multi-run simulation: the max rate is based on top 20% and min rate is based on the bottom 20%.
Teams’ utilization rate (Analysis 7) Example Capacity: 20 Cycles: 5 2 Team 3 hits the boundary (capacity*cycles) first Item #12 is the last one which is counted Calculate workload of each team across workitems 1 to 12 Calculate how many cycles each team needed top get their work done Calculate ratio of BLA 1