Friday, January 7, 2011

A sailor's look at Agile, Part I

There's been no lack of sports analogies when it comes to Agile. Obviously, we have rugby that gave us the scrum. And, there have been similar analogies with American football. But, I don't recall one where Agile is compared to sailing.

Sailing? For many non-sailors, watching a sailboat race is like watching the grass grow, so where's the analogy here? Is there anything going on?


The Agile metaphor
Well, if you've ever tried to win a sailing race, you'd see the comparison immediately, but let me fill you in:

Every sailor tries to "make the mark", where a 'mark' is a buoy or other fixed object that is the target. Let the 'mark' stand for the sponsor's expectation for the project...something material and memorial that is the project outcome.

From the starting point to the 'mark', a sailor plots the 'lay line', the most efficient course from the start to the 'mark'.  Let the lay line represent the 'planned value' that the project intends to earn as progress is made along the lay line.

Now, of course, there is the wind. The wind may blow steadily for a few hours, but it shifts direction and intensity as influenced by both 'knowns' and 'unknowns', introducing uncertainty [probabilities unknown] and risks [probabilities known].

Of course the wind is the source of the motive energy of the project, but it's also the energy behind the bias', attitudes, and pressures of the sponsor, users, stakeholders, regulators, and market forces; and a variety of technology issues. All of these interact unpredictably, as the wind is also somewhat unpredictable.

How it works
A sailboat is an interesting collection of physics that interact with both static and dynamic forces.  These are the project methodology and the myriad practices that inform the methodology.

So, now we come to the interaction of the boat [methodology, practices] with the wind [energy, risks, uncertainties] and the need to make the 'mark' [sponsor's expectation], guided by the most efficient plan [the lay line].

Modern sailboats are designed to be pulled through the water by the 'lift' generated on the front of the sails which are themselves vertical wings that work just like the wings on a plane. In fact, the Wright brothers controlled lift by twisting the wings, and the same applies to a sailboat using various lines [called 'sheets'].

It may not be obvious, but to generate lift [and thus boat velocity] from the energy of the wind, the boat-sails combination needs to maintain a certain relationship with the wind--not too close, but not too far--from the general direction of the main energy.  In fact, the wind needs to be forward of the boat, much as the risks are forward of the project.

Enter Agile:

To make the mark, using the lay line as the general plan, a captain [the project manager] must tack [turn into, and across the wind] one way, and then another way, in a sequence of short performance increments, to make overall progress along the lay line.

Of course, the lay line is the 'long term' view of the project's value plan. Any individual tack [increment] is a tactical response to wind and waves [the energy for, and the resistance to, project progress].  Any individual tack may appear--in the short term--to be at wide variance with the planned value. But a successful captain of the boat [team leader and/or project manager] always has the larger objective in mind, even as he/she maneuvers for advantage.

From energy to value earned
To generate the most velocity from the motive force of the wind, and yet avoid the unfavorable risks of the wind, the boat team trims the sails to adjust the 'lift'; indeed, it's possible to capture the favorable wind and 'dump' the unfavorable at the same time by nuanced use of the sail trim tools.  The team does these things almost by instinct, requiring no commands from the captain.  Though the process for doing so is documented in general terms, the application of the process is very much up to the collective wisdom of the team in the boat at the moment. 

The important thing, of course, is to integrate all the actions of the team, including the captain whose hand is on the tiller, so that maximum velocity is made in the direction of the lay line and the terminal buoy.  From the diagram, it's obvious by inspection that even sailing in one increment across the lay line sets up the opportunity to sail in the direction of the line, thereby earning value [progress along the lay line] as velocity is applied.

Scope, Cost, Schedule
Now, of course, making the 'mark' is the scope, but what about cost and schedule? The cost of the crew [the team] is a known amount on a unit basis, and the throughput of the boat is known [velocity on a given point of sail, which is a benchmark of the boat design].

What is not known is the number of tacks, because the wind is overall an unknown. Thus, the total number of units is not known, nor is the time to make the mark, even though the velocity benchmark is known.

Nevertheless, it is possible to make an estimate of the overall resource need.  In our next post on this analogy, we'll get into this cost-schedule issue more directly.

Delicious
 Bookmark this on Delicious
Are you on LinkedIn?    Share this article with your network by clicking on the link.

1 comment:

  1. Great approach for several reasons. First I raced Shields and Soling in college. We campaigned Argyle Campbell's tempest one year.

    Next is the understanding - or failure to understand - the sailing - or at least racing - has a immutable goal, that is defined before the start. The course is defined, the measure of effectiveness and the measure of performance defined.

    The crew is fixed before you start, the tools are fixed. There is a clear leader and clear roles under normal conditions. Under disruptive conditions it's "all hands on deck," (which on the Shields, Soling, and Tempest is simple.

    But this is a great analogy and needs further development (I see Part 1). But for me (as we've talked) connecting the "theory" of agile with the practice on non-agile domain projects is a job who's time has come.

    ReplyDelete