Software Engineering Competence Center
QUALITY AS A BUSINESS RESCUER!Overview on Testing Approaches
Yasser GhanimQuality Expert
October 2017
November 6, 2017© Copyright Software Engineering Competence Center 2017
© Copyright Software Engineering Competence Center 2017
Yasser Ghanim
Authorized CMMI Instructor, TOGAF Certified, COBIT,
ISTQB TM, ITIL, Agile
Software Quality Expert, SECC
20+ years of SW/IT experience
Software Developer, System Architect, Business
Analyst, IT Manager, Quality Manager
Worked for a number of giant Gulf enterprises and
managed SW/IT projects in many countries.
Process Architect and PI Consultant and Instructor for
over 10 years
Author of several ISTQB exams for the ESTB.
© Copyright Software Engineering Competence Center 2017
USA
Canada
Syria Kuwait,
UAE,
KSA
Egypt
17,500+ Trainees
300+ Process
Improvement Consultations
75 CMMI Appraised
Companies Worldwide
1050+ Served Companies
100+ Knowledge
Assets
20+ Qualified Experts 625+ Assessed Companies
3,400+ Certified since 2011
THE SOFTWARE ENGINEERING COMPETENCE CENTER
China
© Copyright Software Engineering Competence Center 2017
TESTING SERVICES
282
472501
2014 2015 2016
Certified Testers Since 2013:50+ Training rounds
700+ Trainees
2500+ Certified Professionals
ISTQB Tracks:FoundationAgile ExtensionTest ManagerTest AnalystSecurity Tester
© Copyright Software Engineering Competence Center 2017
SECC Clients – Government Agencies
R&D Department
© Copyright Software Engineering Competence Center 2017
.
SECC Clients – Financial Institutes
© Copyright Software Engineering Competence Center 2017
SECC Clients – IT Companies
© Copyright Software Engineering Competence Center 2017
OUR GOAL
Help companies remain COMPETITVE
Help companies remain COMPETITVE
Grow the INDUSTRYGrow the INDUSTRY
Improve theECONOMY
Improve theECONOMY
© Copyright Software Engineering Competence Center 2017
© Copyright Software Engineering Competence Center 2017
CEO’S JOB?
The ultimate goal of a CEO is to increase shareholders equity and maintain a sustainable return on the investments.
Means make the business profitable!
Management cares about Profit, Revenue, and Market Share
© Copyright Software Engineering Competence Center 2017
BUSINESS PRESSURESSUSTAINING PROFITABILITY!
Money
Time
Price
Profit
Recession
Inflation
Demand
Operational Expenditure
Total Revenue
Net Profit
OPEX CAPEX
TCO
Where does
Quality fit in
this picture?
© Copyright Software Engineering Competence Center 2017
QUALITY VS. BUSINESS
Effort (MD)
Cost (USD)
20%
40%
70%
Development First
Release
30%
Go-Live
???
Planned
Delivery
TIME
Rework (50%)
BusinessPressures
Co
mp
etit
ion
Profit Margin!
Risk Margin!
Quality Saving
Budget
COST
© Copyright Software Engineering Competence Center 2017
WASTE IN LEAN MANAGEMENT!
© Copyright Software Engineering Competence Center 2017
QUALITY AS A BUZZWORD!
What is Quality?
Quality Models?
Quality Approach?
Cost of Poor
Quality?
© Copyright Software Engineering Competence Center 2017
WHAT’S QUALITY?
Customer
Developer
© Copyright Software Engineering Competence Center 2017
WHAT IS QUALITY?CUSTOMER’S VIEW!
Van
SUV
Sedan
PickupFitness forIntended Use
What is a Quality Car?Who is the customer?
© Copyright Software Engineering Competence Center 2017
WHAT IS QUALITY?DEVELOPER’S VIEW!
Body Specs
Chassis Design Engine Design
Meeting Product Specifications/
Standards
© Copyright Software Engineering Competence Center 2017
WHAT IS QUALITY?TWO PERSPECTIVES …
Validation Verification
Are we building the RIGHT PRODUCT?
Are we BUILDINGthe product RIGHT?
Development Lifecycle!
© Copyright Software Engineering Competence Center 2017
COST OF POOR QUALITY (COPQ)!
COPQ Equation (Direct Costs)
COPQ = External failures + Internal failures + Appraisal + Preventive action
Complaint Handling
Requirement Changes
Design Changes
Bug Fixing
Software Batches
Field Service Labor
Complaint Handling
Requirement Changes
Design Changes
Bug Fixing
Software Batches
Field Service Labor
Vague Requirements
Improper Design
Wrong Implementation
Poor Test Suites
Review defects
Testing defects
UAT defects
Vague Requirements
Improper Design
Wrong Implementation
Poor Test Suites
Review defects
Testing defects
UAT defects
Review Specs and
Designs
Code Inspection
Product Inspection
Quality Records
Audits
Review Specs and
Designs
Code Inspection
Product Inspection
Quality Records
Audits
Req. Elicitation
Techniques
Design Modeling
Code Reuse
Improvement
Programs
Req. Elicitation
Techniques
Design Modeling
Code Reuse
Improvement
Programs
InvestmentSaving
© Copyright Software Engineering Competence Center 2017
COST OF POOR QUALITYINTERNAL PERSPECTIVE – COST OF DEFECT
* Source: SQS, 2009, Empirical Data from 5,000 projects,
© Copyright Software Engineering Competence Center 2017
ANSWERING THE BIG QUESTION!
What is Quality?
Cost of poor
Quality?
Quality Models?
Quality Approach?
© Copyright Software Engineering Competence Center 2017
THE WHOLESTIC APPROACH TO QUALITY
BusinessAnalysis
System Analysis
System Arch. & Design
Unit Design Coding
Dynamic Test Execution
(Test Levels)
Project Management / Test Management
Configuration Management
Process Improvement
RequirementsManagement
Measurement & Analysis
Measurement & Analysis
Process & Product Audits
Test Preparation
Methods and
Techniques
Static Testing(Reviews)
QunatitativeManagement
Little Quality Management
Quality Control
Verification & Validation
Quality Assurance
Quality Management
© Copyright Software Engineering Competence Center 2017
COVERING THE FULL SCOPE …
TPIG
SPIG
CMMI
Agile
Six Sigma
Architecture
Reuse
ISTQB CMMI Scrum Six Sigma REUSE TSP/PSP
© Copyright Software Engineering Competence Center 2017
THE V-MODELVERIFICATION & VALIDATION
© Copyright Software Engineering Competence Center 2017
THE ADAPTED V-MODELTHE TPIG IN SCRUM
© Copyright Software Engineering Competence Center 2017
ANSWERING THE BIG QUESTION!
What is Quality?
Cost of poor
Quality?
Quality Models?
Quality Approach?
© Copyright Software Engineering Competence Center 2017
QUALITY APPROACHES
Test Automation
Continuous Integration
Risk-Based Testing
TFD/TDD
BBT
Static Analysis
WBT/Code Coverage
© Copyright Software Engineering Competence Center 2017
COST OF POOR QUALITYEXTERNAL PERSPECTIVE – BUSINESS IMPACT (EXAMPLE)
© Copyright Software Engineering Competence Center 2017
QUALITY VS. BUSINESSEXTERNAL PERSPECTIVE!
` `
Critical Risk
High Risk
Medium Risk
Low Risk
Very Low
Postponed/
Reported
Risk-Based Testing
40%
30%
25% 5%
© Copyright Software Engineering Competence Center 2017
Testing in Danish!
We develop a portal for a customer in Denmark.
The portal is multi-lingual (English, Danish, Arabic)
Our test data is in English and Arabic.
DanishEnglish
Indtast studerendesalder
Enter student age
Alder er ovennævntegrænse
Age is above limit
Jeg studerer naturvidenskab og matematik
I study science and math
Testers need new test data
Analyst must analyze the length of the Danish sentences.
Developers need to consider maximum sentence length in database and screen design.
Testers will test in three different languages instead of two.
The team need to consider the additional tasks while estimating and planning their work.
Danish sentences are longer and may
get truncated!
Can anyone around speak Danish?!
© Copyright Software Engineering Competence Center 2017
TEST CONDITIONSPAYMENT FORM Do we have any
condition related to currency?
Tester Analyst
Developer
Mill?
Cent?
TEST AUTOMATIONSELENIUM FIREFOX EXTENSION
32
STATIC ANALYSIS & CODE COVERAGE TOOLS
33
Analysis Tools: .Net: FxCop Java: JavaNCSS, PMD, CheckStyle C++: SourceMonitor PHP: PHP_Depend, PHP_CodeSniffer,
phpmd, phpcpd Sonar
Coverage Tools: .Net: NCover and Visual Studio 2010 Java: EMMA or Clover
© Copyright Software Engineering Competence Center 2017
TEST-DRIVEN DEVELOPMENT
An XP Approach where development is guided by automated unit tests.
Test-First Development is a similar approach based on manual test cases
DEVOPS & CONTINUOUS INTEGRATION
35
© Copyright Software Engineering Competence Center 2017
TESTINGIN AGILE
With collaborative development, verification becomes more inherent in
team activities.
© Copyright Software Engineering Competence Center 2017
SETTING THE RIGHT ATTITUDE …EVALUATION AND MEASUREMENT
© Copyright Software Engineering Competence Center 2017
TPIG IMPLEMENTATION RESULTS
Defect Density (DD)
Reduced Cost of Quality (COQ)
Defect Removal Rate (DRR)
Testing Schedule Variance (SV)
Testing Cost Variance (CV)
DDR Improvement: 79% -> 88%
Failure Cost Saving: 7.4%
SV Reduction: 26% -> 12%
CV Reduction: 63% -> 29%Other Benefits:
• Management Benefits
• Analysis Benefits
• Engineering Benefits
© Copyright Software Engineering Competence Center 2017