Speak
of the Development...
The iterative Development
Process occurs after Needs
Analysis and alongside the Project
Management process.
The three main phases
of the process include Development Planning,
Development Tools Implementation, and Iterative
Development:

The Development Planning
phase runs concurrently with the Project
Planning phase. This phase includes four
critical tasks:
— “User stories” are written
and prioritized by importance and difficulty.
User stories are summaries of desired functionality
which are written in plain English for ease
of understanding
— Development tools are assessed based
on their suitability and cost, and recommendations
are made to the client, who of course has
the final say.
— Iteration scheduling occurs. Because
client participation and involvement are
crucial to successful development, the Production
process is designed around iterations. Each
iteration is a scheduled period of time
in which a particular set of User Stories
is coded. At the end of each iteration,
a preliminary release is made, during which
the client can inspect the system and take
it for a “test drive”. Development
staff also perform rigorous testing during
each release; and the client feedback and
testing results generated here influence
future development.
— Development staffing and resource
planning are carried out, and incorporated
into overall Project resource planning.
During the Development
Tools Implementation phase, the development
environment, versioning system, and issue
tracking system are established and customized.
Once tools are in place,
Iterative Development can begin. Development
proper includes coding, issue tracking,
and communication with the client. Constant
unit testing is undertaken, so that issues
can be identified while still small and
readily isolated.
As noted above, the Development process
is iterative, with iterations scheduled
on a regular basis. Iterations are where
the Development effort, Project Management,
and the client come together. They serve
as focal points for communication, as well
as checkpoints against which project progress
can be measured. Final Delivery, then, becomes
largely the implementation of the final
iteration – a continuation of Development,
rather than a truly separate entity.
|