#2 What are the different Models of Software Development Lifecycle or SDLC Models

desktop, computers, screens

Here in this blog, we will discuss different SDLC models which are/were widely used in the Software Industry.

  1. Waterfall Model
  2. Spiral Model
  3. Prototype Model
  4. V&V Model
  5. Hybrid Model
  6. Agile Methodology

Waterfall Model:

Features of Waterfall Model:

  1. It is the most basic model of SDLC
  2. Execution Happens in sequential order which means the output of one phase will act as the input of the next phase.
  3. Parallel Deliverables are not allowed. As result two phases cannot be executed simultaneously.
  4. Requirement Review does not exist that is no one is cross checking the requirements which are brought by the Business Analyst. This is one of the biggest disadvantages in waterfall model.
  5. Requirement changes are not allowed.

But why accepting a requirement change is important?

  1. Because the market for which the software is being developed might change
  2. The technology might change
  3. The end user’s expectation of using the software might change

This model is best suited for:

  1. Development of Life Critical Software. Example – Medical Software
  2. Development of machine critical software. Example – Autopilot, Defense related software

In this kind of scenario requirement changes should be limited because any minor defect in production can have catastrophic outcomes.

Drawbacks of Waterfall model:

Customer gets the product only after development of the complete application. So during this time the software market might change, Technology may change and finally users expectations may also change. It is called the waterfall model because backtracking is not allowed. Once we have started with development of the software we cannot go back and do any changes in the requirement level.

Note: Apart from waterfall model requirement changes are allowed in all the other models.

Spiral/Iterative/Cyclic Model:

Features of Spiral Model:

  1. We go for this SDLC model whenever the modules of the software application are dependent on each other.
  2. Part by part delivery of the software to the customer is possible. So, the customer gets to use the software from the initial development of the first module.
  3. If the market changes, technology changes or even if the end users expectation changes the customer can always come back to the software development companies to stop the next module or do specific changes on the next module.

Advantages of Spiral Model:

  1. Software is delivered module by module as a result of which customer can use the software at very early stage
  2. Flexible for changes. Since here software is developed module by module if the market changes the changes can be implemented.
  3. More clarity in Testing is possible in this module. As testing is done individually on each module and also after integration of multiple modules.
  4. Requirement changes are allowed in this module.

Disadvantages of Spiral Model:

  1. Requirement review does not exists. No cross check of requirement is carried out which are being brought by the business analyst which may lead to downward flow of bugs.
  2. No parallel deliverables are possible. Since no two phases are executed simultaneously.

Again, since this model is flexible to changes, this changes can be categorized into two parts Minor changes and Major changes

  1. Minor Change: Whenever there is a minor change, we accommodate the changes in the same cycle of the next module since it may not have effect on other modules
  2. Major Change: Whenever there is a major change we go for one more separate cycle since it may affect other modules.
SDLC Spiral Model

Prototype Model:

Generally, Prototype model is used in cases where clients/customers doesn’t have a clear idea about the requirements.

Advantages of Prototype Model:

  1. Customer satisfaction exists because customer himself has given the review.
  2. Less chances of software rejection in the end.
  3. Customer can get the look and feel of the software at a very early stage.
  4. Requirement changes are allowed.

Disadvantages of Prototype Model:

  1. No parallel deliverables is possible
  2. It is time consuming since more time is required to create the prototype.
  3. It becomes even more time consuming when the customers keeps on asking for changes in the prototype.
  4. Requirement review does not exist as review is done only after development of the prototype.

Note: Requirement Review means someone should cross check the requirements brought by the Business Analysts.

Characteristics of Requirements:

  1. It should be easy to read, understand & In-detailed description should be provided
  2. Written in a proper flow.
  3. It should be measurable

Whenever a requirement review process is done by the functional testing team, below 3 points should be kept in mind

  1. Chances of any missing requirement.
  2. Chance of any conflict in requirement
  3. Is proper flow maintained?

Note: The functional testing team should always think like an end user to bring out the application with highest quality.

V-V Model:

This is called the V-V model because it is executed in two phases that is first all the necessary verification or review process takes place and once coding is completed the validation or testing process takes place. Hence it is known as verification and validation model.

Advantages of V-V model:

  1. Review exists at every stage . As a result there are less chances of having bug in the final delivered product.
  2. Parallel deliverables are possible.
  3. Testing activities begins at a very early stage in ‘V-V’ model as a result Test engineers have more product knowledge.
  4. Test Documents are re-useable.

Disadvantages of V-V model:

  1. It is more costlier since resources are hired from the start.
  2. It can be time consuming if customer ask for changes. In this kind of situations all the documents need to be updated accordingly.
SDLC V-V Model

Hybrid Model:

Based on requirement this model can be implemented to get the advantages of both the model.

Ex- Spiral Model + Prototype Model= Hybrid Model

Note: Since waterfall model doesn’t allow requirement changes it cannot be combined with other models.

Important Interview questions on SLDC and different software development models

  1. Explain SDLC and their different phases or stages?
  2. Explain the different models of SDLC?
  3. What is V-V model?
  4. Why it is called V-V model?
  5. Difference between verification and validations?
  6. Advantages of ‘V-V’ model?
  7. What is hybrid model? Which all models can be combined to form hybrid model?

In the next blog we will discuss about Agile Methodology. Stay Tuned and happy reading!!!!

Leave a Comment

Your email address will not be published.