SlideShare a Scribd company logo
1 of 282
Download to read offline
@cyriux
Cyrille Martraire
Domain Modelling towards
First Principles
DDD Europe
Low BS
DDD practioners: we
need you for Digital
Transformations!
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”
MY	KEY	MESSAGE
DOMAIN-DRIVEN
DOMAIN-DRIVEN
too gentle
LEARN	THE	DOMAIN
USE	YOUR		
DOMAIN-DRIVEN	SKILLS
REVERSE-ENGINEER	THE	
BUSINESS	DOMAINS
INTO	USEFUL	
CONCEPTUAL	MODELS
ALL	THIS
too gentle
CONCEPTUALISE	A	
DOMAIN	MODEL		
AS	A	THEORY
SPOT	THE	
FIRST	PRINCIPLES	
BEHIND	THE	THEORY
CHALLENGE	THE		
FIRST	PRINCIPLES
TO	SUGGEST	CHANGES	TO		
THE	BUSINESS	PROCESSES
TO	TURN	THEM	TO		
DIGITAL-NATIVE	BUSINESSES
TO	EMBRACE
why	this	talk?
We	are	given	work
Case by Case
One User Story
Another User Story
Some Other User Stories
Even More User Stories
A LOT of User Stories…
… all Special Cases of a General Case!
X=
X
What you have in mind
Ribbon Costume
HUMAN
COMPILER
Please	describe	the	problem,	not	
its	multiple	consequence
Anti-pattern
Please give me the general case!
X=
This	is	a	job	for	machines,		
not	for	Developers
WHY?
SOLUTION

ENVYEveryone	wants	to	be	the	problem	
‘solver’,	even	when	it’s	not	their	skills
LACK OF
TRUST”They’re	not	able	to	understand”
INTRODUCING
THE WATERLINE
Design	vs	Requirement
If it's your decision to make,
then it's 'design'; if it's not,
then it is a requirement
— Alistair Cockburn
http://alistair.cockburn.us/A+requirement+is+a+relationship+to+a+decision
The	design	waterline
requirements
design	waterline
requirements
design	current	
waterline	LABORIOUS		
CODE
HOW	BUSINESS	
PEOPLE	SPECIFY
What	happens	too	often
requirements
design	current	
waterline	
HUMAN
COMPILER
HOW	BUSINESS	
PEOPLE	THINK
HOW	BUSINESS	
PEOPLE	SPECIFY
Accidental	Complexity	(Biz	people)
requirements
design	current	
waterline	
HUMAN
COMPILER
ONE	GENERAL	CASE
MANY	
CONSEQUENCES
Accidental	Complexity	(Biz	people)
requirements
design	current	
waterline	
ONE	GENERAL	CASE
MANY	
CONSEQUENCES
Accidental	Complexity	(Biz	people)
X
RAISE THE
WATERLINE
RAISE THE
WATERLINE
(mutually)
You don’t have
to dumb down
the domain, you
know.
requirements
design	new	
waterline	
Mutual	Higher-Level	Communication			
SMARTER		
CODE
HOW	BUSINESS	
PEOPLE	SPECIFY
More	generally…
SOLUTION

