breaks the
overall project into a series of versions that are developed sequentially. The most important
and fundamental requirements are bundled
into the first version
of the system. This
version
is developed
quickly
by
a mini-waterfall
process, and once implemented,
the
users
can provide
valuable
feedback to be incorporated
into the next
version
of the system.
(See Figure
2-5.) Iterative
development
gets a preliminary
version
of the system
to
the users quickly
so that business value
is provided.
Since users are working
with the
system,
important
additional requirements may
be identified and incorporated
into subsequent
versions.
The
chief disadvantage
of iterative
development
is that users begin
to
work
with a system that is intentionally
incomplete. Users must accept that only
the
most
critical requirements of the system will be available
in the early
versions
and must
be
patient with the repeated introduction of new
system versions.