Most of us know the importance of sticking to a budget. In order to do that, you need to understand what money is coming in and what money is going out. You need to make sure that you aren’t committing to more than you can spend or you can end up in serious financial trouble. Astute businesspeople also know that financial acumen is key to making a business successful and keeping it that way.
I find myself constantly surprised that this same concept doesn’t always get applied to a development team’s capacity for work – either by the client or the dev management. The same skills that allow people to be successful at their budgeting and account balancing, both personally and professionally, can and should be applied directly to the capacity handling of development teams.
It all boils down to living within your means. It is important for individuals and companies alike. If you are a people manager, and want to be respected by your employees, you must understand your capacity balance sheet.
How do you start?
In order to begin to understand your capacity, you need to gather data. If you are using any sort of electronic system you are likely to have existing data you can study. Two measurements you want to decipher are your ideal WIP numbers and your cycle time.
WIP refers the the number of items in progress at a given time. In Kanban, WIP is defined per workflow state rather than the total number of items in progress across the board. This allows you to more granularly control the flow of work through your overall system to better fine tune cycle times. You can look at cumulative flow diagrams to measure how much work is in progress at a given time in history.
I define cycle time as the time from when the item is “begun” to when it is resolved. Everyone’s workflow is different, so what “begun” means may be “scoping” for one team, “prioritized” for another and “development” for a third. Consistently though, it is the first active step in your workflow to the right of the backlog. Though there are other ways to measure cycle times, a control chart is a popular method of getting mean cycle times. A control chart gives you the mean cycle time for a set of work. They also often show standard deviation to give you a better idea of the length of time the outlier tasks takes.
Once you have WIP limits and cycle time numbers, you can use this historical data to know how much time development transactions usually “cost” and estimate when future transactions will be complete.
Don’t forget the unexpected…
Its important to use real data and not what you remember as we all suffer from optimism bias or a variety of other types of biases. We rarely look back at the world with perfect recall. We often apply rose-colored glasses and have hope for a better future. Therefore, we often over-estimate what we can deliver in a certain time period.
As financial experts love to remind us, we need to remember and commit to save a certain percentage of your funds for incidentals. The same concept applies to saving a certain percentage of our capacity for the “dark matter” in our work (to borrow a phrase from @agilemanager). Dark matter is the stuff we know is lurking out there waiting for us but we don’t now what it is or how it will affect us — the emergencies of life or work. When we estimate, its easy to forget to add this in. Again, we are optimistic that we have thought of everything!
Now, as conditions change, so you can your capacity. It can be a new hire, attrition, cross-training, etc. They all can affect capacity. Therefore, just as you do with your financial accounts, you need to monitor your capacity regularly. You adjust your estimates and agreements as needed.
Why this matters…
A business who understands their capacity is forced to make more stringent prioritization decisions. Having that burden is a positive one as it forces these businesses to understand which desires are core to their company’s strategic goals and which serve only as distraction. Because they are living within their capacity means and not overdrawing their account at Employee Bank, their employees are often happier than most. A company who truly understands this and the value it brings has the mark of a high maturity organization.