Agile Testing is nonsense, because Agile is about testing!

63
agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009. Agile Testing is nonsense because Agile it’s all about testing…
  • date post

    14-Sep-2014
  • Category

    Technology

  • view

    3.572
  • download

    2

description

Testing is an attitude which brings us to trust results based on the fact that we can validate them. Testing is an approach which allows us to think about how to verify we did the right thing even before starting. Testing is a practice which allows us to write effective tests that can be repeated indefinitely while systematically producing consistent results. Agile is built around the idea of managing complex projects, recognizing the importance of emerging results and verifying in a very disciplined way the assumptions and hypothesis we make as often and as thoroughly as possible. This means testing everything we do, every day ... So if you are truly Agile, you are living testing in every second of your life!

Transcript of Agile Testing is nonsense, because Agile is about testing!

Page 1: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Testing is nonsensebecause Agile it’s all about testing…

Page 2: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Andrea Tomasini

Agile Coach & Trainer [email protected]

@tumma72@agile42/coaches

Page 3: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Testing is nonsense, because Agile is Testing

Testing is an attitude which brings us to trust results based on the fact that we can validate them. Testing is an approach which allows us to think about how to verify we did the right thing even before starting. Testing is a practice which allows us to write effective tests that can be repeated indefinitely while systematically producing consistent results. !

Page 4: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Testing is nonsense, because Agile is Testing

Agile is built around the idea of managing complex projects, recognizing the importance of emerging results and verifying in a very disciplined way the assumptions and hypothesis we make as often and as thoroughly as possible. This means testing everything we do, every day … So if you are truly Agile, you are living testing in every second of your life!

Page 5: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Testing as an Attitude...

Page 6: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

attitude: a settled way of thinking or feeling about something: he was questioned on his attitude to South Africa | being competitive is an attitude of mind .

Page 7: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Values & PrinciplesAgile Values & Principles are supporting teams developing the right attitude to enable continuos and regular value delivering to the client, while continuously improving

Page 8: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Individuals & interactions

Working software

Customer collaboration

Responding to change

Processes & tools

Comprehensive documentation

Contract negotiation

Following a plan

o v e r

We recognize the value here...We value

this more….

Page 9: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Empirical Process ControlSwitching from measuring compliance to measuring outcome

Page 10: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

Defined Process ControlThe time required to complete a repeatable action is a valid proxy to predict time to finish the whole

Page 11: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

68!

10s 20s5s 15s

20

19

38 5280? 76? 69?

Page 12: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

Empirical Process ControlEvery step performed while creating a new product is unique, only outcome can be trusted

Page 13: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Iterative and incrementalStop assuming you already know what the client wants and discover it while building it together

Page 14: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

I need to move from A to B faster than by walking…

Page 15: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

I am not that good at staying in equilibrium, I need something more stable…

Page 16: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

I am stable now, but not fast as I would like to be, can we go faster?

Page 17: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

I figure I am pretty tired in the evening, and though I like sport, I still need to be faster

Page 18: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Inspect the outcome and learn to validate your assumptions & hypothesis

What is this?

Page 19: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

BUT… not Because clients do not trust that their money has been used wisely...

Page 20: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Unit Tests

Integration Tests

User Acceptance Tests

Ad-Hoc Tests

What you get as a result… ice-cream!

Page 21: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Testing as an Approach...

Page 22: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

approach: a way of dealing with a situation or problem: we need a whole new approach to the job.

Page 23: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Experimenting new things, innovating, requires dedication and commitment…

Page 24: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

We like to learn using short feedback loops

Page 25: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Somet

imes

we

succ

eed

in

valid

ating

our

hypo

thes

is...

Page 26: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Sometimes we don't...

Page 27: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Why are we thinking about what to test and how to test it beforehand?

Page 28: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Reduce... Social Risk

Page 29: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Reduce... Schedule & Cost Risks

Page 30: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Reduce... Business Risks

Page 31: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Reduce... Technical Risk

Page 32: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

With every step we want to learn something...

Page 33: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Testing as a Practice...

Page 34: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

practice: the actual application or use of an idea, belief, or method, as opposed to theories relating to it: the principles and practice of teaching | the recommendations proved too expensive to put into practice.

Page 35: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Creating a Vision with StakeholdersPeter Senge, Vision Strategies

Col

labo

ratio

n

Effort

Co-Creating

Consulting

Testing

SellingTelling

Page 36: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Teams normally work with User Stories to agree what needs to be built and how…As a Returning Customer, I

want to jump with one click to the checkout page, so that I can purchase good quicker

Page 37: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

- Detail about payment are visible - Shipping address is visible - I can change quantity of the items

User Stories do have Acceptance Criteria on their back, Team wouldn't commit to them, without knowing when they would be considered finished

Page 38: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Backlog

