Slide 1

Slide 1 text

www.lilobase.me The strategies behind DDD @lilobase #BlendWebMix sundayapp.com

Slide 2

Slide 2 text

Let’s start a new project !

Slide 3

Slide 3 text

Sprint Zero

Slide 4

Slide 4 text

Sprint Zero Angular or React ?

Slide 5

Slide 5 text

Sprint Zero Java or C# ? Angular or React ?

Slide 6

Slide 6 text

Sprint Zero Java or C# ? Spring Boot or Quarkus ? Angular or React ?

Slide 7

Slide 7 text

Sprint Zero Java or C# ? Spring Boot or Quarkus ? Kafka or Redis ? Angular or React ?

Slide 8

Slide 8 text

Sprint Zero Java or C# ? Spring Boot or Quarkus ? Kafka or Redis ? Microservices or Monolith ? Angular or React ?

Slide 9

Slide 9 text

Sprint Zero Java or C# ? Spring Boot or Quarkus ? Kafka or Redis ? Microservices or Monolith ? Kubernetes or Nomad ? Angular or React ?

Slide 10

Slide 10 text

Look, at our spring boot application with Kafka deployed on a K8S Cluster Sprint Zero

Slide 11

Slide 11 text

Look, at our spring boot application with Kafka deployed on a K8S Cluster They know nothing about the project’s business domain Sprint Zero

Slide 12

Slide 12 text

Look, at our spring boot application with Kafka deployed on a K8S Cluster They know nothing about the project’s business domain … Sprint Zero

Slide 13

Slide 13 text

Java or C# ? Spring Boot or Quarkus ? Kafka or Redis ? Microservices or Monolith ? Kubernetes or Nomad ? Angular or React ? These issues address only the solution

Slide 14

Slide 14 text

But not the problem What should we do ?

Slide 15

Slide 15 text

But not the problem What should we do ? …

Slide 16

Slide 16 text

Spring Boot or Quarkus ? Kafka or Redis ? Microservices or Monolith ? Kubernetes or Nomad ? Angular or React ? And that's why we are seen as technical expert Java or C# ?

Slide 17

Slide 17 text

solution problem What should we do ? How are we going to do it ?

Slide 18

Slide 18 text

solution problem What should we do ? How are we going to do it ? It is an important discussion to have

Slide 19

Slide 19 text

solution problem What should we do ? How are we going to do it ? It is an important discussion to have But only after we've fi gured out 
 what to do

Slide 20

Slide 20 text

DDD is all about Alignment What should we do ? How are we going to do it ?

Slide 21

Slide 21 text

DDD is all about Alignment What should we do ? How are we going to do it ?

Slide 22

Slide 22 text

DDD is all about Alignment What should we do ? How are we going to do it ?

Slide 23

Slide 23 text

« Donnez un marteau à un enfant, et il trouvera que tout a besoin d'être martelé. » – Abraham Kaplan

Slide 24

Slide 24 text

« On fait passer les besoins de la base de donnée avant ceux des utilisateurs ce qui donne des expériences assez pourries » – @WalterStephanie

Slide 25

Slide 25 text

www.lilobase.me DDD is all about Understanding @lilobase

Slide 26

Slide 26 text

Domains & Subdomains Business Domain discovery THE software

Slide 27

Slide 27 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store

Slide 28

Slide 28 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store You need to acknowledge the fact that you have several domains

Slide 29

Slide 29 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store

Slide 30

Slide 30 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store Only one VP should be angry at a time

Slide 31

Slide 31 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store These are neither Bounded Contexts nor Microservices

Slide 32

Slide 32 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Retail Store These are your domains

Slide 33

Slide 33 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Online Retail Store Payment processor Catalogue Invoicing

Slide 34

Slide 34 text

Domain Mapping Business Domain Classi fi cation Authoring & Publishing Customer Care Printing & Supply Chain Online Retail Store Payment processor Catalogue Invoicing Your domains contain domains

Slide 35

Slide 35 text

Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator Domains & Subdomains Business Domain Classi fi cation

Slide 36

Slide 36 text

Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator Domains & Subdomains Business Domain Classi fi cation Critical to the 
 organization’s success

Slide 37

Slide 37 text

Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator Domains & Subdomains Business Domain Classi fi cation Essential to the 
 organization’s success Critical to the 
 organization’s success

Slide 38

Slide 38 text

Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator Domains & Subdomains Business Domain Classi fi cation Essential to the 
 organization’s success Required for the 
 organization’s success Critical to the 
 organization’s success

