SlideShare a Scribd company logo
1 of 72
Download to read offline
“Please, draw me a sheep!”
“No. This sheep is already very ill. Make me another.”
“You have to see it too. This isn’t a sheep. It’s a ram. It has horns.”
“This one is too old. I want a sheep who will live a long time.”
“That’s a box. The sheep you want is inside.”
“That’s exactly how I wanted it!”
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
Mufrid Krilic
Senior Software Architect/Coach
DIPS AS, Norway
Domain Storytelling
Facilitator’s Guide to Enhance Learning in Your Organization
Her kan du legge inn
bilde. Du finner
figurer her:
Link
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
▪ In order to understand the business,
one must learn the language in which
the business operates
– i.e. a domain language
Motivation
Takeaways
1. Ability to communicate with domain experts on their terms
2. Engaging way to facilitate a customer workshop
3. Kick-off your development project with hints on context
boundaries
Ella Fitzegerald –
«They Cant’t Take That Away From Me»
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
Part 1:
Ability to communicate with domain experts on
their terms
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
What is Domain Storytelling?
How do you learn any language?
▪ Listen to people who speak the language
▪ Repeat what they had said
▪ Get a confirmation that what you said was correct
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 asks and guides domain experts to explain the way
they work
Workshop Technique
Listen and Speak the Domain Language
▪ The facilitator builds Domain Stories by visualizing examples
from the domain
Workshop discussion
flows as a series of short
examples
Domain Experts Confirm The Visual Story
▪ The facilitator checks if everybody in the room agrees
Comments and
deviations are noted as
textual annotations
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
Picture from www.domainstorytelling.org
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
▪ Focus on what happens in the domain not on what could happen
What is a Domain Story
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
▪ "You can learn more from a good
example than from a bad
abstraction.“
– after Peter Hruschka
What is a Domain Story
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
▪ No branching or parallelism in Domain
Stories
– We are not building a flow or
sequence diagram
What is a Domain Story
Any rules?
▪ For noticeable differences create another Domain Story
▪ For minor differences make a comment as a textual
annotation
What if domain experts
differ on how the
business process is
conducted?
Any rules?
▪ An actor should not occur more than once in a story
Actors in a Domain Story
Any rules?
▪ A work object can occur multiple times
Work Objects in a
Domain Story
Any rules?
▪ Label activities in order in which they occur
Activities in a Domain
Story
Any rules?
▪ Avoid technical jargon
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
Use Case: Group Therapy in a Hospital
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 therapy has the
best effect when done in a group of patients
Group Therapy in Norwegian Hospitals
Group Therapy in Norwegian Hospitals
▪ Mental Health Care
▪ Adult and Pediatric
▪ Somatic Health Care
▪ Training to improve quality of life with long-term diagnoses
Business areas in
hospitals utilizing group
therapy
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
▪ Group Planning:
– Physician decides to start a group
treatment for a group of patients
– Medical secretary creates a
patient group and lays out a
schedule
Group Therapy in Norwegian Hospitals
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
▪ Group Check-In:
– When patients check-in for an appointment in the group the
secretary:
•Registers patient attendance
•Deals with no-show and cancellations
•Informs patients on appointments which they do not need to
attend
•Follows-up on patient billing and reporting to authorities
Group Therapy in Norwegian Hospitals
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 Story for Group Check-In
Built using web-tool wps.de/modeler
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 Story for Group Check-In
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
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
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
FAQ
Alternative methods to learn a domain language
Event Storming
▪ 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
eventstorming.com
by
Alberto Brandolini
Impact Mapping
▪ Focus on
▪ the goal you are trying to achieve,
▪ actors who can help you achieve it
▪ impacts you want to observe on the actors
▪ Rather than
▪ the software you want to deliver
impactmapping.org
by
Gojko Adzic
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 exposes how time influences the business processes
– Often ignored yet significant factor
Domain Storytelling vs. Event Storming
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 focuses on communication between people
and/or software systems
Domain Storytelling vs. Event Storming
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 allows for very explorative modelling
Domain Storytelling vs. Event Storming
Deep Listening
▪ Domain Storytelling provides an environment where
everybody gets heard
▪ Every domain expert can tell hers/his story and get it
visualized.
truly remarkable
occurrence
Deep Listening
▪ substantially improving the collaboration between the team
and domain experts.
▪ If there is something that software developers can get better
at it is listening to the business.
truly remarkable
occurrence
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
Part 2: Engaging way to facilitate a customer
workshop
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
Combining Different Approaches
Event Storming vs. Domain Storytelling vs. Impact Mapping
No method lock-in!
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
Facilitator’s Challenges with Domain Storytelling
DISTILLING AS-IS AND
TO-BE DOMAIN STORIES
AVOID BECOMING A
BOTTLENECK
SETTING THE STAGE
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
Avoid becoming a bottleneck
trying to visualize a Domain Story
learning the domain language
keeping track of the essential comments from the other
participants
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
Avoid becoming a bottleneck – Backstage Facilitator
“WHITEBOARD” FACILITATOR
RUNNING THE SHOW
“BACKSTAGE” FACILITATOR
DOCUMENTING THE DOMAIN STORIES
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
Avoid becoming a bottleneck - Event Storming
Use Hot-Spots post-it notes as a
reminder of a valuable discussion
The most chaotic discussions are the most valuable ones
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
▪ Game Storming suggests combining
divergent and convergent methods
– divide the participants into groups
(divergent)
– then presenting the outcome of
group discussions to everybody
(convergent).
Avoid becoming a bottleneck - Game Storming
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
▪ What are the overall goals?
Setting the stage
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
▪ What are we trying to achieve in the
workshop?
▪ Start a workshop with Impact
Mapping-inspired session
▪ Discover goals, impacts and needs
– Groundwork for writing Domain
Stories
Set the stage with Impact Mapping
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
▪ Summarize the workshop by running
Lean Coffee format based on the
insights in Domain Stories
– choose the topics for the Lean
Coffee session
• use textual annotations
• use hot-spots
Lean Chocolate
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
Lean Chocolate - a dessert after the main course!
Lean Chocolate
the Lean Coffee variant
run at the end of the workshop
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
Part 3: Discovering Bounded Contexts
Why I Value Domain-Driven Design
▪ DDD is an approach for dealing with complex problems with
emphasis on learning the domain
– in a close collaboration with domain experts
– in order to focus on the most important problems to solve.
Eric Evans
The «Blue» Book
The Two Pillars of DDD
▪ Ubiquitous Language
▪ Bounded Context
Vaughn Vernon
The «Red» Book
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
▪ Ubiquitous Language
– Develop domain model based on terms from the domain language
The Two Pillars of DDD
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
▪ Bounded Context
– tackle complexity by splitting application via inherent subdomain
boundaries
– Bounded Contexts are boundaries in the software system that
aspire to correspond to the subdomains
The Two Pillars of DDD
The Two Pillars of DDD
▪ Bounded Contexts are defined by the semantics of the
Ubiquitous Language!
Vaughn Vernon
The «Green» Book
Bounded Contexts Hints in Domain Stories
▪ Find boundaries that separate models but don't separate
people
Eric Evans
DDD Reference
Bounded Contexts Hints in Domain Stories
▪ One-way information flow
▪ Difference in language
▪ Different triggers
▪ Time vs. on-demand
Scott Millett and
Nick Tune
PPP of DDD
Bounded Contexts Hints in Domain Stories
▪ Start development based on suggested Bounded Context
▪ Then iterate
▪ New knowledge may lead to new insights
▪ New insights may lead to new Bounded Contexts
Scott Wlaschin
DDD and
Functional Model
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
Bounded Contexts in our Domain Story
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
Group Therapy in Norwegian Hospitals
▪ Mental Health Care
▪ Adult and Pediatric
▪ Somatic Health Care
▪ Training to improve quality of life with long-term diagnoses
Business areas in
hospitals utilizing group
therapy
Service-Oriented Architecture
▪ Service is a technical authority for a given Business Capability
– Udi Dahan, «Advanced Distributed System Design» - course
Boundaries by
Business
Capabilities
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
Group Therapy and Business Capabilities
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
Group Therapy and Business Capabilities
Discover business capabilities using
Pure Domain Stories
▪ Define top-most boundaries as services per business
capabilities
▪ Within each service define bounded contexts using linguistic
boundaries from the domain language
DDD and SOA
Takeaways
1. Ability to communicate with domain experts on their terms
2. Engaging way to facilitate a customer workshop
3. Kick-off your development project with hints on context
boundaries
Ella Fitzegerald –
«They Cant’t Take That Away From Me»
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 book and website
– https://leanpub.com/domainstorytelling
• Stefan Hofer and Henning Schwentner
– www.domainstorytelling.org
– https://github.com/hofstef/awesome-domain-storytelling
▪ Community on Slack
– #domain-storytelling channel at https://ddd-cqrs-es.slack.com
▪ My blog: https://mufridk.medium.com
References and Further Reading
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
▪ https://thenounproject.com/libraryofcongress/
▪ Maria Marin from the Noun Project
▪ Language by Gem Designs from the Noun Project
▪ group by Blake Thompson from the Noun Project
▪ Close up shot of hot coffee in glasses lined up ready for coffee tasting
by Suzanne Strong from Noun Project
▪ www.domainstorytelling.org
Photos and Icons Acknowledgements

