0% found this document useful (0 votes)
36 views17 pages

7 Software Development Life Cycle Models 1684807394

Soft

Uploaded by

Han Htun Oo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views17 pages

7 Software Development Life Cycle Models 1684807394

Soft

Uploaded by

Han Htun Oo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

7 Software Development Life Cycle

Models

⚙️#1) Waterfall Model


The waterfall model is the very first model that is used in SDLC. It is
also known as the linear sequential model.

In this model, the outcome of one phase is the input for the next
phase. Development of the next phase starts only when the
previous phase is complete.

● First, Requirement gathering and analysis is done. Once the


requirement is freeze then only the System Design can start.
Herein, the SRS document created is the output for the
Requirement phase and it acts as an input for the System
Design.
● In System Design Software architecture and Design,
documents which act as an input for the next phase are
created i.e. Implementation and coding.
● In the Implementation phase, coding is done and the
software developed is the input for the next phase i.e. testing.
● In the testing phase, the developed code is tested thoroughly
to detect the defects in the software. Defects are logged into
the defect tracking tool and are retested once fixed. Bug
logging, Retest, Regression testing goes on until the time the
software is in go-live state.
● In the Deployment phase, the developed code is moved into
production after the sign off is given by the customer.
● Any issues in the production environment are resolved by the
developers which come under maintenance.
Advantages of the Waterfall Model:

● The waterfall model is a simple model which can be easily


understood and is the one in which all the phases are done
step by step.
● Deliverables of each phase are well defined, and this leads to
no complexity and makes the project easily manageable.

Disadvantages of the Waterfall model:

● The waterfall model is time-consuming & can’t be used in the


short-duration projects as in this model a new phase can’t be
started until the ongoing phase is completed.
● The waterfall model can’t be used for projects which have
uncertain requirements or where the requirements keep
changing as this model expects the requirement to be clear
in the requirement gathering and analysis phase itself and
any change in the later stages would lead to cost higher as
the changes would be required in all the phases.

⚙️#2) V-Shaped Model


V-Model is also known as Verification and Validation Model. In this
model Verification & Validation goes hand in hand i.e.
development and testing go parallel. V model and waterfall model
are the same except that the test planning and testing start at an
early stage in V-Model.

a) Verification Phase:

(i) Requirement Analysis:

In this phase, all the required information is gathered & analyzed.


Verification activities include reviewing the requirements.

(ii) System Design:

Once the requirement is clear, a system is designed i.e.


architecture, and components of the product are created and
documented in a design document.
(iii) High-Level Design:

High-level design defines the architecture/design of modules. It


defines the functionality between the two modules.

(iv) Low-Level Design:

Low-level Design defines the architecture/design of individual


components.

(v) Coding:

Code development is done in this phase.

b) Validation Phase:

(i) Unit Testing:

Unit testing is performed using the unit test cases that are
designed and are done in the Low-level design phase. Unit testing
is performed by the developer itself. It is performed on individual
components which leads to early defect detection.

(ii) Integration Testing:


Integration testing is performed using integration test cases in the
High-level Design phase. Integration testing is the testing that is
done on integrated modules. It is performed by testers.

(iii) System Testing:

System testing is performed in the System Design phase. In this


phase, the complete system is tested i.e. the entire system
functionality is tested.

(iv) Acceptance Testing:

Acceptance testing is associated with the Requirement Analysis


phase and is done in the customer’s environment.

Advantages of V – Model:

● It is a simple and easily understandable model.


● V –model approach is good for smaller projects wherein the
requirement is defined and it freezes in the early stage.
● It is a systematic and disciplined model which results in a
high-quality product.

Disadvantages of V-Model:

● A V-shaped model is not good for ongoing projects.


● Requirement changes at a later stage would cost too much.

⚙️#3) Prototype Model


The prototype model is a model in which the prototype is
developed prior to the actual software.

Prototype models have limited functional capabilities and


inefficient performance when compared to the actual software.
Dummy functions are used to create prototypes. This is a valuable
mechanism for understanding the customers’ needs.

Software prototypes are built prior to the actual software to get


valuable feedback from the customer. Feedback are implemented
and the prototype is again reviewed by the customer for any
change. This process goes on until the model is accepted by the
customer.
Once the requirement gathering is done, the quick design is
created and the prototype which is presented to the customer for
evaluation is built.

Customer feedback and the refined requirement is used to modify


the prototype and is again presented to the customer for
evaluation. Once the customer approves the prototype, it is used
as a requirement for building the actual software. The actual
software is built using the Waterfall model approach.

Advantages of Prototype Model:

● A prototype model reduces the cost and time of


development as the defects are found much earlier.
● Missing features or functionality or a change in requirement
can be identified in the evaluation phase and can be
implemented in the refined prototype.
● The involvement of a customer from the initial stage reduces
any confusion in the requirement or understanding of any
functionality.