Slide 39

Slide 39 text

Domain Mapping Business Domain Classi fi cation Authoring Plateform Publishing & Printing Inventory Management Payment Processor Catalogue Invoicing Shipping Order Processing Proofreading

Slide 40

Slide 40 text

Domains & Subdomains Business Domain Classi fi cation Authoring Plateform Inventory Management Shipping Payment Processor Catalogue Invoicing Order Processing Publishing & Printing Proofreading

Slide 41

Slide 41 text

Domains & Subdomains Business Domain Classi fi cation Authoring Plateform Inventory Management Payment Processor Catalogue Invoicing Shipping Order Processing Publishing & Printing Proofreading

Slide 42

Slide 42 text

Domains & Subdomains Business Domain Classi fi cation Authoring Plateform Inventory Management Payment Processor Catalogue Invoicing Each business context is speci fi c Shipping Order Processing Publishing & Printing Proofreading

Slide 43

Slide 43 text

Authoring Plateform Domains’ Connexion Reveal Business Relationships Inventory Management Shipping Catalogue Invoicing Order Processing Payment Processor Publishing & Printing Proofreading

Slide 44

Slide 44 text

Authoring Plateform Domains’ Connexion Reveal Business Relationships Inventory Management Shipping Catalogue Invoicing Order Processing Payment Processor It can highlight signi fi cant 
 sub-domain Publishing & Printing Proofreading

Slide 45

Slide 45 text

Authoring Plateform Domains’ Connexion Reveal Business Relationships Inventory Management Shipping Catalogue Invoicing Order Processing Payment Processor It can highlight signi fi cant 
 sub-domain Publishing & Printing Proofreading

Slide 46

Slide 46 text

www.lilobase.me DDD is all about Context @lilobase

Slide 47

Slide 47 text

From Problem to Solution Authoring Plateform Publishing & Printing Inventory Management Shipping Payment Processor Catalogue Invoicing Order Processing Proofreading

Slide 48

Slide 48 text

From Problem to Solution Authoring Plateform Publishing & Printing Inventory Management Shipping Payment Processor Catalogue Invoicing Order Processing problem solution Payment processor Invoicing Order Processing Shipping Authoring Plateforme Inventory Management Catalogue Publishing Proofreading Proofreading Inventory E-commerce platform Authoring Publishing

Slide 49

Slide 49 text

Domains & Subdomains Development Strategy Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator

Slide 50

Slide 50 text

Domains & Subdomains Development Strategy Supporting Subdomain Generic Subdomain Core (sub)Domain In-House development 
 with Your best teams Key differentiator

Slide 51

Slide 51 text

Domains & Subdomains Development Strategy Supporting Subdomain In-House development with 
 external support if possible Generic Subdomain Core (sub)Domain In-House development 
 with Your best teams Key differentiator

Slide 52

Slide 52 text

Domains & Subdomains Development Strategy Supporting Subdomain In-House development with 
 external support if possible Generic Subdomain Outsourcing is an option Core (sub)Domain In-House development 
 with Your best teams Key differentiator

Slide 53

Slide 53 text

Domains & Subdomains Development Strategy Supporting Subdomain Generic Subdomain Core (sub)Domain Key differentiator

Slide 54

Slide 54 text

Domains & Subdomains Development Strategy Supporting Subdomain Generic Subdomain Core (sub)Domain Custom-made software High Cost & Quality Key differentiator

Slide 55

Slide 55 text

Domains & Subdomains Development Strategy Supporting Subdomain Customized Off The Shelf Software 
 is an option Generic Subdomain Core (sub)Domain Custom-made software High Cost & Quality Key differentiator

Slide 56

Slide 56 text

Domains & Subdomains Development Strategy Supporting Subdomain Customized Off The Shelf Software 
 is an option Generic Subdomain Try to fi nd Off The Shelf solution Cost saving opportunities Core (sub)Domain Custom-made software High Cost & Quality Key differentiator

Slide 57

Slide 57 text

From Problem to Solution Payment processor Invoicing Order Processing Shipping Authoring Plateforme Inventory Management Catalogue Publishing Proofreading Inventory E-commerce platform Authoring Publishing Authoring Plateform Publishing & Printing Inventory Management Shipping Payment Processor Catalogue Invoicing Order Processing Proofreading

Slide 58

Slide 58 text

From Problem to Solution Inventory E-commerce platform Authoring Authoring Plateforme Publishing Catalogue Publishing Proofreading Authoring Plateform Publishing & Printing Inventory Management Shipping Payment Processor Catalogue Invoicing Order Processing Proofreading

