My Definition of Agile
I have seen many people define “agile” (or, more often, “Agile” with a capital A). I wonder why this is such a common topic. I suspect it’s because we see such a wide range of definitions, and, by implication, a huge variety of imagined purposes for “Agile”.
Purpose
What’s spurred me to offer my own definition, here? What purpose might this post serve?
I offer it to pique your interest. Maybe my definition is so different from yours that you might wonder why the gulf. And to serve as a future reference, in case someone might ask me “What do you mean by Agile?”.
Definition
Fundamentally, “Agile” is a label characterising a certain self-consistent collection of beliefs(1). Beliefs about what matters in being effective in developing software and software-intensive products(2). Each person, team and organisation will have their own collection of beliefs under the “Agile” label. Setting aside the various differences between each of these sets, in toto these beliefs are sufficiently different from the norm (the collection of beliefs about work prevailing in most workplaces) to warrant a distinguishing label(3).
(1)This collection of beliefs generally includes some or all of the following memes:
- Continuous Improvement.
- Theory Y (McGregor).
- People and their human relationships are the engine of productivity.
- Diversity.
- Learning.
- Trust.
- We can only know if we’ve built something that meets folks’ need by letting them experience it.
- Early and frequent feedback (implies e.g. small units of work, high availability of customer proxies)
- Iteration.
- Collaborative knowledge work.
- Inspect and adapt.
- Eagerness to anticipate and embrace changes of direction.
- Self-organisation.
(2)Although on the face of it Agile is about software development, that in itself is a tad misleading, as software development itself is really about creating experiences for folks, and, more fundamentally, about meeting folks’ emotional needs.
(3)In the Marshall Model, the collection of beliefs generically labelled “Agile” situates approximately at rightshifting index 1.2-1.8, and thus straddles the boundary, or transition zone, between the broader collections of beliefs labelled “Analytic” (roughly, 0.5-1.5) and “Synergistic” (roughly, 1.2-3.5).
In A Nutshell
In a nutshell:
“Agile labels a certain way of people relating to each other, rooted in a collection of more-or-less shared beliefs – beliefs more suited (than the norm) to effective collaborative knowledge work”
– Bob