0% found this document useful (0 votes)
82 views41 pages

Ses1 - Testing Throughout Software Life Cycles - v1.0

The document discusses software testing throughout the software development life cycle and software maintenance life cycle. It describes the stages of each cycle including initiation, definition, construction, transition, and termination. It also discusses testing in different development models.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
82 views41 pages

Ses1 - Testing Throughout Software Life Cycles - v1.0

The document discusses software testing throughout the software development life cycle and software maintenance life cycle. It describes the stages of each cycle including initiation, definition, construction, transition, and termination. It also discusses testing in different development models.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 41

Software Testing Foundation

Testing throughout Software Life Cycles

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 1


Lesson Objectives

 Software Development Life Cycle (SDLC)

 Software Maintenance Life Cycle (SMLC)


 Software Development Models

 Testing in Development Models

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 2


Section 1
SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC)

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 3


SDLC Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 4


Flowchart
Initiation
Quality
1. Characteristics of stages Gate
 A stage has its own objectives and work products Definition
generated by internal processes of the stage.
Requirement
 A stage may have one or more iterations depending Review
Solution
on the complexity of the stage.
 Stages may be combined to one depending on the Architecture
complexity of project. Review
Construction

2. Quality Gate
Final
To be performed by QA to determine: Inspection
Transition
 If the objectives of the stage have been met.
 If the mandatory work products have satisfied the Customer
acceptance
requirements. Termination

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 5


Initiation State

1.Overview
 The Initiation stage is the start of the SLC.
 The main activities:
 Establish project's software scope and boundary conditions
 Estimate overall cost and schedule of the project
 Build the project team
 Draft a project plan
 Define potential risks
 Providing all necessary resources/tools/supports required to carry out the project
 Opening Decision: Decision for PM, actual Start date of the project
 Project Kick-off

2.Outputs
 User Requirement Document
 Proposal

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 6


Definition State

1. Overview
 The main purpose of this stage is to understand customer requirements.
 The main activities:
 Study and clarify user requirements
 Negotiate Acceptance Criteria with customer
 Update and release complete project plan
 Create Test Plan

2. Outputs
 Project plan
 Test plan
 Prototype

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 7


Solution State

1. Overview
 The main purpose of this stage is to define an effective solution to meet customer
requirements.
 The main activities:
 Create HLD
 Create DDD
 Create test case and test data

2. Outputs
 Architecture Design Document
 Detailed design document
 Test case and test data

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 8


Construction State

1. Overview
 The goal of this stage is to develop the system.
 The main activities:
 Coding
 Testing

2. Outputs
 Software package
 Test report
 Defect report
 Installation guide
 User manual

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 9


Transition State

1. Overview
 The focus of this stage is to ensure that software is available for its end users.
 The main activities:
 Deliver software to customer
 Support UAT

2. Outputs
 Project report
 Test report
 Acceptance report

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 10


Termination State

1. Overview
 The goal of this stage is to summarize the results of the project and to provide the project
knowledge and experiences for other projects.
 The main activities:
 Get customer acceptance of the whole project.
 Postmortem project
 Project assets must be collected and transferred to company

2. Outputs
 Customer Satisfaction Survey
 Project Report
 Acceptance Note

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 11


Section 2
SOFTWARE MAINTENANCE LC (SMLC)

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 12


SMLC Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 13


Flowchart

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 14


Initiation State

1.Overview
 The Initiation stage is the start of the SLC.
 The main activities:
 Establish project's software scope and boundary conditions
 Estimate overall cost and schedule of the project
 Build the project team
 Draft a project plan
 Define potential risks
 Providing all necessary resources/tools/supports required to carry out the project
 Opening Decision: Decision for PM, actual Start date of the project
 Project Kick-off

2.Outputs
 Work order
 Project plan
 Customer Requirement

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 15


Help Desk

1. Overview
 The main activities are:
 Receive customer requirements in a request form such as problem report or
change request,
 Perform primary evaluation of the request and responding to customer.

2. Outputs
 Customer requests (CRs)

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 16


Bug Fixing

1. Overview
 The main purpose of this workflow is to correct customer submitted defects of the maintained
system.
 The main activities are:
 Analyze submitted defects, coding and testing.
 Regression test

2. Outputs
 Test case and Test Data
 Software package
 Test Report
 Installation Manual (optional)
 User Manual (optional)

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 17


Enhancement Workflow

1. Overview
 The goal of this workflow is to enhance the system like a small or shorted development
project with the input being change requirements defined from change requests .
 The main activities are
 Analyze, refine design
 Coding and testing for the updated software package

2. Outputs
 Requirement documents
 Design documents
 Test plan, test case
 Software package

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 18


Release Sub-stage

1. Overview
 The focus of this sub-stage is to ensure that updated software is available for its end users.
 The main activities are:
 Deliver the updated software to customer
 Implement the updated software systems on customer site and conduct test activities
for release acceptance.
• Normally there are two kind of release: Emergency and Periodical which is mandatory.

2. Outputs
 Software package
 Release note
 Project Report

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 19