STATEMENTThe	expressed	need	is	frequently	a	
solution	dressed	up	as	a	problem
Challenging		
the	expressed	”needs”
How	do	I	do	that?
POWERFUL
QUESTIONS
➡	in	your	goodies	bags
Facilitation	Questions	Cards
Sometime	we	developers		
become	human	
compilers	too…
BTW:	Accidental	Complexity	(devs)
requirements
design	
waterline	
deductive	
implementation
LABORIOUS		
CODE
HUMAN
COMPILER
HOW	BUSINESS	
PEOPLE	SPECIFY
What’s wrong
with that?
What’s wrong
with that?Too muchcode!
What’s wrong
with that?Too muchcode! Can’t code each
possible case!
What’s wrong
with that?
Not maintainable!
Too muchcode! Can’t code each
possible case!
What’s wrong
with that?
Not maintainable!
Too muchcode! Can’t code each
possible case!
You	know	the	antidote
Refactoring	skills	
Test-Driven	Development	skills
Concrete-Scenario-Driven	
(TDD,	BDD)
requirements
design	
waterline	
derive	
concrete		
scenarios	
(deduction) TEST	CASES
HOW	BUSINESS	
PEOPLE	SPECIFY
TRIANGULATION
refactor	to		
general	code	
(induction)
Our	super	power	is	to	be	
good	at	exploiting	
regularities	through	
refactoring
Which	means	we	can	help	
business	people	at	that
Domain	Experts		
not	really	experts
RAISE THE
WATERLINE
(yourselves)
requirements
design	current	
waterline	LABORIOUS		
CODE
HOW	BUSINESS	
PEOPLE	SPECIFY
Current	situation
requirements
design	current	
waterline	
THE	WAY	BUSINESS	
REALLY	WORKS	
(TACIT	KNOWLEDGE)
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
THE	WAY	BUSINESS	
PEOPLE	THINK	
(MAY	BE	TACIT)
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
THE	WAY	BUSINESS	
PEOPLE	THINK	
(MAY	BE	TACIT)
YOUR		
JOB
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
agree	with		
experts
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
YOUR		
JOB
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
raise	the		
waterline!	
agree	with		
experts
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
requirements
design	new	
waterline	
MORE	POTENTIAL	FOR	
SMARTER	DESIGN
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
Smarter	domain	description,		
Smarter	implementation
MOST TEAMS
CONFIGURE
THIS MANUALLY
GOOGLE SRE
CONFIGURES
HERE
GOOGLE	Auxon	-	DC	resources	allocations
Moving from concrete resource demands to motivating reasons in order
to arrive at the true capacity intent often requires several layers of
abstraction.
1. I want 50 cores in clusters X, Y, and Z for service Foo.
2. I want a 50-core footprint in any 3 clusters in geographic region YYY
for service Foo.
3. I want to meet service Foo’s demand in each geographic region,
and have N + 2 redundancy.
4. I want to run service Foo at 5 nines (99.999%) of reliability A
In Google’s experience, we tend to achieve the best wins as they cross
to step 3. Particularly sophisticated services may aim for step 4. 
WHY?
WHY?
WHY?
https://landing.google.com/sre/book/chapters/software-engineering-in-sre.html
Will	hardly	happen	unless	you	
drive	that
Developers are
the professionals
of induction
Example	please!
Teams members

Workers assignments

Categories

Bank holidays

Currencies

Industry Classifications

Countries, Regions

Include / Exclude lists

Preferences

Access rights
Con_iguration	Lists
Lists	in	admin	website
Somebody	has	to	manage		
all	these	big	lists…
Let’s just add a
CRUD page, as
usual.
RAISE THE
WATERLINE
WHY this list?
WHERE does it
come from?
From other
lists, post-
processed!
Web feeds

Spreadsheets

