SlideShare une entreprise Scribd logo
1  sur  14
E N A B L I N G E F F I C I E N T H E A L T H C A R E
Domain Storytelling
Mufrid Krilic, Senior Software Developer/Coach, DIPS AS, Norway
Twitter: @mufridk
How to Learn a Domain Language
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Lightweight method to learn a domain language
– By applying the same principles we use when we try to learn a foreign
language
• Listen to people who speak the language
– Domain experts
• Repeat what they had said
• Get a confirmation that what you said was correct
 Increase ability to communicate with domain experts on their terms
Motivation
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Arrange a workshop with domain experts
– Domain experts
– Development team
– Facilitator
 The facilitator ask domain experts to explain the way they work
 Important that explanation is centered around short examples
How does it work?
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 The facilitator follows the explanation by visualizing each example as
a Domain Story
 The domain experts confirm whether or not the visualized story is
correct
 The facilitator checks if everybody in the room agree
 Comments and deviations are noted as textual annotations
Facilitating Domain Storytelling
E N A B L I N G E F F I C I E N T H E A L T H C A R E
The Domain Story Syntax - Build Visual Sentences
E N A B L I N G E F F I C I E N T H E A L T H C A R E
Any rules?
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Focus on what happens in the domain not on what could happen
 If domain experts differ on how the business process is conducted
– For noticeable differences create another Domain Story
– For minor differences make a comment as a textual annotation
No Branching or Parallel Flows
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 An actor should not occur more than once in a story
 A work object can occur multiple times
 Label activities in order in which they occur
 Avoid technical jargon
Story is Preferably a Short Example
E N A B L I N G E F F I C I E N T H E A L T H C A R E
Demo - Use Case from Healthcare – Group Treatment
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 For patients with identical diagnoses sometimes the treatment has
the best effect when done in a group of patients
 Often applied in psychiatry
Group Treatment in Healthcare
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Actor - Physician
– decides to start a group treatment for a group of patients
 Actor - Supporting consultant
– Creates a patient group and lays out a schedule
– When patients check-in for an appointment in the group:
• Register patient attendance
• Deal with no-show and cancellations
• Follow-up on patient billing and reporting to authorities
– Notice patients on appointments which they do not need to attend
Group Treatment – Basic Business Flow
E N A B L I N G E F F I C I E N T H E A L T H C A R E
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Event Storming,
– By Alberto Brandolini: www.eventstorming.com
– Tell the story of the domain by plotting a timeline using domain events
– Domain Event: Verb in a past tense for something that domain expert cares
about
 Impact Mapping
– By Gojko Adzic: www.impactmapping.org
– Focus on the goal you are trying to achieve, actors who can help you achieve
it and impacts you want to observe on the actors rather than focus on the
software you want to deliver
Alternative Methods to Learn a Domain Language
E N A B L I N G E F F I C I E N T H E A L T H C A R E
 Domain Storytelling references
– Stefan Hofer and Henning Schwentner
– www.domainstorytelling.org
 Community on Slack
– #domain-storytelling channel at https://ddd-cqrs-es.slack.com
 Domain Storytelling book
References and Further Reading

Contenu connexe

Similaire à Domain storytelling

Presentation skills with guided sign post
Presentation skills with guided sign postPresentation skills with guided sign post
Presentation skills with guided sign post
Timothy Wooi
 

Similaire à Domain storytelling (20)

Chapter 13: Speaking to Inform (Public Speaking and Persuasion)
Chapter 13: Speaking to Inform (Public Speaking and Persuasion)Chapter 13: Speaking to Inform (Public Speaking and Persuasion)
Chapter 13: Speaking to Inform (Public Speaking and Persuasion)
 
Presentation skills with guided sign post
Presentation skills with guided sign postPresentation skills with guided sign post
Presentation skills with guided sign post
 
management la gestion industrielle projet
management  la gestion industrielle projetmanagement  la gestion industrielle projet
management la gestion industrielle projet
 
Designers Are From Mars, Engineers Are From Venus
Designers Are From Mars, Engineers Are From VenusDesigners Are From Mars, Engineers Are From Venus
Designers Are From Mars, Engineers Are From Venus
 
Phone Survey Software: The All You Can Know Guide
Phone Survey Software: The All You Can Know GuidePhone Survey Software: The All You Can Know Guide
Phone Survey Software: The All You Can Know Guide
 
5 Steps to Writing a Resume that Sells
5 Steps to Writing a Resume that Sells5 Steps to Writing a Resume that Sells
5 Steps to Writing a Resume that Sells
 
Product Innovation Storytelling - 5 tips to breakthrough to your consumers
Product Innovation Storytelling - 5 tips to breakthrough to your consumersProduct Innovation Storytelling - 5 tips to breakthrough to your consumers
Product Innovation Storytelling - 5 tips to breakthrough to your consumers
 
