Practical Domain Driven Design using Java Frameworks

Vijay Nair

Half-day workshop - in English

DDD is quickly becoming the defacto approach for building business applications be it Monoliths / Moduliths or Microservices as it offers a solid, systematic and comprehensive approach to  software design and development. However, for folks stepping into the new paradigm the concepts/patterns and principles of DDD seem daunting.

The Practical DDD workshop aims to simplify the various concepts/principles and patterns of DDD in a manner which is easily consumable, relateable and practical within the context of an execution platform like Jakarta EE / Spring Boot / MicroProfile and the Axon Framework.

As a developer/architect or technical leader, using the tools/frameworks that you currently use or are familiar with is the fastest way for adopting a new design paradigm.

This workshop aims to do exactly that by using a reference application (Cargo Tracker).

Part 1 - Domain Modeling

The first part of the workshop concentrates on the Domain Modelling aspect of DDD. The attendendees are taken through a quick introduction to the major DDD concepts such as Domain Models/Domain Rules/Domain Events and Domain Services.

Part 2 - Domain Implementation(s)

The next part of the session focuses on the Domain Implementation aspect of DDD. Attendees are given a walkthrough of 4 detailed DDD implementations of Cargo Trackler utilizng 4 leading Java Frameworks. Each of these implementations map concepts of DDD (e.g. Bounded Contexts/Aggregates) to the corresponding available tools within the specific platform.

- The first implementation will be based on a monolithic architecture using Jakarta EE
- The second implementation will be based on a microservices architecture using Eclipse MicroProfile (Project Helidon)
- The third implementation will be based on a microservices architecture using Spring Boot / Spring Cloud and Spring Cloud Streams
- The final implementation will be the most advanced implementation using a CQRS/ES architecture using the Axon framework

At the end of the session, attendees using any one of these platforms get a relatable pathway to the adoption of DDD for their enterprise applications. Attendees get complete working source code for the 4 implementations and can run it along with the entire workshop

Primarily for: Developers, Architects, Managers, Designers

Participant requirements: Laptop with an IDE