43
CONTEXT-DRIVEN TESTING IN AGILE 31 JAN 2015 Nhat Do (DD) [email protected] Vu Duong (EM) [email protected]

[HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

Embed Size (px)

Citation preview

Page 1: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING IN AGILE

31 JAN 2015

Nhat Do (DD) [email protected]

Vu Duong (EM) [email protected]

Page 2: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

AGENDA

Introduction

Context-Driven Testing in Agile

Q & A

2 Context-Driven Testing in Agile

Page 3: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

GAME WORKSHOP

3 Context-Driven Testing in Agile

Page 4: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

Context-Driven Testing in

Agile

4 Context-Driven Testing in Agile

Page 5: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

Is confirmation Is the system working like this?

5 Context-Driven Testing in Agile

Page 6: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

6 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Page 7: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

7 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Page 8: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

8 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Page 9: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

9 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Page 10: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

10 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Is Exploration and learning I’m not sure why system has to

perform like this, not like that

Testing

Page 11: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

11 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Testing

Is Exploration and learning I’m not sure why system has to

perform like this, not like that

Has an open-ended result What if system shutdown suddenly

Page 12: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

12 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Testing

Is Exploration and learning I’m not sure why system has to

perform like this, not like that

Has an open-ended result What if system shutdown suddenly

Requires sapience System would be better if…..

Page 13: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

13 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Testing

Is Exploration and learning I’m not sure why system has to

perform like this, not like that

Has an open-ended result What if system shutdown suddenly

Requires sapience System would be better if…..

Is a question that we want

to ask of the program Hey, do we want to see where his

package in US?

Page 14: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CHECKING VS TESTING

Checking

14 Context-Driven Testing in Agile

Is confirmation Is the system working like this?

Give a binary result Pass or Failed.

Is machine decidable It’s passed, ready for release

Is focused on making sure

the program does not fail I try to find bugs as much as

possible

Proves bugs exist, not their

absence

Testing

Is Exploration and learning I’m not sure why system has to

perform like this, not like that

Has an open-ended result What if system shutdown suddenly

Requires sapience System would be better if…..

Is a question that we want

to ask of the program Hey, do we want to see where his

package in US?

Is a challenging. Intellectual

process

Page 15: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CASE STUDY

15 Context-Driven Testing in Agile

Case Study from VietNam Post Tracking System

Page 16: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

WHAT’S CONTEXT-DRIVEN TESTING?

16 Context-Driven Testing in Agile

Context-driven testing is a model for developing and debugging computer software that takes into

account the ways in which the programs will be used or are expected to be used in the real world.

Tech Target

Context-driven testing is a certain type of software testing that considers the product’s use in the

field, or a performance or production environment. It is one way that developers assess software as it

is built, looking for flaws and otherwise optimizing its design before its eventual final release

Techopedia

Page 17: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

17 Context-Driven Testing in Agile

The value of any practice depends on its context.

Page 18: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

18 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

Page 19: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

19 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Page 20: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

20 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

Page 21: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

21 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Page 22: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

22 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Good software testing is a challenging intellectual process.

Page 23: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

23 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Good software testing is a challenging intellectual process.

Only through judgment and skill, exercised cooperatively throughout

the entire project, are we able to do the right things at the right times to

effectively test our products.

Page 24: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

24 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Good software testing is a challenging intellectual process.

Only through judgment and skill, exercised cooperatively throughout

the entire project, are we able to do the right things at the right times to

effectively test our products.

Practices

Page 25: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

25 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Good software testing is a challenging intellectual process.

Only through judgment and skill, exercised cooperatively throughout

the entire project, are we able to do the right things at the right times to

effectively test our products.

Practices

Projects

Page 26: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

CONTEXT-DRIVEN TESTING PRINCIPLES

26 Context-Driven Testing in Agile

The value of any practice depends on its context.

There are good practices in context, but there are no best practices.

People, working together, are the most important part of any project’s

context.

Projects unfold over time in ways that are often not predictable.

The product is a solution. If the problem isn’t solved, the product

doesn’t work.

Good software testing is a challenging intellectual process.

Only through judgment and skill, exercised cooperatively throughout

the entire project, are we able to do the right things at the right times to

effectively test our products.

Practices

Projects

Testing

Page 27: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A Nice Marriage of Agile and Context-Driven Testing?

27 Context-Driven Testing in Agile

Page 28: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

28 Context-Driven Testing in Agile

People

Focus

People, working together, are the

most important part of any project’s

context.

CDT Belief

Page 29: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

29 Context-Driven Testing in Agile

Individuals & Interactions

over process and tools People

Focus

Agile Spirit People, working together, are the

most important part of any project’s

context.

CDT Belief

Page 30: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

30 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Project

Uncertainty

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

Page 31: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

31 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Responding to Change

over following plan

Project

Uncertainty

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

Page 32: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

32 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Responding to Change

over following plan

Project

Uncertainty

Product

Focus

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

The product is a solution. If the

problem isn’t solved, the product

doesn’t work.

Page 33: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

33 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Responding to Change

over following plan

Working Software

over comprehensive documentation

Project

Uncertainty

Product

Focus

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

The product is a solution. If the

problem isn’t solved, the product

doesn’t work.

Page 34: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

34 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Responding to Change

over following plan

Working Software

over comprehensive documentation

Project

Uncertainty

Product

Focus

Client

Involvement

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

The product is a solution. If the

problem isn’t solved, the product

doesn’t work.

Only through judgment and skill,

exercised cooperatively throughout

the entire project, are we able to do

the right things at the right times to

effectively test our products

Page 35: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

A NICE MARRIAGE OF AGILE AND CONTEXT-DRIVEN TESTING?

35 Context-Driven Testing in Agile

Agile Spirit CDT Belief Individuals & Interactions

over process and tools People

Focus

Responding to Change

over following plan

Working Software

over comprehensive documentation

Customer Collaboration

over contract negotiation

Project

Uncertainty

Product

Focus

Client

Involvement

People, working together, are the

most important part of any project’s

context.

Projects unfold over time in ways

that are often not predictable.

The product is a solution. If the

problem isn’t solved, the product

doesn’t work.

Only through judgment and skill,

exercised cooperatively throughout

the entire project, are we able to do

the right things at the right times to

effectively test our products

Page 36: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

Your Turn – When it could go wrong?

36 Context-Driven Testing in Agile

Page 37: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

WHEN IT COULD GO WRONG?

37 Context-Driven Testing in Agile

When ONLY developers do testing; when it is not matured enough (no

planning, no discipline, no documentation)

Page 38: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

WHEN IT COULD GO WRONG?

38 Context-Driven Testing in Agile

When ONLY developers do testing; when it is not matured enough (no

planning, no discipline, no documentation)

When thinking that everyone can test and all can be automated

Page 39: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

WHEN IT COULD GO WRONG?

39 Context-Driven Testing in Agile

When ONLY developers do testing; when it is not matured enough (no

planning, no discipline, no documentation)

When thinking that everyone can test and all can be automated

Key Question: Is your team “mature enough” for this marriage?

Page 40: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

WHEN IT COULD GO WRONG?

40 Context-Driven Testing in Agile

When ONLY developers do testing; when it

is not matured enough (no planning, no

discipline, no documentation)

When thinking that everyone can test and all

can be automated

Key Question: Is your team “mature enough”

for this marriage?

Page 41: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

Q & A

41 Context-Driven Testing in Agile

Page 42: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

APPENDIX

42 Context-Driven Testing in Agile

http://www.hcmc-stc.org/blog/marrigage-of-scrum-and-session-based-

testing

- http://www.mountaingoatsoftware.com/agile/scrum/overview

- http://www.satisfice.com/sbtm/

Page 43: [HCMC STC Jan 2015] Workshop Of Context-Driven Testing In Agile

THANK YOU

© 2013 KMS Technology