More Related Content

Similar to Domain storytelling – facilitator’s guide to enhance learning in your organization dev days europe 2021

MCDM People and Story Reporting and BRoll Lecture
MCDM People and Story Reporting and BRoll LectureMCDM People and Story Reporting and BRoll Lecture
MCDM People and Story Reporting and BRoll LectureAlex Stonehill
 
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 VenusMotivate Design
 
Atlassian Summit 2013: Confluence State of the Union
Atlassian Summit 2013: Confluence State of the Union Atlassian Summit 2013: Confluence State of the Union
Atlassian Summit 2013: Confluence State of the Union colleenfry
 
The Modern Software Engineer - Nuno Job
The Modern Software Engineer - Nuno JobThe Modern Software Engineer - Nuno Job
The Modern Software Engineer - Nuno JobGreta Strolyte
 
RadioActive Europe - Presentation at PLE-Conference 2014
RadioActive Europe - Presentation at PLE-Conference 2014 RadioActive Europe - Presentation at PLE-Conference 2014
RadioActive Europe - Presentation at PLE-Conference 2014 Andreas Auwärter
 
From Content Strategy to Drupal Site Building - Connecting the dots
From Content Strategy to Drupal Site Building - Connecting the dotsFrom Content Strategy to Drupal Site Building - Connecting the dots
From Content Strategy to Drupal Site Building - Connecting the dotsRonald Ashri
 
