There are various System Development Life Cycle approaches defined and designed which are used during the development process of software. These SDLC approaches are also referred as System Development Process. Each process model follows a unique life cycle in order to ensure success in the process of software development. There are many SDLC models, “Waterfall Model, Iterative Model, RAD Model, Evolutionary Development Model, Agile Model, Spiral Model, V-Model and etc.”
Models of SDLC
Waterfall Model -: In the waterfall model, there are stages which perform their processes one after another. Each stage has generated an output. These outputs of each stage is the input of the next stage. We need to follow these stages without skipping any stage. In addition oldest models is the Waterfall Model. In this model processes are flowing steadily just like a waterfall. That is why it’s called Waterfall Model.
Iterative Model -: An iterative life cycle model does not attempt to start with a full specification of requirements. Instead, development begins by specifying and implementing just part of the software, which is then reviewed in order to identify further requirements. This process is then repeated, producing a new version of the software at the end of each iteration of the model.
V-Model -: This is also known as Verification or Validation model. This model is based on the association of a testing step four similar development stage. That means we cannot go backwards on Waterfall Model to fix faults on previous stages, in this model we can go backward and solve those errors in the stages.
RAD Model -: RAD stands for Rapid Application Development. This model is based on prototype and iterative development with no unique planning involved. RAD model is obtained points on gathering customers’ requirements through workshops or special focus groups. Customer’s iterative concepts use for the testing of the prototypes and reuse the existing components to continue processing and express delivery. Since there is no detailed pre-planning, it makes it easier to incorporate the changes within the development process.
Spiral Model -: Spiral model is a part of iterative model and incremental model. There are four phases in the Spiral Model, they are Identification Phase, Designing Phase, Construct Phase, Evaluation and Risk Analysis Phase. Software projects repeatedly pass through these spiral model phases in iterations.
System/Software Development Life Cycle (SDLC) Tutorial
System Development Life Cydle Models Comparison
|MODELS||Waterfall Model||Iterative Model||V-Model
|RAD Model||Spiral Model|
|FEATURES||Too much time taking.
This is the root of all other models.
|Requirements of the complete system are clearly defined and understood and a new technology is being used.
Less time taking
|Requirements are well defined, clearly documented and fixed.
We can go backward stages to solve errors.
|Quicker than other models.
|New product line
Requirements are complex
|ADVANTAGES||A schedule can be set with deadlines for each stage of development and a product can proceed through the development process model phases one by one.
This model is simple and easy to understand and use.
|Some working functionality can be developed quickly and early in the life cycle.
Less costly to change the requirements.
In iterative model we can get the reliable user feedback.
|This model is very easy to understand and apply for short projects.
It’s easy to manage and each stage has deliverable time.
|Encourages customer feedback.
We can reuse of software components.
·Progress can be measurable
|Requirements can be obtain more accurately.
Users see the system early.
Good for large and critical projects.
|DISADVANTAGES||Difficult to estimate time and cost for each stage of the development process.
If there was a fault on a stage it cannot change and
No working software is produced until late during the life cycle.
Not suitable for the projects where requirements are at a moderate to high risk of changing. So risk and uncertainty is high with this process model.
|In this stage more resources may be required.
Highly skilled resources are required for risk analysis.
More management attention is required.
This model is applicable only to large and bulky software development projects.
|This is not flexible to changes.
Not suitable for the projects where requirements are at a moderate to high risk of changes.
This is not a good model for complex and object-oriented projects.
|Depends on strong team and individual performances for identifying customers ‘requirements.
Only system that can be modularized can be built using RAD.
Suitable for project requiring shorter development times
|Process is complex.
Management is more complex.
Not suitable for small or low risk projects because it could be expensive for small projects.
|COMMENTS||It’s better if this was quicker and go backwards and fix faults on stages.||It’s better if we can apply this model to small projects too.||It’s better if this model was quicker and apply to the complex projects.||It’s better if we can use normal performance team for projects and cost should be less.||It’s better if this model easy to apply to small projects and less cost.|