Post on 22-Jan-2018
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?