Data already in DB
- merged
- filtered
+ =
raw	lists processing MY	list
Imagine	you	work	as	a	dev	for	an	
insurance	company…
Insurance Broker Portfolio
Configuration
”Each Insurance Broker has a list
of contracts they manage: their
”portfolio” of contracts.”
They configure it manually on a
web page.
Insurance Broker Portfolio
Configuration
”Each Insurance Broker has a list
of contracts they manage: their
”portfolio” of contracts.”
They configure it manually on a
web page.
Where	does	this	list	come	from?
WHERE does it
come from?
Turns out
• They did searches during their setup
• Search all contracts by corporate, for the
few corporates they manage
• Their portfolio is every contracts with these
corporates.
• Except the VIP contracts, managed by the
head of sales. 
From other
lists, post-
processed!
SELECT * FROM contracts
WHERE contract.corporate IN my-accounts
AND !contract.isVIP
Nothing fancy here.
SELECT * FROM contracts
WHERE contract.corporate IN my-accounts
AND !contract.isVIP
SMALL list
And now for a new pedantic word…
Portfolio	de_ined	as…
+ =
raw	lists MY	list
EXTENSIONAL
curation	
criteria
INTENSIONAL
An intensional
definition … by
specifying necessary
and sufficient
conditions
"bachelor"
=
"unmarried man"
PREDICATE
evaluate(something): boolean
An extensional
definition … by
listing everything
"bachelor"
=
listing of all the
unmarried men in
the world
"bachelor"
=
listing of all the
unmarried men in
the world
Ooops!!!
Enumerablefor each: element
EXTENSIONAL
OBSESSION
HEURISTICS:
CONSIDER THE
INTENSIONAL
ALTERNATIVE
HIGHER	LEVEL	of	LANGUAGE	
PORTFOLIO AS
CRITERIA
PORTFOLIO AS
LIST OF CONTRACTS
PORTFOLIO AS
LIST OF CONTRACTS
SELECT * FROM contracts
WHERE contract.corporate IN my-accounts
AND !contract.isVIP
INTENSIONAL
Extensional
managed		
list	of	corporates
VIP	tag	on	some	contracts
+
PORTFOLIO AS
CRITERIA
problem	solved	:)
This modelling
trick is nice…
But what
about all the
other business
rules?
But what
about ALL THE
other business
rules?
ARBITRARY
RULES
OBSESSION
But what
about all the
other business
rules?
Business
=
CRUD
+
rules
ARBITRARY
RULES
OBSESSION
Business
=
CRUD
+
rules
ARBITRARY
RULES
OBSESSION
Bunch of
data fields
Piles of IF
statements
BIG BAG OF
BUSINESS
RULES
Domain model as-a
You	cannot	get		
smarter	domain	models	if	
you	believe	the	domain	is	
mostly	arbitrary!
Do you believe the
world is just noise,
or full of hidden
regularities?
Code can be small
YET still supports a
LOT of behaviours
Domain Modelling is
a quest to eradicate
arbitrary business
rules!
Programming as Theory-
Building
— Peter Naur (1985)
http://pages.cs.wisc.edu/~remzi/Naur.pdf
DOMAIN MODEL
as-a
THEORY
To	understand	
To	explain	
To	predict
A	widely	accepted	theory
Murray Gell-Mann
Nobel 1969
A	Finite	Set	of	Quarks
Quarks	Compose	into	
bigger	particles	
Neutron Proton
Quarks	Predict	Unknown	particles	
Neutron Proton
and
many others…
GENERATIVE power
Why	it	matters?
a	Theory	is	
Concise
but	their	consequences	are	
EXTENSIVE
a	Theory	is	
Concise
but	its	consequences	are	
EXTENSIVE
A	Finite	Set	of	Quarks
Many	particles
Neutron Proton
and
many others…
a	Theory	is	
Concise
but	its	consequences	are	
EXTENSIVE
EXTENSIVE
requirements
design	
Surface	of	the	waterline
LOT OF CODE
requirements
design	
Surface	of	the	waterline
Concise
		
Surface	of	the	waterline
requirements
design
Concise
		
