spiral model for software development by : sumeet singh roll no. : 23 reg no. : 40080120
TRANSCRIPT
Spiral Model For Software Development
By :
Sumeet Singh
Roll No. : 23
Reg No. : 40080120
Software development
The set of activities that results in software products. Software development may include research, new development, modification, reuse, re-engineering, maintenance, or any other activities that result in software products. Especially the first phase in the software development process may involve many departments, including marketing, engineering, research and development and general management.
Requirement Analysis Design Specification Architecture Implementation, testing and documenting Deployment and maintenance
Software development activities`
Introduction
The spiral model of s/w development and enhancement presented here provides a new framework for guiding the s/w process, rather than a strictly specification-driven or prototype driven process. It incoprates many of the strengths of other models, while resolving many of their difficulties
Background
Earliest s/w process models is the stagewise model given in 1958.
Then came Waterfall Model in 1970 Then came spiral model in 1976.
Stage wise model
S/W To be developed in successive stages
like operational plan,operational specification, coding specification, coding, parameter testing, assembly testing, shake down, system spec.
Waterfall model
Consistent with top-down structured programming model .
The original treatment of the waterfall model provided 2 primary enhancements to the stage wise model
1) Recognition of the feedback loops b/w the stages, and a guideline to confine the feedback loops to successive stages in order to minimize the expensive rework involved in many stages.
2) An initial incorporation of prototyping in the s/w lifecycle .
Difficulties with waterfall model
1) The build it twice step was unnecessary in some situations .
2) The pure top down approach need to be tempered in some situations
Alternate S/W Life Cycle models
Parnas- Has Information hiding approach. Two-leg model-Separate Process of abstraction until
a formal specification is achieved. Evolutionary & Mixed Models-Rapid Prototyping
Approach Automation Paradigim-Adress the possible future
models of S/W development associated with automatic program cpabilities, program tranformation capabilities and knowledge based S/W assistant capabilities.
Challenges to alternate models
Parnas-Information hiding approach has yet not fully elaborated to see how will it cover issues like prototyping and reuse of previous models.
Two-leg model- challenge in accommodating S/W reuse, program famalies and logical and physical design tradeoffs.
Evolutionary development approach- scaling upto very large systems, ensuring process viability and control.
Automation Paradigm- Scaling upto very large systems accomodating program famalies, handling choices b/w older, stable but less powerful capabilities and new unstable but more powerful capabilities.
Reasons for the proposal of spiral model
there is no fair division of phases in the life cycle, not all the errors/problems related to a phase are resolved during the same phase, instead all those problems related to one phase are carried out in the next phase and are needed to be resolved in the next phase, this takes much of time of the next phase to solve them. The risk factor is the most important part, which affects the success rate of the software
Spiral Model for software Development Cycle
The spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts.
Figure Representation
Radial dimension represent cost incurred in accomplishing the step and the angular dimension represent the progress made in completing each cycle of the spiral.
First Step
The objectives of the portion(performance, functionality, ability to accommodate the change)
Alternative means of implementing this portion of the product(design A,B, resuse etc)
Constraints imposed on the application of the alternatives(cost, schedule, interface etc)
Second step
Evaluate the alternatives with respect to objectives and constraints. This step will identify the risk. If so, cost-effective strategy for resolving the source of risk.
Third Step
Once the risks are evaluated the next step is deteminted by the relative risks remaining i.e performance, userinterferance risk, internal interferance control risk.
These risks are resolved by developing more detailed prototyping.
Spiral model also accomodates any appropriate mixture of specification-oriented, prototype-oriented, simulation-oriented, automatic tranforamntion-oriented or other approaches to software s/w development where appropriate mixed stratergy is chosen by considering the relative magnitide of the risk involved.
Spiral Model Features
27
• B a lan c es a ll o f the ris k e le m e nts, i.e . th e h ig h -ris k e le m e nts m us t be low e re d firs t.
• O ffe rs p ro to ty p in g as a ris k-re d uc tio n o p tio n a t a ny s ta g e o f d ev e lop m en t.
• It a llo w s re w o rk s o f ea rlie r s ta ge s as m o re a ttra c tiv e a lte rn a tiv es a re id en tifie d .
• D e ta il is n ’t ne c es sa ry un til d e ta il is n ee d ed .
Advantages
The spiral model is a realistic approach to the development of large-scale software products because the software evolves as the process progresses. In addition, the developer and the client better understand and react to risks at each evolutionary level.
The model uses prototyping as a risk reduction mechanism and allows for the development of prototypes at any stage of the evolutionary development.
It maintains a systematic stepwise approach, like the classic life cycle model, but incorporates it into an iterative framework that more reflect the real world.
If employed correctly, this model should reduce risks before they become problematic, as consideration of technical risks are considered at all stages.
Risk Management
• T h e Sp ira l m o de l re lies he a v ily o n the a ss e ss m e n t o f r isk s.
• It p ro v id e s e a rly id e n t ific a tio n o f the top risk ite m s .
• Im p ro p er e v a lua tion o f r is ks m a y le ad ine xp e rien c ed d e ve lo p ers do w n the w ro n g pa th . M ay g iv e a n illus io n o f p ro g res s.
• H o w c an a gro u p e n ha n ce the ir r is k m a n a ge m e n t sk ills /lev e l?
Software Risk Management Plan
Conclusions
• The paper draws four conclusions:1. The risk-driven nature provides adaptability
for a full range of software projects.2. The model has been successful in a large
application, the TRW-SPS.3. The model is not yet fully elaborated.4. Even partial implementations of the model,
such as the risk management plan, are compatible with the other process models.
Discussion
• Since the Spiral Model is based on the human ability to assess risk, is the model prone to human errors?
• Is this model just a combination of all of the other software process models?
• Can we get lost in the spiral, i.e. endless levels, gigantic breakaway spirals?
Thanks
for bearing me for a long time.