i’m michael bolton

100
I’m Michael Bolton. http://www.developsense.com

Upload: dasha

Post on 25-Feb-2016

58 views

Category:

Documents


0 download

DESCRIPTION

I’m Michael Bolton. http://www.developsense.com. I teach people how to test software. James Bach and I co-author a course called Rapid Software Testing. Testing, the way we teach it, is based on heuristics . A heuristic is a fallible method for solving a problem . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: I’m Michael Bolton

I’m Michael Bolton.http://www.developsense.com

Page 2: I’m Michael Bolton

I teach people how to test software.

Page 3: I’m Michael Bolton

James Bach and I co-author a course called Rapid Software Testing.

Page 4: I’m Michael Bolton

Testing,the way we teach it,

is based on heuristics.

Page 5: I’m Michael Bolton

A heuristic is a fallible method

for solving a problem.

Page 6: I’m Michael Bolton

A heuristic often works, and it sometimes fails.

Page 7: I’m Michael Bolton

In testing, an oracle is a principle or mechanismby which we recognize

a problem.

Page 8: I’m Michael Bolton

All oracles are heuristic.(Not all heuristics are oracles.)

Page 9: I’m Michael Bolton

Since all oracles are heuristic, an oracle often works,

though it can sometimes fail.

Page 10: I’m Michael Bolton

When we see a problem,it’s a problem with respect to

some oracle.

Page 11: I’m Michael Bolton

Oracles don’t guarantee that there’s a problem, but they point to potential problems.

Page 12: I’m Michael Bolton

Consistency is an important theme in oracles.

Page 13: I’m Michael Bolton

So is inconsistency.

Page 14: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

its history.

Page 15: I’m Michael Bolton

We suspect a problem if a product is inconsistent with our organization’s image.

Page 16: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

comparable products.

Page 17: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

claims made about it,by important people.

Page 18: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

user expectations.

Page 19: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

its presumed or intended purpose.

Page 20: I’m Michael Bolton

We suspect a problem if a product is inconsistent withitself, in two or more places.

Page 21: I’m Michael Bolton

We suspect a problem if a product is inconsistent with

standards or statutes.

Page 22: I’m Michael Bolton

We suspect a problem if a product is consistent with

problems we’ve seen before.

Page 23: I’m Michael Bolton

We run the program,and to some, it seems like we just notice problems as we go along.

Page 24: I’m Michael Bolton

That’s all there is to it.

Page 25: I’m Michael Bolton

Noticing problems is a very logical, objective, dispassionate process.

Page 26: I’m Michael Bolton

Isn’t it?

Page 27: I’m Michael Bolton

Recently, I realized a hole in our profession’s folklore

about the processof testing software.

Page 28: I’m Michael Bolton

That realization led to a question,which I’ll ask presently.

Page 29: I’m Michael Bolton

But first a little background.

Page 30: I’m Michael Bolton

I was at a conference, and a presenter was asking why

projects based on 100% test automation fail.

Page 31: I’m Michael Bolton

The presenter was a guy from Microsoft.

Page 32: I’m Michael Bolton

Never mind his begging the question about what he

meant by 100% automation…

Page 33: I’m Michael Bolton

I noted thatautomation can’t

empathize.

Page 34: I’m Michael Bolton

I noted thatautomation can’t

anticipate.

Page 35: I’m Michael Bolton

I noted thatautomation can’t

recognize.

Page 36: I’m Michael Bolton

I noted thatautomation can’t

judge.

Page 37: I’m Michael Bolton

I noted thatautomation can’t

predict.

Page 38: I’m Michael Bolton

I noted thatautomation can’t

project.

Page 39: I’m Michael Bolton

I noted thatautomation can’t

evaluate.

Page 40: I’m Michael Bolton

I noted thatautomation can’t

assess.

Page 41: I’m Michael Bolton

I noted thatautomation can’tbecome resigned.

Page 42: I’m Michael Bolton

I noted thatautomation can’t

get frustrated.

Page 43: I’m Michael Bolton

I noted thatautomation can’t

invent.

Page 44: I’m Michael Bolton

I noted thatautomation can’t

model.

Page 45: I’m Michael Bolton

I noted thatautomation can’t

resource.

Page 46: I’m Michael Bolton

I noted thatautomation can’t

collaborate.

Page 47: I’m Michael Bolton

I noted thatautomation can’t

make conscious decisions.

Page 48: I’m Michael Bolton

