The Agile community of full of smart people, smart ideas, opinions, positions-- and differences. Substantial differences can lead to learning, but more often than not, differences can lead directly into heated conflict. Now an original signatory of the Agile Manifesto is offering an all-new declaration-- the 'Oath of Non-Allegiance'.
The Oath of Non-Allegiance
Alistair Cockburn, a signatory of the Agile Manifesto, is offering the following oath for your consideration, and signature.
Question: Can you commit to the following?
I promise not to exclude from consideration any idea based on its source, but to consider ideas across schools and heritages in order to find the ones that best suit the current situation.
Do you agree? Do you promise? Sign the Oath of Non-Allegiance here.
The Oath of Non-Allegiance is simple enough to understand. The real question is, why do we actually need something like this?
According to Alistair Cockburn, we do actually need something like this, because:
...this means the end of statements like “That’s no good – it’s not 'agile', 'object-oriented', 'pure' etc…”, but rather a discussion about whether the idea (agile, plan-driven impure whatever) works well in the conditions of the moment.
Recent History
The Agile community is full of smart people and smart ideas. The history of our community incudes the astonishing growth in the use of Scrum. Scrum itself is a topic of great debate, and one can argue that Scrum itself has a certain polarizing quality to it. Debates about Scrum include what is actually Scrum, what is "Scrum-but", what is "canonical Scrum", and whether Scrum can scale to manage larger entities like departments, divisions and entire enterprises.
Recently, Kanban is gaining traction. Many in the Kanban 'camp' are pitching Kanban as an alternative-- even a replacement-- for Scrum. Some of the more hard-core members Scrum community members occasionally fire back.
This is just one of many semi-dogmatic debates that go on each and every day in the Agile community. Another common point of friction is a debate-- sometimes heated- about when and if the Project Management Institute can ever effectively integrate Agile ideas into the Project Management Book of Knowledge. Can they? Is there such a thing as an "Agile Project Manager" ? You can learn more about that ongoing debate by examining this InfoQ article on PMI-Agile.
In late 2009, things got a bit heated in certain sectors of the Agile community. Differences led to conflict and some real heat inside certain online groups and blogs. When things got ugly, Jean Tabaka called out this tendency towards nasty conflict escalation in her blog post "Escalation is Killing Agile-- Please Stop It. Some time later Tabaka, with help from Liz Keogh and Eric Willeke, created the Community of Thinkers declaration.
The Agile community is very much a headless beast, and a marketplace-- where disparate ideas are discussed and often utilized side-by-side. The Oath of Non-Allegiance from Alistair Cockburn is in some ways a working agreement, by and between those who subscribe to it.
Pure democracy is not very efficient at scale, and the Agile community is large and getting larger. There is a gap. What we might be seeing here is the emergence of a new, higher-order form of community organization.
In this emerging organization form, those with substantial informal authority in the community utilize it to clearly specify community-wide, opt-in working agreements that might gain traction and become de-facto guidance at scale.
While the Agile Manifesto continues to provide community guidance, many have called for changes in the Agile Manifesto, to reflect new realities. For example, many observers note that the Agile Manifesto calls for "Responding to change over following a plan", while the Manifesto itself has not changed at all in almost a decade of existence.
The Agile community is a large self-organizing system. Is it possible that statements like the Community of Thinkers and the Oath of Non-Allegiance have emerged to fill a community-wide "guidance gap"?
Let's discuss it. InfoQ invites your comments on this article.
Community comments
I agree with the sentiment, but really Alistair...
by Julian Holmes,
Re: I agree with the sentiment, but really Alistair...
by Ryan McKergow,
Re: I agree with the sentiment, but really Alistair...
by Stefan Wenig,
cool
by Stefan Wenig,
Manifesto and Change
by Dan Mezick,
And more...
by Scott Duncan,
I don't agree
by Adam Nemeth,
Re: I don't agree
by Jason Alcock,
Re: I don't agree
by Adam Nemeth,
Updating the Manifesto?
by Shane Hastie,
Not in disagreement - just adding a longer view.
by John Ruiz,
So, basically, Post-Agilism then
by Jason Gorman,
Re: So, basically, Post-Agilism then
by Adam Nemeth,
I agree with the sentiment, but really Alistair...
by Julian Holmes,
Your message is awaiting moderation. Thank you for participating in the discussion.
What Alistair's "Oath" is saying makes sense, but to phrase it in such a negative manner only gives the impression that he is just being controversial for the sake of it.
Perhaps a more positive tone is better: "I promise to consider any idea regardless of source, across schools and heritages, in order to find the ones that best suit the current situation."
It's shame that we need such a statement, but I guess there are many dogmatic people out there. However, the real Agile people have been doing this for years.
What I do like is your statement: "many observers note that the Agile Manifesto calls for *Responding to change over following a plan*, while the Manifesto itself has not changed at all in almost a decade of existence".
Now that's thought-provoking!
Julian
Re: I agree with the sentiment, but really Alistair...
by Ryan McKergow,
Your message is awaiting moderation. Thank you for participating in the discussion.
That is a very though-provoking point about the Manifesto. Considering that Agile encourages continuous improvement. Though despite this, I do like the simple nature of the Manifesto and I still believe most, if not all of it's point still ring true 10 years later.
Re: I agree with the sentiment, but really Alistair...
by Stefan Wenig,
Your message is awaiting moderation. Thank you for participating in the discussion.
only that values are not a plan. you want to provoke some thinking? show us the change and how the manifesto should adapt!
cool
by Stefan Wenig,
Your message is awaiting moderation. Thank you for participating in the discussion.
such an oath could even have saved the punk movement from bullying itself into conformity!
Manifesto and Change
by Dan Mezick,
Your message is awaiting moderation. Thank you for participating in the discussion.
The Manifesto is a point-in-time statement of values. Values provide important cultural guidance and as such, explicit values are essential for a healthy and whole community. The [Community of Thinkers] and [Oath of Non-Allegiance] in my view are both strong attempts at adding new and clarifying statements to the base [statement of values] we call the Agile Manifesto. In my view these are not amendments, but rather attemptes at adding addendums to the foundational Manifesto document.
Not nearly enough is being said about Scrum values, another important foundation of Agile values overall. The [Oath of Non-Allegiance] in my view is actually simply 'shining a light' on the existing and defined Scrum values of Openness and Respect. The Oath supports both. The five Scrum values in total are: Openness, Respect, Courage, Focus, and Commitment. These are profoundly valuable as guidance.
And more...
by Scott Duncan,
Your message is awaiting moderation. Thank you for participating in the discussion.
There are also statements like the Declaration of Interdependence and Software Craftmanship Manifesto, to name just a couple others. So there is no dearth of addendum material addressing other aspects of people's views on a new way to view, or dedicate to, software development excellence and effectiveness.
I don't agree
by Adam Nemeth,
Your message is awaiting moderation. Thank you for participating in the discussion.
I don't agree, sorry. Schools are important.
Of course, I wouldn't do a pure apache, pure sun, pure oracle implementation if it isn't needed. But I wouldn't install postgresql besides an already running mysql, just because it has better geo-handling.
Of course, it's a smelly thing, when someone says, "that's not agile". Yet sometimes schools have much more to solve than the current situation in plain site.
Let me put this stuff in context: you maintain a program. You always add only the lines what are needed, and use the programming technique best fit to the requirements of that given task.
You'll end up with a totally f.ed up software in less time than you'd have imagined. And fellow programmers wouldn't understand it, nor you could hire new peoples easily.
Schools are important.
Somehow our profession has the tendency to explain why it wants back to chaos. If someone wants to go back to chaos, use ad-hoc solutions, write mindless code, please do it.
But don't agitate for it.
Updating the Manifesto?
by Shane Hastie,
Your message is awaiting moderation. Thank you for participating in the discussion.
Laurie Williams is actively seeking input from the community about the relevance and applicability of the Agile Manifesto - taking a snapshot of today's attitudes to the principles which were first published in 2001.
InfoQ reported on her research here: www.infoq.com/news/2010/06/what-means-agile-survey
Not in disagreement - just adding a longer view.
by John Ruiz,
Your message is awaiting moderation. Thank you for participating in the discussion.
I don't mind people nailing manifestos to the Church doors because it's sometimes necessary for someone to raise our awareness and point us towards a better solution. Just remember that manifestos are declarations of principals, not Absolute Truths.
If Alistar is trying to point us towards a better solution, I'm all for it - but I think this will remain my "Oath":
As a software engineer (or maybe as a human being?), if I must think about Absolute Truth, I promise to call it by its real name: Temporary.
(shamelessly lifted from Frank Herbert)
Re: I don't agree
by Jason Alcock,
Your message is awaiting moderation. Thank you for participating in the discussion.
If the school currently applied is being broken by
- mixing-in inconsistent pieces
or
- having activities\decisions purporting to be of a school, but not following the correct tenets
Then yes, I've found it actively harmful to mix schools.
If a proposer is saying, let's look at another school for a problem's solution, because it may apply better in this case. Then this conscious changing of schools is likely to be positive.
I'd assume the latter is what Alistair Cockburn intended.
So, basically, Post-Agilism then
by Jason Gorman,
Your message is awaiting moderation. Thank you for participating in the discussion.
Once again, I'm head of my time ;-)
www.itarchitect.co.uk/articles/display.asp?id=280
parlezuml.com/blog/?postid=407
parlezuml.com/blog/postagile.pdf
Re: I don't agree
by Adam Nemeth,
Your message is awaiting moderation. Thank you for participating in the discussion.
Let me quote the article:
(Emphasis by me)
And also the comment:
Re: So, basically, Post-Agilism then
by Adam Nemeth,
Your message is awaiting moderation. Thank you for participating in the discussion.
Jason:
I believe it's not true that Agile came in a world where everyone followed plans as your IT Architect article suggests.
I remember as if it came in a world where everyone wished(!) that specification would precede coding, where everyone wished that one day, we could use plans, and so on. Agile was about the recognition that those days wouldn't come.
There are values however, which differentiated Agile from the chaotic reality, just like the waterfall had such. There's post-agile, for example, Lean is post-Agile, since it does not handle iterations, which cannot be done in certain situations.
So, what if we just don't want to go back to chaos and choose our values on a situation-basis (which means essentially, having small-enough decisions that we don't have values at all) to challenge the values themselves, trying to come up with more general ones, or trying to be specific about their limits rather than dropping them?