Back to Agenda

11/14/2024 - 15:15

From Vision to Code: Functional Domain Modelling

Mod­ern col­lab­o­ra­tive meth­ods such as EventStorm­ing help to bring togeth­er sub­ject mat­ter experts and devel­op­ers. Domain Mod­el­ing goes one step fur­ther and enables joint work direct­ly on the code. In this live cod­ing event you can watch and even par­tic­i­pate direct­ly on a prac­ti­cal example.

Our PO brings along the results of an EventStorm­ing. You will get a short overview so you can pre­tend that you have been involved dur­ing the storm­ing. The PO will than explain the require­ments to the developer/modelling expert who mod­els the domain accord­ing to your suggestions.

The result will be a mod­el of the domain using a type sys­tem. We will demon­strate this using Type­Script, but the same approach can be applied using any lan­guage with a suit­able type system.

Even non-pro­gram­mers, such as our prod­uct own­er, will be able to ver­i­fy the mod­el and pro­vide feed­back direct­ly to the devel­op­er. The final mod­el, which pro­vides a clear under­stand­ing of the invari­ants and behav­ior of the sys­tem, can be used direct­ly to begin actu­al imple­men­ta­tion by devel­op­ers. This is the pow­er of func­tion­al domain modeling!

Learning objectives

  • model a domain in the typescript type system
  • transform an event storming result to code
  • apply pattern from functional domain modelling

Level

Basic

Prior knowledge

TypeScript-basics and DDD-basics are helpful
Marco Emrich
Marco Emrich is an architect and consultant at codecentric, and a passionate advocate for software craft & quality, which he also teaches at the university of applied sciences in Salzburg. He regularly speaks at software engineering conferences and is the author of several technical books. When he's not buried deep in code, his children beat him in analog board games. Follow him at linkedin.com/in/marco-emrich-47485388
Ferdi(nand Ade) is a Developer & Consultant at codecentric. He cares about software craft and quality and is a fan of pairing/ensemble work to increase the odds. Ferdi is co-host of the Software Craft Leipzig Meetup and believes experimental hands-on sessions are the way to learn new skills and techniques.