good enough testing james bach [email protected] the author thanks st labs, inc. for supporting...

14
Good Enough Testing James Bach [email protected] http://www.satisfice.com The author thanks ST Labs, Inc. for supporting the work that led to some of the materials in this presentation.

Upload: marlene-bryan

Post on 13-Dec-2015

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Good Enough Testing

James [email protected]

http://www.satisfice.com

The author thanks ST Labs, Inc. for supporting the work that ledto some of the materials in this presentation.

Page 2: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Paradigms of Good Enough...

Not Too Terrible: “we’re still in business” Infallibility: “anything we do is good” Righteous Exhaustion: “perfection or bust” Customer Oracle: “customers seem to like it” Defined Process: “we follow a Good Process” Static Quality: “we satisfy The Requirements” Accountability: “we fulfill our promises” Advocacy: “we make every reasonable effort” Dynamic Quality: “we fulfill the mission”

Page 3: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Dynamic Quality Paradigm

Perfect

Awful

unnecessary quality

unacceptable quality

Item A

Item B

It’s more important to work on Item B.

Further improvement would not be a good use of resources.

Further improvement is necessary.

Good enoughquality bar

floating line

Page 4: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

A Heuristic for Good Enough

1. X has sufficient benefits.

2. X has no critical problems.

3. Benefits of X sufficiently outweigh problems.

4. In the present situation, and all things considered, improving X would be more harmful than helpful.

BenefitsProblems

All conditionsmust apply.

Page 5: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Good Enough...

…with what level of confidence? …to meet ethical obligations? …in what time frame? …compared to what? …for what purpose? …or else what? …for whom?

Perspectiveis

Everything

Page 6: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

You can use this to:

Argue persuasively for improvement, even in the midst of chaos.

Plan ahead for high quality. Understand what problems are keeping otherwise

smart, caring people from doing excellent work. Notice when “perfect” or “as good as humanly

possible” is not good enough. Structure a dialog about acceptable quality.

Page 7: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Why not Quantify Good Enough?

Law of Medium NumbersFor medium number systems, we can

expect that large fluctuations, irregularities,and discrepancies with any theory will occurmore or less regularly. -- Gerald Weinberg

Because quality is an emergentproperty of a complex system, any quantification

of quality is incomplete.

Page 8: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Heuristics are an alternative to quantitative models...

We can measure some things. We can observe some things. We can reason about those

observations and measurements.

A heuristic is useful method that sometimes doesn’t work.Heuristic means “serving to discover”

Page 9: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Test Project Dynamics:Star Model

T es t T eamExpert iseLoadingCohesionMot ivat ionLeadershipProj ect Integrat ion

T es t L abT est P lat formsT est T oolsT est L ibraryProblem T racking SystemOffi ce Faci l i t ies

Product MissionStakeholdersQual it y Criter iaReference Material

RequirementsProductProj ect L if ecycleProj ect ManagementConfi gurat ion ManagementDefect P revent ionDevelopment T eam

Development

M iss ionFind Imortant ProblemsAssess Qual it yCert if y to StandardFulfi l l P rocess MandatesSat isf y StakeholdersAssure Accountabil i t y

Advise about QAAdvise about T est ingAdvise about Qual it yMaxim ize Effi ciencyMinim ize CostMinim ize T ime

T es tP roc ess

St rategyLogist icsProducts

Page 10: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Test Project Dynamics:Star Model

T es t T eam T est L ab

RequirementsDevelopment

M iss ion

T estP roc ess

Page 11: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Test Project Dynamics:Star Model

GIV ENS GIV ENS

GIV ENSGIV ENS

M iss ion

CHOICES

Page 12: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

CHOI

VENSMotivation

Capability

Test Project Dynamics:Givens vs. Choices

Motivation: What testing does the situation require? Capability: Can we perform that testing in this situation?

Page 13: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

Analyzing a Test Process

Are GIVENS good enough?

Do CHOICES about process exploit the GIVENS and address the MISSION well enough?

Is MISSION is achieved well enough?

How do you know?

Page 14: Good Enough Testing James Bach james@satisfice.com  The author thanks ST Labs, Inc. for supporting the work that led to some of

MISSION:The most important part

Find important problems Assess quality Certify to standard Fulfill process mandates Satisfy stakeholders Assure accountability

Advise about QA Advise about testing Advise about quality Maximize efficiency Minimize time Minimize cost

The quality of testing depends on which of thesepossible missions matter and how they relate.

Many debates about the goodness of testingare really debates over missions and givens.