A New Frame
For more than half a century, the software industry has been trying to find methods to increase the likelihood of successful software development. From Flowcharting in the 1960s, through to Agile methods today, the industry has gone through dozens of different approaches. And found them all wanting.
Chart: David F Rico
All of these methods, diverse as they may seem, have at least two things in common:
- They all focus on various technical (aka mechanistic) aspects of software development.
- None of them have made much difference to the general level of successful software development aka “the software crisis”. Cf The bi-annual Standish Group “Chaos” reports (below).
I am convinced that the focus on technical aspects is a core reason – I’d go so far as to say the core reason – for the lack of progress in increasing our industry’s rates of success.
Having been in the industry more than thirty years, and having seen – and used – most if not all of the methods listed in the Rico chart (above), I suggest that we might do well to fundamentally change our frame.
The predominating frame for the past fifty years has been that of:
- processes and a process-orientation.
- technical practices (cf. CMMI, XP, Kanban, Scrum, etc.).
- generic (one-size-fits-all) solutions – typically, imposed on those doing the work.
Hardly a surprising frame for an industry long dominated by engineers and scientists. Even though engineers and scientists are people, too (ironically).
And also less than surprising considering this frame has been ubiquitous in business – and much of wider society – for at least the past hundred years and more.
Given that software development is perhaps the epitome of collaborative knowledge-work involving groups of people, I propose that we as an industry reorient ourselves and adopt a more useful frame.
The frame I have in mind (sic) is one embracing e.g.:
- Complex adaptive systems.
- Group dynamics.
- Personalised solutions.
In other words, a frame placing people, not practices, centre-stage. A frame focused on people – and their emergent individual and collective needs.
“You can’t really know what you need until you get it. Only then will you know whether you need it or not.”
~ Marshall Rosenberg
You may appreciate that this frame is about as far as we might possibly imagine from the prevailing (old) frame that we all know and suffer.
Hence my recent posts introducing The Antimatter Principle:
“Attend to folks’ needs.”
~ The Antimatter Principle
A Challenging Request
Would you be willing to take a fresh look at your deepest foundational beliefs regarding how to approach software and product development?
Maybe by doing so we can move away from the mechanical, inhumane, violent and coercive frame within which we’ve all laboured so miserably and so ineffectively for so long.
Maybe we have to fundamentally change our frame before we can begin to build and work in effective organisations – organisations aligned to human nature, and celebrating humanity, joyful society and freedom of choice?
Short History of Software Methods ~ David F. Rico
“If you don’t understand people, you don’t understand business” ~ Simon Sinek (video)