Information Technology Reference
In-Depth Information
Choosing the Right Life Cycle
Even for similar activities, there may be different life cycles. The life cycle
of automobile manufacturing in the United States is different from that in
Japan because of the environment, availability of resources, and down-
stream activities of buying and selling cars. This should be expected.
It is an art to select a life cycle that will work in a particular environ-
ment. Sometimes the selected life cycle may need modification. For
example, in some environments, QA (quality assurance) and code reviews
may require additional resources. If offshore resources are being applied,
there will be a need to add tasks to the life cycle to set up a distributed
development environment. This may have to be added as a separate step
before development begins in any conventional waterfall or spiral cycle.
Managers should be allowed to fine-tune a model to suit the needs of
a project. Organizations that insist, in the name of standardization or
process control, that only one methodology be used to manage projects
do a disservice to the developers and managers.
Prototypes Are Important
The prototyping phase is perhaps the most important of all steps in the
life cycle of a system development. A prototype is basically a working
reproduction that best models the final system (Figure 7.6). There are
different names for it: proof of concept, pilot, trial system, prototype,
model, etc. There may be minor differences in the way these terms are
used within organizations. It is best to ask for clarification when one
encounters these terms.
A prototype can sometimes be expected to deliver too much: demon-
strate the capabilities and potential of the final system to users, validate
initial budget estimates for time and resources, evaluate risks and depen-
dencies, plan alternative strategies, formulate procedures for full develop-
ment, training, market delivery, and future evolution. Such anticipation
may be fraught with risk. The reason is that a prototype cannot be expected
to model the entire life cycle of the product. In fact, a prototype must
choose a vector (such as functionality, or performance, or scalability)
along which to compress. Automobile manufacturers run years of field
trials on “concept cars” before a single production run. If one has that
much time and budgeted investment, one also can do the same for one's
software.
An acknowledged benefit of prototypes is that it helps senior decision
makers get a feel for the final system, an experience that would be
impossible to attain through a two-dimensional paper drawing or
Search WWH ::




Custom Search