DDD-GDA-2 Lean Coffee Notes
Random notes from lean coffee
Process Manager
What is a process
- Business process
- Actors exchanging
What is Process Manager
- Policeman
- Person often is a process manager xD
- Actions
- Monitoring
- Enforcing Policies
- Understanding state of the process
- State machine obsering current process
Example of Process Manager
- Lego
- Checking out GDPR
Others
- Process manager should not be an entry point. To be more resillient
- Process manager as a person
- Process manager can be a state machine
Use cases and practical examples of DDD
- It is hard to use DDD in real life contexts for now
- One lambda = Bounded Context
- Serverless forcess use of strategic DDD
- istio, service mesh
- On monolith you have to divide step by step for DDD (bubbling contexts)
- Germans use Port/Adapter pattern (Hexagonal)
- You don't need an entity to for example execute stateful machine
- NestJS enforces DDD
- Xebia bought PGS Software, Thoughtworks, Aardling, Allegro - they use DDD
- Event Storming, Service Blueprint, Story Telling - High Level Techniques can be used even not in DDD environment.
- UMLs with business processes are good for DDD
- There is always a middle ground - you don't need to rewrite everything
- encapsulation
- abandon getters and setters
- Implementing DDD from the start may not be the best approach as we iterate quite much
- Rossman warehouses
Mistakes in DDD
- Single Source of Truth
- must be one so we always have up-to-date data
- CQRS
- Strangler Pattern
- Reduces risk of migration
- Project Management Language: Reducing Risks
- Bad system boundaries
- No DDD = Exploding complexity in Jira
- Lot of mappers
- Gradually introducing people to the DDD is better
- Timing is very important for DDD
- Culture of organisation is really important for DDD
- There is many things to improve
- A business calls one concept in many ways it is important to create a dictionairy (ubiquotous language)
- It is important to be on the side of the client so stuff we create communicates properly
8b2f6274-5d26-436b-bdeb-6eb04e630afd