For at least two years our team does the projects in a lean way: we don’t do detailed planning as it doesn’t make any sense - what we do is highly unpredictable: we rarely do something we did earlier, so all the estimations (based on experience) would go to trash bin two hours after being completed.We also change priorities very frequently, due to highly reactive (adaptive) character of our work.
That’s why all we do is put in the Kanban board - we make sure we don’t have too much WIP, we re-visit the priorities, we eliminate the stuff that stays too long in the pipeline (if it’s always least priority, we ain’t gonna need it really), we use what we learned to (sometimes) completely shift the approach we already took, we’re not afraid of re-factoring, etc.
And usually, it works like charm - we don’t spend time never-ending analysis loops, we do what’s really needed and we try to share that with the recipients (whoever he/it is) as soon as it’s possible. Unfortunately, the rest of the organization around isn’t even aware of the way we do our stuff - they are more like typical waterfall (with some “adjustments” …) and once in a while it causes serious problems:
- We have to rely on external factors we can’t incorporate in the team: people / teams who do not share our targets, who do not want to co-operate directly (“hand-to-hand”) - if we want something of them, they just expect us to deliver: the plan, the detailed design, the acceptation criteria, … - preferably in signed envelope, with all sign-offs.
- We have to explicitly ask for EVERY particular input: suggestions, questions, comments, etc. Even if they have some observations, they want let us know unless they are directly asked for or it’s convenient to them.
- Our cooperators don’t care about being pragmatic - if they are to start the work we want them to, they want all the information up-front. it doesn’t matter if what they asked will be applicable in the later phase, the *format* is saint and engraved in steel-plate, so they have to receive it NOW.
- What is more - they are not going to deliver something that would be beneficial now if there’s a slightest chance that it may change in future, so they will have some re-work on their side. Because "re-work is a WASTE!".
Sadly, it just leads to frustration and annoyance, but it can’t be helped much. Surely, I could blame those people, but this is the way they are expected to work (by their supervisors) and it’s according the standards and best practices they are familiar with. So, in plain words - on their side they are doing good work and we (the kanbanistas) are the chaotic ones.
One could say - dare for more! Make the organization adopt the lean way. Teach, present, convince, evangelize - sorry, but no. It may sound like “victimship” (another corporate term I hate), but I’m not here to change the corporation (or fight the windmills …), I’m here to do some pretty awesome engineering work and that’s what they pay me for.
To summarize:
Sorry for all the ranting, I just felt like I had to write it all down.
Mainly because I hate to sacrifice my work time (that I could spend on adding some serious value) to answer myriads of mails, interrupt myself every 5 minutes to make sure all the “open points” are addressed in written form in a way that won’t cause zillion of questions 5 minutes before the go-live and nothing is contradictory to one of thousand approved policies.