From Content Strategy to Drupal Site Building - Connecting the Dots
From Content Strategy to Drupal Site Building - Connecting the DotsFrom Content Strategy to Drupal Site Building - Connecting the Dots
From Content Strategy to Drupal Site Building - Connecting the DotsRonald Ashri
 
Lazy Penetration Tester Tricks
Lazy Penetration Tester Tricks Lazy Penetration Tester Tricks
Lazy Penetration Tester Tricks Core Security
 
Social Media 101 for Nonprofits with Adobe Spark
Social Media 101 for Nonprofits with Adobe SparkSocial Media 101 for Nonprofits with Adobe Spark
Social Media 101 for Nonprofits with Adobe SparkTechSoup
 
The secret life of an accessible player
The secret life of an accessible playerThe secret life of an accessible player
The secret life of an accessible playerHenny Swan
 
Creating Great Dashboards - Beyond the Colors & Fonts
Creating Great Dashboards - Beyond the Colors & FontsCreating Great Dashboards - Beyond the Colors & Fonts
Creating Great Dashboards - Beyond the Colors & FontsLogi Analytics
 
Elevated.com's 2018 General Capabilities Deck-We are growing!!
Elevated.com's 2018 General Capabilities Deck-We are growing!!Elevated.com's 2018 General Capabilities Deck-We are growing!!
Elevated.com's 2018 General Capabilities Deck-We are growing!!Chris Snook
 
Combine workshops to boost business understanding.pdf
Combine workshops to boost business understanding.pdfCombine workshops to boost business understanding.pdf
Combine workshops to boost business understanding.pdfBruno Boucard
 
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 HodgesAmbientia
 
The value of learning and sharing
The value of learning and sharingThe value of learning and sharing
The value of learning and sharingBert Jan Schrijver
 
Writing a Persuasive Document
Writing a Persuasive DocumentWriting a Persuasive Document
Writing a Persuasive DocumentErin Blasco
 
Grey And Purple Minimalist Aesthetic Resume.pptx
Grey And Purple Minimalist Aesthetic Resume.pptxGrey And Purple Minimalist Aesthetic Resume.pptx
Grey And Purple Minimalist Aesthetic Resume.pptxssuserc31980
 
Backpack Reporting (Updated)
Backpack Reporting (Updated)Backpack Reporting (Updated)
Backpack Reporting (Updated)Steve Johnson
 
Portfolio ix d_mitali_ak
Portfolio ix d_mitali_akPortfolio ix d_mitali_ak
Portfolio ix d_mitali_akMitaliAK
 

Similar to Domain storytelling – facilitator’s guide to enhance learning in your organization dev days europe 2021 (20)

MCDM People and Story Reporting and BRoll Lecture
MCDM People and Story Reporting and BRoll LectureMCDM People and Story Reporting and BRoll Lecture
MCDM People and Story Reporting and BRoll Lecture
 
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
 
Atlassian Summit 2013: Confluence State of the Union
Atlassian Summit 2013: Confluence State of the Union Atlassian Summit 2013: Confluence State of the Union
Atlassian Summit 2013: Confluence State of the Union
 
The Modern Software Engineer - Nuno Job
The Modern Software Engineer - Nuno JobThe Modern Software Engineer - Nuno Job
The Modern Software Engineer - Nuno Job
 
RadioActive Europe - Presentation at PLE-Conference 2014
RadioActive Europe - Presentation at PLE-Conference 2014 RadioActive Europe - Presentation at PLE-Conference 2014
RadioActive Europe - Presentation at PLE-Conference 2014
 
From Content Strategy to Drupal Site Building - Connecting the dots
From Content Strategy to Drupal Site Building - Connecting the dotsFrom Content Strategy to Drupal Site Building - Connecting the dots
From Content Strategy to Drupal Site Building - Connecting the dots
 
From Content Strategy to Drupal Site Building - Connecting the Dots
From Content Strategy to Drupal Site Building - Connecting the DotsFrom Content Strategy to Drupal Site Building - Connecting the Dots
From Content Strategy to Drupal Site Building - Connecting the Dots
 
Lazy Penetration Tester Tricks
Lazy Penetration Tester Tricks Lazy Penetration Tester Tricks
Lazy Penetration Tester Tricks
 
Social Media 101 for Nonprofits with Adobe Spark
Social Media 101 for Nonprofits with Adobe SparkSocial Media 101 for Nonprofits with Adobe Spark
Social Media 101 for Nonprofits with Adobe Spark
 
The secret life of an accessible player
The secret life of an accessible playerThe secret life of an accessible player
The secret life of an accessible player
 
Creating Great Dashboards - Beyond the Colors & Fonts
Creating Great Dashboards - Beyond the Colors & FontsCreating Great Dashboards - Beyond the Colors & Fonts
Creating Great Dashboards - Beyond the Colors & Fonts
 
Elevated.com's 2018 General Capabilities Deck-We are growing!!
Elevated.com's 2018 General Capabilities Deck-We are growing!!Elevated.com's 2018 General Capabilities Deck-We are growing!!
Elevated.com's 2018 General Capabilities Deck-We are growing!!
 
Combine workshops to boost business understanding.pdf
Combine workshops to boost business understanding.pdfCombine workshops to boost business understanding.pdf
Combine workshops to boost business understanding.pdf
 
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
 
The value of learning and sharing
The value of learning and sharingThe value of learning and sharing
The value of learning and sharing
 
Writing a Persuasive Document
Writing a Persuasive DocumentWriting a Persuasive Document
Writing a Persuasive Document
 
Grey And Purple Minimalist Aesthetic Resume.pptx
Grey And Purple Minimalist Aesthetic Resume.pptxGrey And Purple Minimalist Aesthetic Resume.pptx
Grey And Purple Minimalist Aesthetic Resume.pptx
 
Backpack Reporting (Updated)
Backpack Reporting (Updated)Backpack Reporting (Updated)
Backpack Reporting (Updated)
 
Portfolio ix d_mitali_ak
Portfolio ix d_mitali_akPortfolio ix d_mitali_ak
Portfolio ix d_mitali_ak
 
Smoke tests and mirrors
Smoke tests and mirrorsSmoke tests and mirrors
Smoke tests and mirrors
 

More from Mufrid Krilic

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...Mufrid Krilic
 
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...Mufrid Krilic
 
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 2021Mufrid Krilic
 
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...Mufrid Krilic
 
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 QuestionsMufrid Krilic
 
Strategies to learn complex domains - Experiences from Developing Enterprise ...
Strategies to learn complex domains - Experiences from Developing Enterprise ...Strategies to learn complex domains - Experiences from Developing Enterprise ...
Strategies to learn complex domains - Experiences from Developing Enterprise ...Mufrid Krilic
 
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 2018Mufrid Krilic
 

More from Mufrid Krilic (7)

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
 
Strategies to learn complex domains - Experiences from Developing Enterprise ...
Strategies to learn complex domains - Experiences from Developing Enterprise ...Strategies to learn complex domains - Experiences from Developing Enterprise ...
Strategies to learn complex domains - Experiences from Developing Enterprise ...
 
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
 

Recently uploaded

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxalwaysnagaraju26
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
%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 masabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
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-learnAmarnathKambale
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 

