SlideShare a Scribd company logo
1 of 35
Download to read offline
Making IT your winning asset
Trond Hjorteland
Partner at scienta.no
@trondhjort
Microservices without DDD is
risky business!
@trondhjort
Imposter syndrome
Source: David Whittaker @rundavidrun
What I think others know
What I
know
What I
know
What others know
@trondhjort
@trondhjort
“This _____ discusses modularisation as a
mechanism for improving the flexibility and
comprehensibility of a system while allowing the
shortening of its development time.”
@trondhjort
-David Parnas, 1972
paper
Source: D.L. Parnas, Communications of the ACM, 1972
Source: “From Capabilities to Services…”, Ulrich Homann & Jon Tobey 2006@trondhjort
Customer
Account
Subscription
@trondhjort
Source: http://bill-poole.blogspot.com, 2008@trondhjort
@trondhjort
Service-orientation
Boundaries are explicit
Services are autonomous
Services share schema and contract, not class
Service compatibility is based on policy
s
@trondhjort
@trondhjort
"DDD, for me, is a mindset, a journey, a way of
‘learning’ more about a business domain and its
problem, not a destination or an artefact in
some code base.”
@trondhjort
Collaboration of software and domain experts
Focus on the core domain
Ubiquitous language in a bounded context
The essence of DDD
@trondhjort Source: Domain-Driven Design Reference
Strategic patterns
Source: Domain-Driven Design Reference@trondhjort
Source: Patterns, Principles and Practices of Domain-Driven Design@trondhjort
Source: Ulrich Kalex, The Open Group@trondhjort
Subdomains
Customer
Account
Subscription
Billing Customer Care
Subscription
Management
Billing
Account
Customer
Subscription
Portfolio
Owner Payer
Sales Invoice
Install base
Products
@trondhjort
“All models are wrong
but some are useful”
-George Box
Source: Robustness in Statistics, 1978@trondhjort
Source: Implementing Domain-Driven Design@trondhjort
@trondhjort
Tactical patterns
Source: Domain-Driven Design Reference@trondhjort
Aggregate Subscription
Portfolio
Owner
Portfolio
Subscription
A
customerId
Subscription
B
Subscription
C
Subscription
B
?@trondhjort
Subdomain ⊇ Service (BC) ⊇ Aggregate
Subscription
Portfolio
Owner
Portfolio
management
⊇
Taxonomy
Portfolio
Subscription A Subscription B Subscription C
⊇
@trondhjort
Delivery approaches
Top-down
Bottom-up
Architecture principles
Inverse Conway Manoeuvre
@trondhjort
Source:(http://geek/and/poke.com/(
Source: http://geek-and-poke.com/@trondhjort
@trondhjort
@trondhjort Source: https://dddeurope.com

More Related Content

Similar to Microservices without DDD is risky business!

Personal Data and Trust Network: Group Workshop 16/12/15
Personal Data and Trust Network: Group Workshop 16/12/15Personal Data and Trust Network: Group Workshop 16/12/15
Personal Data and Trust Network: Group Workshop 16/12/15Digital Catapult
 
The Link to Your Tech Customers: By the Numbers
The Link to Your Tech Customers: By the NumbersThe Link to Your Tech Customers: By the Numbers
The Link to Your Tech Customers: By the NumbersLinkedIn
 
The Link to Your Tech Customer: By the numbers
The Link to Your Tech Customer: By the numbersThe Link to Your Tech Customer: By the numbers
The Link to Your Tech Customer: By the numbersBlack Marketing
 
Data Mesh at CMC Markets: Past, Present and Future
Data Mesh at CMC Markets: Past, Present and FutureData Mesh at CMC Markets: Past, Present and Future
Data Mesh at CMC Markets: Past, Present and FutureLorenzo Nicora
 
Managing identity for the future how everybody can win - david alexander - ...
Managing identity for the future   how everybody can win - david alexander - ...Managing identity for the future   how everybody can win - david alexander - ...
Managing identity for the future how everybody can win - david alexander - ...Mydex CIC
 
Oix local government mydex platform overview 2nd july 2013
Oix local government mydex platform overview 2nd july 2013Oix local government mydex platform overview 2nd july 2013
Oix local government mydex platform overview 2nd july 2013Mydex CIC
 
Respect Connect: From Social Login to Personal Cloud Login
Respect Connect: From Social Login to Personal Cloud LoginRespect Connect: From Social Login to Personal Cloud Login
Respect Connect: From Social Login to Personal Cloud Logindrummondreed
 
8 Decimal Capital Enterprise Solution Overview
8 Decimal Capital Enterprise Solution Overview8 Decimal Capital Enterprise Solution Overview
8 Decimal Capital Enterprise Solution OverviewRemi Gai
 
GDPR and IoT: What do you need to know?
GDPR and IoT: What do you need to know?GDPR and IoT: What do you need to know?
GDPR and IoT: What do you need to know?MicheleNati
 
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...The Digital Insurer
 
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...Anni Kristiina Salo
 
Down to Business: Taking Action Quickly with Linked Data Services
Down to Business: Taking Action Quickly with Linked Data ServicesDown to Business: Taking Action Quickly with Linked Data Services
Down to Business: Taking Action Quickly with Linked Data ServicesInside Analysis
 
MT 410_HRM_BCT_SP 2024.pptx
MT 410_HRM_BCT_SP 2024.pptxMT 410_HRM_BCT_SP 2024.pptx
MT 410_HRM_BCT_SP 2024.pptxShreyaBanerjee52
 
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.FinTechZone
 
Digital internal communication: 12 tips.
Digital internal communication: 12 tips.Digital internal communication: 12 tips.
Digital internal communication: 12 tips.Luc de Ruijter
 
How To Prevent The World Wild Web Identity Crisis
How To Prevent The World Wild Web Identity CrisisHow To Prevent The World Wild Web Identity Crisis
How To Prevent The World Wild Web Identity Crisiswieringa
 
PBL Encryption project.pptx
PBL Encryption project.pptxPBL Encryption project.pptx
PBL Encryption project.pptxXyzAnc
 
Blockchain opportunities and challenges
Blockchain opportunities and challengesBlockchain opportunities and challenges
Blockchain opportunities and challengesiTrainMalaysia1
 
Introduction to Decentralized Finance (DeFi)
Introduction to Decentralized Finance (DeFi)Introduction to Decentralized Finance (DeFi)
Introduction to Decentralized Finance (DeFi)101 Blockchains
 

Similar to Microservices without DDD is risky business! (20)

Personal Data and Trust Network: Group Workshop 16/12/15
Personal Data and Trust Network: Group Workshop 16/12/15Personal Data and Trust Network: Group Workshop 16/12/15
Personal Data and Trust Network: Group Workshop 16/12/15
 
The Link to Your Tech Customers: By the Numbers
The Link to Your Tech Customers: By the NumbersThe Link to Your Tech Customers: By the Numbers
The Link to Your Tech Customers: By the Numbers
 
The Link to Your Tech Customer: By the numbers
The Link to Your Tech Customer: By the numbersThe Link to Your Tech Customer: By the numbers
The Link to Your Tech Customer: By the numbers
 
Data Mesh at CMC Markets: Past, Present and Future
Data Mesh at CMC Markets: Past, Present and FutureData Mesh at CMC Markets: Past, Present and Future
Data Mesh at CMC Markets: Past, Present and Future
 
Managing identity for the future how everybody can win - david alexander - ...
Managing identity for the future   how everybody can win - david alexander - ...Managing identity for the future   how everybody can win - david alexander - ...
Managing identity for the future how everybody can win - david alexander - ...
 
Oix local government mydex platform overview 2nd july 2013
Oix local government mydex platform overview 2nd july 2013Oix local government mydex platform overview 2nd july 2013
Oix local government mydex platform overview 2nd july 2013
 
Respect Connect: From Social Login to Personal Cloud Login
Respect Connect: From Social Login to Personal Cloud LoginRespect Connect: From Social Login to Personal Cloud Login
Respect Connect: From Social Login to Personal Cloud Login
 
8 Decimal Capital Enterprise Solution Overview
8 Decimal Capital Enterprise Solution Overview8 Decimal Capital Enterprise Solution Overview
8 Decimal Capital Enterprise Solution Overview
 
Moving Big Data to Big Value
Moving Big Data to Big ValueMoving Big Data to Big Value
Moving Big Data to Big Value
 
GDPR and IoT: What do you need to know?
GDPR and IoT: What do you need to know?GDPR and IoT: What do you need to know?
GDPR and IoT: What do you need to know?
 
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...
Webinar : TDI TechMap23 - Exploring the latest tech trends and their impact o...
 
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...
ROBO ADVISOR, YOUR RELIABLE PARTNER? Building a trustworthy digital investing...
 
Down to Business: Taking Action Quickly with Linked Data Services
Down to Business: Taking Action Quickly with Linked Data ServicesDown to Business: Taking Action Quickly with Linked Data Services
Down to Business: Taking Action Quickly with Linked Data Services
 
MT 410_HRM_BCT_SP 2024.pptx
MT 410_HRM_BCT_SP 2024.pptxMT 410_HRM_BCT_SP 2024.pptx
MT 410_HRM_BCT_SP 2024.pptx
 
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.
Digitális Szerződéskötések Meetup & Workshop - 2018.11.14.
 
Digital internal communication: 12 tips.
Digital internal communication: 12 tips.Digital internal communication: 12 tips.
Digital internal communication: 12 tips.
 
How To Prevent The World Wild Web Identity Crisis
How To Prevent The World Wild Web Identity CrisisHow To Prevent The World Wild Web Identity Crisis
How To Prevent The World Wild Web Identity Crisis
 
PBL Encryption project.pptx
PBL Encryption project.pptxPBL Encryption project.pptx
PBL Encryption project.pptx
 
Blockchain opportunities and challenges
Blockchain opportunities and challengesBlockchain opportunities and challenges
Blockchain opportunities and challenges
 
Introduction to Decentralized Finance (DeFi)
Introduction to Decentralized Finance (DeFi)Introduction to Decentralized Finance (DeFi)
Introduction to Decentralized Finance (DeFi)
 

Recently uploaded

Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 

Recently uploaded (20)

Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 

Microservices without DDD is risky business!