Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Why Domain-Driven Design is so Relevant Today?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jérémie Grodziski
June 07, 2017
Programming
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Why Domain-Driven Design is so Relevant Today?
Jérémie Grodziski
June 07, 2017
More Decks by Jérémie Grodziski
See All by Jérémie Grodziski
Clojure project in the field
jgrodziski
0
440
Why Data Literals Matters? English version
jgrodziski
0
860
Why Data Literals Matters?
jgrodziski
1
1.6k
Why Data Literals Matters?
jgrodziski
0
120
Anatomy of a BDD Execution Library in Clojure
jgrodziski
0
1k
Clojure Zipper
jgrodziski
1
300
An introduction to Clojure
jgrodziski
0
5.5k
Iqnite Geneva 2013 - Conception et Test avec DDD et BDD
jgrodziski
0
210
Introduction to Domain Driven Design - Entity and Value Object
jgrodziski
3
7.9k
Other Decks in Programming
See All in Programming
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
630
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
440
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
290
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
460
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
1k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
130
Creating Composable Callables in Contemporary C++
rollbear
0
190
Webフレームワークの ベンチマークについて
yusukebe
0
190
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
240
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
570
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
170
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
510
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
GitHub's CSS Performance
jonrohan
1033
470k
Prompt Engineering for Job Search
mfonobong
0
370
Deep Space Network (abreviated)
tonyrice
0
220
WCS-LA-2024
lcolladotor
0
670
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Un-Boring Meetings
codingconduct
0
330
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
How to build a perfect <img>
jonoalderson
1
5.8k
Building Applications with DynamoDB
mza
96
7.1k
WENDY [Excerpt]
tessaabrams
11
38k
Transcript
WHY DOMAIN-DRIVEN DESIGN IS SO RELEVANT TODAY? Jérémie GRODZISKI L’après-midi
du Domain-Driven-Design Microsoft - June 2017
A PERSONAL HISTORY OF COMPUTING
MY FIRST ENCOUNTER
30 YEARS AFTER…
“SOFTWARE IS EATING THE WORLD”
IT HAS NEVER BEEN SO EASY TO BUILD SOFTWARE
BUT …
THE COST OF MAINTAINING SOFTWARE STAY TOO HIGH
THE HARSH REALITY
WHAT’S LEGACY ?
THE 3 PILLARS OF COMPLEXITY DOMAIN SOFTWARE PEOPLE
TACKLING COMPLEXITY IN THE HEART OF SOFTWARE
THE HEART OF SOFTWARE?
DOMAIN?
A SET OF CONCEPTS THAT, THROUGH USE CASES, ALLOWS US
TO SOLVE PROBLEMS DOMAIN?
DOMAIN: DOUBLE ENTRY ACCOUNTING SOLVED PROBLEMS: TRACKING, ROBUSTNESS CONCEPTS: ACCOUNT,
DEBIT, CREDIT, AMOUNT, ETC.
DOMAIN: IDE SOLVED PROBLEMS: PRODUCTIVITY, INTEGRATION CONCEPTS: PROJECTS, FILES, ANALYSIS,
REFACTORING, CVS, DEBUGGER, ETC.
HOW TO TACKLE COMPLEXITY ?
BETTER ALIGNMENT solution space problem space
WITH DDD WE CONNECT solution space problem space
ALIGNMENTS REQUIRES UNDERSTANDING
OUR FIRST WORK AS DEVELOPER? UNDERSTAND THE DOMAIN WE’LL HAVE
TO CODE …OR MAINTAIN
BOTH AN APPROACH AND A TOOLBOX
AN APPROACH Focus on business Value Language is key Make
the implicit, explicit
MAKE THE IMPLICIT EXPLICIT ?
DDD IS NOT A PROCESS !
DESIGN IS MAKING DECISIONS
ALWAYS CONNECT YOUR DECISIONS TO YOUR BUSINESS OBJECTIVES
DDD IS ALSO A TOOLBOX
A TWO STOREY TOOLBOX
TOOLS TO HELP WHILE CODING TACTICAL PATTERNS
TOOLS TO HELP WHILE ARCHITECTING STRATEGICAL PATTERNS
DDD IN A NUTSHELL HOW BEST TO INTEGRATE THE DOMAIN
IN THE SOFTWARE?
DDD IN A NUTSHELL BUILD WHAT THEY NEED, NOT WHAT
YOU CAN
DISCLAIMER FOR TODAY