Disadvantages of Prototype Model:

● Since the customer is involved in every phase, the customer


can change the requirement of the end product which
increases the complexity of the scope and may increase the
delivery time of the product.

⚙️#4) Spiral Model


The Spiral Model includes iterative and prototype approaches.

Spiral model phases are followed in the iterations. The loops in the
model represent the phase of the SDLC process i.e. the innermost
loop is of requirement gathering & analysis which follows the
Planning, Risk analysis, development, and evaluation. Next loop is
Designing followed by Implementation & then testing.

Spiral Model has four phases:

● Planning
● Risk Analysis
● Engineering
● Evaluation
(i) Planning:

The planning phase includes requirement gathering wherein all


the required information is gathered from the customer and is
documented. A software requirement specification document is
created for the next phase.

(ii) Risk Analysis:

In this phase, the best solution is selected for the risks involved and
analysis is done by building the prototype.

For Example, the risk involved in accessing the data from a remote
database can be that the data access rate might be too slow. The
risk can be resolved by building a prototype of the data access
subsystem.

(iii) Engineering:

Once the risk analysis is done, coding and testing are done.

(iv) Evaluation:

The customer evaluates the developed system and plans for the
next iteration.

Advantages of the Spiral Model:

● Risk Analysis is done extensively using the prototype models.


● Any enhancement or change in the functionality can be done
in the next iteration.

Disadvantages of the Spiral Model:

● The spiral model is best suited for large projects only.


● The cost can be high as it might take a large number of
iterations which can lead to high time to reach the final
product.
⚙️#5) Iterative Incremental Model
The iterative incremental model divides the product into small
chunks.

For Example, the features to be developed in the iteration are


decided and implemented. Each iteration goes through the
phases are Requirement Analysis, Designing, Coding, and
Testing. Detailed planning is not required in iterations.

Once the iteration is completed, a product is verified and is


delivered to the customer for their evaluation and feedback.
Customer feedback is implemented in the next iteration along with
the newly added feature.

Hence, the product increments in terms of features and once the


iterations are completed the final build holds all the features of the
product.

Phases of Iterative & Incremental Development Model:

● Inception phase
● Elaboration Phase
● Construction Phase
● Transition Phase
(i) Inception Phase:

The inception phase includes the requirement and scope of the


Project.

(ii) Elaboration Phase:

In the elaboration phase, the working architecture of a product is


delivered which covers the risk identified in the inception phase
and also fulfills the non-functional requirements.

(iii) Construction Phase:

In the Construction phase, the architecture is filled in with the code


which is ready to be deployed and is created through analysis,
designing, implementation, and testing of the functional
requirement.

(iv) Transition Phase:

In the Transition Phase, the product is deployed in the Production


environment.

Advantages of Iterative & Incremental Model:


● Any change in the requirement can be easily done and would
not cost as there is a scope for incorporating the new
requirement in the next iteration.
● Risk is analyzed & identified in the iterations.
● Defects are detected at an early stage.
● As the product is divided into smaller chunks it is easy to
manage the product.

Disadvantages of Iterative & Incremental Model:

● Complete requirements and understanding of a product are


required to be broken down and built incrementally.

⚙️#6) Big Bang Model


The Big Bang Model doesn’t have any defined process. Money and
effort are put together as the input and output come as a
developed product which might or might not be the same as what
the customer needs.

This model doesn’t require much planning and scheduling. The


developer does the requirement analysis & coding and develops
the product as per his understanding. This model is used for small
projects only. There is no testing team and no formal testing is
done, and this could be a cause for the failure of the project.
Advantages of the Big Bang Model:

● It’s a very simple Model.


● Less Planning and scheduling are required.
● The developer has the flexibility to build the software of their
own.

Disadvantages of the Big Bang Model:

● Big Bang models cannot be used for large, ongoing &


complex projects.
● High risk and uncertainty.

⚙️#7) Agile Model


Agile Model is a combination of the Iterative and incremental
models. This model focuses more on flexibility while developing a
product rather than on the requirement.

In Agile, a product is broken into small incremental builds. It is not


developed as a complete product in one go. Each build
increments in terms of features. The next build is built on the
previous functionality.
Agile iterations are called sprints. Each sprint lasts for 2-4 weeks. At
the end of each sprint, the product owner verifies the product and
after his approval, it is delivered to the customer.

Customer feedback is taken for improvement and his suggestions


and enhancement are worked on in the next sprint. Testing is done
in each sprint to minimize the risk of any failures.

Advantages of an Agile Model:

● It allows more flexibility to adapt to changes.


● New features can be added easily.
● Improves customer satisfaction as feedback and
suggestions are taken at every stage.

Disadvantages:

● Lack of documentation.
● Agile needs experienced and highly skilled resources.
● If a customer is not clear about how exactly they want the
product to be, then the project would fail.

Source: Software testing help

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy