SDLC ModelsWaterfallIterative WaterfallSpiralOUR PRESENTATION TOPIC IS
Iterative model. Spiral modelRAD(Rapid application development) model.
SDLC Models Are Two Types:
History of Water Fall Model
The first formal description of the waterfall model is often cited as a 1970 article by Winston W. Royce
Royce did not use the term "waterfall" in this article.
Royce presented this model as an example of a flawed, non-working model.
A Water Fall Model is easy to flow.It can be implemented for any size of project.Every stage has to be done separately at the right time so you cannot jump stages.Documentation is produced at every stage of a waterfall model allowing people to understand what has been done.Testing is done at every stage.Features of Water Fall Model
Where to use the waterfall model?Requirements are very well known.Product definition is stable.Technology is understood.New version of an existing product.
Water Fall Model
Requirement GatheringRequirement Analysis DesignCodingTestingRelease&Maintenance
In this phase business analyst will collect the requirements with an interaction of client and collected requirements will be documented.In this phase system analyst will study the client requirements and prepare the system requirement specification.In this phase design architecture is the responsible to decide architecture of an application in order to full-fill the client requirements .In this phase developers will write the program using programming languages or scripting languages in order to develop the application.Initially developers will perform unit testing and integration testing using of white box testing, After that separate team will be perform system testing using black box testingAfter the testing client satisfied on work product then we deliver application to the customer to use at live environment. While using this application client identify can some defects in existing s/m then he will send to the CR to CCB .
ADVANTAGESA waterfall model is easy to implementation.It helps to find errors earlierEasy to understand, easy to use.Works well when quality is more important than cost or scheduleDocumentation is produced at every stage of a waterfall model allowing people to understand what has been done.Testing is done at every stage.
DisadvantagesIt is only suitable for the small size projects. Constant testing of the design is needed.If requirements may change the Waterfall model may not work.Difficult to estimate time and cost for each stage of the development process.Adjust scope during the life cycle can kill a project.High amount of risk and uncertainty.This model is not suitable to handle dynamic changes in the requirements
Introduction of iterative model :This model was not the first model to discuss iterative development. As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far. Analysis and engineering efforts are applied at each phase of the project, with an eye toward the end goal of the project.
This approach carriesless risk than a traditional Waterfall approach but is still farmore risky and less efficient than a more Agile approaches. In Iterative model, iterative process starts with a simple implementation of a small set of the software requirements and iteratively enhances the evolving versions until the complete system is implemented and ready to be deployed.
Iterative Waterfall Model
Iterative WaterfallThe design, development, integration, and testing (DDIT) stage is a sequential process in a Waterfall project. The graphics below illustrate this difference:
Which model to use when?
Waterfall- Use for small projects 6 months with unclear requirements or requirements that may change or needvalidating.
Introduction of spiral model :The spiral model, also known as the spiral lifecycle model.It is a systems development method (SDM) used in information technology This model of development combines the features of the prototyping model and thewaterfall model.
WHAT IS SPIRAL MODEL?The spiral model is similar to the incremental model, with more emphasis placed on risk analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation.Software project repeatedly passes through these four phases in iterations (called Spirals). The baseline spiral, starting in the planning phase, requirements are gathered and risk is assessed.Each subsequent spirals builds on the baseline spiral.
History The spiral model was defined by Barry Boehm in his 1988 article.
This model was not the first model to discuss iterative development, but it was the first model to explain why the iteration matters.
When to use Spiral ModelWhen costs and risk evaluation is important.For medium to high-risk projects.Users are unsure of their needs.Requirements are complex.Significant changes are expected.
Spiral model is meta model?
Spiral model is also called as meta-model because in a way it comprises of other models of SDLC. Both waterfall and prototype models are used in it. Here we do software development systematically over the loops (adhering to waterfall approach) and at the same time we make a prototype and show it to user after completion of various phase (just in case of prototype model). This way we are able to reduce risks as well as follow systematic approach
The systems development life cycle (SDLC).
PHASES OF SPIRAL MODELA spiral model has 4 phases described below:
Planning phaseRisk analysis phaseEngineering phaseEvaluation phase.
PLANINGRequirements are studied and gathered.Feasibility studyReviews and walkthroughs to streamline the requirementsRequirements understanding documentFinalized list of requirements.The project is reviewed and a decision made whether tocontinuewitha further loop of the spiral. If it is decided to continue, plans are drawn up for thenext phase of the project.
Requirements are studied and brain storming sessions are done to identify the potential risks
Once the risks are identified , risk mitigation strategy is planned and finalized
Document which highlights all the risks and its mitigation plans
ENGINEERING WORKSActual development and testing if the software takes place in this phaseCodeTest cases and test resultsTest summary report and defect report.
EVALUATIONCustomers evaluate the software and provide their feedback and approvalFeatures implemented document
Advantages :Development is fastLarger projects / software are created and handled in a strategic wayRisk evaluation is proper.Control towards all the phases of development.More and more features are added in a systematic way.Software is produced early.Has room for customer feedback and the changes are implemented faster.Risk reduction mechanisms are in place.Supports iteration and reflects real-world practices Systematic approach
Risk analysis is important phase so requires expert people.Is not beneficial for smaller projects.Spiral may go infinitely.Documentation is more as it has intermediate phases.Complex, relatively difficult to followstrictly.Applicable only to large systemsIt is costly for smaller projects.
ComparisonSpiral ModelRisk factors are considered.The requirements are not freeze.works in loop.costly as Risk factor is covered.Better communication between developer and customer.
Waterfall modelRisk factors are not considered.The requirements are freeze.Is linear sequential model.Not much costly.Communication level is not high
ExamplesTheUS militaryhad adopted the spiral model for itsFuture Combat Systemsprogram. The FCS project was cancelled after six years (20032009), it had a two year iteration (spiral).
In 2010 with the collaboration of Microsoft Research ,Bangalore, India and University of Toronto Canada made a project with spiral model Exploring the Feasibility of Video Mail for Illiterate Users
Video Mail for Illiterate Users
Video Mail for Illiterate Users