What is spiral model in software engineering? | Software engineering



Spiral model

Spiral model is one of the most important software development life cycle models,which provides support for risk handling. In its diagrammatic / it looks like a spiral with many loops .this exact number of loops of the spiral is unknown and can vary from project to project. Each loop of the spiral is called a phase of the software development processthe exact numbers of phases needed to develop the product can be varied by project manager depending upon the project risks.It is the combination of waterfall model and  iterative model . Each phase in spiral model begins with a design goal and ends with the clients reviewing the progress.

Different phases of spiral model

The phase of the spiral model has four quadrant and each of them represents some specific stage of software development . the functions of these four quadrant are listed below:

1) Planning objectives or identify alternative solutions : In this stage,requirements are collected form customers and then aims are recognized,elaborated as well as analyzed at the beginning of the developing the projects.If the iterative  rounds more then one then an alternative solution is proposed in the quadrant.

2) Risk analysis and resolving :During the second quadrant all the possible solution are evaluated to select the best possible solution.then the risk associated with that solution is identified and risks are resolved using the best possible strategy.As the spiral goes to the end of this quadrant a project prototype is put up for the most excellent and likely solution.






3) Develop the next level of product : As the development progress goes to the third quadrant, the well known and mostly required features are developed as well as verified with testing methodologies .As this stage proceeds to the end of this third quadrant,new software or the next version of existing software is ready to deliver.

4) Plan the next phase: In this phase the customers appraise the developed version of the project and reports .If any further changes are required ,At last planning for the subsequent phase is initiated.


Advantage of spiral model :

The spiral model has some advantage -

>> Suitable for the large project :Spiral is the recommended when the project is large,bulky or complex to develop.

>> Risk handling: There are a lot of projects that have um-estimated risk involved with them.For such projects,the spiral model is the best SDLC model to pursue because it cal analyze risk as well as handling.Risk at each phase of the development .

>> Customer satisfaction: Customer can witness the development of product at every stage and thus.They can let themselves habitue with the system and throw feedback accordingly before final product is made.

>> Requirements flexibility : all the specific requirements needed at later stages can be included precisely .If the development is done using this model.

>> User see the system

>> Requirement can be captured more accurately

>> Additional functionality or change can be done at a later stage.



Disadvantage of spiral model

>> Management is more complex.

>> End of the project many not be known early.

>> Not suitable for small or low risk project and could be expensive for Small project.

>> Process is complex.

>> Spiral may go on indefinitely .

>> Large number of intermediate states requires excessive documentation.

>> Documentation is more as it has intermediate phase.

>> As the number of phases Is unknown at the start of the project , so time estimation is very difficult

When to use spiral methodology :

>> When project is large.

>> When release are required to be frequent.

>> When creation of a prototype is applicable.

>> When risk and cost evaluation is important.

>> For medium to high risk projects.

>> When requirements are unclear and complex.

>> When change may require at any time.

>> When long term project commitment is not feasible due to changes is economic priorities.


 Important and more related post :

>> What is application software and system software
>> incremental model with details.
>> Software Engineering | Classification of Software Requirements
>>What is operating system 
>>What is traffic monitoring system 
>> what is computer virus and names of virus.
>>What is embedded control system  
>> What is compiler .
>> What is linker.
>> What is Interpreter
>> Modern Principles Of Software Development
>> Types of Software Testing
>> Software Testing | Basics
>> Software Engineering | Debugging Approaches


Post a Comment

0 Comments