Collaborative Functional Domain Modelling in Practice

Thursday afternoon 14:00 - 16:00 CET (UTC+1)


Marco Emrich and Maik Figura


Functional programming enables the modeling of business domains based on a type system. This allows to enforce invariants and give business experts the possibility to give feedback directly to the code.

In this workshop I will be your product owner and present you a business problem. You will use the type system of a functional programming language (no prior knowledge necessary) to model the domain against a set of business rules. The result will be a domain model, that is directly in the code (as opposed to a pure graphical representation). Therefore it is clear and precise but still easy enough to understand, to allow for direct participation of the business. Exercising communication to get a precise understanding of the business is the main focus of the workshop, besides understanding how create a domain model using a functional type system.

Rough Agenda:

  • Checkin
  • Overview of functional modelling techniques
  • Presentation of the problem domain
  • Hands-On Modelling in small groups
  • Retrospective
Practical information

Everything will happen in the browser (Miro and No software installation necessary.

About Marco Emrich

Consultant and software crafter at @codecentric Twitter LinkedIn Blog Company Website

Marco is a Senior Consultant at codecentric. He is a passionate advocate of software craft and code quality. Marco lectures regularly at well-known conferences and is author of several programming books. When he is not organizing the Softwerkskammer Nuremberg (developer meetup), he is probably explaining to his son how to program robotic turtles.

About Maik Figura

Chaos Monkey at codecentric AG Twitter LinkedIn Blog Company Website

Maik is an introvert, stammers and loves to give talks. What could possibly go wrong? At codecentric AG, Maik helps customers to establish Chaos Engineering practices. In his +1 time he’s maintaining Chaos Monkey for Spring Boot.