Test Driven Product: Applying Test Driven Thinking to the Product World

Post on 22-Jan-2018

127 views 2 download

Transcript of Test Driven Product: Applying Test Driven Thinking to the Product World

Test Driven Product:

Applying Test Driven Thinking

to the Product World

David Hussman

Test Driven ProductApplying Test Driven Thinking to the Product World

David Hussman

Product

Kent Beck

(wanna be)

I did not write this …

Product

Kent Beck

(wanna be)

… but it had a big impact on me

And speaking of books …

… this one made a mark as well

Let’s reflect a bit …

Once upon a conference …

We were out to “test infect” people

We were keenly focused on “unit tests”

“If something is good, let’s do it more (or all the time)”

-“If something hurts,

let’s do it until it does not”

And the ideas became “sticky” …

TDD (Test Driven Development)

Test First Development

Make it work, make it right

Red, Green, Clean

Etc.

As TDD exploded, we questioned it further

Sometimes it was good

We learned that “tests told the story of the code”

We showed that the tests had value that went far beyond finding bugs

Sometimes the popularity was not good

Bad tests led to more bad code

“When the design thinking was lost, so was the process”

We over focused on developers

Some of us started looking for something new …

Questions so far?

Enter ATDD (Acceptance Test Driven Development)

Don’t start working on a story before you’ve expressed the tests in code

“Pair programming” became “pairing”

Dev & Test - Dev & Prod - Test & Prod - etc.

“Test Driven Development” was refactored to “Test Driven”

(sometimes)

Story tests (acceptance tests) added context and clarified stories

Where unit tests told the story of the code, story tests told the story of the product

(sometimes)

Often, story tests told the product story

Often times, “acceptance criteria” lost site of product learning and

over focused on definition of done

We were still seeing problems

We were getting better but still building to much of the wrong thing

Enter product driven development

Questions so far?

Here is a simple, non-tech example …

They’re refocused on impact

Here is a product development example

Here is a multi-team example

Universe of all Product

Ideas

They’re all following a simple process …

Product Choices

Collaborative Framing

Pragmatic Personas

Story Mapping

User Interviews

Market Research

Customer Journeys

Opportunity Mapping

Story Splitting

Validation Measures

Story Writing

Prototyping

… narrowing choices w/ validation measures (product tests)

Story telling produces tons of product tests

Here why (and how) it works

A vehicle that promotes design thinking …

… also produces product tests

Product tests are best expressed as measurable impact in production

Impact can be measured and viewed like this

Behavior can be changed like this

Impact Driven Development

Simply put: don’t start working on a story until you

discuss how you will measure the impact

Let’s close with an extreme example

Experiments running in production that help Inform and produce better customers experiences

Test Driven Product:

Applying Test Driven Thinking

to the Product World

David Hussman

Questions?