The 10 commandments for starting the great IT outsourced project
The 10 commandments for starting the great IT outsourced projectThe 10 commandments for starting the great IT outsourced project
The 10 commandments for starting the great IT outsourced project
 
Upwork profile optimization secrets
Upwork profile optimization secretsUpwork profile optimization secrets
Upwork profile optimization secrets
 
Writing an engineering technical report
Writing an engineering technical reportWriting an engineering technical report
Writing an engineering technical report
 
Easy Tips for Public Speaking | Raychel Harvey Jones
Easy Tips for Public Speaking |  Raychel Harvey JonesEasy Tips for Public Speaking |  Raychel Harvey Jones
Easy Tips for Public Speaking | Raychel Harvey Jones
 
Webinar: how to get off to a fast start with your intelligent assistant progr...
Webinar: how to get off to a fast start with your intelligent assistant progr...Webinar: how to get off to a fast start with your intelligent assistant progr...
Webinar: how to get off to a fast start with your intelligent assistant progr...
 
Sherlene Lian's Work Portfolio
Sherlene Lian's Work PortfolioSherlene Lian's Work Portfolio
Sherlene Lian's Work Portfolio
 
The Developer Customer Profile
The Developer Customer ProfileThe Developer Customer Profile
The Developer Customer Profile
 
The five elements of operational excellence
The five elements of operational excellenceThe five elements of operational excellence
The five elements of operational excellence
 
BUSINESS ANALYST SKILLS LIST 2022
BUSINESS ANALYST SKILLS LIST 2022BUSINESS ANALYST SKILLS LIST 2022
BUSINESS ANALYST SKILLS LIST 2022
 
How to Get Buy-in For Your Personalisation and Experimentation Platform | Opt...
How to Get Buy-in For Your Personalisation and Experimentation Platform | Opt...How to Get Buy-in For Your Personalisation and Experimentation Platform | Opt...
How to Get Buy-in For Your Personalisation and Experimentation Platform | Opt...
 
[Webinar] Getting Buy-in for Your Experimentation and Personalisation Program
[Webinar] Getting Buy-in for Your Experimentation and Personalisation Program[Webinar] Getting Buy-in for Your Experimentation and Personalisation Program
[Webinar] Getting Buy-in for Your Experimentation and Personalisation Program
 
Individual course project assignments crafting a personal entre
Individual course project assignments crafting a personal entreIndividual course project assignments crafting a personal entre
Individual course project assignments crafting a personal entre
 
Atlassian collaboration state of the union - Matt Hodges
Atlassian collaboration state of the union - Matt HodgesAtlassian collaboration state of the union - Matt Hodges
Atlassian collaboration state of the union - Matt Hodges
 

Plus de Mufrid Krilic

Plus de Mufrid Krilic (6)

Multiple Models with Multiple Perspectives in a Cross-Functional Team - KanDD...
Multiple Models with Multiple Perspectives in a Cross-Functional Team - KanDD...Multiple Models with Multiple Perspectives in a Cross-Functional Team - KanDD...
Multiple Models with Multiple Perspectives in a Cross-Functional Team - KanDD...
 
Dataeierskap som grunnlag for applikasjonsutvikling - Make Data Smart Trondhe...
Dataeierskap som grunnlag for applikasjonsutvikling - Make Data Smart Trondhe...Dataeierskap som grunnlag for applikasjonsutvikling - Make Data Smart Trondhe...
Dataeierskap som grunnlag for applikasjonsutvikling - Make Data Smart Trondhe...
 
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
Aligning Bounded Contexts with Subdomains in Legacy Code - NDC Oslo 2021
 
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
Building Quality in Legacy Systems - The Art of Asking Questions, JavaZone VR...
 
Building Quality in Legacy Systems - The Art of Asking Questions
Building Quality in Legacy Systems - The Art of Asking QuestionsBuilding Quality in Legacy Systems - The Art of Asking Questions
Building Quality in Legacy Systems - The Art of Asking Questions
 
Motivate! Do Not Teach - FIRST Championship Conferences Detroit 2018
Motivate! Do Not Teach - FIRST Championship Conferences Detroit 2018Motivate! Do Not Teach - FIRST Championship Conferences Detroit 2018
Motivate! Do Not Teach - FIRST Championship Conferences Detroit 2018
 

Dernier

Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 

Dernier (20)

%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 

