$30 off During Our Annual Pro Sale. View Details »

Let the Uncertainty be Your Friend: Finding Your Path in a Wiggly Road

Let the Uncertainty be Your Friend: Finding Your Path in a Wiggly Road

NewCrafts 2018 (Paris, France)

Choosing the right area to focus on has a tremendous effect on the path of success for your organization's products and services. This is especially important when you are operating under uncertainty in an exploratory fashion, where it's not clear what your customers' needs and core jobs are. Challenge is to know whether you are channelling your efforts to solving the right problems for your customers. Are they reliably able to tell you what is not quite working as expected with your products?

In this talk, I will introduce you the Hypothesis-Driven Development approach which lets you build software in an uncertainty in an iterative way by testing the assumptions about your customers and also allows you to see development iterations as experiments. Besides going through this in theory, I will also give you a real-world example for the implementation of this approach in Web application in coordination with the help of tools such as Google Analytics, Hotjar and Intercom.

This approach will let you have another tool in your tool belt in order to succeed when operating in an uncertain problem space. By the end of the talk, you will also have a good example to take away and relate to your next challenges in a similar context.

Tugberk Ugurlu

May 17, 2018
Tweet

More Decks by Tugberk Ugurlu

Other Decks in Programming

Transcript

  1. Let the Uncertainty Be Your Friend!
    Finding Your Path in a Wiggly Road
    Tugberk Ugurlu
    @tourismgeek
    tugberkugurlu.com

    View Slide

  2. BONJOUR!
    I’m Tugberk
    I love creating products
    and making an impact
    on people’s lives
    You can !nd me at
    @tourismgeek
    3

    View Slide

  3. STORY

    View Slide

  4. Beyond the
    problem fit 5

    View Slide

  5. Working with
    assumptions 6

    View Slide

  6. 7
    The Goal:
    Build the right thing for
    the business!
    https://flic.kr/p/38vYmN

    View Slide

  7. This talk is all
    about mindset
    Techniques don’t matter as
    long as you adhere to the
    same mindset
    8

    View Slide

  8. 9 https://flic.kr/p/ta4a

    View Slide

  9. Spike and
    stabilize
    bit.ly/SpikeAndStabilise
    10

    View Slide

  10. Focus is The Learning!
    Iterative Nature
    Take a phased
    approach to delivery!
    Iterate on vertical
    slices, improve as you
    learn more.
    Conceptual Models
    Focus on conceptual
    models to get
    feedback on, not so
    much on the
    implementation.
    Stabilize When Value
    is Proven
    Implementation could
    be rough, untested for
    most cases during the
    spike phase. Get back
    to them to stabilize
    once the value of the
    feature is proven!
    11

    View Slide

  11. 12
    Iterative Nature

    View Slide

  12. Iteratively Improving
    13
    Take it to 360
    km/h,
    release!
    Then, to
    370
    km/h,
    release!
    Finally,
    to 375
    km/h,
    release!

    View Slide

  13. Classification
    suggestions
    through data
    discovery for SQL
    Server databases
    14
    Conceptual Models

    View Slide

  14. Classi!cation
    suggestions listed
    for each column
    15
    Conceptual Models

    View Slide

  15. Stabilize When Value is
    Proven

    View Slide

  16. Validation
    techniques 17

    View Slide

  17. Qualitative
    Information that can't actually be
    measured

    View Slide

  18. 19
    Talking to Users
    https://flic.kr/p/UD5grg

    View Slide


  19. If I had asked people
    what they wanted, they
    would have said faster
    horses.
    - Henry Ford (maybe?)

    View Slide

  20. The Mom Test
    http://momtestbook.com/

    View Slide

  21. JTBD (Jobs-to-Be-Done)
    People buy products and services to
    get a “job” done.
    https://www.intercom.com/books/jobs-to-be-done

    View Slide

  22. Quantitative
    Information that can be measured
    and written down with numbers

    View Slide

  23. Hypothesis
    Driven
    Development 25

    View Slide

  24. A User Story
    As a student or professional, I want
    to search for language schools so
    that I can find the best school
    suited to my needs based on
    schools’ price, location and other
    criteria.
    26

    View Slide

  25. What’s wrong
    here?

    View Slide

  26. 28 https://flic.kr/p/8ZBm3K
    https://flic.kr/p/8s1FYZ
    Confident Statement!

    View Slide


  27. Hypothesis:
    A supposition or
    proposed explanation
    made on the basis of
    limited evidence as a
    starting point for further
    investigation.

    View Slide

  28. 30 https://flic.kr/p/8ZBm3K

    View Slide

  29. View Slide


  30. Would users engage with
    the search functionality
    on the site? How can we
    know this in a cheap way?
    32

    View Slide

  31. A basic search form
    on the home page
    33

    View Slide

  32. No logic to return
    results, always
    return “No results,
    sorry!” page.
    34

    View Slide

  33. TARGET
    40% of users to use
    the search, out of at
    least 50 unique
    users!
    35

    View Slide

  34. Hypothesis
    We believe that a language school
    search capability will result in users
    engaging with the search form to find
    language schools based on their
    criteria. We’ll know that we have
    succeeded when 40% of users use the
    search, out of at least 50 unique users.
    36
    https://www.thoughtworks.com/insights/blog/how-implement-hypothesis-driven-development

    View Slide

  35. Would users
    engage with the
    search
    functionality on the
    site?
    37

    View Slide

  36. 54 Unique Users
    2 days experiment
    ~5 Searches
    Per session
    37% Searched
    Out of unique number of users
    38

    View Slide

  37. 39

    View Slide

  38. Heatmap view of
    the users engaging
    with the site
    40

    View Slide


  39. Would users engage with
    the search functionality
    on the site?
    41

    View Slide

  40. YES!

    View Slide

  41. Investing further to
    provide price
    information based
    on the search
    criteria
    43

    View Slide

  42. Capturing the
    hypotheses with
    Test Cards
    https://blog.strategyzer.com/posts/2015/3/5/validate-your-ideas-with-the-test-card

    View Slide

  43. Visualising your
    progress with the
    Progress Board
    https://blog.strategyzer.com/posts/2015/3/11/lean-startup-progress-board

    View Slide

  44. Visualising your
    progress with the
    Progress Board
    https://blog.strategyzer.com/posts/2015/3/11/lean-startup-progress-board

    View Slide

  45. Visualising your
    progress with the
    Progress Board
    https://blog.strategyzer.com/posts/2015/3/11/lean-startup-progress-board

    View Slide

  46. Learning!
    This process is optimized around learning!
    48

    View Slide


  47. Remove any feature,
    process, or effort that
    does not contribute
    directly to the learning
    you seek!
    - Eric Ries (The Lean Startup)
    49

    View Slide

  48. Other Enablers 50

    View Slide

  49. 51
    Feature Flags
    https://hackernoon.com/feature-flag-driven-releases-7a7a5fee6ba7

    View Slide

  50. Design for feature
    removal in-mind
    Uncertainty on the
    value of the feature
    brings up a need to be
    able to remove the
    feature when
    necessary. Feature
    flagging makes this
    straight forward.
    Value of Feature Flags
    Decouple deployments
    from releases
    Don’t hold onto the
    code till you are
    completely done with a
    feature. Ship the code
    often under a feature
    !ag, reduce the need
    for long-running
    feature branches
    52

    View Slide

  51. Enable/disable
    features for
    environments or users
    Easy way to
    enable/disable features
    on dev/test/prod
    environments or be
    able to do A/B testing
    with users.
    Value of Feature Flags
    53

    View Slide

  52. View Slide

  53. View Slide

  54. View Slide

  55. View Slide

  56. View Slide

  57. View Slide

  58. View Slide

  59. View Slide

  60. 63
    Continuous Delivery
    https://flic.kr/p/kqUGPi

    View Slide

  61. Further Reading:
    The Lean Startup
    http://bit.ly/2KxsBsi
    64

    View Slide

  62. Further Reading:
    Value Proposition
    Design
    http://bit.ly/2GsH7yT
    65

    View Slide

  63. Coming up!
    Lean Software
    Development Book
    bit.ly/LeanSoftwareDevTheBook
    Subscribe and when notified, use
    NewCrafts2018 coupon code to
    get the book for $4.99!
    66

    View Slide

  64. THANKS!
    Any questions?
    You can !nd me at:
    @tourismgeek
    [email protected]
    Presentation template by SlidesCarnival

    View Slide