Page 235 - DCAP104_EXPOSURE_TO_COMPUTER_DISCPLINES
P. 235
Exposure to Computer Disciplines
Notes The Spiral is visualized as a process passing through some number of iterations, with the four
quadrant diagram representative of the following activities:
(a) formulate plans to: identify software targets, selected to implement the program, clarify the
project development restrictions;
(b) Risk analysis: an analytical assessment of selected programs, to consider how to identify
and eliminate risk;
(c) the implementation of the project: the implementation of software development and
verification;
Risk-driven spiral model, emphasizing the conditions of options and constraints in order to
support software reuse, software quality can help as a special goal of integration into the product
development. However, the spiral model has some restrictive conditions, as follows:
(i) The spiral model emphasizes risk analysis, and thus requires customers to accept this
analysis and act on it. This requires both trust in the developer as well as the willingness
to spend more to fix the issues, which is the reason why this model is often used for large-
scale internal software development.
(ii) If the implementation of risk analysis will greatly affect the profits of the project, the spiral
model should not be used.
(iii) Software developers have to actively look for possible risks, and analyze it accurately for
the spiral model to work.
The first stage is to formulate a plan to achieve the objectives with these constraints, and then strive
to find and remove all potential risks through careful analysis and, if necessary, by constructing
a prototype. If some risks can not be ruled out, the customer has to decide whether to terminate
the project or to ignore the risks and continue anyway. Finally, the results are evaluated and the
design of the next phase begins.
Give a spiral model representation of SDLC.
12.4 Iterative and Incremental Development
Iterative development prescribes the construction of initially small but ever larger portions of a
software project to help all those involved to uncover important issues early before problems or
faulty assumptions can lead to disaster. Iterative processes are preferred by commercial developers
because it allows a potential of reaching the design goals of a customer who does not know how
to define what they want.
12.4.1 Agile Development
Agile software development uses iterative development as a basis but advocates a lighter and
more people-centric viewpoint than traditional approaches. Agile processes use feedback, rather
than planning, as their primary control mechanism. The feedback is driven by regular tests and
releases of the evolving software.
228 LOVELY PROFESSIONAL UNIVERSITY