Why a degree of chaos is better than order

I can bet you are familiar with this one, but not its consequences, in product development: you’ve seen project managers in product development teams express frustration at not being able to keep the development on track, on time and on budget. I had earlier written about the kind of expectations people have of product development and its perils – but this problem of project management is worse. In response to delays, project managers begin to get even more hyper. They start asking for more detailed plans, better definitions of deliverables, tighter schedules, better time and resource utilization and more frequent reviews (ouch!). That’s natural. That’s what project managers are born to do. Except, in the product development context, this approach is just not applicable. It’s a great approach in manufacturing and service environments where assets are under performing and people need to tighten their process management. But in product development, this can all but kill the development.

Product development and shop floors are very different – to start with code being developed can be in several places at the same time, in the hands of different people, undergoing several changes (and becoming altogether new products!). This just can’t happen in a manufacturing scenario. A copper pipe being manufactured can only be at one place on the shop floor. A car being manufactured can only be at one point on the assembly belt.

The difference is crucial. And well worth appreciating. Product development managers can’t afford to have their teams ticking at 100% utilization. Not even at 90%. It can cause untold harm. In development, busy does not necessarily translate into productive. Reason? Nothing is predictable in product development (again, I hark back to my older post on the topic at http://pn.ispirt.in/the-weight-of-expectation/). Development thrives in chaos. No one is certain how long a task in development will require – or should take. Unlike in manufacturing and services, where there are well-set benchmarks for most processes, in development there are practically none. Teams should be given leeway to make unpredictable changes, and start from scratch. And starting from scratch does mean low people and process utilization.

Bringing order to development is futile. Okay, I’ll take that back and rephrase it a bit: Bringing order to development is not recommended. This is because the process of development has large variances and reducing those variances can take up considerable resources, adding to project costs. In a world of shrinking resources, that’s a trade-off few will opt for. Or am I in a minority in thinking this?

About the author

Arun Katiyar
  • AGILE/SCRUM really lowers down the chaos. Team velocity is defined after 2-3 sprints and project owners understand well when they are getting what. If industry stick to Agile, there would be many more successful projects out there.

    • Sameer Mallik

      Agile/scrum whatever it is, It’s no magic bullet, ask any developer in any agile team and they will tell you the agile horror stories. The truth is agile is a #failure…

      • Thanks for that perspective Sameer. I would be really interested to understand why you think that way ? Agile is really proving a useful process for us in product development. I am sure we both can have some learning here.

  • Understanding tradeoffs in management is central to choosing a method to manage development madness. On the other hand, development itself is 99% madness, isn’t it? What do developers with experience trust, I wonder.