Day 2 of the #DomainDrivenDesign Deep Dive training is done! Together with Bruno Boucard we went from EventStorming to Example Mapping, then used Responsibility-Driven Design (created by Rebecca Wirfs-Brock) to sketch out an early model and linked it to implementation with CRC cards.

#ExampleMapping #TDD #ResponsibilityDrivenDesign #CollaborativeModeling #SoftwareDesign

If we want to keep our code in sync with the domain model and handle complexity well, we have to move away from the anemic domain model anti-pattern. By designing around responsibilities, we only come up with objects that actually serve a purpose in the domain. We worked out these responsibilities with Example Mapping, setting up clear acceptance criteria that double as test cases, which feed right into our outside-in TDD. This ties everything together, from modeling to building out our bc.