Event Modeling and View Modeling with DEMO's aspects model, by Maurice Driessen, published November 15, 2024

Once the new CTP-based business model is captured in the DEMO aspect models, they can be utilized in Event Modeling and View Modeling 1 —methods used to design and plan event-driven enterprise solutions leveraging the CQRS/ES architecture patterns.

Event Modeling

Event Modeling revolutionizes how information systems are designed by focusing on time as the central concept for modeling systems. Instead of relying on complex data models or branching logic, Event Modeling uses a timeline of events to capture every state change in a system. This approach mimics how human memory works through storytelling, making systems easier to understand and communicate.

Event Modeling emphasizes simplicity by utilizing only three core building blocks and four structural patterns, making it easy to adopt with minimal training. This model focuses on practical, visual representation of systems, using mockups and user interfaces to clearly communicate how systems function. Commands are used to represent user actions that change the system with an Event, while Views show the current state based on stored events. This approach supports agile project management, ensures consistent development costs, and promotes collaboration across teams, all while maintaining a clear, reliable system design through well-defined workflows.

The DEMO aspect models contribute valuable input for this process, with the Cooperation Model (CM), Action Model (AM), and Process Model (PM) offering the business blueprint for workflow mapping, and the Fact Model (FM) serving as the blueprint for Views.

Event Modeling involves mapping out the sequence of business events, understanding how one event leads to another, and defining the workflows that drive these events. This process helps to visualize the system’s behavior and ensures that all scenarios are covered.

Figure 7 Event Modeling Example [AD, 2019]

View Modeling

View Modeling focuses on designing the user interfaces and reports that will present the data from the read models to end-users. The Fact Model (FM) again plays a crucial role here, ensuring that the information captured in the events is accessible and actionable, contributing to a consistent and intuitive user experience.

For example, in an e-commerce platform, a view model might project data about pending orders, which the fulfillment team views through a dashboard. This data can be used to prioritize shipments, track delays, and ensure that customers are informed of the status of their orders. By aligning View Modeling with Event Modeling—and using the DEMO aspects model  as a guide—the enterprise solution design can deliver a user experience that is both responsive and consistent with the underlying business processes.

Unlock Exclusive Insights!

If you’re eager to dive deeper into the methodologies and strategies discussed in this series, we invite you to request a copy of the comprehensive whitepaper, containing all the articles in this series. To get your copy, simply fill out our form here. Don’t miss out on the opportunity to enhance your understanding and transform your organization!

References

  1. [AD, 2019] Dymitrukm Adam (2019). Event Modeling: What is it?  https://eventmodeling.org/posts/what-is-event-modeling/ , last visit 18oct2024 ↩︎