Modeler’s Corner #7: Getting started with ELM & Ellie
Modeler’s Corner is our series of blog posts on best practices and practical tips & tricks for all you Ellie modelers out there. The series focuses on everyday issues you might face as a Data Modeler. We aim to help you build the most informative, understandable, and efficient business-driven models with Ellie. For more comprehensive training needs, don’t hesitate to ask us!
Getting started with ELM & Ellie
This time, we have a guest blogger in our Modeler’s Corner series: Remco Broekmans from Genesee Academy will be telling us how the ELM methodology and Ellie fit together, and how the ELM approach can provide an easy starting point for data modeling!
Ensemble Logical Model (ELM) approach
Genesee Academy developed a guided and structural approach toward an Ensemble Logical Model (ELM) that is fit for physical deployment into Data Vault, Anchor, Focal Point, or any other Ensemble modeling pattern. This is meant to ensure we can do business-driven modeling with the business truly in control on the whole journey; from finding the Core Business Concepts and their relationships, all the way to a logical data model. Ellie is the first tool to support and document this process without losing the non-IT people in the process.
Quote: “You have to start with people and conversations about the business use cases, rather than discussing the tech stack and how to create optimal data structures.”
Setting up the color-coded entity types in Ellie is a very powerful tool to use in the process of defining what the Core Business Concepts are – leading to entities being properly defined in Ellie (for a more general view on identifying entities, check out Modeler’s Corner #1). For the ELM approach, we create the entity types Event, Person, Place, Thing, and Other Concept, and give each a different color.
Here I will describe the first three steps of the ELM approach using Ellie. See www.ELMStandards.com for the full process and the original templates.
Getting business people on board
For a long time, data modelers have understood the importance of input from the people running the business. They are the only ones understanding the business and what is important from their perspective. Unfortunately, it was always hard to get in touch with these people – try to invite them for a data modeling workshop, and chances are that they will not appear and instead will maybe send their IT counterparts. This also explains why many data models are purely technical / IT-driven and thus hard to understand for the people whose data is modeled: the business people.
The way it works is to invite people from the business to explain the business processes they are involved with or are running in their departments. Tell them it is needed as background information to provide them with better reports/dashboards/… As long as you don’t mention a “data modeling workshop” or another more IT-driven name, chances are that they will free up some time for this, especially if you promise them stroopwafels/donuts/.. as a treat!
While they are in the room, preferably with a big whiteboard, write down all the nouns and verbs they are using when describing their business process – without any restrictions. Avoid grouping or disregarding terms at this point. All input is valuable. (For more info on verbs and nouns, check out Modeler’s Corner #3)
Note: At this moment it is very helpful if someone in the workshop can already type these terms into the Ellie glossary and thus create our preliminary entities.
The next step is to categorize these Core Business Concepts into our entity types: Event, Person, Place, Thing, or Other Concept. This can be done on the same whiteboard by adding columns for each category to the board and moving each term to the right category. The reason for this is to check possible hierarchies and or synonyms.
This process can also be done completely inside Ellie, where the business people will guide you! Start with creating a Conceptual Model which includes all the entities created in the first step. Add a text box for all the ELM categories - Event, Person, Place, Thing, Other Concept - and drag the entities underneath, mimicking columns.
The next step is to assign the entity types to color code the entities accordingly.
Hierarchies and synonyms
After this, we need to consider hierarchies and synonyms. At this point, I’m using text boxes which can be put inside an entity on the canvas to denote synonyms; if we then find the original entity to be “wrong” or unnecessary, it can be either renamed or removed from the canvas and from the business glossary. Note that adding entity boxes inside another entity in Ellie, using Barker’s notation, will translate into a supertype-subtype relation which we want to avoid here.
For denoting hierarchies at this stage, I am creating relationships, and making the underlying entities a bit smaller.
Completing your Business Glossary
Last thing remaining is to complete the business glossary with a short definition/description, attributes, subject area, and other metadata. This can be also accomplished by assigning entities to data stewards or data owners responsible for such definitions.
With these steps we managed to have a fully documented business glossary where the business people helped to identify which Core Business Concepts are of importance and define these. And most importantly, they were in control of the whole process!
This process provides you with a nice set of business-focused entities that you can start using in your data models. You have achieved a common understanding of Core Business Concepts without taking things too technical or scaring off your business experts!
If ELM and Data Vault sound interesting to you, I'm organizing hands-on certification trainings. You can learn more here - https://www.geneseeacademy.com/schedule