Transition Stage

1. Overview
 The focus of this stage is to ensure that the updated software of all releases is available for it end
users.
 The main activities are:
 Conduct the regression test
 Deliver the final updated software (Final release) to customer, implement the final updated
software systems on customer site and conduct test activities for final acceptance.

2. Outputs
 Software package
 Project documents
 Release note
 Project report

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 20


Termination State

1. Overview
 The goal of this stage is to summarize the results of the project and to provide the
project knowledge and experiences for other projects.
 The project closes at this stage when customer accepts the whole project. Project
assets must be collected and transferred to company library.

2. Outputs
 Customer Satisfaction Survey
 Project Report
 Acceptance Note

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 21


Section 3
SOFTWARE DEVELOPMENT MODELS

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 22


Software Development Models

 Traditional Development Models


 Waterfall

 Iterative
 Rapid Application Development - RAD

 Spiral

 Agile Development Models


 Scrum
 Kanban

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 23


Waterfall Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 24


Waterfall Development Model

Advantages: Disadvantages :

Very difficult to go back and change


Simple and easy to understand and
Not a good model for complex and object-
use
oriented projects.
Phases are processed and completed Poor model for long and ongoing projects.

one at a time. Phases do not overlap. Not suitable for the projects where requirements
are at a moderate to high risk of changing
 When to use:
 Works well for small and short projects when the requirements are very well known, clear and fixed.
 There are no ambiguous requirements
 Technology is understood
 Ample resources with required expertise are available freely

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 25


Iterative Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 26


Iterative Development Model

Advantages:  Disadvantages:
 More flexible – less costly to change scope and  Needs good planning and design.
requirements  Needs a clear and complete definition of the whole
 Easier to test and debug during a smaller iteration system before it can be broken down and built

 Customer can respond to each build incrementally


 Total cost is higher than waterfall.
 Easier to manage risk because risky pieces are identified
and handled during it’d iteration
 When to use:
 The incremental model should be used for the project where major requirements must be defined; however,
some details can evolve with time.
 There is a need to get a product to the market early.
 A new technology is being used
 Resources with needed skill set are not available
09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 27
Rapid Application Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 28


Rapid Application Development Model

 Advantages:  Disadvantages:
 Reduced development time  Depends on strong team and individual
 Increases reusability of components performances for identifying business requirements.
 Quick initial reviews occur  Requires highly skilled developers/ designers.
 Encourages customer feedback  High dependency on modeling skills
 Integration from very beginning solves a lot  Inapplicable to cheaper projects as cost of modeling
of integration issues and automated code generation is very high.

 When to use:
 There is a need to create a system that can be modularized in 2-3 months of time.
 Should be chosen only if resources with high business knowledge are available and there is a need to produce
the system in a short span of time (2-3 months).

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 29


Spiral Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 30


Spiral Development Model

 Advantages:  Disadvantages:
 Good for large and mission-critical projects  Can be a costly model to use.
 Strong approval and documentation control.  Risk analysis requires highly specific expertise.
 Software is produced early in the software life  Project’s success is highly dependent on the risk
cycle analysis phase.
  Doesn’t work well for smaller projects.
Additional Functionality can be added at a later
date.

 When to use:
 For medium to high-risk projects
 Long-term project commitment unwise because of potential changes to economic priorities
 Users are unsure of their needs
 Requirements are complex
 New product line
 Significant changes are expected (research and exploration)
09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 31
Agile Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 32


Agile Development Model

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 33


Agile Development Model

 Emphasize face-to-face communication over written


documents
 Release = Sprint
 Short tasks
 Write test scripts before code

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 34


Agile Development Model

Advantages:  Disadvantages:
 Customer satisfaction by rapid, continuous delivery of useful  In case of some software deliverables, especially the large
software. ones, it is difficult to assess the effort required at the beginning
of the software development life cycle.
 Customers, developers and testers constantly interact with
 There is lack of emphasis on necessary designing and
each other. documentation.
 Face-to-face conversation is the best form of communication.  The project can easily get taken off track if the customer
 Close, daily cooperation between business people and representative is not clear what final outcome that they want.
developers.  Only senior programmers are capable of taking the kind of
 Continuous attention to technical excellence and good design. decisions required during the development process.

 Regular adaptation to changing circumstances.


 Even late changes in requirements are welcomed.

 When to use:
 When new changes are needed to be implemented

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 35


Section 4
TESTING IN DEVELOPMENT MODELS

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 36


Testing in Waterfall model (V-model)

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 37


Testing in other Models

 Sequential development: V-model

 Iterative and incremental: : Testing in iterations/increments;


IT, Regression Test

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 38


References
 https://www.istqb.org/ , Foundations of Software Testing,
Chapter 2

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 39


Lesson Summary

 Software Development Life Cycle (SDLC)

 Software Maintenance Life Cycle (SMLC)


 Software Development Models
 Testing in Development Models

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 40


Thank you

09/26/2023 09e-BM/DT/FSOFT - ©FPT SOFTWARE – Fresher Academy - Internal Use 41

You might also like