SlideShare a Scribd company logo
1 of 123
Download to read offline
@cyriux
Cyrille Martraire
Understanding
Bounded Contexts
You may not know
yet…
Microservices need
Bounded Contexts
absolutely!
You need Bounded
Contexts absolutely!
(even without
microservices)
Passionate developer
Deliberate Designer
PARIS
Since 1999
@cyriux
Cyrille Martraire
Paris Software Crafters
Community since 2011
http://www.meetup.com/paris-software-craftsmanship/
arolla.fr @arollafr
arolla.fr @arollafr
TDD
BDD
DDD
”The DDD guy from
Paris”
We heard about
modelling a
domain…
Let’s practice!
What are pants?
Give a clear definition
2mn
Was it easy?
Did you hesitate
between different
definitions?
”To cover the ass”
”To cover the legs”
”To express
themselves”
•Decency: Cover the ass
•Protection: Cover the legs
•Status: Famous brand
•Self-Expression: The way
you wear it
•Fashion: Leg cuts
•…
Multiple perspectives
Multiple perspectivesContexts
CONTEXTS
Which model is right?
The ONE you need
for each purpose!
The ONE you need
for each Context!
“At Amazon, what a book is for you?”
•Catalog: Picture, title, authors, rating, format
(ebook or paper), category
•Recommandation: List of books often bought
together with it
•Shipping: Dimensions, weight, international
restrictions due to content
•Shopping cart: Price, discount eligible
•Customer review: List of (rating, review,
review rating)
•Book Search: title, isbn, authors
•Search Inside!: full-text content, copyright-
dealing policy
One Book. Many Views.
Book To Read
Buyable
Catalog
Shopping Cart
Searchable
Search
Billable
Billing
Recommendable
Recommandation
Priceable
Pricing
Shippable
Shipping
“At Amazon, what a book is for you?”
•Catalog: Picture, title, authors, rating, format
(ebook or paper), category
•Recommandation: List of books often bought
together with it
•Shipping: Dimensions, weight, international
restrictions due to content
•Shopping cart: Price, discount eligible
•Customer review: List of (rating, review,
review rating)
•Book Search: title, isbn, authors
•Search Inside!: full-text content, copyright-
dealing policy
1 context
1 model
Different perspectives
MY catalogue/book is not YOUR shipping/book
in isolation
ISOLATION FTW!
INDEPENDENCE
FTW!
BOUNDED
Contexts
BOUNDED
Contexts
BOUNDED
Contexts
Different (Sub)Domains
Different language
•Sales -> Customer
•Shipping -> Recipient
•Billing -> Account
•Marketing -> Segment, Audience
Linguistic Contexts
•Customer -> Sales
•Recipient -> Shipping
•Account -> Billing
•Segment, Audience -> Marketing
Linguistic Contexts
Fraud
Détection
Payment
Gift Cards
n
mpany	
ting	
Review
Shopping Cart
Payment Event
Anomaly
Agent
Transaction
Transaction
Status
Account
Basket
Items
Recent Baskets
Fraud
Détection
Payment
Gift Cards
n
mpany	
ting	
Review
Shopping Cart
Payment Event
Anomaly
Agent
Transaction
Transaction
Status
Account
Basket
Items
Recent Baskets
Bounded
Contexts
— Domain-Driven Design
Payment
…
Discounting
…
Everything
about
discounting
Everything
about
payment
Different (Sub)Domains
Different Bounded Context
HEURISTICS
Different (Sub)Domains
Different Bounded Context
HEURISTICS
98% of the time
Different (Sub)Domains
Different Bounded Context
HEURISTICS
98% of the time
(precisely LOL)
“At Amazon, what sub-domains?”
•Catalog
•Recommandation
•Shipping
•Billing
•Shopping cart
•Customer review
•Book Search
•Search Inside!
DESIGN DECISION
BUSINESS PERSPECTIVE
How do we identify
Bounded Contexts?
57
58
How do we identify Sub
Domains?
We want IT
alignment blabla…
We want IT
alignment blabla…
I know how to do
that!
Once you know DDD…
DESIGN DECISION
BUSINESS PERSPECTIVE
That’s complicated!
63
Bounded Context
IRL
colleague
committer
collaborator
candidate
friend
peer
INDEPENDENCE
FTW!
WE KNOW
AFTERWARDS!
THE
INDEPENDENCE
TEST of TIME
Different (Sub)Domains
Different Evolution and Different
Feature / Change Requests
HEURISTICS
Strategic Design
(aka in the long run)
70
Customer
addressLine
zipcode
city
…
Hey!
Companies have a
different billing
address!
I know: let’s add it
with a flag!
Purchase
addressLine
zipcode
city
has2AddressesFlag
addressLine2
zipcode2
city2
Customer
addressLine
zipcode
city
has2AddressesFlag
addressLine2
zipcode2
city2
If (! has2AddressesFlag)
billing address line = …
billing zip code =
billing city =
else
billing address line = …
billing zip code =
billing city =
Customer
addressLine
zipcode
city
has2AddressesFlag
addressLine2
zipcode2
city2
If (! has2AddressesFlag)
billing address line = …
billing zip code =
billing city =
else
billing address line = …
billing zip code =
billing city =
Everywhere
Split by business domains
78
Customer
addressLine
zipcode
city
date
amount
user
Account
addressLine
zipcode
city
Recipient
+
+
Shipping
BillingShopping Cart
Shipping
BillingShopping Cart
Shipping
BillingShopping Cart
Bounded Contexts
by domain
Customer
addressLine
zipcode
city
date
amount
user
Account
addressLine
zipcode
city
Recipient
+
+
New names
customer
≠
account
≠
recipient
83
Near Synonyms
customer
≠
account
≠
recipient
84
Near Synonyms
HEURISTICS
Customer
addressLine
zipcode
city
date
amount
user
Account
addressLine
zipcode
city
Recipient
+
+
Suggest Contexts
Customer
addressLine
zipcode
city
date
amount
user
Account
addressLine
zipcode
city
Recipient
+
+
Default value:
billing address =
shipping address
Customer
addressLine
zipcode
city
date
amount
user
Account
addressLine
zipcode
city
Recipient
+
+
Duplicate schema
+ duplicate data
But… that’s
massive duplication!
”No Duplication”
means ”Coupling”
”Independence”
implies ”Some
duplication”
Isolation + Redundancy
DRY+ Coupling
DRY == Coupling
Bounded Contexts: We
decide to reduce coupling
at the cost of some
redundancy
92
Evolve differently in the
long term
93
addressLine
zipcode
city
Account
Billing
addressLine
zipcode
city
Recipient
Shipping
addressLine
zipcode
city
postbox
Account
Billing
addressLine
zipcode
city
Recipient
Shipping
addressLine
zipcode
city
postbox
Account
Billing
addressLine
zipcode
city
doorCode
Recipient
Shipping
Bounded
Contexts
Heuristics
Different Bounded Context
Different MODELs of the same thing
•Catalog: RECORD (Picture, title, authors, rating, format
(ebook or paper), category)
•Recommandation: CLUSTER (List of ID’s often bought
together with this ID)
HEURISTICS
Book:
Different Company Departments
Different Bounded Contexts
(often, but never consistently)
HEURISTICS
Sub-Domains Names
• Often end in ”-ing” or ”-tion”
• Because purpose verbs made
into nouns
HEURISTICS
Mental Consensus of
Everyone Involved
• Directors by departments
(Marketing, Sales, Operations,
Customer Support…)
• Interviews people and listen to
their purpose & language
PRACTICE
Pre-NegotiationListing)
B2BOrdering
Fraud
Détection
Payment
Sourcing
Distribution
Rates	Grid
RealTime
Prices
Gift Cards
Content &
Comparators
Sales
Promotion
Acquisition
TV	Campaigns	
Online	Ads
Company	
Rating	
Product	Reviews
Shopping Cart
Catalogue
Search
Categories
Tags
PartnershipsSecondary
Listing
Internal
Purchasing
Rates
CrossSales Navigation
SEO
Marketing
Event Storming
PRACTICE
Different (Sub)Domains
Mostly Independent Clusters of
(Functions + Data)
HEURISTICS
High Cohesion
Low Coupling
Within a ”CLUSTER”
Customer
————
ShippingAddress
BillingAddress
OrderHistory
PaymentStats
AddressValidationStatus
…
ValidateOrder
EmitInvoice
ValidateAddress
ConfirmOrder
EstimateShippingCost
DisplayOrderHistory
…
High Cohesion
Low Coupling
Within a Bounded Context
Customer
————
ShippingAddress
BillingAddress
OrderHistory
PaymentStats
AddressValidationStatus
…
ValidateOrder
EmitInvoice
ValidateAddress
ConfirmOrder
EstimateShippingCost
DisplayOrderHistory
…
Standard
Bounded
Contexts
108
HEURISTICS
Search
Reporting
e-commerce Bounded Contexts
• SEO, Traffic
Acquisition
• Marketing &
Targeting
• PIM (Product
Identification
Management)
• Catalogue
• Categorization
• Search
• Recommendation
• Pricing, Promotions
• Basket
• Discount, Loyalties
• Shipping Cost Estimation
• Payment
• (Fraud Detection)
• Order Management
• Billing
• Stock / Overbooking
• Shipping
• Return
• CRM
Wait until the sub-domains are
stable and obvious
HEURISTICS
Different Bounded Contexts
Different Implementation Style
PRACTICE
Fraud
Détection
Payment
Gift Cards
n
mpany	
ting	
Review
Shopping CartEVENT-SOURCED
HEXAGONAL
ARCHITECTURE
CRUD
SaaS
in Closing
https://leanpub.com/livingdocumentation
BUY MY BOOK!
Invest into DDD /
Strategic Design
A Differentiating
skills for
developers &
architects today!
Thanks!
Cyrille MARTRAIRE @cyriux

