Join Shane Gibson as he chats with Remco Broekmans about the pattern templates that are part of the Ensemble Logical Modeling (ELM) patterns.
ELM
From Stories to Solutions: Redefining Communication Between Business and Data Professional
Listen
Listen on all good podcast hosts or over at:
https://agiledata.io/podcast/agiledata-podcast/elm-patterns-templates-with-remco-broekmans/
Read
Read the podcast transcript at:
https://agiledata.io/podcast/agiledata-podcast/elm-patterns-templates-with-remco-broekmans/#read
Google NoteBookLLM Briefing
Briefing Document: Agile Data Podcast - ELM, Model Storming, and Data Modeling
Executive Summary:
This podcast delves into the world of data modelling using agile principles, particularly the ELM (which isn't spelled out but I think is Ensemble Logical Modelling) approach. The conversation centres on "model storming," a collaborative workshop method for eliciting business requirements and building shared understanding without drowning stakeholders in technical jargon. Remco, the guest expert, emphasizes getting the right business people in the room, using their own terminology, and employing a structured, yet flexible, process facilitated by six key artifacts. The discussion also touches on the potential of Large Language Models (LLMs) to assist in the data modelling process, but warns against automating it entirely due to the inherent complexities of business needs.
Key Themes and Ideas:
Model Storming: A Collaborative Workshop Approach
Definition: Interactive workshops where data professionals and business stakeholders work together to solve problems, elicit requirements, and foster a shared understanding of the business.
Remco: "To invite people into a workshop from the business, from the organization without using any technical terms."
Shane: "This idea of running interactive, collaborative workshops with our stakeholders, where we work together to use some patent templates to solve a problem, to either problem solve together or to elicit. Some requirements or some shared understanding..."
This differs from traditional data modelling which can be off-putting to business stakeholders: "Dear business, would you please help me? And then you make an appointment and you're the only one in the room. Because they don't like the term data modeling."
The Importance of the Right People:
Getting the right people (business people, those who actually do the work) in the room is essential.
No proxies or IT analysts trying to represent the business.
Keep data and laptop distractions out of the room.
Remco: "Basically the people running the day-to-day business know what they're doing, know what's going on... But they're not one participating."
"I don't want to have data or laptops into the workshops because. Then they are going to, uh, be it focused instead of business focused."
Workshop Facilitation Best Practices:
Keep workshops to a focused duration (around 2 hours). Don't be afraid to be done early if there's nothing else to capture.
Use the business's own language. If they talk about "clients," don't translate it to "persons."
Don't chase people away with technical jargon (e.g., "crows feet," conceptual/logical/physical models).
Provide refreshments (donuts, waffles, lunch) to encourage participation and engagement.
Listen to what people are saying, and write it down. Don't correct or change what people are saying (e.g., Customer vs Client), this should come up later when discussing what the business actually means by those terms.
Make sure the terminology isn't getting in the way - Align, Refine and Design are better terms than Conceptual, Logical and Physical data modelling.
Use a shared language when drawing relationships between Core Business Concepts - such as "Customer bought product" rather than cardinality, or many-to-many relationships.
"Use their terminology in, in every single bit and every single sense."
Core Business Concepts: The Building Blocks
Definition (Remco): Terms that the organisation defines as important to know something about, where they can define, identify, describe, and provide context.
Definition (Shane): Things that the organization can identify and wants to manage or count (e.g., Customer, Employee, Supplier, Product, Order, Payment).
Examples are Customers, Employees, Products, Suppliers, Sales
Remco notes: "For me, a core business concept is everything where a term where the organization said, for me this is important to know something about. I can define it and I can identify it, and I can describe it and have some context to it."
It’s important to identify events and transactions (e.g. payments, sales) as Core Business Concepts.
"It's something that the organization can identify and they wanna manage it or count it."
The Six Artifacts of ELM (Ensemble Logical Modeling): A Structured Approach
CBC (Core Business Concept) List: A running list of terms with category swim lanes (Event, Person, Place, Thing, Other) to identify synonyms and missing concepts.
CBC Form: Provides detailed context for each term (Name, Category, Definition, Domains, Main Attributes, Relationships, Synonyms, Hierarchy). Includes identifying the context.
CBC Canvas: A visual tool using post-it notes in swim lanes to group terms, dedupe them, and identify potential synonyms/related concepts (e.g., Customer, Client, Kunt could all be variations of the same thing).
Event Canvas: Focuses on a specific event and identifies all the CBCs directly involved (e.g., for a "Sale" event: Customer, Employee, Store, Product).
MBR (Minimum Business Requirements) Form: Uses "data by example" to capture real-world instances of the event and its related concepts. This helps to understand granularity, cardinality, and any edge cases (e.g., can a customer buy multiple products in one sale?). This will need to come through multiple iterations.
MBR Matrix: Summarises the information from the previous steps into a "BI Matrix" (similar to Kimball's approach) for reporting purposes. Shows measures (what you want to measure) and angles (how you want to look at it). This is important because you can see any terms you haven't used, or haven't related to the events.
Note: These artifacts are open-source and available at ELMstandards.com (registration required).
Remco: "We have six artifacts and basically the first three are focused around the core base concept, and the first artifact is really the starting point is basically writing down all the terms just on the board."
These are iterative and there isn't a defined strict approach - you may jump from artefact to artefact as conversations evolve.
Data by Example: Unlocking Insights
Asking stakeholders for real-world examples of data records can reveal patterns, relationships, and edge cases that might otherwise be missed.
Shane: "You start getting examples of data to fit that event and C, b, C model, because we're looking for a understanding of, of some terms, we're looking for confirmation, we've got it right."
The Role of LLMs (Large Language Models) in Data Modeling:
LLMs can assist in the data modelling process by:
Generating initial data models from business case descriptions.
Suggesting definitions for core business concepts.
Identifying potential relationships between entities.
Reviewing and providing feedback on existing models.
Using Firefly, or other automatic note taking tools, and GPT to take the essence from the workshops.
However, LLMs should not be used to fully automate data modelling.Data modelling is a complex process that requires human understanding of business processes and data nuances.
The goal is guidance, not automatic data model creation.
Shane: "For me, this sits in the ask or assisted AI and automated AI."
Data modeling, when done in context of modelling a business and processes is a lot harder.
Remco: "I gave a business model to, to cloud, to chat, to co-pilot and just say, create a data model without any extra information. Here's a business case. Create a data model. It's coming back perfectly fine with, with a PR diagram. "That's scary because let's be very honest, data modeling is hard."
Temporal Data: Being a Master of Temporal Data
“And because we are data people and we are the masters of temporal data, there's a high chance that this podcast would just happen to go out when the book hits Amazon.”
Scoping for Agile Delivery
Use the matrices to determine iterative development based on what business concepts are most valuable first.
"we can deliver that bit first and it has value and then we can extend it out."
Conclusion:
This podcast provides a practical and insightful look at agile data modelling using the ELM approach. By focusing on collaboration, business-driven terminology, and a structured yet flexible workshop process, data professionals can effectively elicit requirements, build shared understanding, and create data models that truly reflect the needs of the business. While LLMs offer exciting potential for assisting in the process, they should not replace the human element of understanding and interpreting business needs.
Further Reading and Resources:
ELM Standards: elmstandards.com
Remco's Book: "From Storage to Solution" (Available on Amazon and Technics Publications)
Contact Remco via LinkedIn.