I noted thatautomation can’t

work around a problem.

Page 49: I’m Michael Bolton

I noted thatautomation can’t

strategize.

Page 50: I’m Michael Bolton

I noted thatautomation can’t

charter.

Page 51: I’m Michael Bolton

I noted thatautomation can’t

teach.

Page 52: I’m Michael Bolton

I noted thatautomation can’t

learn.

Page 53: I’m Michael Bolton

I noted thatautomation can’t

appreciate.

Page 54: I’m Michael Bolton

I noted thatautomation can’t

question.

Page 55: I’m Michael Bolton

I noted thatautomation can’t

refine.

Page 56: I’m Michael Bolton

I noted thatautomation can’t

investigate.

Page 57: I’m Michael Bolton

I noted thatautomation can’t

speculate.

Page 58: I’m Michael Bolton

I noted thatautomation can’t

suggest.

Page 59: I’m Michael Bolton

I noted thatautomation can’t

contextualize.

Page 60: I’m Michael Bolton

I noted thatautomation can’t

explain.

Page 61: I’m Michael Bolton

I noted thatautomation can’t

elaborate.

Page 62: I’m Michael Bolton

I noted thatautomation can’t

reframe.

Page 63: I’m Michael Bolton

I noted thatautomation can’t

refocus.

Page 64: I’m Michael Bolton

I noted thatautomation can’t

troubleshoot.

Page 65: I’m Michael Bolton

I noted thatautomation can’t

THINK.

Page 66: I’m Michael Bolton

The guy from Microsoft said...

Page 67: I’m Michael Bolton

“True. But I don’t see why you’d want your automation

to get frustrated.”

Page 68: I’m Michael Bolton

Despite a lengthy email exchange with him, in which

I pointed out that

Page 69: I’m Michael Bolton

frustration indicates a problem for a person

Page 70: I’m Michael Bolton

and the Microsoft guy had just recently blogged about a

bug that frustrated him

Page 71: I’m Michael Bolton

he seemed to remain clueless about why getting

frustrated might be significant.

Page 72: I’m Michael Bolton

I was getting frustrated by that, so I knew I must be on

to something.

Page 73: I’m Michael Bolton

I realized that often, when I notice a bug, the recognition

is triggered by some emotion.

Page 74: I’m Michael Bolton

Frustration.

Page 75: I’m Michael Bolton

Confusion.

Page 76: I’m Michael Bolton

Annoyance.

Page 77: I’m Michael Bolton

Impatience.

Page 78: I’m Michael Bolton

Depression.

Page 79: I’m Michael Bolton

Boredom.

Page 80: I’m Michael Bolton

Irritation.

Page 81: I’m Michael Bolton

Curiosity.

Page 82: I’m Michael Bolton

Amusement.

Page 83: I’m Michael Bolton

Emotions are associated with a state that psychologists call

arousal.

Page 84: I’m Michael Bolton

No, not that kind of arousal.

Page 85: I’m Michael Bolton

Arousal is a physiological and psychological state of

being awake.

(according to Wikipedia)

Page 86: I’m Michael Bolton

Arousal is important in regulating consciousness,

attention, and information processing.

(also according to Wikipedia)

Page 87: I’m Michael Bolton

Automationdoes some stuff very well.

Page 88: I’m Michael Bolton

But…

Page 89: I’m Michael Bolton

Automationdoesn’t get aroused.

Page 90: I’m Michael Bolton

Automationdoesn’t notice new bugs.

Page 91: I’m Michael Bolton

Automation doesn’t identify new risks.

Page 92: I’m Michael Bolton

Automationdoesn’t identify opportunities

for improving test design.

Page 93: I’m Michael Bolton

Fortunately, people can do those things.

Page 94: I’m Michael Bolton

So here comes my question.

Page 95: I’m Michael Bolton

Our clients are human.

Page 96: I’m Michael Bolton

Our humanity as testers helps to reveal

important informationabout our products.

Page 97: I’m Michael Bolton

Emotions provide a rich source of oracles—principles or mechanisms by which we

recognize problems.

Page 98: I’m Michael Bolton

I’ll wager thatany time we’ve seen a bug,

our emotions were a big factorin recognizing or interpreting it.

Page 99: I’m Michael Bolton

Why do so manyin our profession

seem to be so obliviousto the value of emotions?

Page 100: I’m Michael Bolton

I’m Michael [email protected]

http://www.developsense.com