Part of Redgate’s ‘Learn on the Loo’ series
Making Work Visible is a book by Dominica DeGrandis and well worth a read.
The central point of the book, as the title implies, is we can manage and prioritise our work better if we know what it all is. If what we’re working on isn’t visible you may not realise (i) how much time you’re spending on something and (ii) it may not be adding any value anyway.
A key takeaway was identifying the four sources of development work: Features, Bugs, Architecture and Technical Debt
This highlights the difference between Visible and Invisible work, and both can be adding Positive value or addressing something of Negative value.
Dan North (@Tastapod) called this out when he visited last Autumn; you need to be considering all four types of work all the time, as neglecting any one of them will bring you crashing to the ground.
[Dan described these as Customer Demand, Failure Demand, Kaizen and Keeping the Lights On. Outside of software, in an example of an Accountancy Firm, the ‘Technical Debt’/’Keeping the Lights On’ quadrant might be ‘Doing the filing’]
The Five Thieves of Time
The main takeaway of the book is calling out the Five Thieves, often springing from the invisible work, or neglecting bug fixing because it’s not ‘interesting’. We don’t even realise the Thieves are stealing from us until we find we’re getting nothing done and start to ask questions, or we find ourselves in a crisis.
Thief 1. Too Much Work in Progress (WIP)
We’ve all seen this, the ringleader of all of them all. Too much WIP. When we try to do too many things at one time, we get none of them done, and none of them well. Context Switching is inevitable, and no ‘flow’ is possible.
Thief 2. Unknown Dependencies
This can be both when someone changes something you depend on, and when you change something someone else depends on. And you don’t realise it. If you’re not talking to each other it makes it worse; both because it will be unexpected, and because you’ll blame each other.
In the extreme, this could be only one person knowing a password who isn’t there when you need it.
“Every dependency doubles your chance of being delayed or late” — Troy Magennis
Thief 3. Unplanned Work
We’ve all seen this — an apparently simple change takes days because it gets interrupted to put out a fire. Or to enable that change we need to do x, y and z, which are big tasks in themselves.
“What cowboy did this?” — every builder ever, and quite a few developers
Thief 4. Conflicting Priorities
If everything is top priority people don’t know what they should be working on and can even get pulled from one fire to the next without making progress on any. This is a recipe for Too Much WIP.
“If you have more than three Priorities, you have no Priorities” — Jim Collins, Good to Great
Thief 5. Neglected Work
Neglected Work is the technical debt you haven’t done, or the unloved common library everyone in the company relies on, but no one is looking after (sound familiar?). Eventually the known security hole becomes an emergency and it needs fixing, but now you don’t have the expertise.
The Five Thieves of Time gang up on you and slow you down — making work visible brings them to light