👇 (this is the same intro as yesterday’s post if you have read it already, scroll down 4 paragraphs) 👇
We waste time all the time. Small unimportant tasks. Procrastination. Looking at nothing (this one is not really a time waster if it clears your head).
The world is filled with traps that make us waste our time, and some of them we already know how to detect and adapt to them.
Lean Manufacturing talks about the 7 lean wastes, these wastes can also be mapped to software development.
During these next 7 days, I will pick up one of the wastes and investigate the following questions
- Why does it impact our work?
- What could be the causes of this?
- How can we measure it?
- How can we avoid it?
For today the focus is Extra Work. Extra work means everything that we did that didn’t need to be done.
80% of the value comes from 20% of the features
This is a clear case of effectiveness vs efficiency. We have the best code ever. 100% test coverage. A dream pipeline that delivers everything to production without a single bug. If no one is going to use it after, we just wasted our time.
It may look counter-intuitive to consider a waste if you are producing more, but the output is not the same as the outcome. Producing more of something that will not be used has 0 value. Heck, in this case, it even has a negative value because you could be spending your time with something else.
Imagine you have the best hot dog stand in the world, but you are parked in an area of vegetarian and vegan customers. It doesn’t matter how good your hot dogs are, no one will buy them.
Why does it impact our work?
- If it’s not going to be used, why do it?
- We will need to maintain them.
- If they break, they may break something else that is being used.
- Our team spent time testing, reviewing and deploying it for nothing.
- Increase our code complexity.
What could be the causes of this?
- We don’t know our customers and his/her needs.
- We don’t validate value propositions.
- We don’t have customer metrics that allow us to understand what is being used or not.
How can we measure it?
- #features in production that are used by the customer
- #items delivered that are focused on the MVP
How can we avoid it?
- Break features as small as possible and review them with your stakeholders.
- Release to production often and gather usage metrics.
- Proper prioritization of the backlog and focus on MVP by using the Eisenhower matrix.