Archive

Lean

The Illusory Embrace of Lean Principles

Introduction: The Paradox of Lean Principles in Software Development

In the realm of software development, a profession supposedly grounded in logic, ingenuity, and attention to detail, a peculiar phenomenon has emerged: an enthusiastic, albeit superficial, adoption of Lean Product Development (LPD) principles. Yet, in the world of programming, logic often bows to corporate politics and bureaucracy, revealing the rather farcical application of Lean principles.

The Utopian Vision: The Seven Principles of Lean Product Development

A close examination of the principles that anchor LPD might suggest the perfect utopia of software development. Flow, Respect for People, Continuous Improvement, Building Quality In, Long-Term Thinking, Seeing the Whole, Visual Management, and Knowledge Transfer, all herald the dawn of a software paradise, where everything runs smoothly, people are respected, and growth is not just continuous but sustainable. However, even a cursory glance unveils a grand spectacle of lip-service, a thin veneer of fine words on the complex, and often messy, reality of software development .

The Mirage of Flow and Respect for People

Take the concept of ‘Flow’ – a vision of value gliding seamlessly from concept to market, buoyed by concepts like Just-In-Time delivery and Decentralized Decision-Making. Yet, in software development, flow is often obstructed by dependencies, delays, and what essentially constitutes red tape, disguised as mandatory protocols and ceremonies. The notion of ‘Just-In-Time’ is perhaps more accurately framed as ‘Just-in-Time…well, almost never.’

Respect for people, the idea that humans are the crown jewels of an organisation, is an exquisite principle, presented as an antidote to the dull, dehumanising industrial complexes of the past. Yet, software development organisations are haunted by the specters of burnout, unreasonable deadlines, and an entrenched culture of overwork. The narrative of respecting people often comes as an attractive facade, hiding the ugly reality beneath.

The Irony of Continuous Improvement

The LPD principle of ‘Continuous Improvement’ or Kaizen, promises a culture of experimentation, reflection, and learning. In practice, however, the pell-mell sprints toward deadlines and deliverables leaves no room for reflection or learning. This culture is often sacrificed at the altar of corporate impatience.

‘Building Quality In’ and ‘Long-Term Thinking’ are noble endeavors in theory but are frequently at odds with the prevailing pressures of the executive suite. Quality is often reactive, not preventative, with emphasis on inspection, and patching issues after release rather than investing in more fundamental preventative measures. And in a world mesmerised by quarterly reports, long-term thinking dissolves under the assault of short-term financial objectives.

The Hollow Echo

‘Seeing the Whole’—the ability to understand the entire system, seems almost laughable when buried under layers of bureaucracy and balkanised teams. The reality is organisations have only the faintest of ideas of the broad strokes and little to no comprehension of the intricate details that weave together to form the larger system.

The principles of ‘Visual Management’ and ‘Learning & Knowledge Transfer’ too, are frequently paid mere lip-service. Dashboards and Kanban boards abound, yet they often serve as ornamental pieces rather than functional tools to guide development. Similarly, the idea of knowledge transfer often succumbs to the siloed nature of many organisations, with the promise of shared learning fading into a distant dream. “Lessons learned”, anyone?

Conclusion: Authentic Implementation of Lean Principles?

In essence, while Lean Product Development principles provide a romanticised vision of what software development could be, the stark reality often sings a different tune. The gulf between the proclaimed adoption of these principles and the realities of their faux implementations serves as a poignant reminder of the challenges that continue to plague the realm of software development. The facade is, in reality, a mirage, conjured from the collective desire to believe in a more rational, more humane, and more effective way of creating software. It’s high time to lift the veil and confront the actual realities of the Lean as actually manifest in the software development world.

In a recent article, James P. Womack recounted the struggles that he experienced and admits that Lean has proven to be unacceptable to the leaders of large corporations (Womack, 2017):

With regards to denial, we need to acknowledge that our efforts to dramatically transform large, mature organizations haven’t worked and aren’t going to work, even when these organizations encounter crises. I spent several years recently with CEOs of large enterprises and got them to sanction model lines for value streams to demonstrate what was possible. The results were strikingly positive, but the organizational immune reaction was immediate and crushing. Little lasting was achieved and I’ve moved on. I no longer expect ‘another Toyota’ to emerge in every mature industry.” (Bold in original)

This recognition is not unique to Womack and Jones.

From: Emiliani, Bob. The Triumph of Classical Management Over Lean Management: How Tradition Prevails and What to Do About It (p. 23). Kindle Edition.

Note: Much the same applies to Agile.