Slide 59

Slide 59 text

From Problem to Solution Business Domain & Architecture alignment Inventory E-commerce platform Authoring Authoring Plateforme Publishing Catalogue Publishing Proofreading

Slide 60

Slide 60 text

From Problem to Solution Business Domain & Architecture alignment Inventory E-commerce platform Authoring Authoring Plateforme Publishing Catalogue Publishing Proofreading These are your bounded contexts

Slide 61

Slide 61 text

Inventory E-commerce platform Authoring Publishing « Team assignments are the fi rst draft of the architecture » – Michael Nygard

Slide 62

Slide 62 text

Inventory E-commerce platform Authoring Publishing Align your teams with your bounded context « Team assignments are the fi rst draft of the architecture » – Michael Nygard

Slide 63

Slide 63 text

P Authoring Publishing E-commerce Stripe ShipMonk Shopify Context Mapping Relationship Hierarchy OHS OHS ACL OHS C/S

Slide 64

Slide 64 text

Authoring Publishing E-commerce Specific Architecture style You don’t need one architectural style ES CQRS CRUD ? Stripe ShipMonk Shopify

Slide 65

Slide 65 text

Authoring Publishing E-commerce Specific Architecture style You don’t need one architectural style Beware of the CRUD ES CQRS CRUD ? Stripe ShipMonk Shopify

Slide 66

Slide 66 text

Stripe Still no microservices Bounded Context ≠ Deployment units ShipMonk Authoring Publishing E-commerce Shopify Deployment Unit

Slide 67

Slide 67 text

Deployment Unit Stripe Still no microservices Bounded Context ≠ Deployment units ShipMonk Authoring Publishing E-commerce Shopify Deployment Unit

Slide 68

Slide 68 text

Domains are not immutable Understanding is a never-ending process Stripe ShipMonk Authoring Publishing E-commerce Shopify

Slide 69

Slide 69 text

Domains are not immutable Understanding is a never-ending process Stripe ShipMonk Authoring Publishing E-commerce Shopify Printing

Slide 70

Slide 70 text

www.lilobase.me DDD is all about Boundaries @lilobase

Slide 71

Slide 71 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter

Slide 72

Slide 72 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter What happens if the author revises his book?

Slide 73

Slide 73 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter They are not the same book What happens if the author revises his book?

Slide 74

Slide 74 text

Semantic Boundaries Between BC meaning are different Chapter Author Book Reviews Release Catalogue

Slide 75

Slide 75 text

Semantic Boundaries Between BC meaning are different Chapter This is why you must start by understand strategically your domain Author Book Reviews Release Catalogue

Slide 76

Slide 76 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter Book Chapter Chapter

Slide 77

Slide 77 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter Book Chapter Chapter Inside a Bounded Context, 
 Don’t 
 Repeat 
 Yourself

Slide 78

Slide 78 text

Semantic Boundaries Between BC meaning are different Authoring Publishing Book Chapter Chapter Book Chapter Chapter Inside a Bounded Context, 
 Don’t 
 Repeat 
 Yourself Between Bounded Context, 
 Write 
 Everything 
 Twice

Slide 79

Slide 79 text

Don’t cross them Between BC meaning are different Authoring Publishing Author Reviews Author Book Book Release

Slide 80

Slide 80 text

Don’t cross them Between BC meaning are different Authoring Publishing Author Reviews Author Book Book Release

Slide 81

Slide 81 text

Don’t cross them Between BC meaning are different Authoring Publishing Author Reviews Author Book Book Release Never create relationships between entities from two BC

Slide 82

Slide 82 text

Don’t cross them Between BC meaning are different Authoring Publishing Book Book Release Author Author Reviews

Slide 83

Slide 83 text

Don’t cross them Between BC meaning are different Authoring Publishing Book Book Release Author Author Reviews

Slide 84

Slide 84 text

Don’t cross them Between BC meaning are different Authoring Publishing Book Book Release Author Author Reviews This is exactly the same

Slide 85

Slide 85 text

Don’t cross them Between BC meaning are different Authoring Publishing Book Book Release Author Author Reviews API API

Slide 86

Slide 86 text

Same for Events Between BC meaning are different Authoring Publishing Event 
 Bus Book Book Release Author Author Reviews

Slide 87

Slide 87 text

Same for Events Between BC meaning are different Authoring Publishing Event 
 Bus Book Book Release Author Author Reviews

Slide 88

Slide 88 text

