testing in agile - antipatterns and remedies

40
Confidential | Copyright © Agile Testing Alliance Global Gathering TESTING IN AGILE: ANTI-PATTERNS AND REMEDIES @kksure [email protected] KK Sure

Upload: kksure

Post on 17-Jul-2015

288 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

TESTING IN AGILE:

ANTI-PATTERNS AND

REMEDIES

@kksure

[email protected]

KK Sure

Page 2: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

what is ‘agile’ ?

Page 3: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

what is an ‘anti-pattern’ ?

“ is a common response to a recurring problem

that is usually ineffective and risks being highly

counterproductive.”

-- Wikipedia

Page 4: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

agile manifesto

• Individuals and interactions over processes

and tools

• Working software over comprehensive

documentation

• Customer collaboration over contract

negotiation

• Responding to change over following a plan

Page 5: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

guiding principles

Customer

Satisfaction

Welcome

Changing

Requirements

Delivering

software

frequently

Business

Involvement

TrustCollaboration

Working

software is the

measure of

progress

Sustainable

development

Technical

excellenceSimplicity

Self organized

teamsCourse

correction

Page 6: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

some stories…

Page 7: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 1

Page 8: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“it works on my machine”

Page 9: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

different roles

work in silos

effects

further

increases the

divide between

the various

roles

remedies

QA and Dev.

collaboration (e.g.

tech huddles)

we adopt only the

easy parts of

agile (sprints and

planning-

meetings etc.)

delays in making

changes/fixes

share the

responsibility of a

quality software

delivery

lack of shared

responsibility

Page 10: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

Delivering

software

frequently

CollaborationSelf organized

teams

Page 11: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 2

Page 12: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“I found 80 defects this week”

Page 13: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

number driven

reports

effects

possibility on

missing out

important

defects

remedies

working software

as the measure

of the success of

the team

measuring the

success of QAs

by the number of

defects they find

more defects and

hence defect

triages

use empirical

ways of

measurement

more low priority

and duplicate

defects

Page 14: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

Working

software is the

measure of

progress

Page 15: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 3

Page 16: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“lets choose

from this list of

defects”

Page 17: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

not enough

involvement from

business

effects

last minute

panic

remedies

work on definition

of ‘Done’Done isn’t Done

production

defects have regular

business

involvement

poor quality

delivered have automated

tests as safety

net

Page 18: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

Business

InvolvementCourse

correction

Customer

Satisfaction

Page 19: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 4

Page 20: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“buckle up for the

2 months release

testing cycle”

Page 21: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

a history of

regression

defects

throughout the

development

cycle

effects

dependency on

regression test

team

remedies

invest in an

effective and

efficient

automated

regression suitecontinuous

delivery is not

possible

release testing

should only be risk

management

no regression

suite in place or

not enough

coverage

Page 22: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

Delivering

software

frequently

Technical

Excellence

Page 23: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 5

Page 24: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“why didn’t you

find that bug?”

Page 25: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

we believe

‘Quality is a QA

responsibility’

effects

displays lack of

trust

remedies

Quality should be

a shared

responsibility

isolated QA or

testing teams

Page 26: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

Customer

Satisfaction

Trust

Page 27: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 6

Page 28: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

Manual Testers Automation Testers

Page 29: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

considering test

automation as a

separate project

effects

duplication of

efforts by these

two teams

remedies

consider test

automation an

integral part of

your software

development

team

considering test

automation as

specialization

changes cannot

be made with

confidences

test suite

maintenance

becomes difficult

make test

automation a

shared

responsibility

Page 30: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

CollaborationSelf organizing

teams

Page 31: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 7

Page 32: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“let’s automate

everything”

Page 33: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

not enough

analysis on ROI

effects

automated test

suites brings

along with the

maintenance

costs

remedies

evaluate the ROI

before investing

into getting a full

coverage

separate test

automation teams

consider test

automation

pyramid before

adding up tests

Page 34: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

TrustCollaboration Simplicity

Page 35: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

story 8

Page 36: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

“the build is red, why

don’t you comment out

that test”

Page 37: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

reasons

test automation

knowledge is not

shared

effects

low confidence

in test suite

remedies

follow TDD,

ATDD, BDD

techniques

lack of discipline

test coverage

drops over a

period of time

collaborate on the

test automation

effortrelease pressure

(deadlines)

Page 38: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

principles we violate

CollaborationTechnical

excellence

Page 39: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

Key Takeaways• It’s easy to get the simpler parts of agile (viz. the

rituals) but our primary focus should be on the core

principles

• Business involvement is very important in an agile

context

• Working software is the measure of success of an

agile team and not numbers

• Software quality is a shared responsibility

• Test automation is not a specialization and is an

integral part of the software development teams

• Being agile needs more discipline than non-agile

projects

Page 40: Testing in Agile - Antipatterns and Remedies

Confidential | Copyright © Agile Testing Alliance Global Gathering

thank you

@kksure

[email protected]