Event-Driven Analysis and Design for Business

Event-driven systems have tremendous business value compared to the heritage software of a decade ago.

This program covers the core skills required to analyze and design event-driven systems using the basics of Event Storming and Domain-Driven Design. It is non-technical and suitable for developers, architects, and business stakeholders.

Program Overview

Participants will gain an insight into the value of implementing business systems as a collection of discrete, event-centric processes, focused purely around the flow and language of the existing business processes in the organization.

Participants will learn the basics of how to model event flows using core techniques from Event Storming, along with the basics of Domain-Driven Design. By the end of this hands-on workshop, all participants will use the concepts introduced to build easy-to-understand software models that can be leveraged by technical teams to build production-grade event-driven systems.

As this program is delivered as a workshop and requires hands-on participation, the program requires attendance from three key disciplines in your organization:

  • Business domain experts
  • Architects
  • Developers

We strongly encourage that a diverse group of professionals from your organization attend together, with a mixture of seniority and skill levels across technical and business domains.

What to expect

This is a 2 day hands-on workshop with a strong emphasis on participation.

  • All participants will gain the skills required to model event-driven business process flows by sharing a single language and approach between business and technical teams during analysis and design
  • Business stakeholders will learn how to effectively communicate business intent by modeling processes as event flows that are easily transformed into technical models by architects and developers
  • Technical talent will learn how to approach architecture from a business-first perspective by focusing on the intent of the business from the beginning of analysis and modeling

Training

  • An introduction to events and event-driven systems
  • Workshop rules
    • The system model
    • Ubiquitous language
    • Room setup
  • Learn how to model business flows
    • Events
    • Hidden complexity, issues, and hot-spots
    • Commands
    • Actors
    • Read models
    • Policies and reactions
    • External systems
    • User interactions
    • Time passing and scheduled events
  • Structuring business flows with Domain-Driven Design
    • Aggregates and aggregate boundaries
    • Bounded contexts
    • Modelling publishers/subscribers
  • Turning models into software
    • Reviewing models
    • Translating to user stories
    • Defining acceptance criteria
    • Implementing the first code and events
    • Defining an enterprise event catalog

Workshop

Once the team has been exposed to all core concepts of event storming, events, and domain-driven design, we will continue the program with a hands-on workshop and model a real business process within your organization. There is no better way to learn these techniques than applying them to a real business process within your organization!

  • Set up the modeling surface
  • Begin to model a single business process as a series of events
  • Examine the events and determine the commands that cause those events
  • Examine the events and determine any reactions that occur after each event
  • Refine and optimize the flow
  • Explore “sad-path” scenarios, such failures during execution of the business process, and discuss how to react appropriately
  • Translate models into user stories
  • Review stories

Prerequisites

No previous experience with programming or event-driven systems analysis is required. This is a suitable program for any stakeholder involved in a modern software project to learn the basics of how to think about events as the focus of business process flows.

Previous experience with Agile methodologies, such as user stories, is highly recommended.

Contact Us To Discuss Training Contact Us