SlideShare a Scribd company logo
Zero	Bugs:	State	of	the	Practice
Stephen	Vance
Agile	Alliance	Technical	Conference
April	21,	2017
Zero	Bugs?
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 2
“Zero”	Bugs
(For	some	definition	of	“zero”)
Don’t	forget
We	are	humans
Humans	make	mistakes
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 3
Zero	“Bugs”!
• Why?	vs.	What?
– Weinberg:	“Faults”	and	“Failures”
– There	is	rarely	only	one	“why”	even	at	the	root
– “Why”	drives	improvement
• When?
– Does	it	meet	expectations,	intentions,	and	needs?
– Prior	to	release,	it’s	rework
– After,	it’s	unrealized	value
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 4
Frame	of	Reference
• Lean
– Focus	on	value
– Seek	perfection
– Build	feedback	loops
• Key	waste	types	for	
software	quality
– Inventory
– Waiting
– Over-processing
– Over-production
– Defects
https://www.lean.org/WhatsLean/Principles.cfm
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 5
Build	Quality	In
Any	approach	that	catches	issues	after	they	
occur	has	a	lighter	weight	alternative	that	
prevents	issues	from	happening
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 6
Culture
Blameless
Everyone	accountable
Collaborative
Learning
Intentional
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 7
Characteristics
Automated
Repeatable
Predictable
Fast
Reliable
Emergent
Manual
Ad	Hoc
Variable
Slow
Error-prone
Planned
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 8
OVER
What’s	Typical?
(Highly	Subjective	and	Anecdotal)
• Coding	Practices
– Limited	to	moderate	use	of	pair	
programming	with	little	mob	
programming
– DSLs	if	they	are	supplied
– Limited	understanding	of	design	
patterns
– Limited	understanding	of	refactoring
– OO	as	default	with	some	functional	
constructs
– Dynamic	or	strictly	typed	languages
– Mostly	test	early	with	some	TDD	or	BDD
• Architecture
– Little	to	no	architecture	or	big	up-front	
architecture
• Tools
– Low	to	moderate	code	coverage
– Moderate	use	of	static	analysis
– Code	generation	if	supplied
• Testing
– Moderate	to	high	manual	testing
– Increasing	dev-test	collaboration	but	
still	limited
– Light	to	moderate	use	of	exploratory	
testing
– No	to	little	use	of	advanced	testing	
techniques	like	QuickCheck,	fuzz,	
mutation
• Build	and	Deploy
– CI	with	some	CD
– Light	to	moderate	application	
monitoring
– Light	to	moderate	DevOps and	
infrastructure	as	code
– Moderate	use	of	automated	rolling	
deployment,	heavily	tied	to	use	of	cloud	
at	scale
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 9
The	Lean	Quality	Quotient™
(Not	actually	trademarked)
• The	degree	to	which	a	practice	is	used	in	a	
manner	that	is
– Emergent
– Iterative
– Adaptive
– Informed
– Pre-emptive
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 10
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 11
Architecture
Architecture
Pair	Programming
Mob	Programming
DSLs
Design	Patterns
Refactoring
OO
Dynamically	Typed
Functional
Strictly	Typed
Test	Early
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Lean	Quality	Quotient
Prevalence
Coding	Practices
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 12
Code	Coverage
Static	Analysis
Code	Generation
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Lean	Quality	Quotient
Prevalence
Tools
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 13
Manual	Testing
Dev-Test	
Collaboration
Exploratory	Testing
Advanced	Testing
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Lean	Quality	Quotient
Prevalence
Testing
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 14
Continuous	
Integration
Continuous	Delivery
Application	
Monitoring
DevOps
Automated	
Deployment
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Lean	Quality	Quotient
Prevalence
Build	and	Deploy
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 15
Architecture
Architecture
Pair	Programming
Mob	Programming
DSLs
Design	Patterns
Refactoring
OO
Dynamically	Typed
Functional
Strictly	Typed
Test	Early
Code	Coverage
Static	Analysis
Code	Generation
Manual	Testing
Dev-Test	Collaboration
Exploratory	Testing
Advanced	Testing
Continuous	Integration
Continuous	Delivery
Application	
Monitoring
DevOps
Automated	
Deployment
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Lean	Quality	Quotient
Prevalence
Composite
So	What	Next?
• Do	more	testing
• Figure	out	how	to	kill	testing
• Bring	the	skills	to	the	front	to	build	quality	in
• Extend	the	practicum
– Real-world	design	patterns	and	refactoring
– Evolutionary	architecture
• Enhance	collaboration
• Improve	the	tools
• Use	more	tools
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 17
Should	We	…?
• Create	more	DSLs	and	teach	how	to	create	
good	DSLs?
• Move	toward	strong	typing?
• Move	toward	functional	programming?
• Do	more	mob	programming?
• Expand	or	eliminate	code	generation?
• Teach	the	machines	to	do	our	jobs?
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 18
A	Survey
Want	to	inform	the	next	generation	of	tools?
https://www.surveymonkey.com/r/longreen
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 19
References
• Crosby,	Philip,	“Quality	is	Free,”	McGraw-Hill
• Tarlinder,	Alexander,	“Developer	Testing:	
Building	Quality	into	Software,”	Addison-
Wesley
• Thompson,	Kate,	“Zero	Bugs	and	Program	
Faster,”	Kate	Thompson	Publishing
• Weinberg,	Gerald	M.,	“Errors:	Bugs,	Boo-boos,	
Blunders,”	Leanpub
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 20
Informit.com/aatc
Save	40%	through	April	30,	2017
• Use	code	AATC	
• Good	on	print	&	eBook
• eBook	files	include	PDF,	EPUB,	and	MOBI
Offer	only	good	at	informit.com/aatc
21
Contact	Me
Stephen	Vance
https://www.vance.com
steve@vance.com
@StephenRVance
srvance on	GitHub and	LinkedIn
©	2017	Stephen	Vance Zero	Bugs:	State	of	the	Practice 22

