Understand Technical Debt by Playing a Game
This games gives people a great understanding of what Technical Debt is and why it is so costly to projects.
Timing: 10 minutes
- 4 cardboard boxes. Size: around the standard size of a moving box (13”x18”x12”)
- Enough packing peanuts to fill two of the boxes
- 2 people (these folks are the key ingredient ;-p). You can do this exercise with more people (adding 2 at a time, up to 6 people without the need to have more boxes or packing peanuts). For even more people you’ll need to add more boxes and packing peanuts
This games gives people a great understanding of Technical Debt and why it is so costly to projects.
The goal is to move packing peanuts from one box to another one across the room.
The objective is to demonstrate how technical debt is created and why it is so costly.
- Set 2 lanes across the room
- For each lane place one cardboard box (opened for easy access) at each end of the lane. Thus you have two boxes per lane
- Fill the boxes at the same end of the lanes with packing peanuts: one of them at 70% capacity, and the other one at 90% capacity
- Each participant will stand next to a box with packing peanuts
- Explain the participants their goal: To transfer all the peanuts from the box next to them to the box at the other end of their respective lanes. Observing:
- The person with the 70%-full box is to transfer all of them in three trips and can use hands and arms (and support them on his/her belly if so desired), but nothing else
- The person with the 90%-full box can take as many trips as desired and can use both hands only
- The boxes are not to be lifted, tilted, shifted or other. Their sole purpose is to contain the peanuts
- Peanuts that fall on the floor are left there
- There is no time limit
- Do not run and watch your step
- Start the game
- Let them play for about 2 minutes or until one of them accomplishes the task
- Unless something really unexpected happens, the person with the 90%-full box will finish first or will have transferred more peanuts once the time is up
- The person with the 70%-full box typically drops way more peanuts to the floor
- The person with the 70%-full box exerts and stresses more
- The peanuts on the floor are technical debt: they represent features or aspects of features, and those on the floor represent unfinished work, bugs, etc. All of them very costly to the project
- One trip represents a release cycle: more peanuts per trip represent a bigger release
- Big monolithic projects generate more technical debt
- Big monolithic projects take more energy out of people, and stress them more
- Trying to bring all features from start to end at once is way more difficult
- Bringing features to completion in small chunks is easier, and generates less technical debt (less peanuts on the floor)
- Bringing features to completion in small chunks allows people to work at a better pace and under less stress
- Bringing features to completion in small chunks results in more features done in less time