The Five P’s of Agility: A Model for Framing Agility at Different Levels
A model for framing Agility at different levels
Carl J. Rogers, July 2022
The principles of a lean-agile mindset have been important to me throughout my professional career. However I have generally interpreted these through the lens of a framework. Be that Scrum, Kanban, SAFe, LeSS, Nexus, DAD, or Scrum@Scale. Over the last couple of years, as I have been less grounded in the day to day rhythm and pulse of teams applying a particular framework, I have started to consider myself not only as framework agnostic, but also possibly as a framework cynic. Or skeptic. I’m not sure which. This has led me to start exploring how I might frame what agility is at different levels.
I am certainly not wholly right (I hope I am not wholly wrong) in framing agility through 5 P’s: People > Principles > Protocols > Practices > Patterns. It could of course just be unresolved angst from my university days learning about the 5/7/X Ps of service marketing.
How does this model resonate with you?
People
People come first. That first statement from the Manifesto for Agile Software Development casts a long, enduring shadow. Individuals & interactions over processes & tools. Principles 1,2,4,5,6,8,12 behind the Manifesto all relate to people. The first guiding principle of Modern Agile is Make People Awesome. That’s referring to everyone in our ecosystem. Ourselves, our stakeholders, our customers. As a business, how we make our customers awesome through our products and services is the raison d’être that guides our decision making. People therefore is also our Purpose.
Frederic Laloux’s model on the evolutionary breakthroughs in human collaboration[1] describes the two highest forms of organization focused on family and the living organism as their guiding metaphor. The highest forms of leadership as described by the Action Logic model speak of mutual inquiry, vulnerability and integration[2].
People represent the why behind agility. Because people have real business problems for which agile may be a means to solve these problems. Because people may need to find adaptive solutions in complex environments. And because we believe making people awesome, and making awesome organizations, is a meaningful and vital contribution to making the world better in an ever more uncertain future.
Principles
A fundamental truth or proposition that serves as the foundation for a system of belief or behaviour or for a chain of reasoning.
An agile mindset is defined by principles and manifested in unlimited practices. There are the 12 principles behind the Manifesto. I have come to subscribe foremost to the 4 principles of Modern Agility (perhaps because 4 is easier to remember than 12). Make People Awesome. Deliver Value Continuously. Make Safety a Prerequisite. Experiment & Learn Rapidly. These connect nicely for me with Alastair Cockburn’s Heart of Agile, in what he describes as 4 critical imperatives: Collaborate. Deliver. Reflect. Improve.
Protocols
the official procedure or system of rules governing affairs of state or diplomatic occasions
This is a connection really new to me, so there’s definitely a recency bias in play here. These are how teams choose to interact with one another on a human basis to build psychological safety and high performance. Forget what we do for now, forget how we do what we do. This is how we commit to interact and interrelate with one another. Live in Greatness explicitly describes 12 core protocols, e.g., the right to pass, check in, decider protocols. Sociocracy 3.0 provides patterns to complement these protocols, particularly around enablers of co-creation and peer development. E.g., ask for help, peer feedback, artful participation. Modern Agility makes safety a prerequisite, and protocols help achieve that.
Practices
the customary, habitual, or expected procedure or way of doing of something.
We have arrived at how we do agile. There are unlimited practices that can be applied successfully and purposefully if we base them on shared principles. As it is the most tangible of the Ps, sadly too many people see agility only through this lens. This is the classic being vs doing agile argument, exemplified most comically through zombie scrum and Comic Agilé. (Turns out this is the wrong argument, still getting my head around that).
So some examples: an ordered Product Backlog, user stories to articulate what they want and why; a Sprint board to visual work; a Sprint as a fixed cadence time-box; story points to estimate complexity; big room planning for alignment; a daily stand up for daily (re)planning; 3 questions to drive us all into insanity.
Patterns (Pattern Language)
An attempt to express the deeper wisdom of what brings aliveness within a particular field of human endeavor, through a set of interconnected patterns. Aliveness is one placeholder term for “the quality that has no name”: a sense of wholeness, spirit, or grace, that while of varying form, is precise and empirically verifiable[3]
This is a bit more head scratchy. To me, pattern language helps guide choices that people can make in regards to which practices they can apply to solve particular problems.
So what is a pattern? A user has a problem. They operate in a context. Within this context there are different, likely contradictory, forces are at play. Given these, there is a solution that resolves certain forces to solve the problem. Each solution is likely supported by a more detailed rationale of how to apply the solution.
For example, a software engineering team <user> needs to release a product quickly <problem> in a market where the first player will most likely win <context>. However both customer requirements and the technical solution are unknown <forces>. Therefore they choose to apply the Scrum framework <solution> to resolve these forces to support adaptive solutions in complex environments <rationale>.
Patterns are an important aspect of teaching agility in my mind, as it helps recognize that it is not helpful to take a dogmatic and prescriptive view on how to solve problems. The Cynefin framework for decision making in context, shows us that we need to consider exaptive, novel approaches in the unordered realm of complexity. We are not in the realms of good or best practice.
This is about recognizing that there are multiple patterns to solve a problem, and that our collective context and unique forces at play may make one pattern more effective than another. We may need to experiment to find the one that fits.
To wrap up with an example, let’s imagine that we are part of multiple collaborating teams who are struggling to coordinate throughout a Sprint. Do we hold a scaled stand up, a scrum of scrums, or promote visitors moving between team level stand ups? The right pattern depends on our context and forces, such as timezones (is staying late safe for our colleagues?), co-location (what are Covid rates in our area?), time pressures (too many meetings already?) etc.
This is firmly in the complex domain, and as such there is no one right answer. Patterns help us choose and experiment with appropriate practices. Protocols support and sustain our interactions as we experiment. We keep principles firmly in our minds so we do not stray from our guiding purpose. We keep people at the heart, because making people awesome is what we do.