Purpose: "Understand standard life cycles and QA in
development process models"
Part 1: SDLC Model
Flowchart
1. Characteristics of stages
A stage has its own objectives and work products
generated by internal processes of the stage.
A stage may have one or more iterations depending
on the complexity of the stage.
Stages may be combined to one depending on the
complexity of project.
2. Quality Gate
To be performed by QA to determine:
If the objectives of the stage have been met.
If the mandatory work products have satisfied the
requirements.
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
2. Outputs
User Requirement Document
Proposal
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
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
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
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
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
Part2: SMLC Model
Flowchart
Initiation State
1. Overview
The Initiation stage is the start of the SLC.
The main activities are:
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
2. Outputs
Work order
Project plan
Customer Requirement
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)
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)
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
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.
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. Work products
Software package
Project documents
Release note
Project report
Termination stage
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. Work products
Customer Satisfaction Survey
Project Report
Acceptance Note
Part 3: Development Process Models
Process models:
Waterfall development process
Iterative development process
Spiral development process
Agile development processes
Mixed/synthesized/customized processes
QA important in all processes
Waterfall development process
Iterative development process
Spiral development process
Agile development process
Emphasize face-to-face communication over written
documents
Release = Sprint
Short tasks
Write test scripts before code
Part 4: QA in Development Process
QA in Waterfall model
QA in other software processes
Iterative: QA in iterations/increments; IT
Spiral: QA and risk management
Agile: testing and inspection
Mixed/synthesized: case specific
Maintenance process:
Focus on defect handling
Defect containment activities play an important role in post-release
product operations and maintenance support
Data for future QA activities improvement
=> QA scattered throughout all processes.