46
1 Helping Testers Add Value to Agile Projects Alan Richardson EvilTester.com @eviltester SeleniumSimplified.com JavaForTesters.com CompendiumDev.co.uk

Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

Embed Size (px)

DESCRIPTION

Every Agile project is different, we know this, we don’t do things ‘by the book’ on Agile projects. We learn, we interact, we change, we write the book we go along. Throughout all of this, testing needs to remain viable, and it needs to add value. Remaining viable in this kind of environment can be hard. Fortunately, we can learn to add value. In this keynote, Alan will describe some of the approaches and models he has used to help testing remain viable. Helping testers analyze the ‘system of development’ so the test approach can target process risks. Helping testers harness their own unique skills and approaches. The attitudes that the testing process often needs to have driving it, and the skill sets that teams need to ensure are applied to their testing. At a simple level, this is just Systems Thinking and Modeling. In practice this can prove highly subversive and deliberately provocative. Because we’re not talking about ‘fitting in’, we’re talking about survival.

Citation preview

Page 1: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

1

Helping Testers Add Value to Agile Projects

Alan Richardson

EvilTester.com@eviltester

SeleniumSimplified.comJavaForTesters.com

CompendiumDev.co.uk

Page 2: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

2

Warren Zevon (1947 - 2003)“Ain't that pretty at all”, The Envoy, 1982

Page 3: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

3

We can get Jaded & Disillusioned

Well, I've seen all there is to see

And I've heard all they have to say

I've done everything I wanted to do . . .

I've done that too

Warren Zevon, “Ain't that pretty at all”, 1982

Page 4: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

4

Reality doesn't match our wants

And it ain't that pretty at all.

Ain't that pretty at all.“

Warren Zevon, “Ain't that pretty at all”, 1982

Page 5: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

5

We may not have strategies to cope

So I'm going to hurl myself against the wall

'Cause I'd rather feel bad than not feel anything at all

Warren Zevon, “Ain't that pretty at all”, 1982

Page 6: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

6

Sometimes my job...

I've been to ParisAnd it ain't that pretty at allI've been to Rome

Guess what?

Warren Zevon, “Ain't that pretty at all”, 1982

Page 7: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

7

… the real world is what it is

And sometimes it ain't that pretty at all

Page 8: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

8

I help testers survive in Agile Projects

● …by working with 'reality' rather than an ideal

● ...by adding 'value'● ...by becoming a

viable part of the project

The Transformers: All Hail Megatron, Volume 1, IDW Publishing

Page 9: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

9

Thank you for everything, Westley,

good night now,I'll probably kill you

in the morning.

The Dread Pirate Roberts,as quoted by S. Morgenstern,

in “The Princess Bride”,abridged by William Goldman

for text and screenpage 165, 1976, Pan Books Ltd

Page 10: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

10

“I'm here to make you look good”

Page 11: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

11

“I'm here to make you look good”

not

Page 12: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

12

“I'm here to make you look good”

not

side-effect

Page 13: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

13

If you do this automatically, then keep doing it, because you do it, but don't start thinking

it adds value, or helps you fit in.

Survival != Fitting In

● Lunching● Raconteur● Buying Doughnuts● <insert fluffy people stuff> ● ...etc.

Page 14: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

14

Survival == Adding Value by Doing Testing Stuff

● Finding problems● Checking Acceptance Criteria● Testing● Making your Test Coverage Visible● Pairing on ATDD● …etc.

Page 15: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

15

We survive when we learn to adapt to the System Of Development

...we already know how to work with the System Under Development

The Transformers: All Hail Megatron, Volume 1, IDW Publishing

Page 16: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

16

“I would sooner walk up to the mouth of a cannon, knowing it was going to blow me to pieces than make another trip over

the Fall”

Annie Edson Taylor,after surviving her Niagra Falls

Waterfall Barrel Drop

http://chroniclingamerica.loc.gov/lccn/sn84036008/1901-10-25/ed-1/seq-1/

Page 17: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

17

I Survived Waterfall

● By removing waste● By responding to need, not want● By exploring more● By taking responsibility for my testing rather

than conforming to 'the process'

Page 18: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

18

I must create a system. or be enslav'd by another Mans; I will not reason & compare: my business is to create

William Blake, 1820

Jerusalem: The Emanation of the Giant Albion

http://www.blakearchive.org/exist/blake/archive/object.xq?objectid=jerusalem.e.illbk.10&java=no

Page 19: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

19

I remember a time before I worked on an Agile Project

● Based on reading the hype: the books, the articles, etc. I sooooo wanted out of Waterfall.– … the utopia

– … the ideal● Building the 'beliefs' about how Agile works● Building 'models' of the ideal process

Page 20: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

20

I remember the first time I worked on an 'Agile' Project

Page 21: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

21

I remember the first time I worked on an 'Agile' Project

And it ain't that pretty at all.Ain't that pretty at all.

Page 22: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

22

I Got Stuck

Page 23: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

23

Stuck on...

● Being asked to write a test strategy● 'Poor' Stories and Acceptance Criteria● Pairing badly on TDD● Not knowing how to add value around the

automated tests● Knowing that no-one else knew what to do with

a 'tester' on the team– I thought there was something 'special' about Agile

– I thought “they'd” know

Page 24: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

24

So I did what I always do...

Page 25: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

25

So I did what I always do...

...try to take over the world!“

