GlobalTesting Retreat #ATAGTR2023
ZERO D EF ECT S – M Y T H OR REA L I T Y
Dinesh Boravke
GlobalTesting Retreat #ATAGTR2023
A G E N DA
GlobalTesting Retreat #ATAGTR2023
UNDERLYING PRINCIPLES
Principle 1: Requirements via Example
© 2023 Cognizant
6
Examples Test
Requirements
elaborates
becomes
verify
Requirements Test
Auto
• Executable Requirements
• Boolean Outcome
Dev Unit
ST /
SIT
UAT Prod
Req.
Work – Left to Right (forward)
Feedback – Right to Left (reverse)
Principle 2: FLOW of WORK and FEEDBACK
TDD
ATDD
© 2023 Cognizant
7
It is rare to find control without feedback, since feedback gives much better control and predictability
Physical Examples
© 2023 Cognizant
8
Principle 3: How is a defect born?
© 2023 Cognizant
9
Process Error / Mistake Defect
Prevent Detect
Principle 3: Fundamentals of a Defect (Cont.)
Judgement Inspection* Source Inspection*
Defn: Check finished product and eliminate defective
products
Defn:When an error is discovered, it is immediately
actioned at source, such that the defect does not
manifest itself
After product is produced Before product is produced
Catch / Identify defects Prevent defects
Very time consuming Superfast
Other than creator checks (someone else; 2nd person) Creator checks (1st person)
Quality is someone else’s responsibility Quality is MY responsibility
Quality Control Quality Assurance
Relatively easy to execute Mentally taxing to find a solution (abstract)
* Zero Quality Control - Shigeo Shingo - 1986
- Did NOT understand what was to be created this is extra text to
{lack of understanding / knowledge}
- Did NOT self-check, what was created this is extra text toto be
{lack of self-checking}
What is the source of the Error / Mistake
© 2023 Cognizant
11
GlobalTesting Retreat #ATAGTR2023
BUILD QUALITY IN
© 2 0 2 3 C O G N I Z A N T
Don't depend on mass inspection to achieve quality.
Improve the process and build quality into the product in the first place.
W Edward Deming
SDLC Phases
© 2023 Cognizant
13
Analysis Build / Development
Feedback / Checks /Verify Feedback / Checks /Verify
SDLC Phases
© 2023 Cognizant
14
Analysis
Feedback / Checks /Verify
Current way a feature is built
15
Handover
Handover
Dev
Test
Build
Code
Build
Scenario’s
Deploy
Test
Cust / BA / Arch
Focus: Resource Efficiency
© 2023 Cognizant
Build Quality-In (rather than hammer quality-in OR by inspection)
© 2023 Cognizant
16
Build
Scenario’s
Discussion
Cust + Dev + Test
Build feature
Deploy
Test
Test
Dev
Understand
Requirements
Entire Team
{Customer, BA, Dev,
Arch, Test…}
Analysis
Develop
Focus: Flow Efficiency
UserType Country of
Residence
Order
Value
Used Free
Delivery offers
Offer Free
Delivery
Send Gift
Voucher
VIP US 50 No Yes No
VIP US 30 Yes Yes No
VIP US 30 No
VIP UK 50 No No Yes
Regular US 50 No No
Regular UK 55 Yes Yes
Sample Requirements
© 2023 Cognizant
17
No No
No
Yes
High pressure (Before ATDD)
© 2023 Cognizant
18
Backlog Refinement Current Sprint
Story pushed for development (& testing) but still
have open questions
Clarification Clarification
Clarification
Release pressure (After ATDD)
© 2023 Cognizant
19
Backlog Refinement Current Sprint
Discuss in a workshop Develop in Concurrence Deliver for Acceptance
Item Done
Clarify requirements by
writing test scenarios
Entire Team
{Customer, BA, Dev, Arch, Test}
Defn of Ready
• TC Ready
• Dev has read and
understood the TC
• …
Only those Story are pulled for development (&
testing) which have NO clarifications pending
Principle 4: Arrest Waste generated due to Hand-offs [K-RAF]
© 2023 Cognizant
20
Knowledge
(How to do)
Responsibility
(What to do)
Action
(Doing the work)
Feedback
(Learning from results)
If s/he understands how is to be done, you don’t need toTELL her/him what to do
Acceptance Test Driven Development
Discuss stories of the Sprint to
develop a common
understanding
Creates a set of acceptance tests,
involving business stakeholders to
clarify points; Distill / Remove
duplicate TC
Implements the stories,
Develop & test
Provides demo to the business
stake holders by indicating tests
ran
Discuss Distill Develop Demo
Steps followed in ATDD
© 2023 Cognizant
21
SDLC Phases
© 2023 Cognizant
22
Build / Development
Feedback / Checks /Verify
Test Driven Development
© 2023 Cognizant
23
Think, add a test
Red
Green
Refactor
Differentiate them!
© 2023 Cognizant
26
ATDD BDD TDD
Name • Acceptance Test Driven
Development
• Specification by
Example
Behaviour Driven
Development
Test Driven Development
Focus does the solution do what
it is required to do
do the features and the data
behave like they are
required to do?
does the code do what it is
required to do
Involvement Entire Team – Cust, PO,
Arch, Dev (&Test)
BA, Dev (&Test) Only Dev (no Test)
Validate / Check Validate code
(for someone else)
Validate code
(for someone else)
Check Code
(for self)
SDLC Phases
© 2023 Cognizant
28
Analysis Build / Development
Feedback / Checks /Verify
ATDD
Feedback / Checks /Verify
TDD
Principle 2: Flow of work and feedback (re-visit)
Dev Unit
ST /
SIT
UAT Prod
Req
Work – Left to Right
Feedback – Right to Left
TDD
ATDD
TDD
ATDD
© 2023 Cognizant
29
Resource efficiency vs Flow efficiency
© 2023 Cognizant
30
Resource
Flow Unit Flow Unit Flow Unit Flow Unit
Resource Efficiency
[Focus on one single resource]
Maximise Value by
adding time
Flow Unit
Resource Resource Resource Resource
Flow Efficiency
[Focus on ‘one piece flow’]
Maximise Value by
receiving time
Source - This is Lean – Niklas Modig and Pär Åhlström
GlobalTesting Retreat #ATAGTR2023
DOES T HI S R EA L LY WOR K?
F I R S T- HA ND EXPER I ENCE
© 2 0 2 3 C O G N I Z A N T
Defects across the entire year
© 2023 Cognizant
32
0
10
20
30
40
50
60
70
80
90
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Total Defects (P1+P2)
Total Defects Linear (Total Defects)
Start End Working Days Total P1+P2 Defects found
per day
1-Jan-22 31-Mar-22 64 233 ~4
1-Apr-22 31-Dec-22 196 230 ~1
75%
Defects
Cost
Avoidance
of £2.1M
~25%
Throughput
P1+P2 defects uncovered in Nebula Team
© 2023 Cognizant
33
4
7
1 1
5
6
7
1 1 1
0
1
2
3
4
5
6
7
8
Jan Feb Mar Apr May Jun Jul
Team Defects
P1 P2
Over those 6 months, all the 8 team members changed; but we still maintained Zero defects!
• Developers were super happy, since they could code it right the first time
• Less Defects, higher productivity (Delivering value, not managing waste!)
• Developers would guide the Testers, which regression tests to select.What!!
• Great TRUST between Dev-Test (rather than bad blood)
• Clean code (no changes during defect fix)
• No UAT / Business surprises
• No defect queues
• Reduction in Tech-Debt
Feedback from the team members
© 2023 Cognizant
34
• Lean Product and Process Development – 2nd Edition by Allen Ward (2014) (Link)
• Zero Quality Control: Source Inspection and Poka-Yoke by Shigeo Shingo
• ‘Specification by Example’ - Gojko Adzic (Link)
• Test Driven Development Wiki
• Talk to Dinesh Boravke J
Curious for more?
© 2023 Cognizant
35
THA NK YOU
Dinesh Boravke
GlobalTesting Retreat #ATAGTR2023
Dinesh.Boravke@Cognizant.com