Domain storytelling

  • 1. E N A B L I N G E F F I C I E N T H E A L T H C A R E Domain Storytelling Mufrid Krilic, Senior Software Developer/Coach, DIPS AS, Norway Twitter: @mufridk How to Learn a Domain Language
  • 2. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Lightweight method to learn a domain language – By applying the same principles we use when we try to learn a foreign language • Listen to people who speak the language – Domain experts • Repeat what they had said • Get a confirmation that what you said was correct  Increase ability to communicate with domain experts on their terms Motivation
  • 3. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Arrange a workshop with domain experts – Domain experts – Development team – Facilitator  The facilitator ask domain experts to explain the way they work  Important that explanation is centered around short examples How does it work?
  • 4. E N A B L I N G E F F I C I E N T H E A L T H C A R E  The facilitator follows the explanation by visualizing each example as a Domain Story  The domain experts confirm whether or not the visualized story is correct  The facilitator checks if everybody in the room agree  Comments and deviations are noted as textual annotations Facilitating Domain Storytelling
  • 5. E N A B L I N G E F F I C I E N T H E A L T H C A R E The Domain Story Syntax - Build Visual Sentences
  • 6. E N A B L I N G E F F I C I E N T H E A L T H C A R E Any rules?
  • 7. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Focus on what happens in the domain not on what could happen  If domain experts differ on how the business process is conducted – For noticeable differences create another Domain Story – For minor differences make a comment as a textual annotation No Branching or Parallel Flows
  • 8. E N A B L I N G E F F I C I E N T H E A L T H C A R E  An actor should not occur more than once in a story  A work object can occur multiple times  Label activities in order in which they occur  Avoid technical jargon Story is Preferably a Short Example
  • 9. E N A B L I N G E F F I C I E N T H E A L T H C A R E Demo - Use Case from Healthcare – Group Treatment
  • 10. E N A B L I N G E F F I C I E N T H E A L T H C A R E  For patients with identical diagnoses sometimes the treatment has the best effect when done in a group of patients  Often applied in psychiatry Group Treatment in Healthcare
  • 11. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Actor - Physician – decides to start a group treatment for a group of patients  Actor - Supporting consultant – Creates a patient group and lays out a schedule – When patients check-in for an appointment in the group: • Register patient attendance • Deal with no-show and cancellations • Follow-up on patient billing and reporting to authorities – Notice patients on appointments which they do not need to attend Group Treatment – Basic Business Flow
  • 12. E N A B L I N G E F F I C I E N T H E A L T H C A R E
  • 13. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Event Storming, – By Alberto Brandolini: www.eventstorming.com – Tell the story of the domain by plotting a timeline using domain events – Domain Event: Verb in a past tense for something that domain expert cares about  Impact Mapping – By Gojko Adzic: www.impactmapping.org – Focus on the goal you are trying to achieve, actors who can help you achieve it and impacts you want to observe on the actors rather than focus on the software you want to deliver Alternative Methods to Learn a Domain Language
  • 14. E N A B L I N G E F F I C I E N T H E A L T H C A R E  Domain Storytelling references – Stefan Hofer and Henning Schwentner – www.domainstorytelling.org  Community on Slack – #domain-storytelling channel at https://ddd-cqrs-es.slack.com  Domain Storytelling book References and Further Reading

Notes de l'éditeur

  1. Learning a foreign language – amazing experience - Domain Storytelling a technique that helps us achieve the same amazing experience Presentation, DIPS, enterprise software for healthcare industry, in market for over 25 years
  2. Reference to introduction about foreign languages
  3. When not fluent in the domain it is easier to communicate by concrete examples. The generic abstract patterns of the business can later be deduced from the concrete examples
  4. Visual representation helps involve everybody in the room Even in a small workshop it is hard to get everybody to agree. Quick annotations allow for multiple perspectives to be respected while keeping the flow of the workshop
  5. Mechanics of Domain Storytelling
  6. Well, every game has rules, so does this one…
  7. By labeling activities in order in which they occur you will be able to follow the story from the beginning to the end
  8. As mentioned, my background is from software development for healthcare industry. It seemed natural to present use case from this domain, drawing from the experience when working for my company DIPS. It is also something non-trivial, hopefully resembling the level of complexity in your domain
  9. Let’s see how a Domain Story for the check-in process looks like
  10. Compiled using the Domain Storytelling tool on the web-site: https://www.wps.de/modeler/. TODO: Textual annotation for No-Show and cancellations Another Domain Story for notifying patients on appointment they do not need to attend
  11. Reference to workshop by Thomas Pierrain and Bruno Boucard Differences between Domain Storytelling and Event Storming Both methods are pretty versatile and can also be combined. If you are interested in the timeline, Event Storming might be a better start. If you want to know how people and/or software systems work together, go for Domain Storytelling. If the problem space is very vague, maybe even chaotic, I would first try Event Storming. If you think people can articulate what they are doing, Domain Storytelling should work well.