If your projects fail to deliver, then try to:
- change
the code a lot --- but without adding any extra
functions
-
test
the code before you’ve written it
-
havetwo
people assigned to every task
-
let your customer
decide what you develop
- be much nicer to your customers
--- let them change their minds
-
allowing
any developer to change any
line of code, anywhere,
anytime
How can this possibly make sense?
Granted, it’s extreme. But
it’s not crazy. These are among the practices of
eXtreme Programming, the new lightweight method that's causing a
storm in the software industry. They're based on the realities that all
coders – but only enlightened managers – understand.
And eXtreme Programming works!
The problem is change, therefore embrace it.
The way we organise and run software
projects is influenced by one thing above all others: an unshakeable belief
that code is expensive to change. But what if there was a way to make code
cheap and easy to change?
Well, there is. For one thing, object-oriented
programming has revolutionised the way we structure software, producing
more understandable designs and reducing dependencies between software
pieces. There are also some simple practices you can follow – such as continuous
refactoring (re-organising) of the software – that give simple, maintainable
designs.
And once you're in a position to make
changes to the code throughout the project, you can be much nicer to your
customers. You can let them change their minds. You can adapt to changes
in business priorities. You can deploy partial solutions.
XP
is a lightweight method that gives you:
-
a set of practices that will reduce the
cost of change
-
a project process that takes full advantage
of the ability to make changes
Just Do It…
XP
works. There’s proof from a growing number of successful projects. But
it requires stout hearts and strict discipline, especially at the beginning.
XP
isn’t an easy option: its rules may be different from what you’re used
to; but it still has rules, and, as with any other method, you need to
follow them to get results. You might also need help convincing others.
|