More Related Content

Similar to Understanding Bounded Contexts in Microservices and Domain-Driven Design

DDD patterns that were not in the book
DDD patterns that were not in the bookDDD patterns that were not in the book
DDD patterns that were not in the bookCyrille Martraire
 
Code Excellence for the Average Programmer
Code Excellence for the Average ProgrammerCode Excellence for the Average Programmer
Code Excellence for the Average ProgrammerLlewellyn Falco
 
Touch Screens | The Very Expensive Mistake
Touch Screens | The Very Expensive MistakeTouch Screens | The Very Expensive Mistake
Touch Screens | The Very Expensive MistakeCasey Dubbs
 
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020Andrew Lavers
 
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博 / Pebbo 執行長
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博  /  Pebbo 執行長[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博  /  Pebbo 執行長
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博 / Pebbo 執行長悠識學院
 
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...Cyrille Martraire
 
Speak Like a PRO - Public Speaking Tips & Tricks
Speak Like a PRO - Public Speaking Tips & TricksSpeak Like a PRO - Public Speaking Tips & Tricks
Speak Like a PRO - Public Speaking Tips & TricksLidan Hifi
 
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3R3
 
Smell your Code! @ Free Dimension
Smell your Code! @ Free DimensionSmell your Code! @ Free Dimension
Smell your Code! @ Free DimensionYaser Sulaiman
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job EasierTonya Mork
 
SisterHood - "Comment créer son moodboard" par Julia Moroge
SisterHood - "Comment créer son moodboard" par Julia MorogeSisterHood - "Comment créer son moodboard" par Julia Moroge
SisterHood - "Comment créer son moodboard" par Julia MorogeTheFamily
 
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...Cyrille Martraire
 
User Experience Design
User Experience Design User Experience Design
User Experience Design Prabuddha Vyas
 
Unstoppable. The tech revolution is here, adapt or die.
Unstoppable. The tech revolution is here, adapt or die.Unstoppable. The tech revolution is here, adapt or die.
Unstoppable. The tech revolution is here, adapt or die.FITCH
 
Emperors new clothes_digitalbarn_output_snakk
Emperors new clothes_digitalbarn_output_snakkEmperors new clothes_digitalbarn_output_snakk
Emperors new clothes_digitalbarn_output_snakkkevinjohngallagher
 
Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012kevinjohngallagher
 

Similar to Understanding Bounded Contexts in Microservices and Domain-Driven Design (20)

DDD patterns that were not in the book
DDD patterns that were not in the bookDDD patterns that were not in the book
DDD patterns that were not in the book
 
Code Excellence for the Average Programmer
Code Excellence for the Average ProgrammerCode Excellence for the Average Programmer
Code Excellence for the Average Programmer
 
Touch Screens | The Very Expensive Mistake
Touch Screens | The Very Expensive MistakeTouch Screens | The Very Expensive Mistake
Touch Screens | The Very Expensive Mistake
 
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020
Are your interns reviewing code? Andrew Lavers, ConFoo Montreal 2020
 
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博 / Pebbo 執行長
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博  /  Pebbo 執行長[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博  /  Pebbo 執行長
[Happy UX] 恐龍會跳舞嗎?(Can dinosaurs dance?) 陳雅博 / Pebbo 執行長
 
50.000 orange stickies later
50.000 orange stickies later50.000 orange stickies later
50.000 orange stickies later
 
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
Interviewing Domain Experts - Heuristics From the Trenches (DDD Europe 2016 M...
 
Wordcamp_mcglade_ux_mashups
Wordcamp_mcglade_ux_mashupsWordcamp_mcglade_ux_mashups
Wordcamp_mcglade_ux_mashups
 
Speak Like a PRO - Public Speaking Tips & Tricks
Speak Like a PRO - Public Speaking Tips & TricksSpeak Like a PRO - Public Speaking Tips & Tricks
Speak Like a PRO - Public Speaking Tips & Tricks
 
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3
DevDay: CorDapp Design Language: How to Draw a Cordapp and Why You Should, R3
 
Smell your Code! @ Free Dimension
Smell your Code! @ Free DimensionSmell your Code! @ Free Dimension
Smell your Code! @ Free Dimension
 
Vehicle Wrap Design Tips
Vehicle Wrap Design TipsVehicle Wrap Design Tips
Vehicle Wrap Design Tips
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job Easier
 
SisterHood - "Comment créer son moodboard" par Julia Moroge
SisterHood - "Comment créer son moodboard" par Julia MorogeSisterHood - "Comment créer son moodboard" par Julia Moroge
SisterHood - "Comment créer son moodboard" par Julia Moroge
 
Our Logo story - #AnalyzeCreateTarget in action
Our Logo story - #AnalyzeCreateTarget in actionOur Logo story - #AnalyzeCreateTarget in action
Our Logo story - #AnalyzeCreateTarget in action
 
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
 
User Experience Design
User Experience Design User Experience Design
User Experience Design
 
Unstoppable. The tech revolution is here, adapt or die.
Unstoppable. The tech revolution is here, adapt or die.Unstoppable. The tech revolution is here, adapt or die.
Unstoppable. The tech revolution is here, adapt or die.
 
Emperors new clothes_digitalbarn_output_snakk
Emperors new clothes_digitalbarn_output_snakkEmperors new clothes_digitalbarn_output_snakk
Emperors new clothes_digitalbarn_output_snakk
 
Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012
 

More from Cyrille Martraire

Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Cyrille Martraire
 
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Cyrille Martraire
 
Refactor your Specs - 2017 Edition
Refactor your Specs - 2017 EditionRefactor your Specs - 2017 Edition
Refactor your Specs - 2017 EditionCyrille Martraire
 
Legacy Code: Evolve or Rewrite?
Legacy Code: Evolve or Rewrite?Legacy Code: Evolve or Rewrite?
Legacy Code: Evolve or Rewrite?Cyrille Martraire
 
Ur Domain Haz Monoids DDDx NYC 2014
Ur Domain Haz Monoids DDDx NYC 2014Ur Domain Haz Monoids DDDx NYC 2014
Ur Domain Haz Monoids DDDx NYC 2014Cyrille Martraire
 
Refactor your specs! Øredev 2013
Refactor your specs! Øredev 2013Refactor your specs! Øredev 2013
Refactor your specs! Øredev 2013Cyrille Martraire
 
DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)Cyrille Martraire
 
I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"Cyrille Martraire
 
Domain-Driven Design in legacy application
Domain-Driven Design in legacy applicationDomain-Driven Design in legacy application
Domain-Driven Design in legacy applicationCyrille Martraire
 
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...Cyrille Martraire
 

More from Cyrille Martraire (11)

Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
Domain modeling for Digital Transformations (FlowCon Paris 2019 edition)
 
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
Les effets inattendus du passage en Features Teams à grande échelle -ScrumDay...
 
Refactor your Specs - 2017 Edition
Refactor your Specs - 2017 EditionRefactor your Specs - 2017 Edition
Refactor your Specs - 2017 Edition
 
Legacy Code: Evolve or Rewrite?
Legacy Code: Evolve or Rewrite?Legacy Code: Evolve or Rewrite?
Legacy Code: Evolve or Rewrite?
 
Ur Domain Haz Monoids DDDx NYC 2014
Ur Domain Haz Monoids DDDx NYC 2014Ur Domain Haz Monoids DDDx NYC 2014
Ur Domain Haz Monoids DDDx NYC 2014
 
Ur Domain Haz Monoids
Ur Domain Haz MonoidsUr Domain Haz Monoids
Ur Domain Haz Monoids
 
Refactor your specs! Øredev 2013
Refactor your specs! Øredev 2013Refactor your specs! Øredev 2013
Refactor your specs! Øredev 2013
 
DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)
 
I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"
 
Domain-Driven Design in legacy application
Domain-Driven Design in legacy applicationDomain-Driven Design in legacy application
Domain-Driven Design in legacy application
 
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
Tour d'horizon de Domain-Driven Design Avril 2012 autour d'un retour d'expéri...
 

Recently uploaded

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
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
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
 
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
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
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
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
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
 
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
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
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
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 

Recently uploaded (20)

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
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
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...
 
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...
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
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
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
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...
 
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...
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
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
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 

Understanding Bounded Contexts in Microservices and Domain-Driven Design