#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #ATAGTR2023.

  • 1.
    GlobalTesting Retreat #ATAGTR2023 ZEROD EF ECT S – M Y T H OR REA L I T Y Dinesh Boravke GlobalTesting Retreat #ATAGTR2023
  • 2.
    A G EN DA
  • 3.
  • 4.
    Principle 1: Requirementsvia Example © 2023 Cognizant 6 Examples Test Requirements elaborates becomes verify Requirements Test Auto • Executable Requirements • Boolean Outcome
  • 5.
    Dev Unit ST / SIT UATProd Req. Work – Left to Right (forward) Feedback – Right to Left (reverse) Principle 2: FLOW of WORK and FEEDBACK TDD ATDD © 2023 Cognizant 7 It is rare to find control without feedback, since feedback gives much better control and predictability
  • 6.
  • 7.
    Principle 3: Howis a defect born? © 2023 Cognizant 9 Process Error / Mistake Defect Prevent Detect
  • 8.
    Principle 3: Fundamentalsof a Defect (Cont.) Judgement Inspection* Source Inspection* Defn: Check finished product and eliminate defective products Defn:When an error is discovered, it is immediately actioned at source, such that the defect does not manifest itself After product is produced Before product is produced Catch / Identify defects Prevent defects Very time consuming Superfast Other than creator checks (someone else; 2nd person) Creator checks (1st person) Quality is someone else’s responsibility Quality is MY responsibility Quality Control Quality Assurance Relatively easy to execute Mentally taxing to find a solution (abstract) * Zero Quality Control - Shigeo Shingo - 1986
  • 9.
    - Did NOTunderstand what was to be created this is extra text to {lack of understanding / knowledge} - Did NOT self-check, what was created this is extra text toto be {lack of self-checking} What is the source of the Error / Mistake © 2023 Cognizant 11
  • 10.
    GlobalTesting Retreat #ATAGTR2023 BUILDQUALITY IN © 2 0 2 3 C O G N I Z A N T Don't depend on mass inspection to achieve quality. Improve the process and build quality into the product in the first place. W Edward Deming
  • 11.
    SDLC Phases © 2023Cognizant 13 Analysis Build / Development Feedback / Checks /Verify Feedback / Checks /Verify
  • 12.
    SDLC Phases © 2023Cognizant 14 Analysis Feedback / Checks /Verify
  • 13.
    Current way afeature is built 15 Handover Handover Dev Test Build Code Build Scenario’s Deploy Test Cust / BA / Arch Focus: Resource Efficiency © 2023 Cognizant
  • 14.
    Build Quality-In (ratherthan hammer quality-in OR by inspection) © 2023 Cognizant 16 Build Scenario’s Discussion Cust + Dev + Test Build feature Deploy Test Test Dev Understand Requirements Entire Team {Customer, BA, Dev, Arch, Test…} Analysis Develop Focus: Flow Efficiency
  • 15.
    UserType Country of Residence Order Value UsedFree Delivery offers Offer Free Delivery Send Gift Voucher VIP US 50 No Yes No VIP US 30 Yes Yes No VIP US 30 No VIP UK 50 No No Yes Regular US 50 No No Regular UK 55 Yes Yes Sample Requirements © 2023 Cognizant 17 No No No Yes
  • 16.
    High pressure (BeforeATDD) © 2023 Cognizant 18 Backlog Refinement Current Sprint Story pushed for development (& testing) but still have open questions Clarification Clarification Clarification
  • 17.
    Release pressure (AfterATDD) © 2023 Cognizant 19 Backlog Refinement Current Sprint Discuss in a workshop Develop in Concurrence Deliver for Acceptance Item Done Clarify requirements by writing test scenarios Entire Team {Customer, BA, Dev, Arch, Test} Defn of Ready • TC Ready • Dev has read and understood the TC • … Only those Story are pulled for development (& testing) which have NO clarifications pending
  • 18.
    Principle 4: ArrestWaste generated due to Hand-offs [K-RAF] © 2023 Cognizant 20 Knowledge (How to do) Responsibility (What to do) Action (Doing the work) Feedback (Learning from results) If s/he understands how is to be done, you don’t need toTELL her/him what to do
  • 19.
    Acceptance Test DrivenDevelopment Discuss stories of the Sprint to develop a common understanding Creates a set of acceptance tests, involving business stakeholders to clarify points; Distill / Remove duplicate TC Implements the stories, Develop & test Provides demo to the business stake holders by indicating tests ran Discuss Distill Develop Demo Steps followed in ATDD © 2023 Cognizant 21
  • 20.
    SDLC Phases © 2023Cognizant 22 Build / Development Feedback / Checks /Verify
  • 21.
    Test Driven Development ©2023 Cognizant 23 Think, add a test Red Green Refactor
  • 22.
    Differentiate them! © 2023Cognizant 26 ATDD BDD TDD Name • Acceptance Test Driven Development • Specification by Example Behaviour Driven Development Test Driven Development Focus does the solution do what it is required to do do the features and the data behave like they are required to do? does the code do what it is required to do Involvement Entire Team – Cust, PO, Arch, Dev (&Test) BA, Dev (&Test) Only Dev (no Test) Validate / Check Validate code (for someone else) Validate code (for someone else) Check Code (for self)
  • 23.
    SDLC Phases © 2023Cognizant 28 Analysis Build / Development Feedback / Checks /Verify ATDD Feedback / Checks /Verify TDD
  • 24.
    Principle 2: Flowof work and feedback (re-visit) Dev Unit ST / SIT UAT Prod Req Work – Left to Right Feedback – Right to Left TDD ATDD TDD ATDD © 2023 Cognizant 29
  • 25.
    Resource efficiency vsFlow efficiency © 2023 Cognizant 30 Resource Flow Unit Flow Unit Flow Unit Flow Unit Resource Efficiency [Focus on one single resource] Maximise Value by adding time Flow Unit Resource Resource Resource Resource Flow Efficiency [Focus on ‘one piece flow’] Maximise Value by receiving time Source - This is Lean – Niklas Modig and Pär Åhlström
  • 26.
    GlobalTesting Retreat #ATAGTR2023 DOEST HI S R EA L LY WOR K? F I R S T- HA ND EXPER I ENCE © 2 0 2 3 C O G N I Z A N T
  • 27.
    Defects across theentire year © 2023 Cognizant 32 0 10 20 30 40 50 60 70 80 90 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Total Defects (P1+P2) Total Defects Linear (Total Defects) Start End Working Days Total P1+P2 Defects found per day 1-Jan-22 31-Mar-22 64 233 ~4 1-Apr-22 31-Dec-22 196 230 ~1 75% Defects Cost Avoidance of £2.1M ~25% Throughput
  • 28.
    P1+P2 defects uncoveredin Nebula Team © 2023 Cognizant 33 4 7 1 1 5 6 7 1 1 1 0 1 2 3 4 5 6 7 8 Jan Feb Mar Apr May Jun Jul Team Defects P1 P2 Over those 6 months, all the 8 team members changed; but we still maintained Zero defects!
  • 29.
    • Developers weresuper happy, since they could code it right the first time • Less Defects, higher productivity (Delivering value, not managing waste!) • Developers would guide the Testers, which regression tests to select.What!! • Great TRUST between Dev-Test (rather than bad blood) • Clean code (no changes during defect fix) • No UAT / Business surprises • No defect queues • Reduction in Tech-Debt Feedback from the team members © 2023 Cognizant 34
  • 30.
    • Lean Productand Process Development – 2nd Edition by Allen Ward (2014) (Link) • Zero Quality Control: Source Inspection and Poka-Yoke by Shigeo Shingo • ‘Specification by Example’ - Gojko Adzic (Link) • Test Driven Development Wiki • Talk to Dinesh Boravke J Curious for more? © 2023 Cognizant 35
  • 31.
    THA NK YOU DineshBoravke GlobalTesting Retreat #ATAGTR2023 Dinesh.Boravke@Cognizant.com