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

An Introduction to Domain Storytelling @ DDD Iran [ENG]

B7a8524f73d760a4e2e403e43c6f0c70?s=47 Stefan Hofer
September 10, 2020

An Introduction to Domain Storytelling @ DDD Iran [ENG]

B7a8524f73d760a4e2e403e43c6f0c70?s=128

Stefan Hofer

September 10, 2020
Tweet

Transcript

  1. Brought to you by Stefan (@hofstef) who works for WPS

    – Workplace Solutions Ltd. in Germany.
  2. @hofstef @wps_de business gibberish { nerd; speek; } Domain Expert

    Software Expert
  3. @hofstef @wps_de Fach- sprache Domain Expert Software Expert

  4. @hofstef @wps_de Thanks to DDD Europe for this awesome picture

    of Henning!
  5. Fach- sprach e Why Domain Storytelling? common understanding There is

    more! • Finding bounded contexts/service boundaries • Designing a domain model • Working with requirements • Designing workflows • …
  6. @hofstef @wps_de Schedule 1. See how it works (demo) 2.

    Understand how it works 3. Real-world examples 4. Your questions
  7. @hofstef @wps_de

  8. @hofstef @wps_de Pictographic Language

  9. @hofstef @wps_de actor work object activity annotation

  10. @hofstef @wps_de gate agent transport orders

  11. @hofstef @wps_de person people system

  12. @hofstef @wps_de …orders transport at …creates new order in …prints

    reservation New order transport reservation orders prints in creates at
  13. @hofstef @wps_de The gate agent orders a transport at the

    bus dispatcher. orders transport bus dispatcher gate agent
  14. @hofstef @wps_de 1 1 1

  15. @hofstef @wps_de orders transport bus dispatcher gate agent 1 order

    creates scheduling system 2 assigns 3 bus order
  16. @hofstef @wps_de gives assignment bus driver bus dispatcher 5 assignment

    completed to 7 notifies marks as completed assignment scheduling system 8
  17. @hofstef @wps_de CONCRETE STORIES VS. ABSTRACT PROCESSES

  18. @hofstef @wps_de 3 good examples are better than 1 bad

    abstraction
  19. @hofstef @wps_de Draw here Leave some empty space there →

    Annotations, variations, and purpose Preconditions, assumptions, and triggers
  20. @hofstef @wps_de Scope

  21. @hofstef @wps_de GRANULARITY

  22. @hofstef @wps_de Workshops

  23. @hofstef @wps_de

  24. @hofstef @wps_de

  25. @hofstef @wps_de

  26. @hofstef @wps_de

  27. @hofstef @wps_de Whiteboard Kit Picture: W. Kinkeldei @wkinkeldei

  28. @hofstef @wps_de

  29. @hofstef @wps_de draw.io, Viso, Gliphy, Miro… asks for Reservation (movie,

    time, seats) cashier customer 1 Screen plan finds available seats in CineSoft 2 seats recommends 3
  30. @hofstef @wps_de github.com/WPS/domain-story-modeler

  31. @hofstef @wps_de A Real-World Example Build Software to Coordinate Road

    Work
  32. @hofstef @wps_de

  33. @hofstef @wps_de

  34. @hofstef @wps_de

  35. @hofstef @wps_de

  36. @hofstef @wps_de

  37. @hofstef @wps_de

  38. @hofstef @wps_de https://www.wps.de/portfolio-items/roads/

  39. @hofstef @wps_de Company Pension Scheme retirement piggy bank CC-BY aag_photos,

    flickr.com
  40. @hofstef @wps_de

  41. @hofstef @wps_de

  42. @hofstef @wps_de

  43. @hofstef @wps_de A Real-World Example: Driving passengers from gate to

    runway
  44. @hofstef @wps_de As-Is Process: Driving Passengers from Gate to Runway

  45. @hofstef @wps_de Pain Points

  46. @hofstef @wps_de An improved to-be process

  47. @hofstef @wps_de Mockups for the new App

  48. @hofstef @wps_de A Glimpse of the Initial Product Backlog Nr

    User Story Nutzen Prio 1 Als Busfahrer melde ich mich mit der Ausweisnummer an der Bus APP an, um die notwendige Authentifizierung und Autorisierung durchzuführen Hoch 1 2 Als Busfahrer bearbeite ich meinen Auftrag in der Bus APP, um abrechnungsrelevante Daten zu dokumentieren Hoch 2 3 Als Busfahrer melde ich eine Störung zum Auftrag in der Bus APP, um dem Disponenten die Möglichkeit zum adhoc Eingriff in den Prozess zu ermöglichen Mittel 6 4 Als Busfahrer kann ich eine Pause anfragen, um nach der Umsetzung den gesetzlichen Anforderungen zu genügen Hoch 3
  49. @hofstef @wps_de eBook and free sample available at: https://leanpub.com/domainstorytelling

  50. @hofstef @wps_de Twitter: @hofstef @hschwentner #DomainStorytelling Slides: https://speakerdeck.com/hofstef Book: https://leanpub.com/domainstorytelling

    Resources: https://github.com/hofstef/awesome-domain-storytelling Slack: ddd-cqrs-es.slack.com Invite yourself: http://j.mp/ddd-es-cqrs Slack Channel: #domain-storytelling http://domainstorytelling.org The pictures used in this talk are public domain, unless noted otherwise. Screenshots and examples © WPS - Workplace Solutions GmbH