|
I recently noticed a heading in the newspaper, “Move
Through Airport Security Faster”. Being a frequent
traveller for business and pleasure, I read the article
looking for ideas to improve my airport experience.
Instead, I found trite old advice. Wear loose-fitting
clothes. Wear sandals. Don't pack this or that. Don't
make jokes.
I did notice, however, the striking similarity to
process improvement attempts in software development. The
airport advice was a classic case of optimizing a
metric that doesn't matter using techniques that matter
little.
Why? Because even if you show up as a security
screener's ideal passenger, you might speed up your
passage by one minute. Even so, that's not the metric
most travellers care about. They want to shorten the
overall airport ordeal, from the time they enter the
terminal to the time they can sit down at the gate.
The sad thing is, the arrival-to-gate time has little
to do with you or any one passenger. It depends on the
various queues' loads, on the security level, on the
time of day, even on the clauses in the airport
employees' contracts.
And so it is with software development. You can be
the world's most gifted developer and take little time
to code any feature. But to your customer, it's the
time that elapses between their feature conception to
its production deployment that matters.
Increasing your productivity is certainly valuable.
And if you're a member of a team, increasing the team's
productivity also compresses the time between idea and
delivery. Agile methods do that by shortening feedback
loops, amping collaboration, and focusing on finishing
work rather than keeping busy.
The result? Many companies have locally optimized
by speeding up development, and seen a much smaller
effect on deployment and turnaround, which are what
their users, customers and shareholders ultimately care
about. Common reasons include
- Yearly release cycles or heavy planning mechanisms
mean months before a feature request reaches a team.
- Their accepted and tested code is still subject to
UAT (User Acceptance Testing) before it can be deployed.
- The Operations department works on its own cycle and
process and might take weeks before deploying anything.
- All sorts of legalities and sign-offs might delay the
start and/or the end of a project.
In the first 2-3 years of using Agile, realizing this
local optimization is hard enough and valuable enough.
Most companies don't even get that far.
The next leap is the Agile (or Lean) organization.
That's where you see much shorter feedback loops and
impressive collaboration between business and IT. Few
companies have reached that level; the world is still
exploring what it means and what it looks like; but
that's the future.
Copyright © 2011, 3P Vantage, Inc. All rights reserved.
|