Recently uploaded (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%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
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
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
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

Domain storytelling – facilitator’s guide to enhance learning in your organization dev days europe 2021

  • 1. “Please, draw me a sheep!” “No. This sheep is already very ill. Make me another.”
  • 2. “You have to see it too. This isn’t a sheep. It’s a ram. It has horns.”
  • 3. “This one is too old. I want a sheep who will live a long time.”
  • 4. “That’s a box. The sheep you want is inside.” “That’s exactly how I wanted it!”
  • 5.
  • 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 Mufrid Krilic Senior Software Architect/Coach DIPS AS, Norway Domain Storytelling Facilitator’s Guide to Enhance Learning in Your Organization Her kan du legge inn bilde. Du finner figurer her: Link
  • 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 ▪ In order to understand the business, one must learn the language in which the business operates – i.e. a domain language Motivation
  • 8. Takeaways 1. Ability to communicate with domain experts on their terms 2. Engaging way to facilitate a customer workshop 3. Kick-off your development project with hints on context boundaries Ella Fitzegerald – «They Cant’t Take That Away From Me»
  • 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 Part 1: Ability to communicate with domain experts on their terms
  • 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 ▪ Lightweight method to learn a domain language What is Domain Storytelling?
  • 11. How do you learn any language? ▪ Listen to people who speak the language ▪ Repeat what they had said ▪ Get a confirmation that what you said was correct
  • 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 ▪ The facilitator asks and guides domain experts to explain the way they work Workshop Technique
  • 13. Listen and Speak the Domain Language ▪ The facilitator builds Domain Stories by visualizing examples from the domain Workshop discussion flows as a series of short examples
  • 14. Domain Experts Confirm The Visual Story ▪ The facilitator checks if everybody in the room agrees Comments and deviations are noted as textual annotations
  • 15. 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 Picture from www.domainstorytelling.org The Domain Story Syntax - Build Visual Sentences
  • 16. 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 What is a Domain Story
  • 17. 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 ▪ "You can learn more from a good example than from a bad abstraction.“ – after Peter Hruschka What is a Domain Story
  • 18. 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 ▪ No branching or parallelism in Domain Stories – We are not building a flow or sequence diagram What is a Domain Story
  • 19. Any rules? ▪ For noticeable differences create another Domain Story ▪ For minor differences make a comment as a textual annotation What if domain experts differ on how the business process is conducted?
  • 20. Any rules? ▪ An actor should not occur more than once in a story Actors in a Domain Story
  • 21. Any rules? ▪ A work object can occur multiple times Work Objects in a Domain Story
  • 22. Any rules? ▪ Label activities in order in which they occur Activities in a Domain Story
  • 23. Any rules? ▪ Avoid technical jargon
  • 24. 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 Use Case: Group Therapy in a Hospital
  • 25. 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 therapy has the best effect when done in a group of patients Group Therapy in Norwegian Hospitals
  • 26. Group Therapy in Norwegian Hospitals ▪ Mental Health Care ▪ Adult and Pediatric ▪ Somatic Health Care ▪ Training to improve quality of life with long-term diagnoses Business areas in hospitals utilizing group therapy
  • 27. 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 ▪ Group Planning: – Physician decides to start a group treatment for a group of patients – Medical secretary creates a patient group and lays out a schedule Group Therapy in Norwegian Hospitals
  • 28. 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 ▪ Group Check-In: – When patients check-in for an appointment in the group the secretary: •Registers patient attendance •Deals with no-show and cancellations •Informs patients on appointments which they do not need to attend •Follows-up on patient billing and reporting to authorities Group Therapy in Norwegian Hospitals
  • 29. 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 Story for Group Check-In Built using web-tool wps.de/modeler
  • 30. 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 Story for Group Check-In
  • 31. 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
  • 32. 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
  • 33. 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
  • 34. 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
  • 35. 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 FAQ Alternative methods to learn a domain language
  • 36. Event Storming ▪ 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 eventstorming.com by Alberto Brandolini
  • 37. Impact Mapping ▪ Focus on ▪ the goal you are trying to achieve, ▪ actors who can help you achieve it ▪ impacts you want to observe on the actors ▪ Rather than ▪ the software you want to deliver impactmapping.org by Gojko Adzic
  • 38. 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 exposes how time influences the business processes – Often ignored yet significant factor Domain Storytelling vs. Event Storming
  • 39. 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 focuses on communication between people and/or software systems Domain Storytelling vs. Event Storming
  • 40. 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 allows for very explorative modelling Domain Storytelling vs. Event Storming
  • 41. Deep Listening ▪ Domain Storytelling provides an environment where everybody gets heard ▪ Every domain expert can tell hers/his story and get it visualized. truly remarkable occurrence
  • 42. Deep Listening ▪ substantially improving the collaboration between the team and domain experts. ▪ If there is something that software developers can get better at it is listening to the business. truly remarkable occurrence
  • 43. 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 Part 2: Engaging way to facilitate a customer workshop
  • 44. 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 Combining Different Approaches Event Storming vs. Domain Storytelling vs. Impact Mapping No method lock-in!
  • 45. 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 Facilitator’s Challenges with Domain Storytelling DISTILLING AS-IS AND TO-BE DOMAIN STORIES AVOID BECOMING A BOTTLENECK SETTING THE STAGE
  • 46. 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 Avoid becoming a bottleneck trying to visualize a Domain Story learning the domain language keeping track of the essential comments from the other participants
  • 47. 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 Avoid becoming a bottleneck – Backstage Facilitator “WHITEBOARD” FACILITATOR RUNNING THE SHOW “BACKSTAGE” FACILITATOR DOCUMENTING THE DOMAIN STORIES
  • 48. 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 Avoid becoming a bottleneck - Event Storming Use Hot-Spots post-it notes as a reminder of a valuable discussion The most chaotic discussions are the most valuable ones
  • 49. 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 ▪ Game Storming suggests combining divergent and convergent methods – divide the participants into groups (divergent) – then presenting the outcome of group discussions to everybody (convergent). Avoid becoming a bottleneck - Game Storming
  • 50. 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 ▪ What are the overall goals? Setting the stage
  • 51. 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 ▪ What are we trying to achieve in the workshop? ▪ Start a workshop with Impact Mapping-inspired session ▪ Discover goals, impacts and needs – Groundwork for writing Domain Stories Set the stage with Impact Mapping
  • 52. 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 ▪ Summarize the workshop by running Lean Coffee format based on the insights in Domain Stories – choose the topics for the Lean Coffee session • use textual annotations • use hot-spots Lean Chocolate
  • 53. 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 Lean Chocolate - a dessert after the main course! Lean Chocolate the Lean Coffee variant run at the end of the workshop
  • 54. 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 Part 3: Discovering Bounded Contexts
  • 55. Why I Value Domain-Driven Design ▪ DDD is an approach for dealing with complex problems with emphasis on learning the domain – in a close collaboration with domain experts – in order to focus on the most important problems to solve. Eric Evans The «Blue» Book
  • 56. The Two Pillars of DDD ▪ Ubiquitous Language ▪ Bounded Context Vaughn Vernon The «Red» Book
  • 57. 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 ▪ Ubiquitous Language – Develop domain model based on terms from the domain language The Two Pillars of DDD
  • 58. 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 ▪ Bounded Context – tackle complexity by splitting application via inherent subdomain boundaries – Bounded Contexts are boundaries in the software system that aspire to correspond to the subdomains The Two Pillars of DDD
  • 59. The Two Pillars of DDD ▪ Bounded Contexts are defined by the semantics of the Ubiquitous Language! Vaughn Vernon The «Green» Book
  • 60. Bounded Contexts Hints in Domain Stories ▪ Find boundaries that separate models but don't separate people Eric Evans DDD Reference
  • 61. Bounded Contexts Hints in Domain Stories ▪ One-way information flow ▪ Difference in language ▪ Different triggers ▪ Time vs. on-demand Scott Millett and Nick Tune PPP of DDD
  • 62. Bounded Contexts Hints in Domain Stories ▪ Start development based on suggested Bounded Context ▪ Then iterate ▪ New knowledge may lead to new insights ▪ New insights may lead to new Bounded Contexts Scott Wlaschin DDD and Functional Model
  • 63. 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 Bounded Contexts in our Domain Story
  • 64. 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
  • 65. 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 Group Therapy in Norwegian Hospitals ▪ Mental Health Care ▪ Adult and Pediatric ▪ Somatic Health Care ▪ Training to improve quality of life with long-term diagnoses Business areas in hospitals utilizing group therapy
  • 66. Service-Oriented Architecture ▪ Service is a technical authority for a given Business Capability – Udi Dahan, «Advanced Distributed System Design» - course Boundaries by Business Capabilities
  • 67. 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 Group Therapy and Business Capabilities
  • 68. 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 Group Therapy and Business Capabilities
  • 69. Discover business capabilities using Pure Domain Stories ▪ Define top-most boundaries as services per business capabilities ▪ Within each service define bounded contexts using linguistic boundaries from the domain language DDD and SOA
  • 70. Takeaways 1. Ability to communicate with domain experts on their terms 2. Engaging way to facilitate a customer workshop 3. Kick-off your development project with hints on context boundaries Ella Fitzegerald – «They Cant’t Take That Away From Me»
  • 71. 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 book and website – https://leanpub.com/domainstorytelling • Stefan Hofer and Henning Schwentner – www.domainstorytelling.org – https://github.com/hofstef/awesome-domain-storytelling ▪ Community on Slack – #domain-storytelling channel at https://ddd-cqrs-es.slack.com ▪ My blog: https://mufridk.medium.com References and Further Reading
  • 72. 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 ▪ https://thenounproject.com/libraryofcongress/ ▪ Maria Marin from the Noun Project ▪ Language by Gem Designs from the Noun Project ▪ group by Blake Thompson from the Noun Project ▪ Close up shot of hot coffee in glasses lined up ready for coffee tasting by Suzanne Strong from Noun Project ▪ www.domainstorytelling.org Photos and Icons Acknowledgements