> But then I have never really felt that these interesting analogies
are really necessary ... why talk about the weather when you are
discussing software development?
Because of the way people think and learn?
In order to simplify understanding, we very often use connections to
existing understood (or at least we think so) phenomena or items.
For example, the term "velocity" probably conjures an image of
something like the speed meter in a car. Following the analogy, if you
set the speed to 80km/h, you can control it to stay at that same speed
for the foreseeable future (until you hit known obstacles, like other
cars, intersections or other speed limits). If the person takes it
like that, the concept of velocity in Agile is understood incorrectly.
Weather is known by everyone to be unpredictable. Or rather, you _can_
try to predict (thus being "predictable" :) ), but everyone knows that
no prediction can be trusted fully. People also understand that the
reliability of the prediction can be different in different situations
and that even a reliable prediction can be totally wrong, or that at
least something unlikely can happen. For example, if we "know" June
day temperatures to be between 12 and 26, it doesn't preclude the
chance of having a freak snowstorm every 10 to 20 summers. I think
that metaphor is very close to what velocity is in Agile. At least, I
would like people to rather think of it as weather than a speed meter
(and then add nuances on top of that as they understanding grows).
If you have an even better metaphor, I'm interested in hearing about
Jesus taught with metaphors just for the same reason. Beck is
comparing XP to driving a car. And so on.
Senior Process Improvement Manager, CSP
Digia Plc., Finland