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
Strategic Domain-Driven Design: The missing lin...
Search
Manfred Steyer
PRO
May 28, 2019
Programming
2
1.3k
Strategic Domain-Driven Design: The missing link paving the way to your monorepo-based Angular architecture @NgVikings2019
[Example](
https://github.com/manfredsteyer/ddd
)
Manfred Steyer
PRO
May 28, 2019
Tweet
Share
More Decks by Manfred Steyer
See All by Manfred Steyer
Premier Disciplin for Micro Frontends Multi Version/ Framework Scenarios @OOP 2026, Munic
manfredsteyer
PRO
0
180
Beyond the Basics: Signal Forms
manfredsteyer
PRO
0
94
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
180
All About Angular‘s New Signal Forms
manfredsteyer
PRO
0
35
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
280
Your Architecture as a Crime Scene?Forensic Analysis
manfredsteyer
PRO
0
190
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
290
Your Architecture as a Crime Scene:Forensic Analysis
manfredsteyer
PRO
0
140
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
280
Other Decks in Programming
See All in Programming
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
280
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
140
Scaling & Coordinating AI Agents for Development - Tamir Dresher
tamirdresher
0
110
CSC307 Lecture 06
javiergs
PRO
0
700
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
22
8k
atmaCup #23でAIコーディングを活用した話
ml_bear
4
670
kintone + ローカルLLM = ?
akit37
0
120
「ブロックテーマでは再現できない」は本当か?
inc2734
0
1.1k
個人開発は儲からない - それでも開発開始1ヶ月で300万円売り上げた方法
taishiyade
0
110
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
2k
NOT A HOTEL - 建築や人と融合し、自由を創り出すソフトウェア
not_a_hokuts
2
450
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
290
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
400
How to Ace a Technical Interview
jacobian
281
24k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
170
GraphQLとの向き合い方2022年版
quramy
50
14k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
220
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
4 Signs Your Business is Dying
shpigford
187
22k
Designing Powerful Visuals for Engaging Learning
tmiket
0
250
Transcript
@ManfredSteyer Strategic Domain-Driven Design: The missing link paving the way
to your monorepo-based Angular architecture Manfred Steyer SOFTWAREarchitekt.at ManfredSteyer
@ManfredSteyer What do we need for a good architecture ?
Experience
@ManfredSteyer Sharing Experience for Architectures BEST PRACTICES PATTERNS METHODOLOGY
@ManfredSteyer Domain Driven Design
@ManfredSteyer How can we improve our frontend architectures with ideas
from DDD?
@ManfredSteyer How can we improve our frontend architectures with ideas
from DDD?
@ManfredSteyer Contents 1) Strategic Design 101 2) Angular Monorepos 3)
Nx Monorepos and DDD 4) DEMO
@ManfredSteyer About me… • Manfred Steyer SOFTWAREarchitekt.at • Angular Trainings
and Consultancy • Google Developer Expert (GDE) • Trusted Collaborator in the Angular Team Page ▪ 8 Manfred Steyer Public: Frankfurt, Vienna, Munich, Düsseldorf, Stuttgart In-House: everywhere http://softwarearchitekt.at/workshops
@ManfredSteyer 1) Strategic Design in a nutshell
@ManfredSteyer Domain Driven Design Strategic Design Tactical Design Decomposing a
System Design Patterns & Practices
@ManfredSteyer Domain Driven Design Strategic Design Tactical Design Decomposing a
System Design Patterns & Practices
@ManfredSteyer This is what Strategic DDD prevents
@ManfredSteyer Example e-Procurement System
@ManfredSteyer Catalog Approval Specification Ordering Example Sub-Domains
@ManfredSteyer Catalog Approval Bounded Cotext Ubiquitous Language
@ManfredSteyer Catalog Approval Specification Ordering Context Map
@ManfredSteyer Approval Specification Context Map Catalog Catalog Shared Kernel
@ManfredSteyer Catalog Approval API
@ManfredSteyer Lots of additional approaches for cross-domain communication …
@ManfredSteyer 2) Monorepos
@ManfredSteyer Workspace
@ManfredSteyer Creating a Workspace npm install -g @angular/cli ng new
workspace cd workspace ng generate app my-app ng generate lib my-lib ng serve --project my-app ng build --project my-app
@ManfredSteyer Tooling & Generator https://nrwl.io/nx
@ManfredSteyer Visualize Module Structure
@ManfredSteyer 3) Nx Monorepos and Strategic Design
@ManfredSteyer Catalog Ordering Shared Feature Feature Feature Feature Feature UI
UI UI UI UI UI UI UI UI Domain Domain Domain Domain Domain Domain Util Util Util Util Util Util Enterprise Monorepo Patterns, Nrwl 2018: https://tinyurl.com/y2jjxld7 @ManfredSteyer Shared Kernel (if really needed) & other libs
@ManfredSteyer Catalog Ordering Shared Feature API Feature Feature Feature Feature
UI UI UI UI UI UI UI UI UI Domain Domain Domain Domain Domain Domain Util Util Util Util Util Util @ManfredSteyer
@ManfredSteyer Application Domain Infrastructure Isolate your domain! Domain Domain Infrastructure
e. g. data access Application Use case specific facades
@ManfredSteyer Finegrained Libraries • Unit of recompilation • Unit of
retesting • Access restrictions • Prevent Cycles • Information Hiding • Future replacement for NgModules?
@ManfredSteyer 4) DEMO
@ManfredSteyer Summary Slicing into sub-domains Slicing into layers Non-strict layering
Finegrained libraries Enforce restrictions
@ManfredSteyer
@ManfredSteyer Contact and Downloads [mail]
[email protected]
[web] SOFTWAREarchitekt.at [twitter] ManfredSteyer
d Slides & Examples Public: Frankfurt, Vienna, Munich, Düsseldorf, Stuttgart In-House: everywhere http://softwarearchitekt.at/workshops