It really matters who is going to the store to do the shopping. If it's
the wife (the expert shopper in most families), a shopping list with a
few items listed on it will do fine. She is able to intelligently make
substitutions if a particular item is unavailable and buy additional
things if an unplanned item is on sale.
However, if I am going to the store, I will need a list with much
greater detail. Which brand of spaghetti sauce should I get? What if
they are out of lima beans? Can black beans be substituted? My wife can
only document some of the detail. She is unaware of the depth of my
ignorance in these matters. I will invariably make mistakes.
Agile development believes in shopping lists. But it also believes in
bringing our wives to the store with us. Or at least a cell phone, so we
can call and clarify the requirements when we run off the road.
Regards,
Jay Turpin
Intel Corporation
"Cowardice asks the question - is it safe? Expediency asks the question
- is it politic? Vanity asks the question - is it popular? But
conscience asks the question - is it right? And there comes a time when
one must take a position that is neither safe, nor politic, nor popular;
but one must take it BECAUSE it is right." - Dr. Martin Luther King
-----Original Message-----
From: xpbookdiscussiongroup-***@public.gmane.org
[mailto:xpbookdiscussiongroup-***@public.gmane.org] On Behalf Of BenAveling
Sent: Saturday, April 23, 2005 4:49 PM
To: xpbookdiscussiongroup-***@public.gmane.org
Subject: Re: [xpe2e] Why do we spend time on documents?
Documenting your project, or your process, is like going shopping with a
list of things you need. It doesn't force you to buy those things if
you see something better. It does help you come home with a bag of
things that are more likely to meet your needs for the rest of the week.
BDUF says that since you live a long way from the shop, it's worth
spending the time to do a shopping list. Because the shop might be out
of some things, it's a good idea to consult with [s]he who must be kept
happy before going to the shop and to have a plan that covers all
contingencies. Agile says why don't we just move next door to the shop?
I'm currently investing a little of my time in contributing to the
department's process documents. I'm trying to get us to document much
more of the 'what we do'.
Let me explain why.
There are certain corners that should not be cut. We tend to cut them.
Often, we do this knowingly, because we can't see any better options.
We includes me.
Why, you ask?
Think of a race car. Now, driving through the ditch by the side of the
road is bad. But if you've come off the track, it's a risk you may
have to take.
The hard question is not "do we drive through the ditch again?". It is,
or it should be, "how come we are off the track again?"
Often, we don't know. Part of the reason for that is much of we do
happens via undocumented pathways. People just find ways to make things
work.
To return to the metaphor, we ran out of track, so we went
cross-country, and we thought we would pick up the track again, but now
it seems that it's on the other side of that ditch, so either we go back
a million miles, or we go though the ditch. And we dropped the spare
fuel can the last time we went through a ditch so we don't actually have
the fuel to backtrack. On the other hand, we don't exactly know where
that path goes either, so maybe we should just keep going cross country.
Documentation is an aid to thinking, not a replacement for thinking.
Having a list of things that have to be done can be used to disempower
engineers. 'Go do this. Now do this.'
But, it can also be empowering. 'Sir, the process says that I need to
give this information to X. If I cut that corner, then X cannot ...'
If I have a map of the whole territory, I have some expectation of
arriving.
If the map turns out to be wrong, I have an understanding of what I can
do to get back on track, including the option of finding a new track.
Even if I chose the worst possible path, I can do better next time, if I
record the path I took.
Once I've managed to follow the map a few times I won't need the map any
more. I'll know a route that gets me where I want to go.
But if I struggle and guess and fumble through a different path each
time, and if I don't know which path I took, then I don't get feedback
on which of my many guesses were right or wrong and I'll probably never
learn.
When we aren't getting the outcomes we want, understanding the
difference between what actually do and what we think we should do is
valuable.
When things are left unsaid then we can believe different things and
have gaps in our knowledge and not realise that there is a problem.
When we have to say 'it is thus' such gaps become very obvious.
Regards, Ben A
Yahoo! Groups Links