Same for Events Between BC meaning are different Authoring Publishing This is exactly the same Event 
 Bus Book Book Release Author Author Reviews

Slide 89

Slide 89 text

Same for Events Between BC meaning are different Authoring Publishing Event 
 Bus Book Book Release Author Author Reviews Translator Translator

Slide 90

Slide 90 text

Transactional Boundaries Protect your integrity Authoring Book Chapter Chapter Chapter Statistics

Slide 91

Slide 91 text

Transactional Boundaries Protect your integrity Authoring Book Chapter Chapter Chapter Statistics Inside your bounded Context 
 live 
 Entities

Slide 92

Slide 92 text

Transactional Boundaries Protect your integrity Authoring Book Chapter Chapter Chapter Statistics Inside your bounded Context 
 live 
 Entities They are grouped in Aggregates

Slide 93

Slide 93 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics

Slide 94

Slide 94 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Inside an aggregate, Entities 
 share the same lifecycle

Slide 95

Slide 95 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics They are retrieved and persisted 
 as a whole Inside an aggregate, Entities 
 share the same lifecycle

Slide 96

Slide 96 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics

Slide 97

Slide 97 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics All interactions are done through the Aggregate Root

Slide 98

Slide 98 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Who ensures the aggregate integrity All interactions are done through the Aggregate Root

Slide 99

Slide 99 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Who ensures the aggregate integrity All interactions are done through the Aggregate Root Write a new chapter

Slide 100

Slide 100 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics

Slide 101

Slide 101 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Write a new chapter Chapter

Slide 102

Slide 102 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Write a new chapter Chapter

Slide 103

Slide 103 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Write a new chapter Chapter Inconsistency

Slide 104

Slide 104 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Author

Slide 105

Slide 105 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics But don’t put to much in it Author

Slide 106

Slide 106 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics But don’t put to much in it Author What happens if we delete the book ?

Slide 107

Slide 107 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics But don’t put to much in it Author What happens if we delete the book ? They must share the same lifecycle

Slide 108

Slide 108 text

Transactional Boundaries Protect your integrity Book Chapter Chapter Chapter Statistics Author reference Author Id

Slide 109

Slide 109 text

Designing Boundaries Protect your domain Printing Team Book Chapter Chapter Chapter Release API Publishing Team

Slide 110

Slide 110 text

Designing Boundaries Protect your domain Printing Team We need printing margin Book Chapter Chapter Chapter Release API Publishing Team

Slide 111

Slide 111 text

Designing Boundaries Protect your domain Printing Team We need printing margin Book Chapter Chapter Chapter Release Printing margin API Publishing Team

Slide 112

Slide 112 text

Designing Boundaries Protect your domain Printing Team We need printing margin Book Chapter Chapter Chapter Release We need the colorimetric pro fi le Printing margin API Publishing Team

Slide 113

Slide 113 text

Designing Boundaries Protect your domain Printing Team We need printing margin Book Chapter Chapter Chapter Release We need the colorimetric pro fi le Printing margin Colorimetric pro fi le API Publishing Team

Slide 114

Slide 114 text

Designing Boundaries Protect your domain API We need printing margin Book Chapter Chapter Chapter Release We need the colorimetric pro fi le Printing margin Colorimetric pro fi le Domain Leakage Publishing Team Printing Team

Slide 115

Slide 115 text

Designing Boundaries Protect your domain API We need printing margin Book Chapter Chapter Chapter Release We need the colorimetric pro fi le Printing margin Colorimetric pro fi le Domain Leakage Publishing Team Printing Team

Slide 116

Slide 116 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API Book

Slide 117

Slide 117 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API Book Printing API

Slide 118

Slide 118 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API We need printing margin Book Printing API

Slide 119

Slide 119 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API We need printing margin Book Printing margin Printing API

Slide 120

Slide 120 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API We need printing margin Book We need the colorimetric pro fi le Printing margin Printing API

Slide 121

Slide 121 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API We need printing margin Book We need the colorimetric pro fi le Printing margin Colorimetric pro fi le Printing API

Slide 122

Slide 122 text

Designing Boundaries Protect your domain Publishing Team Printing Team Publishing API We need printing margin Book We need the colorimetric pro fi le Printing margin Colorimetric pro fi le Printing API We discovered the need 
 for an ACL

Slide 123

Slide 123 text

www.lilobase.me DDD is all about Behavior @lilobase

Slide 124

Slide 124 text

CRUD don’t express behavior It blinds you from the business perspective UPDATE address Relocation Mistake correction

