Managing iterative processes
Managing iterative processes:
Iterative and Incremental development is a cyclic
software development process developed in response to the weaknesses of the
waterfall model. It starts with an initial planning and ends with deployment
with the cyclic interaction in between. The iterative and incremental
development is an essential part of the Rational Unified Process , the Dynamic
Systems Development Method, Extreme Programming and generally the agile
software development frameworks.
Approaches like XP correctly emphasize the importance of
communication and of removing artificial barriers to development productivity.
XP to many might seem to be simply a license to hack. However, a more detailed
examination of the techniques of XP shows that many are conscious techniques to
counter the excesses of hacking and to ensure good maintainable code is
written.
Booch suggests that
there are two level of development- the macro process and the micro process.
The macro process closely related to the waterfall process model. At this
level, a range of activities carried out by a variety of specialist groups has
to be coordinated. We need to have some dates when we know that major
activities will finished so that we know when we will need to bring in staff to
work subsequent activities. Within this macro process there will be micro
process activities which might involve iterative working. Systems testing has always
been, how a sequential macro process can be imposed on a number of iterative
sub-processes. With iterative micro processes the use of time boxes is needed
to control at the macro level.
There are cases
where the macro process itself can be iterative. It might be that a prototype
for a complex technical system is produced in tow or three successive versions,
each taking several months to create and evaluate. In these circumstances, each
iteration should be treated as a project in its own right.

Comments
Post a Comment