Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Why Domain-Driven Design is so Relevant Today?
Search
Jérémie Grodziski
June 07, 2017
Programming
0
580
Why Domain-Driven Design is so Relevant Today?
Jérémie Grodziski
June 07, 2017
Tweet
Share
More Decks by Jérémie Grodziski
See All by Jérémie Grodziski
Clojure project in the field
jgrodziski
0
410
Why Data Literals Matters? English version
jgrodziski
0
790
Why Data Literals Matters?
jgrodziski
1
1.6k
Why Data Literals Matters?
jgrodziski
0
88
Anatomy of a BDD Execution Library in Clojure
jgrodziski
0
990
Clojure Zipper
jgrodziski
1
280
An introduction to Clojure
jgrodziski
0
5.4k
Iqnite Geneva 2013 - Conception et Test avec DDD et BDD
jgrodziski
0
200
Introduction to Domain Driven Design - Entity and Value Object
jgrodziski
3
7.8k
Other Decks in Programming
See All in Programming
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
8
2.3k
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
38
26k
dotfiles 式年遷宮 令和最新版
masawada
1
770
俺流レスポンシブコーディング 2025
tak_dcxi
14
8.7k
チームをチームにするEM
hitode909
0
330
Integrating WordPress and Symfony
alexandresalome
0
150
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
470
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.3k
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
270
ゲームの物理 剛体編
fadis
0
340
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
670
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Code Review Best Practice
trishagee
74
19k
Practical Orchestrator
shlominoach
190
11k
Context Engineering - Making Every Token Count
addyosmani
9
510
Mobile First: as difficult as doing things right
swwweet
225
10k
Done Done
chrislema
186
16k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Docker and Python
trallard
47
3.7k
Unsuck your backbone
ammeep
671
58k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Speed Design
sergeychernyshev
33
1.4k
RailsConf 2023
tenderlove
30
1.3k
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