Slide 125

Slide 125 text

CRUD don’t express behavior It blinds you from the business perspective UPDATE address Relocation Mistake correction

Slide 126

Slide 126 text

CRUD don’t express behavior It blinds you from the business perspective Relocation Mistake correction

Slide 127

Slide 127 text

Data oriented programming It obfuscates your code – Mathias Verraes $order->setStatus('paid') ; $order->setPaidAmount(120) ; $order->setPaidCurrency('EUR') ; $order->setCustomer($customer);

Slide 128

Slide 128 text

Data oriented programming It obfuscates your code – Mathias Verraes $order->pay() ;

Slide 129

Slide 129 text

Data oriented programming It obfuscates your code $money = new Money(120, new Currency(‘EUR')) ; $order->setPaidMoney($money); – Mathias Verraes $order->pay() ;

Slide 130

Slide 130 text

Data oriented programming It obfuscates your code $money = new Money(120, new Currency(‘EUR')) ; $order->pay($customer, $money); – Mathias Verraes

Slide 131

Slide 131 text

Data oriented programming It obfuscates your code $money = new Money(120, new Currency(‘EUR')) ; $order->pay($customer, $money); – Mathias Verraes $customer->pay($order, $money) ;

Slide 132

Slide 132 text

Data oriented programming It obfuscates your code – Mathias Verraes $customer->pay($order, $money) ; $order->setStatus('paid') ; $order->setPaidAmount(120) ; $order->setPaidCurrency('EUR') ; $order->setCustomer($customer);

Slide 133

Slide 133 text

Task Based UI Your customer’s need isn’t to fi ll out forms

Slide 134

Slide 134 text

Users don’t need to fill out forms

Slide 135

Slide 135 text

Users don’t need to fill out forms

Slide 136

Slide 136 text

www.lilobase.me DDD is all about Compassion @lilobase

Slide 137

Slide 137 text

A A A Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 138

Slide 138 text

A A A Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 139

Slide 139 text

A A A Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 140

Slide 140 text

A A A Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 141

Slide 141 text

A A A not « just » a glossary Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 142

Slide 142 text

A A A not « just » a glossary Ubiquitous language Stakeholders & Team Alignement Dev Domain 
 Expert Dev

Slide 143

Slide 143 text

Ubiquitous language Each BC has its own Authoring Publishing A A

Slide 144

Slide 144 text

Ubiquitous language Each BC has its own Authoring Publishing A A A A

Slide 145

Slide 145 text

Ubiquitous language Each BC has its own Authoring Publishing A A A A

Slide 146

Slide 146 text

Ubiquitous language Each BC has its own Authoring Publishing A A A A

Slide 147

Slide 147 text

Ubiquitous language Each BC has its own Authoring Publishing A A A A It is a common cause of miscommunication

Slide 148

Slide 148 text

Pair Programing The best way to share a domain understanding Dev

Slide 149

Slide 149 text

Pair Programing The best way to share a domain understanding Dev Domain 
 Expert

Slide 150

Slide 150 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User

Slide 151

Slide 151 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User He has the last word regarding domain implementation

Slide 152

Slide 152 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User Prioritize development & formalize users’ feedback

Slide 153

Slide 153 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User Power of Life and Death over the project

Slide 154

Slide 154 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User Too often forgotten

Slide 155

Slide 155 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User Maybe you could spend a day per month working with them ?

Slide 156

Slide 156 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User They design the software speci fi cation

Slide 157

Slide 157 text

Know your users They might not be who you think they are Dev Domain 
 Expert Product 
 Owner Customer User What he understood goes 
 into production

Slide 158

Slide 158 text

“A loosely coupled software architecture and org structure to match” is a key predictor of: — Michael Plöd (@bitboss)

Slide 159

Slide 159 text

“A loosely coupled software architecture and org structure to match” is a key predictor of: • Continuous Delivery Performance — Michael Plöd (@bitboss)

Slide 160

Slide 160 text

“A loosely coupled software architecture and org structure to match” is a key predictor of: • Continuous Delivery Performance • Ability to scale organization and increase performance linearly — Michael Plöd (@bitboss)

Slide 161

Slide 161 text

“A loosely coupled software architecture and org structure to match” is a key predictor of: • Continuous Delivery Performance • Ability to scale organization and increase performance linearly This is what DDD is All About ! — Michael Plöd (@bitboss)

Slide 162

Slide 162 text

www.lilobase.me @lilobase https://roti.express/r/gstywv sundayapp.com