More Related Content

PDF
Achieving Continuous Delivery with Puppet
PDF
Application Security Testing for a DevOps Mindset
PPTX
Security & DevOps- Ways To Make Sure Your Apps & Infrastructure Are Secure
PPTX
Enterprise DevOps fact or fiction - DevOps Summit 2014
PPTX
DevOps is for Everyone - DevOps East
PDF
Long-term Impact of Log4J
PPTX
Shifting left – embedding security into the devops pipeline by Mike d. Kail
PDF
The Rise of DevSecOps - Fabian Lim - DevSecOpsSg
Achieving Continuous Delivery with Puppet
Application Security Testing for a DevOps Mindset
Security & DevOps- Ways To Make Sure Your Apps & Infrastructure Are Secure
Enterprise DevOps fact or fiction - DevOps Summit 2014
DevOps is for Everyone - DevOps East
Long-term Impact of Log4J
Shifting left – embedding security into the devops pipeline by Mike d. Kail
The Rise of DevSecOps - Fabian Lim - DevSecOpsSg

What's hot (20)

PPTX
Higher. Faster. Stronger. Your Applications with Habitat
PPTX
DevSecOps - It can change your life (cycle)
PDF
Attacking Pipelines--Security meets Continuous Delivery
PDF
DOES16 London - Better Faster Cheaper .. How?
PPTX
One Terrible Day at Google, and How It Made Us Better
PDF
Sprint with Agile, Deliver With DevOps
PPTX
DevOps 101
PPTX
MERGE 2016 Opening Remarks
ODP
Building an Open Source AppSec Pipeline
PPTX
Introduction to DevOps
PPTX
DevOps Utopia with Azure DevOps
PPTX
DevOps and the Importance of Single Source Code Repos 
PPTX
The Devops Handbook
PDF
Enabling Agility Through DevOps
PDF
Turning Human Capital into High Performance Organizational Capital
PDF
Untangling Continuous Delivery
PPTX
Service Architectures At Scale - QCon London 2015
KEY
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
PDF
Blocks to DevOps
PDF
Top 5 Challenges in Scaling DevOps in Brownfield Environments
Higher. Faster. Stronger. Your Applications with Habitat
DevSecOps - It can change your life (cycle)
Attacking Pipelines--Security meets Continuous Delivery
DOES16 London - Better Faster Cheaper .. How?
One Terrible Day at Google, and How It Made Us Better
Sprint with Agile, Deliver With DevOps
DevOps 101
MERGE 2016 Opening Remarks
Building an Open Source AppSec Pipeline
Introduction to DevOps
DevOps Utopia with Azure DevOps
DevOps and the Importance of Single Source Code Repos 
The Devops Handbook
Enabling Agility Through DevOps
Turning Human Capital into High Performance Organizational Capital
Untangling Continuous Delivery
Service Architectures At Scale - QCon London 2015
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
Blocks to DevOps
Top 5 Challenges in Scaling DevOps in Brownfield Environments
Ad

