hypothesis driven development

56
hypothesis driven development @AndrewPirkola [email protected]

Upload: andrew-pirkola

Post on 13-Apr-2017

193 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: hypothesis driven development

hypothesis driven development@AndrewPirkola

[email protected]

Page 2: hypothesis driven development

@AndrewPirkolanot a consultant

Page 3: hypothesis driven development

problems we’ll tackle today

perfection

the past

Page 4: hypothesis driven development

why is perfection bad?

Page 5: hypothesis driven development

balance

ideas

errors

Page 6: hypothesis driven development

bring me solutions,not problems

Page 7: hypothesis driven development

perfection trap

Page 8: hypothesis driven development

kodak

Page 9: hypothesis driven development

was kodak a fluke?

Page 10: hypothesis driven development

the six sigma experiment errors

ideas

Page 11: hypothesis driven development

why is perfection bad?too much perfection (six sigma) can cause us to miss big opportunities (kodak) and avoid new ideas (unsolved problems)

Page 12: hypothesis driven development

why is the past bad?

Page 13: hypothesis driven development

first impressions

Page 14: hypothesis driven development

confirmation bias

Page 15: hypothesis driven development

it’s the way we’ve always done things

Page 16: hypothesis driven development

why is the past bad?it stops us from seeing other possibilities

Page 17: hypothesis driven development

how might we find more opportunities and new possibilities?

Page 18: hypothesis driven development

bertrand russell

it's a healthy thing now and then to hang a question mark on the things you have long taken for granted

Page 19: hypothesis driven development

assumptionsbacklogs are things to do

we learn so that we can execute

we need to predict (effort, ROI, etc.), to prioritize

Page 20: hypothesis driven development

assumptions as questionswhat if our backlog was things to learn?

what if learning and executing were the same?

what if we prioritize learning based on the value we think it leads to?

how might we…

Page 21: hypothesis driven development

smart people

Page 22: hypothesis driven development

use questions

Page 23: hypothesis driven development

bring me problems, not solutions

Page 24: hypothesis driven development

what got us here,won’t get us…

…somewhere else

Page 25: hypothesis driven development

how might we find more opportunities and new possibilities?explore questions rather than doing what we know

Page 26: hypothesis driven development

how might we make a question backlog?

Page 27: hypothesis driven development

closed questions

as a call center support techniciani want search fields for name and zip codeso that I can quickly get the caller's account info

can we more quickly get account infofor call center support techsby asking clients for a name and zip code?

Page 28: hypothesis driven development

avoid known answers

can we add a new workflow state by adding it to the state table and creating a workflow in the transitions table?

can we allow users to edit statesby creating an admin utility?

Page 29: hypothesis driven development

answerable questions

as an Engineeri want code coverage of 80%so that our product quality will be improved

can we Improve product qualityby increasing code coverage to 80%?

can we reduce reported issues by 50%by increasing code coverage to 80%?

Page 30: hypothesis driven development

can we [...]by [...]

Page 31: hypothesis driven development

can we [...]for […]by [...]

Page 32: hypothesis driven development

how might we make a question backlog?answerable closed questionscan we […] by [...].

Page 33: hypothesis driven development

how might we write better questions

Page 34: hypothesis driven development

open & close to craft better questions

it is difficult to talk to bob.

why is it difficult to talk to bob?

is it difficult to talk to bob?

why is it difficult to talk to bob, for me?

Page 35: hypothesis driven development

open & close to craft better questions

we want better quality.

do we want better quality?

why do we want better quality?

can we reduce late night calls, by regression testing every release candidate?

Page 36: hypothesis driven development

how might we manage a question backlog?

Page 37: hypothesis driven development

prioritize & time-box

Page 38: hypothesis driven development

who wants to learn this >

who best to do this?

Page 39: hypothesis driven development

answer the question (this is kind of your job)

Page 40: hypothesis driven development

yes = proof (working software)

Page 41: hypothesis driven development

no ≠ failure

Page 42: hypothesis driven development

can we […]by […]

check

yes

no

run experiment

write new question(s)

write new question(s)

Page 43: hypothesis driven development

To Do Doing AnsweredChecking

Page 44: hypothesis driven development

Plan Do AdjustCheck

DoCheckCheckAdjust

Page 45: hypothesis driven development

team learning

Page 46: hypothesis driven development

how might we manage a question backlog?like today, but with less certainty and with more learning

Page 47: hypothesis driven development

lao tzuwe mold clay into a pot, but it is the emptiness inside that makes it useful

Page 48: hypothesis driven development

has this ever worked?

Page 49: hypothesis driven development

my life as a vb6 engineercontrol triplets for pick listscan we make this better by using a control?

lots of code to bind UI controls to data fieldscan we link controls to data fields by adding properties to controls?

copy paste code to call stored procedurescan we automate server code by generalizing the logic?

copy paste modules for new featurescan we automate workflows by using modules & classes?

Page 50: hypothesis driven development

how might we try the idea safely?

Page 51: hypothesis driven development

can we validate these ideasby testing them in a safe place?inspect for learningretrostraininginnovatriumsleadership teamstry an experiment

Page 52: hypothesis driven development

don't settle for perfection

Page 53: hypothesis driven development

avoid the perfection traptoo much perfection (six sigma) can cause us to miss big opportunities (kodak) and avoid new ideas (unsolved problems)

can we […] by […]

Page 54: hypothesis driven development

what you know is holding you back

Page 55: hypothesis driven development

bertrand russell

it's a healthy thing now and then to hang a question mark on the things you have long taken for granted

Page 56: hypothesis driven development

thanks @[email protected]