Surface	of	the	waterline
requirements
design	
fewer code
requirements
design
Theory
+
Regularities	
Found
Residual	
Mess
But	many	business	domains	are	messy
Arbitrary	=	Messy	Domains
Eric Evans: DDD is Not for Perfectionists https://www.infoq.com/news/2017/02/ddd-perfectionists
The Spill Zone pattern:  to cover the
remaining messy cases, e.g. a function
casesWeHaventFiguredOut() with only
IF-THEN inside  — Eric Evans at DDDEU 2017
(like	Circuit	Breaker,	
but	for	design)
Theory
+
Residual	
Mess
+
Theory
Residual	
Mess
SMALL SMALL
+
Theory
Residual	
Mess
TESTABLE TESTABLE
+
Theory
Residual	
Mess
MAINTENABLE MAINTENABLE
+
Theory
Residual	
Mess
CHALLENGEABLE! CHALLENGEABLE!
But to reverse-engineer it all…
…you must have the whole
picture in mind.
MIND THE
DISCOVERY PATH
”triangles always
blue”
Or red
Discovery	with	the	full	memory
”triangles
are either blue,
green, red”
I need to add
”green triangles”
somewhere into the
system
One	case	at	a	time:	no	insight
”triangles
are either blue,
green, red”
Observing	all	diversity	at	once	
makes	insights	obvious
Observing the
DIVERSITY at once
makes insights
obvious
Feature 1 Feature 2 Feature N
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
Story map
Feature 1 Feature 2 Feature N
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
Story map
INITIAL DESIGN ON 1 SINGLE CASE
:(
Feature 1 Feature 2 Feature N
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
Story map
EXPLORING QUICKLY WHAT’S NEXT
User
Story?
Feature 1 Feature 2 Feature N
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
User Story
Story map
A BIT OF BOTH
User
Story?
T-SHAPED
EXPLORATION
LIKE IN TDD!
Driving the
implementation and
its design by ordering
the tests strategically
BUT CYRILLE…
We’re agile, we should
be able to change
anything anytime!
First layer of bricks matters more…
This should not be true but it is,
for many bad reasons.
LEGACY
CORRUPTION
”We've always
done like that!”
Legacy	Corruption
People	distorted	their	business	concepts	to	cope	
with	the	constraints	of	their	legacy	software	
”A	Tricycle	is	a	kind	of	Truck	because	only	the	type	
Truck	 has	 the	 7ield	 to	 specify	 the	 ‘number	 of	
wheels’”
Legacy	Assumptions
BATCHES	take	a	lot	of	time	and	fail	often,	so	we	
need	 to	 store	 all	 data	 at	 each	 step	 for	 human	
inspection	and	recovery	(Data	Obsession)
+
Theory Residual	
Mess
DETOX
+ LEGACY
CORRUPTION
ANTIDOTE
SKEUOMORPHIC
MODEL
”Preservation	of	the	familiar	
through	technological	change”
characteristic	
"wooden"	beams
1250–546 BC
At	some	point	we	have	to	learn	to	
rid	of	skeuomorphism
PATH-DEPENDENT
EVOLUTION
Long ago
Mass
production
The factory line
NEW: robot!
More robots!!
More robots!!!
A line of robots…
A line of robots…
Sum of LOCAL
optimizations
≠
GLOBAL
Optimization
A line of robots…
COULD DO
BETTER
THAN THIS
THINK
DIGITAL-
NATIVE
FAB
Factory reboot
laser
cutter
Versatile
Robot
Digital Fab-native
laser
cutter
Versatile
Robot
Fewer Machines
laser
cutter
Versatile
Robot
Mass Customization
laser
cutter
Versatile
Robot
Opportunity	to	review	/
change	the	business	
processes
Theory	build	on	top	of	
principles
FIRST-
PRINCIPLES
Aristotle: a first principle is the "first basis
from which a thing is known”
First	Principles	Thinking
…one of the most effective strategies you can
employ for breaking down complicated
problems and generating original
solutions.
https://jamesclear.com/first-principles
Deconstruct then reconstruct.
Elon	Musk	on	First	Principles
[With first principles] you boil
things down to the most
fundamental truths … and then
reason up from there."
http://www.businessinsider.fr/us/elon-musk-first-principles-2015-1/
Principles	that	we	can	
challenge…
First	Principles	
Thinking	/	Einstein
Einstein questioned the
assumption that time and
space were absolute.
1905
Not	continuous	improvements
Continuous improvement tends to occur within the
boundary set by the original vision.
https://jamesclear.com/first-principles
Deconstruct	past	models		
to	reconstruct	
new	innovative	models
when	designing	software
+
Theory
Residual	
Mess
SMALL SMALL
+
Theory
Residual	
Mess
CHALLENGEABLE! CHALLENGEABLE!
DIGITAL-NATIVE
BUSINESSES
LOAN	APPROVAL	
WORKFLOWS
We	have	80+	work_lows
MANY	WORKFLOWS
UNCONSISTENCIES
MAINTENANCE
TOO	SEQUENTIAL
ANYONE LATE DELAYS
EVERYONE LATER
RAISE THE
WATERLINE
SIMILAR	
STEPS	
OVERALL
BUT	NOT	
ALWAYS	
THERE
BY	
DIFFERENT	
TEAMS
MANY	WORKFLOWS.		
FEW	RATIONALES.
MANY	WORKFLOWS.		
FEW	RATIONALES.
TURNS	OUT	ALL	
WORKFLOW	ARE	PRETTY	
MUCH	THE	SAME
TEAM	SEGMENTATION
DIR
FR UK CH SUN
(IT/SP/GR)
CLIENT	COVERAGE
PARAMETERIZED WORKFLOW
➡	TEAM	
chosen		
by	location
DELEGATION	MECHANISM
DELEGATION
➡	TEAM	
replaced		
by	delegation	
➡	Steps	by	
same	team	
merged
DELEGATION	MECHANISM
DELEGATION
Delegation	by	
amount		
➡	optional	
extra	steps	for	
big	amounts
Builder	Pattern	as	a	Virtual	B.A.
Reasoning
To build
on-the-fly
concrete workflow
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
raise	the		
waterline!	
agree	with		
experts
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
requirements
design	new	
waterline	
MORE	POTENTIAL	FOR	
SMARTER	DESIGN
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
Going	further…
What does the
workflow tries to
optimise for?
DISTURB	
SENIOR		
ROLES	
LAST
MOST	
LIKELY		
TO	FAIL	
ASAP
Declare the preferences.
Let the tool find out the
workflow.
DISTURB	
SENIOR		
PEOPLE	
LAST
MOST	
LIKELY		
TO	FAIL	
ASAP
Declare the preferences.
Let the tool find out the
workflow.
DISTURB	
SENIOR		
PEOPLE	
LAST
MOST	
LIKELY		
TO	FAIL	
ASAP	
WE CALL THAT
”SORTING”
Topological	Sorting
http://flylib.com/books/en/2.300.1.142/1/
Topological	Sorting
http://flylib.com/books/en/2.300.1.142/1/
ONLY DECLARE
PRE-REQUISITE
DEPENDENCIES
Topological	Sorting
http://flylib.com/books/en/2.300.1.142/1/
LET THE TOOL
FIND OUT THE
WORKFLOW
Domain modelling
can literally express
human psychology.
requirements
design	
inductive		
exploration	
(speculative)
current	
waterline	
raise	the		
waterline!	
agree	with		
experts
Reverse-Engineering	Again	
(Progressing	towards	Higher	Principles)
requirements
design	new	
waterline	MORE	POTENTIAL	FOR	
SMARTER	DESIGN
Reverse-Engineering	Investigation	
(Progressing	towards	Higher	Principles)
Going	further…
When 80% of requests are
fully automated…
…does it still makes sense
to have a workflow
between (mostly) function
calls?
#NoWorkflow
UNDERLYING
TECHNOLOGYas-an-influence
No	such	a	thing	as		
Technology-Agnostic	Domains	
An office pool in the 1950s. Underwood & Underwood/Corbis
Domains	are	still	shaped	by	
the	previous	technology:	
bureaucracy
An office pool in the 1950s. Underwood & Underwood/Corbis
RADICAL
RE-INVENTIONfrom first principles
What does the
workflow tries to
optimise for?
CREDIT	RISK	FROM	FIRST	PRINCIPLES
RISK BUREAU
GUARANTEES
VALUE OVER TIME
MONEY LENT
OVER TIME
IS IT BALANCED?
PAYMENT	FROM	FIRST	PRINCIPLES
PAYMENT RISK
COMMITMENT TO
SHIP PRODUCT NOW
PROMISE TO SEND
MONEY LATER
”NON REPUDIATION”
requirements
design	
Radically	From	First	Principles	
(Ignoring	the	traditions)
FIRST		
PRINCIPLES	OF	
THE	BUSINESS
CO-DESIGNED		
SOFTWARE
#before:
Engineering time is precious,
therefore GENeric indexes
#AFTER:
DEEP-LEARNING CAN REPLACE
HUMAN Engineering time
!Political	Risk!
Who’s gonna sign off the decision to make radical
changes to business processes?
Discovering a modelling breakthrough is only half of the
total effort; the other half is communicating and convincing
other people (business sponsors, managers…) to accept
the associated risk of novelty.
in closing
RAISE THE
WATERLINE
EXPECT
UNTOLD
REGULARITIES
PRACTICE TDD
PRACTICE
Domain-Driven
Design
Build theories,
not just lists of
business rules
LEARN TO
THINK FROM
FIRST
PRINCIPLES
Embrace
DIGITAL
Transformations
to
SOFTWARE-
AUGMENTED
BUSINESSES
@cyriux
Cyrille Martraire
Thanks!
Follow me @cyriux
Slides: slideshare.net/cyriux
Blog: cyrille.martraire.com
We offer training, coaching & consulting on DDD, BDD, TDD

More Related Content

Similar to Domain Modeling towards First Principles

Your Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionYour Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionDialexa
 
How serverless changes the cost paradigm
How serverless changes the cost paradigmHow serverless changes the cost paradigm
How serverless changes the cost paradigmYan Cui
 
50 business model examples
50 business model examples50 business model examples
50 business model examplesGhani Kolli
 
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...Mozaic Works
 
Beyond The Intranet: Digital Workplace Apps, Solutions & Bots
Beyond The Intranet: Digital Workplace Apps, Solutions & BotsBeyond The Intranet: Digital Workplace Apps, Solutions & Bots
Beyond The Intranet: Digital Workplace Apps, Solutions & BotsRichard Harbridge
 
Why Microservices Are The New Innovation Enablers For Enterprises
Why Microservices Are The New Innovation Enablers For EnterprisesWhy Microservices Are The New Innovation Enablers For Enterprises
Why Microservices Are The New Innovation Enablers For EnterprisesEnabled
 
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...Jeremy Johnson
 
Hiring an Offshore .NET Development Company | Key Considerations
Hiring an Offshore .NET Development Company | Key ConsiderationsHiring an Offshore .NET Development Company | Key Considerations
Hiring an Offshore .NET Development Company | Key ConsiderationsWeblineIndia
 
Executive Briefing July 29th V2
Executive Briefing July 29th V2Executive Briefing July 29th V2
Executive Briefing July 29th V2Damian Hamilton
 
Rational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowRational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowDevOps for Enterprise Systems
 
Five Reasons to Move B2B Integration to the Cloud
Five Reasons to Move B2B Integration to the CloudFive Reasons to Move B2B Integration to the Cloud
Five Reasons to Move B2B Integration to the CloudFrancois Van Uffelen
 
The Dirty Dozen: Purge these 12 words from your B2B marketing copy
The Dirty Dozen: Purge these 12 words from your B2B marketing copyThe Dirty Dozen: Purge these 12 words from your B2B marketing copy
The Dirty Dozen: Purge these 12 words from your B2B marketing copyHarding Marketing Communications
 
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...Rien van den Bosch
 
Serverless is more findev than devops
Serverless is more findev than devopsServerless is more findev than devops
Serverless is more findev than devopsYan Cui
 
Prop assist builders v2
Prop assist builders v2Prop assist builders v2
Prop assist builders v2propassist
 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixDA SILVA, MBA
 

Similar to Domain Modeling towards First Principles (20)

Your Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B DisruptionYour Big Idea: Creating Products for B2B Disruption
Your Big Idea: Creating Products for B2B Disruption
 
How serverless changes the cost paradigm
How serverless changes the cost paradigmHow serverless changes the cost paradigm
How serverless changes the cost paradigm
 
50 business model examples
50 business model examples50 business model examples
50 business model examples
 
Webservices
WebservicesWebservices
Webservices
 
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
Cyrille Martraire: Living Documentation Jumpstart at I T.A.K.E. Unconference ...
 
Beyond The Intranet: Digital Workplace Apps, Solutions & Bots
Beyond The Intranet: Digital Workplace Apps, Solutions & BotsBeyond The Intranet: Digital Workplace Apps, Solutions & Bots
Beyond The Intranet: Digital Workplace Apps, Solutions & Bots
 
Why Microservices Are The New Innovation Enablers For Enterprises
Why Microservices Are The New Innovation Enablers For EnterprisesWhy Microservices Are The New Innovation Enablers For Enterprises
Why Microservices Are The New Innovation Enablers For Enterprises
 
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...
Customer Experience in the Rise of the Digital Age — Atlanta XD Meeting 9/13/...
 
Hiring an Offshore .NET Development Company | Key Considerations
Hiring an Offshore .NET Development Company | Key ConsiderationsHiring an Offshore .NET Development Company | Key Considerations
Hiring an Offshore .NET Development Company | Key Considerations
 
Introduction to sap
Introduction to sapIntroduction to sap
Introduction to sap
 
Introduction to sap
Introduction to sapIntroduction to sap
Introduction to sap
 
Executive Briefing July 29th V2
Executive Briefing July 29th V2Executive Briefing July 29th V2
Executive Briefing July 29th V2
 
Rational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowRational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and now
 
Five Reasons to Move B2B Integration to the Cloud
Five Reasons to Move B2B Integration to the CloudFive Reasons to Move B2B Integration to the Cloud
Five Reasons to Move B2B Integration to the Cloud
 
The Dirty Dozen: Purge these 12 words from your B2B marketing copy
The Dirty Dozen: Purge these 12 words from your B2B marketing copyThe Dirty Dozen: Purge these 12 words from your B2B marketing copy
The Dirty Dozen: Purge these 12 words from your B2B marketing copy
 
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
 
Serverless is more findev than devops
Serverless is more findev than devopsServerless is more findev than devops
Serverless is more findev than devops
 
Why choose-liferay
Why choose-liferayWhy choose-liferay
Why choose-liferay
 
Prop assist builders v2
Prop assist builders v2Prop assist builders v2
Prop assist builders v2
 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
 

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
 
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...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
 
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
 
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 (12)

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)
 
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
 
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
 
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...
 
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

The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
%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
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
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
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
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 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
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
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
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsBert Jan Schrijver
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durbanmasabamasaba
 
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
 
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)

The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
%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
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .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
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
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 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
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
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...
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
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
 
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 Modeling towards First Principles