• M.S., MBA CU Boulder • www.linkedin.com/in/rshagisultanov • [email protected] • @RinatSh • DDD, system architecture, devops, agile, team orgs, startup • Principal Credits: Nick Tune, Paul Rayner, Alberto Brandolini
them on the time order Note and place the issues and questions in purple Group the events/issues together and vote for the hotspots Identify the business processes in lilac note and draw arrow from event to process Note commands which cause events on light blue sticky Identify aggregates/entities changed by command on a yellow sticky Place a role/user on the small yellow sticky with the stick figure Place the policies when the flow requires decision making. Use purple sticky Draw bounded contexts and domains (clusters) Identify the views/read models required for commands to run. Use green stickies
24 FT OR MORE HAVE ENOUGH STICKIES, MARKERS AND MASKING TAPE POST FIRST – DISCUSS LATER ESTABLISH A TIMEBOX FOR THE SESSION: 2-3 HOURS + FOLLOW- UPS HAVE ENOUGH FOOD AND DRINKS MITIGATE ADMINISTRATIVE HIERARCHY
On Use clarifying questions: •What circumstances would cause this to happen? •What is the path to get here? •What is a good example? •What is the term meaning? •What might we need to do or to achieve? •What else might happen? Use Start with CONCRETE business example Start Clarify fuzzy concepts (NO to CRUD, use real verbs) Clarify
misunderstandings & missing concepts • Avoid rework Collaborative learning • Visual, tactile representation of system behaviour & outcomes • Smoother transition to a rich domain model, design and coding Model & explore complex domains Business Model to Code Fast
more technical thing like a car or a ship • Work objects: a document or a message, or more abstract things such as a route for a transport. • Arrows for activities • Numbered and story based https://domainstorytelling.org/
l Domain Event l Verb in past tense (e.g. UserCreated) l Event Store l Projections, Snapshotting & Versioning l Replay of events & Log for free l CQRS + ES or CQRS alone