We are excited to invite you to join us for two upcoming events. This technical workshop at 2pm will provide a hands-on exploration of Event-Driven Systems and Microservices. Whilst, during the Meetup at 6pm, we will share what lessons can be learned from concepts like DDD, CQRS, and Event Sourcing to help manage complex systems. There is the opportunity to attend one or both sessions but please register for each session that you will attend.
Part 1: Introduction to Architectural Concepts
Domain-Driven Design (DDD) is a software design approach focusing on modeling systems based on input from business domain experts.
In this part, we will discuss what a domain and the model(s) within that domain are. We will cover the concept of bounded context and the importance of ubiquitous language for better communication. We will also look at building blocks within a domain model, including aggregate, events, value objects, and repositories.
We will talk about Command-Query Responsibility Separation (CQRS) and the advantages of separating the business logic (command side) from the projections (query side) in an application. We will then explain how these two parts become parts of the same conceptual application through a client or UI. Lastly, how the events (notification of something that has happened in the past) can update both the command and query sides. We will discuss how event sourcing is the way to move from events as a side effect to events at the core.
Part 2: Introduction to Event Modeling
Event Modeling is a method of describing a system by looking at how the information changes over time. This practice omits the transient changes and looks at what is being stored and what the user sees at any time. We will look at the four patterns and seven steps of event modeling.
Part 3: Hands-On Coding
In this final part, we will translate our event model into code (using your IDE of choice); the download information for a basic application will be provided. After a simple setup, we will continue using DDD's building blocks to expand our application further by applying the concepts of CQRS and event sourcing. Once completed, we will run the application locally with Axon Server as the event store and messaging platform, and if time permits, we can even look at scaling options.
What should you bring to the workshop?
- A laptop
- An IDE that supports Maven, Java and Kotlin
- Basic knowledge of Java
The event is free of charge.
There will be pizza and drinks between the workshop and meetup.
If you also want to join the Meetup Event-Driven Microservices - Beyond the Fairy Tale from 6pm - 8pm, you can sign up here: Register now and view more information