Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Storystorming P3X London

Storystorming P3X London

Storystorming is a lean combination of methods to collaboratively explore and design user journeys, work procedures and business processes as well as to refine them into working software models.

Martin Schimak

October 31, 2019
Tweet

More Decks by Martin Schimak

Other Decks in Programming

Transcript

  1. Storystorming
    P3X London, Oct. 31st 2019
    @martinschimak
    at DDD Cologne & Hamburg
    September 2nd / 3rd 2019

    View Slide

  2. I imagine it's 2029. And I
    "Software Developers" …

    View Slide

  3. View Slide

  4. View Slide

  5. View Slide

  6. All these people seem to be saying
    "Let's figure out what to do!"

    View Slide

  7. Try for yourself and
    "Software Developers"!

    View Slide

  8. View Slide

  9. View Slide

  10. View Slide

  11. Many are still living a reality and mindset of
    80% implementation

    View Slide

  12. I imagine us to be living a mindset of
    80% collaboration

    View Slide

  13. Very well :-)
    what do you
    need it for?
    I need a
    checkbox. :-)

    View Slide

  14. The idea of collaboration is simple
    come together consciously and regularly
    domain experts meet technology experts
    to analyze problems and design solutions

    View Slide

  15. The idea of collaboration is simple
    come together consciously and regularly
    domain experts meet technology experts
    to analyze problems and design solutions

    View Slide

  16. How? We don't need to reinvent the wheel.

    View Slide

  17. Understand the bigger picture of your domain!
    Alberto Brandolini
    EVENTSTORMiNG

    View Slide

  18. Stefan Hofer and
    Henning Schwentner
    Easily explore specific domain scenarios!

    View Slide

  19. Define goals, strategic and tactical options!
    Gojko Adzic
    IMPACT
    MAPPING

    View Slide

  20. helps to access this collaboration wisdom

    View Slide

  21. Basic Building Blocks
    Human
    or Group
    Event
    or Outcome
    Machine
    or Component
    Statement
    or Object
    Command
    or Activity
    Question
    or Search
    Deliverable
    or Proposal
    Behavior
    or Constraints
    Attention
    or Exclamation

    View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. Ticketing
    screen
    plan
    available
    seats
    Customer Cashier
    confirms
    reservation
    available
    seats
    reservation
    number
    recommends
    asks for
    screen
    plan
    reservation
    finds seats in
    confirm
    seats in
    generates
    tells
    1 2
    3
    4
    5
    6
    7
    Example of classical

    View Slide

  26. Attention
    Annotation
    Basic building blocks of Domain Storytelling
    Actor Work Object
    Activity
    + + + Context
    @martinschimak

    View Slide

  27. Make storytelling as simple as it really is
    @martinschimak
    "A story consists of
    sentences. A sentence
    consists of three basic
    building blocks!"
    Subject Predicate Object

    View Slide

  28. @martinschimak
    A very first sentence
    Customer asks for ticket
    reservation

    View Slide

  29. @martinschimak
    The sentence with a receiving partner
    Cashier
    Customer asks for
    ticket
    reservation

    View Slide

  30. @martinschimak
    Time
    Cashier
    Customer asks for
    ticket
    reservation
    Actors
    Story

    View Slide

  31. @martinschimak
    Time
    Cashier
    Customer asks for
    ticket
    reservation
    Actors
    finds
    seats in
    screen plan
    Ticketing
    System
    A
    B
    C
    Story

    View Slide

  32. @martinschimak
    Time
    Cashier
    Customer asks for
    ticket
    reservation
    Actors
    finds
    seats in
    screen plan
    Ticketing
    System
    suggests
    available
    seats
    Story
    A
    B
    C
    1 2 3
    Seats are
    available

    View Slide

  33. Drafting a blockchain workflow for a steel industry startup
    Simple customer interaction
    scenario 1
    Scenario with resellers
    involved 2

    View Slide

  34. I need a
    checkbox. :-)
    Sandra
    Ticketing
    Manager
    Very well :-)
    what do you
    need it for?
    Me

    View Slide

  35. We need to block
    the zones … so
    the cashiers can
    finish their calls.
    Sandra
    Ticketing
    Manager

    View Slide

  36. The domain
    we are talking about
    A zone
    of seats

    View Slide

  37. View Slide

  38. During the calls
    suggested seats
    are reserved by
    other cashiers. OK … does that
    happen often?
    Me
    Sandra
    Ticketing
    Manager

    View Slide

  39. Andrew says,
    it happens all the
    time. He thinks we
    can solve it with a
    simple check box. OK. I'll talk to
    Andrew then.
    Me
    Sandra
    Ticketing
    Manager

    View Slide

  40. I better
    understand this
    checkbox before it
    develops a life of
    its own ... :-)
    Me
    Seats are
    reserved by
    other cashiers

    View Slide

  41. Stadium
    cashier
    Ticketing
    System
    Subject Predicate Object Subject
    reserves
    seats
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.

    View Slide

  42. Subject Predicate Object Subject
    Stadium
    cashier
    Ticketing
    System
    reserves
    seats
    seats 14
    and 15,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.

    View Slide

  43. Subject Predicate Object Subject
    Stadium
    cashier
    Ticketing
    System
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.

    View Slide

  44. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Stadium
    cashier
    Ticketing
    System
    seats 15
    and 16,
    sector A2
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.

    View Slide

  45. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Stadium
    cashier
    Ticketing
    System
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.

    View Slide

  46. Let's capture this!

    View Slide

  47. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.
    Ticketing
    System
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha

    View Slide

  48. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Ticketing
    System
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.
    Soccer fan
    calls and
    asks for
    reservation of
    two tickets in
    sector A2 on
    June 10th
    suggests
    seats 14
    and 15,
    sector A2
    finds in
    screen plan
    seats 14 and
    15, sector A2
    block
    sector A2

    View Slide

  49. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Ticketing
    System
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.
    Soccer fan
    calls and
    asks for
    reservation of
    two tickets in
    sector A2 on
    June 10th
    suggests
    best
    available
    seats
    suggests
    seats 14
    and 15,
    sector A2
    select
    sector A2
    Same seats
    are suggested
    to all cashiers

    View Slide

  50. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Ticketing
    System
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.
    Soccer fan
    calls and
    asks for
    reservation of
    two tickets in
    sector A2 on
    June 10th
    suggests
    seats 14
    and 15,
    sector A2
    select
    sector A2
    Same seats
    are suggested
    to all cashiers
    suggests
    and block
    best available
    and yet
    unblocked
    seats

    View Slide

  51. Subject Predicate Object Subject
    reserves
    rejects
    reservation
    attempt
    seats 14
    and 15,
    sector A2
    Ticketing
    System
    reserves
    generates
    reservation
    #THBQ,
    seats 15, 16,
    sector A2
    Stadium
    cashier
    Andrew
    Stadium
    cashier
    Samantha
    seats 15
    and 16,
    sector A2
    Seats are
    reserved by
    other cashiers
    Attention!
    Blurry.
    Soccer fan
    calls and
    asks for
    reservation of
    two tickets in
    sector A2 on
    June 10th
    suggests
    slightly
    varying
    available
    seats
    suggests
    seats 14
    and 15,
    sector A2
    select
    sector A2
    Same seats
    are suggested
    to all cashiers

    View Slide

  52. Now we are talking. Let's remember this.

    View Slide

  53. Read the blogpost?
    https://medium.com/plexiti
    Storystorming goes
    Domain Storytelling
    Explore your domain—by literally watching your language
    @martinschimak

    View Slide

  54. Investigating a (largely paper-based) support process
    Here is the pain with
    mistakes made in requests
    1
    Here is the correction
    pain resulting from it
    2

    View Slide

  55. Some results from
    EventStorming
    Capturing two
    detail "stories"
    1
    2
    3
    Getting
    side-tracked :-)
    Considering a
    few deliverables
    4
    Discussing billing improvements for a telco provider

    View Slide

  56. Component Statement
    or Object
    Command
    Query
    Event
    Behavior
    Event
    Event
    Event
    Command
    Human
    System
    Event
    Object
    Requiring
    Attention Behavior
    Activity
    Considered
    Detail
    Considered
    Detail
    Considered
    Detail
    Stake
    holder
    Considered
    Deliverable
    Requiring
    Measurement

    View Slide

  57. Thank you!
    Storystorming in Vienna? Visit https://techtalk.at/trainings/storystorming
    And in-house workshops? Everywhere! Contact [email protected]

    View Slide