Similar to Zero Bugs: State of the Practice (20)

PDF
Bug Life Cycle in Software Testing: Understanding the Journey from Detection ...
PPTX
3.pptx
PPT
What i learned adopting agile practices
PPTX
Zero Bugs
PDF
Agile Bug Fixing (Zero Bug Policy)
PDF
Software Process... the good parts
PPTX
Software_Testing_Presentation.getting into it
PDF
The Rationale for Continuous Delivery by Dave Farley
PPTX
Bug life cycle
KEY
Intro to Lean Software Development
PDF
Lean at Yahoo in 2008
PPT
Peer Code Review An Agile Process
PDF
Where Does Developer Testing End And Tester Testing Begin?
PPT
Arch factory - Agile Design: Best Practices
PPT
The Programmer Life Cycle
PPTX
SOFTWARE ENGINEERING AND DESIGN PRINCIPLES.pptx
PPTX
Managing The Delivery Of Zero Defect Software
PDF
Adm Initial Proposal
PPT
Agile In A Box V0 2
PPT
Agile Development For Rte Systems
Bug Life Cycle in Software Testing: Understanding the Journey from Detection ...
3.pptx
What i learned adopting agile practices
Zero Bugs
Agile Bug Fixing (Zero Bug Policy)
Software Process... the good parts
Software_Testing_Presentation.getting into it
The Rationale for Continuous Delivery by Dave Farley
Bug life cycle
Intro to Lean Software Development
Lean at Yahoo in 2008
Peer Code Review An Agile Process
Where Does Developer Testing End And Tester Testing Begin?
Arch factory - Agile Design: Best Practices
The Programmer Life Cycle
SOFTWARE ENGINEERING AND DESIGN PRINCIPLES.pptx
Managing The Delivery Of Zero Defect Software
Adm Initial Proposal
Agile In A Box V0 2
Agile Development For Rte Systems
Ad

More from Stephen Vance (8)

PDF
Ai and mobile - Power in Your Pocket
PDF
Ai and mobile
PDF
AST Rewriting Using recast and esprima
PDF
Ember and OAuth2
PDF
Cultivating People as the Org Grows
PPTX
AgileChina 2015: Agile Estimation Workshop
PDF
AgileChina 2015 Keynote: Understand deeply
PDF
20160908 Aesthetic-Driven Development
Ai and mobile - Power in Your Pocket
Ai and mobile
AST Rewriting Using recast and esprima
Ember and OAuth2
Cultivating People as the Org Grows
AgileChina 2015: Agile Estimation Workshop
AgileChina 2015 Keynote: Understand deeply
20160908 Aesthetic-Driven Development

Recently uploaded (20)

PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
ai tools demonstartion for schools and inter college
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Digital Strategies for Manufacturing Companies
PDF
top salesforce developer skills in 2025.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Transform Your Business with a Software ERP System
PPTX
L1 - Introduction to python Backend.pptx
PPTX
history of c programming in notes for students .pptx
PDF
System and Network Administraation Chapter 3
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Understanding Forklifts - TECH EHS Solution
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Designing Intelligence for the Shop Floor.pdf
Reimagine Home Health with the Power of Agentic AI​
ai tools demonstartion for schools and inter college
2025 Textile ERP Trends: SAP, Odoo & Oracle
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Digital Strategies for Manufacturing Companies
top salesforce developer skills in 2025.pdf
Softaken Excel to vCard Converter Software.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Transform Your Business with a Software ERP System
L1 - Introduction to python Backend.pptx
history of c programming in notes for students .pptx
System and Network Administraation Chapter 3
Which alternative to Crystal Reports is best for small or large businesses.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Upgrade and Innovation Strategies for SAP ERP Customers
Understanding Forklifts - TECH EHS Solution
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Operating system designcfffgfgggggggvggggggggg
Designing Intelligence for the Shop Floor.pdf

Zero Bugs: State of the Practice