Dirty Data Modeling

Data Modelers are sometimes introvert people who like sifting through mountains of database schemas and documentation. Data modeling is to some extent an intellectual undertaking where you almost have to reach a level of connection to the domain you study that resembles a Zen master’s connection to the universe.

But fortunately, we don’t have to become a Buddhist monk in order to become a data modeler. You can take a more pragmatic approach to this discipline. At the end of the day, what you are really trying to express in a data model is how a specific business domain works in real life. How the primary business process operates. You define who is involved in the business processes, what the business concepts are we care about, and what the relationships are between those elements.

What I propose is that data modeling should be done in the trenches. Get down and dirty. Get away from your desk, on a regular basis. Schedule time with the business people that matter. You can spend a day or two with them, listening to the vibes of the group. Look at the work they do and ask useful questions (preferably without breaking the flow of their work, don’t turn this into an impromptu requirements meeting). Sit with them and listen.

Get dirty!


You work in a manufacturing plant producing doors and windows? Go sit next to the person managing the deliveries and talk about trucks, routes and schedules. Talk about truck capacities and product packaging volumes.

You are building a financial reporting star schema? Go sit with the accounting and finance team and discuss the subject. Talk about mandatory government reports, talk about laws and regulations they must obey, talk about the end of the financial year and how busy and tired they get at that time of the year.


You are designing a real-time data architecture to manage the flow of prisoners in your state department of correction? Go directly to Jail. Do not pass Go. Do not collect $200. Seriously, the time you spend with the people doing the work you are concerned with, will be much more valuable than reading the same SQL Server metadata for the 10th time.

Overall, your goal as a BI Data Modeler is to make their work easier to do, to eliminate the pain points they experience, to help them make better decisions, and to free their intelligence for more valuable tasks than cleaning the same data month after month in a spreadsheet. By leaving your cubicle and meeting them, you have a much better chance of finding where your BI solution can have the most impact. At a minimum, you will meet new people and better understand the business you are in.

Written on November 14, 2016