1) What are the forces here?
- domain
- assumptions
- context
- technical
- forces
- constraints
DDDers
not just learn the rules from the business
...
what are the forces here?
how does this business assess risk?
how much do they care about certain risks?
the balance between making more money and taking more risk
how do they look at customers?
- employees that get fired if they do something wrong
- millions of users with little control
mapping assumptions
- users will do this kind of thing
- users will not use the system for this kind of thing
under these assumptions, we come up with these design decisions
under these assumptions, we can apply these heuristics
2) design choice -> heuristic -> competing heuristic before implementing:
- why did I choose this design?
- name the heuristic
- what competing heuristic can I find
- in my Model: Clue Bucket (aka toolbox)
- see it from another angle
- find reasons not to do it
3) distill heuristics <-> clue bucket
(src: Video: Design Heuristics - Mathias Verraes - KanDDDinsky 2018)