Don: The new rules come from the Agile Alliance, an organization of individuals united by a common goal of "uncovering better ways of developing software." Their definition of "better" is summarized in a Manifesto of four items, supported by 12 specific Principles. The four items of the
Manifesto for Agile Software Development are:
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
That is, while there is value in the items on
the right, we value the items on the left more.
Kent Beck | James Greening | Robert C. Martin |
Mike Beadle | Jim Highsmith | Steve Mellow |
Air van Biennium | Andrew Hunt | Ken Stewier |
Alistair Cockburn | Ron Jeffry's | Jeff Sutherland |
Ward Cunningham | Jon Kern | Dave Thomas |
Martin Fowler | Brian Marci |
(C) 2001, the above authors
this declaration may be freely copied in any form, but only in its entirety through this notice. |
Don: The 12 Principles can be organized by the Manifesto items they most directly support. When organized in this way, the Principles are:
Individuals and interactions over processes and tools
Business people and developers must work
together daily throughout the project.
Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.
Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
The best architectures, requirements, and designs
emerge from self-organizing teams.
At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly.
Working software over comprehensive documentation
Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter time scale.
Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
Working software is the primary measure of progress.
Continuous attention to technical excellence
and good design enhances agility.
Simplicity--the art of maximizing the amount
of work not done--is essential.
Customer collaboration over contract negotiation
The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.
Responding to change over following a plan
Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage.
Howard: Those Principles seem to make a lot of sense, Don. OK, can you tell us a little about the contenders?
Don: Sure, Howard. In the near corner we have eXtreme Programming, popularly known as XP, the current lightweight champion. Facing him today is Freedom, a 12 year veteran of the space program, trimmed down to compete in the lightweight category.
Howard: Under the new rules, victory will go to the most Agile. Which will that be -- the current industry champ XP, or the veteran challenger Freedom?
This work is licensed under a
Creative Commons License