Pinky and 'The Brain'http://www.warnervideo.com/pinkyandthebrain/downloads/pinkydvd2_2_1280x1024.jpg

Page 26: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

26

So I did what I always do...

...think about it as a system...

Page 27: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

27

I think, I work with systems...

e.g.● Software Systems● People Systems

– Individuals, Teams, Departments, etc.

● Tools & Support Systems● Processes

Input, Output, Process, Relationships, Feedback, Fitness for Survival, etc.

Page 28: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

28

What I did

● My Java knowledge wasn't good enough to add value when pairing with devs, so I improved my Java knowledge

● My TDD knowledge wasn't very good, so I built some code using TDD

● I didn't understand the technology we were using, so I researched the technology

I made myself comfortable pairing, working on, and reading the code base

Page 29: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

29

What I did● I looked close

– at the existing TDD code to look for gaps. Then manually tested gap or added more JUnit code

● I looked far– What does the system do? How do we know it

does?

– What do the requirements want? Do they get it?

– What do we think we had 'Done'? Had we?

– How does this thing connect? Together. With Others.

– Added automation with wider scope

Page 30: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

30

What I did

● Made my 'thinking' visible in the wiki● Made my 'testing' visible by adding work and

notes in the tracking system● Looked for new tools to help me 'see' the

System working

No-one else knew what testing was supposed to look like, or do, so I made it visible.

Page 31: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

31

What I did

● Considered 'risks' that the stories didn't cover– Performance

– Multiple Users

– Extreme Data

● Then targeted those 'risks' with 'testing'

Page 32: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

32

So I did what I always did...

● map 'test process' around existing processes● I improved my specific skills for the project● I filled in gaps

– asked questions about requirements

– automation coverage

...I decided what to do.

Page 33: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

33

I got hung up on 'Agile'. And I got stuck.

When I viewed it as a System, I got free.

Page 34: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

34

I decided what to do

● Ignoring the expectations I had from 'Agile'● I worked with what was currently happening

● 'Beliefs', 'Ideals', 'Research', 'Discussion' all help decide what to do next, and how to improve, but not what to do 'now'

● To work with 'now' I modelled the process as a 'system', with 'relationships', expectations, aims etc.

Page 35: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

35

With Experience I learned...

● “Every Agile project is different, we know this, we don't do things 'by the book' on Agile projects.

● We learn, we interact, we change. ● We write the book we go along. ● Throughout all of this, testing needs to remain

viable, and it needs to add value. ● Remaining viable in this kind of environment

can be hard.”

Page 36: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

36

With Experience I learned...That, while I value on the items on the right, I

value the items on the left more.

● Systems Thinking● Cybernetics● General Semantics● Hypnosis● Brief Therapy● Chinese Strategy

Philosophy

● Agile Books● Agile Blogs● Agile Webinars &

Lectures● Agile Articles● Lean Software Books,

Blogs, etc.

Page 37: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

37

With Experience I learned...That, while I value on the items on the right, I

value the items on the left more.

● Systems Thinking● Cybernetics● General Semantics● Hypnosis● Brief Therapy● Chinese Strategy

Philosophy

● Agile Books● Agile Blogs● Agile Webinars &

Lectures● Agile Articles● Lean Software Books,

Blogs, etc.

Loot, Pillage,

Raid and Steal

from other

disciplines

Page 38: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

38

I still have “beliefs” about Agile

● Flexible● More Open to Suggestion● More Free to Experiment● Etc.

Page 39: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

39

But do not call me a QA

I do not like that name QA,

I do not like it, not at all, QA we do not say.

“Tester!”, I do say,

“It describes me bester, and how I play”

So its far bester, to say tester,

And do not call me a QA

http://seuss.wikia.com/wiki/File:GREEN-EGGS.jpg QA

Page 40: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

40

“I've Helped Testers Survive on Agile Projects”

● New Testers (inexperienced)● Experienced Testers New To Agile● Experienced Agile Testers

● Mostly by: dealing with their beliefs and expectations, adapting their techniques

Page 41: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

41

To the creative mind there is no right or wrong. Every action is an experiment, and every experiment yields its fruit in knowledge.

The Illuminatus TrilogyRobert Shea & Robert Anton Wilson

Page 42: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

42

I try to foster an attitude of...

● Ownership for the tester's 'testing'● Exploration beyond Acceptance Criteria● Thinking about systems of 'behaviour', 'needs

and wants'● Improvement of self and test process● Improvement of team and project process● Speaking from individual experience● Survival – assume that if you're not adding

value, you're gone

Page 43: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

43

only variety can absorb variety

● Stafford Beer restating Ross Ashby's Law of Requisite Variety – “Designing Freedom” published

by John Wiley & Sons, 1974, on page 30

“”

Page 44: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

44

“only variety can absorb variety”

● Team's absorb behaviour and respond

– “Designing Freedom” by Stafford Beer, published by John Wiley & Sons, 1974, diagram from page 31

Page 45: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

45

The real world...

● is messy, and may not map to the books

“And it ain't that pretty at all”

Page 46: Agile Testing Days 2014 Keynote - Helping Testers Add Value on Agile Projects

46

Helping Testers Survive, and Add Value to Agile Projects

Alan Richardson

EvilTester.com@eviltester

SeleniumSimplified.comJavaForTesters.com

CompendiumDev.co.uk