Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

Effectiveness of Software

testing methodologies
SE/2017/028

TEAM D
SE/2017/031
SE/2017/036
SE/2017/022
Waterfall model
Waterfall testing is a software
testing methodology that matches
the postulates of Waterfall software
development. Waterfall implicates
that there is a sequence of stages in
which the output of each stage
becomes the input for the next.
Waterfall approach is also known as
the linear-sequential life cycle
model.
Advantages of Waterfall model Disadvantages of Waterfall model

• Well-structured and well- • Testing takes part only at the end of


documented testing process. the project In some cases, bugs are
• Fits projects of any complexity. easier solved before they pile up.
• All the features of the project are • Strict structure.
developed and delivered together • It requires excessive
• Testers and developers do not need documentation.
to communicate continuously. They • In case the client requirements are
work independently not precise from the start, it is less
• Easy to manage. With Waterfall, effective compared to Agile.
every stage has its deliverables and • Not perfect for large-scale projects
a strict review method.
• Easy to adapt in case a team
changes or different teams work in
shifts.
Incremental
methodology
In Incremental integration
testing, the developers
integrate the modules one
by one using stubs or
drivers to uncover the
defects. This approach is
known as incremental
integration testing
Incremental methodology
Top-down Integration
This type of integration testing takes place from top to bottom. Unavailable
Components or systems are substituted by stubs

Bottom-Up Integration
This type of integration testing takes place from bottom to top. Unavailable
Components or systems are substituted by Drivers

Functional incremental
The Integration and testing takes place on the basis of the functions or functionalities
as per the functional specification document.
Incremental Testing - Features
• Each Module provides a definitive role to play in the project/product
structure
• Each Module has clearly defined dependencies some of which can
be known only at the runtime
• The incremental integration testing's greater advantage is that the
defects are found early in a smaller assembly when it is relatively
easy to detect the root cause of the same
• A disadvantage is that it can be time-consuming since stubs and
drivers have to be developed for performing these tests
Agile methodology
Agile testing is a software testing
methodology that matches the
postulates of Agile software
development. Agile implicates that the
requirements of the client and the
development team develop gradually.
In this approach, the development and
testing processes are aligned with the
demands of the customer.
Advantages of Agile methodology Disadvantages of Agile methodology

• Minimal planning required due to the • Requires continuous efficient


simple structure. communication between testers and
• Little documentation developers.
• Testers work jointly with developers on • Blurred organizational structure.
the project. • Only senior programmers can make
• Best fit for small projects. It also works crucial decisions during team meetings.
fine for long-term
• Bugs don’t pile up. It takes place
simultaneously with the project
development
• Quick issue solving. There is a separate
testing place for every iteration
• Test-driven development. When using
Agile, testing is performed during
implementation
• Flexible and supports changes.
Spiral Methodology
Spiral Model in software testing is the
testing strategy which works on
incremental and prototype technique.
Generally Spiral Model strategy is
followed for the large and complicated
projects where risks are high, and
development and testing goes on
incremental basis.
Advantages of Spiral Methodology Disadvantages of Spiral Methodology

• Best approach for testing and • Difficult to follow strategy for small
development for complex and large projects.
project. • Not much useful for low-risk
• Cost effective. projects.
• Better risk analysis and • Need more experience resources as
management. process is bit complex.
• Better requirement analysis. • Large documentation.
• Fast and easy development.
• Better time management.
• Easy to change requirements and
documentation if any change
happens in the middle of
development.
V-Model
The V-Model is a model used to
describe testing activities as part of
the software development process.
The V-Model can be interpreted as
an extension of the Waterfall
development model, which
describes the testing activities as
one of the last steps in a sequential
development process.
Advantages of V-Model Disadvantages of V-Model

• Simple and easy • Not flexible


• Systematic • Regular updates required if changes
• East to track in the project are required
• Testing starts from requirement • Can’t be used in complex projects
phase itself • No scope for risk management and
• All the Functional Areas can be mitigation
covered • One the project is over its end
• Instructions and recommendations
included
• Detailed explanations of problems
• Defects can be found at an early
stage
• Works well for small projects
Thank You!

You might also like