Professional Documents
Culture Documents
6 Clean Architecture Patterns Practices Principles m6 Slides
6 Clean Architecture Patterns Practices Principles m6 Slides
Matthew Renze
SOFTWARE CONSULTANT
@matthewrenze www.matthewrenze.com
Overview Bounded Context
Microservices
Pros and Cons
Demo
Components
Users
Database
Problem Domain
Sales Support
Sales opportunity Support ticket
Contact Customer
Sales person Support person
Product Product
Sales territory Resolution
Single Domain Model
Customer
Employee
Overlapping Contexts
Sales
Support
Customer
Employee
Bounded Contexts
Sales Support
Contact Customer
Support
Sales Person
Person
Cross-boundary Entities
Sales Support
Contact Customer
Contact ID Customer ID
Contact Type Contact ID
Name Contact Type
Total Revenue Name
Open Tickets
Microservices
Support
Subdivide monoliths
Clearly-defined interfaces
Sales Inventory
Small teams
Independent
Similar to SOA
Marketing Admin
Microservices
Sales Support
Independence
Database Database
Microservices
Sales Support
Database Database
Microservices
Why Use Microservices?
Support
Pros
Flatter cost curve Sales Inventory
Cohesion/coupling
Independence
Marketing Admin
Why Use Microservices?
Pros Cons
Flatter cost curve Higher up-front cost
Cohesion/coupling Conway’s Law
Independence Distributed system costs
Microservice Demo
Sales Inventory
Users
Microservice Demo
Sales System