Incremental
Everything – The Idea
Agile in a Flash by Jeff Langr and Tim Ottinger (card #14)
> Build/groom a prioritized feature backlog
> Select stories for iteration
> Develop in a timebox (one week to one month)
> Certify release candidate
> Release to production
> Retrospect
> Repeat
--
For an agile team, incremental development applies both to product
and to workflow. Most teams begin with a project plan that follows
the outline presented here.
The customer first puts together a prioritized list, or backlog,
of desired features for upcoming product releases. The list is
neither final nor comprehensive. Acceptance tests are written for the
most immediately needed features.
Each iteration is a fixed-length period of development. At the
outset of each iteration—no sooner—the team and customer agree on
what will be delivered. During the iteration, the customer clarifies
decisions and answers questions. At the end of each iteration, the
team certifies the release candidate by demonstrating it passes all
acceptance tests so far. The (partial) product may then be released
to production. Also at iteration’s end, a team holds a
retrospective to determine how to improve the work system or the
product so that future iterations will have higher quality and
functionality.
The next iteration then repeats the whole process but includes the
retrospective-inspired changes. These changes will evolve the
software development practice even as the product grows. Agile teams
are always trying to build a better future, both for the customer and
for themselves.
Civilization World Wonder quote: "Most of us can, as we
choose, make of this world either a palace or a prison."
–John Lubbock
No comments:
Post a Comment