For my final blog I thought I would put together an overview of the SDLC models and what they’re about. There are many SDLC models, and you may become quiet confused with all the different ones. Each model has its own advantages and disadvantages and it depends on the organisation to adopt the most appropriate one for the project in hand.
SDLC models can be broadly classified into sequential models and incremental models. Sequential models include the waterfall and V model. Incremental models include prototype, spiral and agile. Firstly in the waterfall model after each phase is finished, it proceeds with the next one. Reviews can occur once each stage is finished. Waterfall has the following stages:
- Requirements gathering
- Systems gathering
Waterfall is a very simple model and very easy to manage. Phases are processed and completed one at a time. However, a disadvantage may be once an application is in the testing stage, it is very difficult to go back and change something. There is also a high risk of uncertainty and is more suited to short projects not long term.
The V-Model means Verification and Validation Model. It is very similar to the waterfall model as it is very simple and structured well. The phases of the V- model include:
- Business requirements and Acceptance testing
- Software requirements and system testing
- High level design and Integration testing
- Low level design and Component testing
One of the main advantages of the V-Model is that activities like planning and testing are done well before coding . This saves a huge amount of time. It should be used for small to medium size projects.
The prototype model was established to reduce the amount of failed projects. After a prototype is built it is sent to the customer for evaluation. The prototype helps the customer determine how the feature will function in the final software. The customer provides suggestion and improvements on the prototype. The development team implements the suggestion in the new prototype, which is again evaluated by the customer.The prototyping approach is used in the requirement gathering and in the analysis phase to capture the exact requirement of the proposed system. A huge advantage of this model is the reduced amount of failed projects.
In the sprial Model, it is a combination of both waterfall and prototype models. It’s a software project that repeatedly passes in spirals. The stages include:
- Risk Analysis
Spiral Life Cycle Model is one of the most flexible SDLC models in place. Risk management is one of the in-built features of the model, which makes it extra attractive compared to other models.
Agile model is a cycle that is basically the steps and procedures that are taken when a new piece of software is implemented, tested, or even created in the environment of an Information Technology department.The Agile model is often cited as something extreme to that of the other known models, however this model is also one that fosters collaboration and teamwork, as well as being rather flexible in its implementation. The agile model is very similar to the waterfall model.