Definition of Ready

Definition of Done

Shippable Product

Page 39: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Continuous ImprovementAgile Team achieve continuous improvement by deciding how to Test a new behavior or practice, even before starting introducing a change…

Page 40: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

do not overload yourPeople

(無理

: mur

i)Ove

rbur

den

Page 41: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

Unnecessary Variations (斑: mura) keep the Flow

Even

Page 42: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

remove non value addingActivities

Wasteful Activities

(無駄: muda)

Page 43: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Agile Teams also test their behavior constantly...

Page 44: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

... and learn how to get better over time...

Page 45: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

... BUT it's not about finding who's right and who's wrong!

Page 46: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Working Agreements 1. We want to pair when stories

are bigger than 2 points, so that we reduce risk

2. We want to work with ATDD on all stories, so that we will have a cleaner design

3. ...

Capturing behavior and motivation helps teams to measure their effectiveness

Page 47: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2010.

Toyota Kata & Lean A3 are very powerful together…

Page 48: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Accelerators Breaks

Goals & TryKeep

TDD on hard

story

Delay with designers

Active Learning Cycle provides guidance on what to change and what to expect from the changes…

Next: TDD on one story

Working Agreements 1. We want to pair when stories

are bigger than 2 points, so that we reduce risk

2. We want to work with ATDD on all stories, so that we will have a cleaner design

3. ...

Definition of Done ✓ Integrated in the staging

system ✓ all acceptance criteria are

fulfilled ✓ no regression ✓ PO has seen the story ✓ Performance ok

Definition of Ready ✓ User Story format ✓ Max 5pt. ✓ INVEST ✓ At least 2 Acceptance Criteria

All Stories worked

with TDD No extra effort

for infrastructure

Doing TDD on everything

1 size > estimated

90% coverage of

the code

Page 49: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

self-

organi

zed

managed

Page 50: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Push

PullIndividual

Team

Com

pliance

Colla

borati

onCompetition

Focu

s on v

alue

Page 51: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Cultivation Competence

Control

Peopl

eIm

personal

Actuality

Possibility

Collaboration

William Schneider - The four Core Cultures

Agile Values & Principles

Page 52: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Experiences

Beliefs

Actions

Results

CultureMan

age

Lead

The “Results Pyramid” is copyright of Partners in Leadership LLC

shift

the

balanc

e

coaching is an ongoing long term investment

Page 53: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

How do we know if this is working for us?

Goal PSF NC

Agile Strategy Map ™

Represent the Goal we want to achieve

Possible Success Factor (PSF) represent a hypothesis about a “factor” that would allow to achieve the Goal

Necessary Condition (NC), is what is needed in order to fulfill the Success Factor

Page 54: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

How can we make sure we are not missing something?

Goal

Agile Strategy Map ™

PSF#1

PSF#1: we believe that by consolidating all projects in one Portfolio, we will be able to make better business decisions

NC#1.1

NC#1.2

NC#1.1.1

To verify the hypothesis we define what is needed in order to start a pilot aiming at verifying the validity of the PSF#1NC#1.1: we need to list at least 3 projects per product area

NC#1.1.1: we need to chose projects and define comparable dimensions such as: business value, impact, (cost?)NC#1.2: we need to define a sample Portfolio funnel, and check that Teams can deliver with the provided information

Page 55: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Ok, it worked… now what’s next?

Goal CSF#1 NC#1.1

NC#1.2

Agile Strategy Map ™

CSF#1: we have to consolidate all projects in one Portfolio, so that will be able to make better business decisions

NC#1.1.1

The Pilot was successful...

The Success Factor, becomes Critical (CSF)

Page 56: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

1. Testing is an attitude, because if we embrace the Agile Manifesto and its principles, we have to accelerate learning, and this requires individual commitment to validate assumptions

Page 57: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

2. Testing is an approach, it requires to systematically initiate everything we do by understanding the constraints, the expected outcomes, and the possible learnings

Page 58: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

3. Testing is a practice, because once we develop the attitude and learned the approach, we will be able to emerge practices, which will make us more effective at learning

Page 59: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

4. Everybody makes mistake, every mistake is an opportunity to learn, and we need to be ready to learn and capitalize on that experience. If we are not, it will be just a failure!

Page 60: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

5. Testing is a Team responsibility. Stay away from boxing responsibilities into roles… you will hinder self-organization and shared commitment

Page 61: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Thank

You!

Page 62: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

More food for thought...

http://slideshare.net/tumma72

Page 63: Agile Testing is nonsense, because Agile is about testing!

agile42 | We advise, train and coach companies building software www.agile42.com | All rights reserved. Copyright © 2007 - 2009.

Copyrights noticeAll material produced in this presentation is protected by the Creative Common License 3.0 (by-nc-sa).