Stqa
Stqa
Stqa
For Beginners
Introduction & Fundamentals
What is Quality?
What is Software Testing?
Why testing is necessary?
Who does the testing?
What has to be tested?
When is testing done?
How often to test?
What is cost of Quality?
What are Testing Standards?
What is Quality?
Quality is “fitness for use” - (Joseph
Juran)
Quality is “conformance to
requirements” - (Philip B. Crosby)
Operability
Observe-ability
Controllability
Decomposability
Stability
Understandability
Software Development Process Cycle
Plan
Action Do
Check
• PLAN (P): Device a plan. Define your objective and
determine the strategy and supporting methods
required to achieve that objective.
Prevention Cost
Amount spent before the product is actually
built. Cost incurred on establishing methods
and procedures, training workers, acquiring
tools and planning for quality.
Appraisal cost
Amount spent after the product is built but
before it is shipped to the user. Cost of
inspection, testing, and reviews.
Failure Cost
Amount spent to repair failures.
Cost associated with defective products
that have been delivered to the user or
moved into production, costs involve
repairing products to make them fit as per
requirement.
Quality Assurance Quality Control
Initial
Level 1
Disciplined Process
Repeatable
Level 2
Standard Consistence
Process
Defined
Level 3
Predictable Process
Managed
Level 4
Continuous
Improvement Process
Optimizing
Level 5
SOFTWARE DEVELOPMENT LIFE
CYCLE (SDLC)
Phases of SDLC
Software
User Requirement
Requirement
Specification (USR)
Specification (SRS)
Design
Testing
The testing process involves development of
a test plan, executing the plan and
documenting the test results.
Implementation
Installation of the product in its operational
environment.
Maintenance
After the software is released and the client starts
using the software, maintenance phase is started.
WATERFALL MODEL
V-PROCESS MODEL
SPIRAL MODEL
PROTOTYPE MODEL
INCREMENTAL MODEL
EVOLUTIONARY DEVELOPMENT
MODEL
Project Management
Project Staffing
Project Planning
Project Scheduling
Project Staffing
• Scheduling problems
RISK MANAGEMENT
Risk identification
Risk Analysis
Risk Planning
Risk Monitoring
Risk Risk Description
type
Staff Project Experienced staff will leave the
turnover project before it is finished.
Management Project There will be a change of
change organizational management with
different priorities.
Hardware Project Hardware which is essential for the
unavailability project will not be delivered on
schedule.
Requirements Project & There will be a larger number of
change Product changes to the requirements than
anticipated.
Risk Risk Description
type
Specification Project & Specifications of essential
delays Product interfaces are not available on
schedule.
Size under Project & The size of the system has been
estimate Product under estimated.
CASE tool under Product CASE tools which support the
performance project do not perform as
anticipated.
Technology Business The underlying technology on
change which the system is built is
superseded by new technology.
Product Business A competitive product is marketed
competition before the system is completed.
Configuration Management
PC version Mainframe
version
VMS version
Test Execution
Test Closure
Test Process Analysis
Requirements study
• Component Identification
• Test Specification Design
• Test Specification Review
Test Execution
• Code Review
• Test execution and evaluation
• Performance and simulation
Test Closure
• Unit testing
• Integration testing
• System testing
• Acceptance testing
Unit testing
Tools Debug
Re-structure
Code Analyzers
Path/statement coverage tools
Education Testing Methodology
Effective use of tools
• Incremental integration testing
• ‘Parts’ can be
• code modules
• individual applications
• client/server applications on a network.
Types of Integration Testing
Methods Problem
/ Configuration
Management
Incremental testing
Thread testing
• Black box testing
• No knowledge of internal design or code
required.
• Tests are based on requirements and
functionality
• White box testing
• Knowledge of the internal program design and code
required.
• Tests are based on coverage of code
statements,branches,paths,conditions.
BLACK BOX - TESTING TECHNIQUE
Regression testing
Load testing
Comparison testing
• Comparing SW strengths and weakness to competing
products.
Alpha testing
•Testing done when development is nearing
completion; minor design changes may still
be made as a result of such testing.
Beta-testing
•Testing when development and testing are
essentially completed and final bugs and
problems need to be found before release.
Mutation testing
Eg. A + B
If (A = 3) Then
B=X+Y
End-If
While (A > 0) Do
Read (X)
A=A-1
End-While-Do
Decision Coverage - Example
If A < 10 or A > 20 Then
B=X+Y
Unit Testing X
Integration X
X X
Testing
System Testing X
Acceptance
X
Testing
Major Testing Types
• Test Execution
• Test Closure
• Test Process Analysis
Requirements study
• Component Identification
• Test Specification Design
• Test Specification Review
Test Execution
• Code Review
• Test execution and evaluation
• Performance and simulation
Test Closure
Test Approach
•Details on how the testing is to be performed.
•Any specific strategy is to be followed for
testing (including configuration management).
Entry Criteria
Various steps to be performed before the start of a test i.e.
Pre-requisites.
E.g.
• Timely environment set up
• Starting the web server/app server
• Successful implementation of the latest build etc.
Resources
List of the people involved in the project and their
designation etc.
Tasks/Responsibilities
Tasks to be performed and responsibilities
assigned to the various team members.
Exit Criteria
Contains tasks like
•Bringing down the system / server
•Restoring system to pre-test environment
•Database refresh etc.
Schedule / Milestones
Deals with the final delivery date and the
various milestones dates.
Hardware / Software Requirements
•Details of PC’s / servers required to install the
application or perform the testing
•Specific software to get the application
running or to connect to the database etc.
Deliverables
•Various deliverables due to the client at various
points of time i.e. Daily / weekly / start of the
project end of the project etc.
•These include test plans, test procedures, test
metric, status reports, test scripts etc.
References
• Procedures
• Templates (Client specific or otherwise)
• Standards / Guidelines e.g. Qview
• Project related documents (RSD, ADD,
FSD etc).
Annexure
• Links to documents which have been / will be used in the
course of testing
Eg. Templates used for reports, test cases etc.
• Referenced documents can also be attached here.
Sign-off
• Mutual agreement between the client and the QA
Team.
• Both leads/managers signing their agreement on the Test
Plan.
Good Test Plans
What is Defect?
• Defect ID number
• Descriptive defect name and type
• Source of defect – test case or other source
• Defect severity
• Defect Priority
• Defect status (e.g. New, open, fixed, closed, reopen,
reject)
7. Date and time tracking for either the most recent status
change, or for each change in the status.
8. Detailed description, including the steps necessary to
reproduce the defect.
9. Component or program where defect was found
10. Screen prints, logs, etc. that will aid the developer in
resolution process.
11. Stage of origination.
12. Person assigned to research and/or corrects the defect.
Severity Vs Priority
Severity
Factor that shows how bad the defect is and the
impact it has on the product
Priority
Based upon input from users regarding
which defects are most important to them,
and be fixed first.
Severity Levels
• Critical
• Major / High
• Average / Medium
• Minor / low
• Cosmetic defects
Severity Level – Critical
• Dead Links.
Severity Level – Major / High
• Reboot the system.
• The wrong field being updated.
• An updated operation that fails to complete.
• Performance Issues (If not specified by Client).
• Mandatory Validations for Mandatory Fields.
• Functionality incorrectly implemented (Minor
Deviation from Requirements).
• Images, Graphics missing which hinders functionality.
• Front End / Home Page Alignment issues.
• Severity Level – Average / Medium
Incorrect/missing hot key operation.
Severity Level – Minor / Low
•Fully Tested
•Tested with Open defects
•Not Tested
Functions Working Timeline
Report shows
• Possible shortfalls in testing
• Number of severity-1 defects
• Priority of defects
• Recurring defects
• Tests behind schedule
….and other information that present an accurate testing
picture
METRICS
2 Types
Product metrics
Process metrics
Process Metrics
• methods
• techniques
• tools
Product Metrics
The organization
•At the time of crises, projects usually stop using all planned procedures
and revert to coding and testing.
CMM – Level 2 – Repeatable level
Effective management process having established
which can be
• Practiced
• Documented
• Enforced
• Trained
• Measured
• Improvised
CMM – Level 3 – Defined level
Emphasis laid on
•Process improvement
•Tools to identify weaknesses existing in their
processes
•Make timely corrections
Cost of Poor Quality
1. Commitment
2. COQ Team
3. Gather data (COQ assessment)
4. Pareto analysis
5. Determine cost drivers
6. Process Improvement Teams Generally
Missing
7. Monitor and measure
8. Go back to step 3
“Wished I had understood that Cost of Quality stuff better”
TESTING STANDARDS
External Standards
Internal Standards
and