I just came across a wonderfully scientific confirmation of the wisdom of agile software development teams.
The source was a surprising one: Evolutionary Biologist David Sloan Wilson’s latest book This View of Life: Completing the Darwinian Revolution.
The applicable knowledge comes in Chapter 8, “What All Groups Need.” Here’s the first paragraph that caught my attention:
Multilevel selection theory tells us that something similar to team-level selection took place in our species for thousands of generations, resulting in adaptations for teamwork that are baked into the genetic architecture of our minds. Absorbing this fact leads to the conclusion that small groups are a fundamental unit of human social organization. Individuals cannot be understood except in the context of small groups, and large-scale societies need to be seen as a kind of multicellular organism comprising small groups.
What this means is that, as human beings, we are hard-wired, not to compete and survive as individuals, but to work together cooperatively as members of small teams, with a maximum size of about 15 individuals: something that agile proponents have been preaching for close to two decades now.
But Wilson then gets much more specific, citing research done by Elinor Ostrom, the 2009 winner of the Nobel Prize in Economics, as well as a 2012 paper co-authored by Ostrom, Wilson and Cox, titled “Generalizing the core design principles for the efficacy of groups.”
Wilson lays out in his book, based on this published and recognized research, the eight core design principles (CDPs) that make the difference between success and failure of teams. I will paraphrase here.
It’s interesting to note that Ostrom’s research was based on observations of the actual success and failure of many small teams, rather than on the invention of increasingly complex formulas and models often favored by traditional economists – certainly a vivid reminder of the way that Agile principles and methods came to be defined and accepted, often flying in the face of guidance offered by organizations such as the Software Engineering Institute and their Capability Maturity Models.
While Wilson’s teachings validate much of what Agile proponents have been preaching for some time now, they also provide a rigorous set of principles that can be used to evaluate any organization’s use of teams, as well as the operation of any particular team. This strikes me as valuable, because it can help free software developers from the sometimes insular guidance of one particular coach or manager, and potentially help resolve debates on these topics more quickly and authoritatively – an outcome right in line with CDP 6, as defined above.
I’ve excerpted some of Wilson’s work in this short piece in order to highlight material that should be of particular interest to software developers and their managers, but in doing so I certainly haven’t cherry-picked all the good stuff. I can enthusiastically recommend the entire book to everyone reading this, not just for its insights into the workings of teams, but perhaps even more importantly for insights into what it means to be human in the 21st century.
I’m always excited to find ideas and models that can be used across disciplines, and Wilson’s book amply delivers the goods in this department.
July 9, 2019