Good morning everyone:
Well it’s been a while since we have had a good controversy going
on this mailing list and I thought I’ll try and lob a little nuke into
the mix and see what happens. Ok maybe not a nuke, but perhaps a rather large
fire cracker J
I’ve reflected on our Friday morning tele-con and realized that
we may have some divergent views regarding collaboration. Part of the problem
is collaboration has come to be seen as “good” and therefore a
required buzz word in any process definition. Further collaboration has a very
broad and general definition, usually something along the lines of
“...people working together…” Obviously two or more people
working on the same software project are supposedly working together. They may
detest each other but as long as they do not actively attempt to subvert the
other we could consider them as collaborators. I think with respect to OpenUP
we have an implicit collective definition of collaboration as
”…people working together effectively…” So what do we
mean when we say collaboration or collaborate is one of OpenUP’s core concepts?
From what I can recall from our conversations I believe there are at
least two views regarding the purpose of collaboration. One is we collaborate to
achieve higher quality results, that is collaboration is akin to consensus
decision making. The second view is we collaborate to increase our decision
making velocity. While these two views are not incompatible, neither are they
fully compatible either.
My personal view is we collaborate in OpenUP to increase decision
making velocity. This view is based on the proposition that decision making
velocity is the determinant of agility. Therefore the proposed OpenUP
collaborative practices are social practices intended to increase decision
making velocity of both individuals and the team. The collaborative practices
align individuals with reality and empower individuals to take the initiative
harmoniously with the rest of the team and in alignment with the interests of
the stake holders
The collaborative practices are about providing a foundation for a
social system from which a rapid decision making culture may emerge. They are
intended to ensuring people have a common shared vision of the system,
understand the objective of their tasks and given the opportunity to take the
initiative to accomplish their task. A high trust environment makes people feel
safe taking the initiative and furthermore speeds decision cycles because trust
lowers transaction costs in negotiations (Social capital Francis Fukuyama).
This view of collaboration is of course influenced by the research I
have been doing into Colonel John Boyd’s Observe-Orient-Decide-Act loop,
fast decision cycles, and agility. I am presenting a paper on this same topic
at Agile 2006.
Ok, now what about collaboration as consensus? There are in general two
common meanings for consensus (see wikipedia.org):
- “…a
general agreement among the members of a given group or community, each of
which exercises some discretion in decision making and follow-up
action…” This is a view of consensus that supports rapid
decision making. Consensus is implicit to maintaining the shared
mental model of the system. All members of the team are in agreement of
the status of the system, the objectives, and the methods for
accomplishing those objectives.
- “…a theory and practice of getting such agreements (for information
on the practice of achieving
formal consensus…” The intention here is a decision
making process which potentially yields higher quality results and keeps
people engaged (buy-in) with the project.
As a decision making process I am concerned that consensus is not
optimal for making decisions in a time constrained environment. While it may
yield a better quality decision there is Patton’s paraphrase of Voltaire
“A plan violently executed today is better than a perfect plan executed
tomorrow”.
So where is the nuke in all this? Ooops, I mean the fire cracker.
Simply, the fire cracker is trying to obtain consensus on what are we mean when
we say collaboration. We are all probably in agreement this means working
together and sharing information but to what end? Is it to make higher quality
decisions or to speed up the decision making process? These two options are not
diametrically opposed, but neither are they fully compatible either. My
personal view is our collaborative practices are about creating a fast decision
culture.
That is my two cents worth…chat with you all next Friday,
Steve