Building Data Models to Empower Self-Service Users


We live in a world of data: There’s more of it than ever before, in a ceaselessly expanding array of forms and locations. Dealing with Data is your window into the ways data teams are tackling the challenges of this new world to help their companies and their customers thrive.

One of the keys to a successful, modern company is equipping every worker with the tools, skills, and data they need to do their jobs better and make smarter decisions. As a member of the data team, your role is complex and multifaceted, but one important way you support your colleagues across the company is by building and maintaining data models.

Data models are the engine that powers every aspect of your company’s data program: You perform advanced analytics on them, product teams power your app’s embedded analytics, and front-line users rely on them for self-service exploration. Let’s dig into how we can build better data models to support this broad user base and why that’s so important in the world of big data we’re living in.

Picking a direction for your data model

The most important step when building any product (and that’s exactly what you’re doing when you’re creating a data model) is figuring out who it’s for and what you want to do with it. 

When creating a data model for simple point-and-click analysis and filtering, data engineers can ingest raw, normalized tables into their warehouse and transform them into denormalized, singular summary tables as is common data modeling practice in code-driven analytics. This data model is a great choice for timely delivery of top-level, aggregate metrics that don’t require much additional context.

When trying to supporting robust self-service experiences built for autonomous exploration via auto-generated drill paths, cross filters, and hierarchies, different transformations and design considerations are required: Rather than denormalize tables, data engineers prep data by building relationships between normalized tables and the fields within those tables to form specialized star schemas for day-to-day reporting and simple ad hoc needs.

This can be a challenge for data teams that have historically fulfilled organizational reporting needs based on summary tables alone. Taking a step back and thinking about how to organize data to handle a large scope of common, yet unpredictable questions is a non-trivial task, but it doesn’t fall to the data team alone. This is where data teams need to talk to the business organizations they serve (sales, marketing, research and development, etc.).

Think like a designer

Building an effective data model requires an intimate understanding of your users and their goals, workflows, and challenges. However, just asking your users, “What do you want?” or “What do you need?” won’t necessarily get you useful answers. A possible solution: Think like a designer.

Think about your analytics database as a product. You wouldn’t design a product without understanding the problems it is solving; apply the same logic to the data store that serves your business analytics.

Understand your users’ goals and objectives

Forget the tools you have in place now, or the tools you are thinking of building or buying. It’s important to understand the goals and objectives of the colleagues you’re serving without the restrictive framework of specific solutions in mind.

Find representatives from each group you serve and ask them to think deeply about the types of questions they need to answer. It may take more than one interview to collect all the information you need and record it. No one will be able to tell you every question they will need to ask as they use their self-service analytics (that’s the whole point of self-service analytics), but after a few rounds of interviews, you will begin to develop a clearer picture of their needs. 

“One useful way of getting to know your users’ challenges is to follow up a user’s request for data with questions,” says Chris Meier, Manager of Analytics Engineering for Sisense. “Ask users things like, ‘What decision will you make if the data tells you X? Or perhaps the exact opposite: Y?’ Using these extremes allows the users to easily consider hypotheticals and provide outcomes based on the spectrum of data that you might provide. Knowing how they handle data on the extremes provides you with the bounds of their use case and gives you a strong sense of what they might do once they see the data they’ve asked for.”  

Understand how your users use data today; articulate their problems

Observing how your users interact with data presently will reveal gaps and challenges that they may routinely be ignoring because they don’t think a better world is possible. Humans are remarkably good at making do despite shortcomings in their workflows.

Armed with an understanding of your users’ goals and how they currently work with data, you can take a stab at articulating their challenges and presenting them for discussion.  

Engage your users to review your observations and learnings and actively discuss their pain points. You’ll find that people typically have plenty to say about their challenges when they are laid out in front of them. Listening is key here: Ask meaningful questions and facilitate when needed, but the real value will come from the users’ responses.

“I’m a firm believer that everyone absorbs data differently — just like we have different learning styles — so you have to allow for that to come through the finished product by getting feedback,” says Jennah Crotts, Data Analytics Manager at Jukin Media. “Allowing business users to pick display preferences is great for buy-in because they have become part of the design team themselves. Watching how they interact with dashboards is also crucial: For example, did they try to click on something to get more details where I could add a jump-to-dashboard? What time frame and time granularity were they trying to get to? Adjusting these elements can be crucial to improving ease of use and adoption.”

Turn it all into a story to guide your strategy

Now you can take a step back and consolidate all you’ve learned into a story that describes your users, their goals, and the journey they take to accomplish them. (At this point, you can even stop using the term “user” and start referring to them as a “persona.”) However you refer to your users, now’s the point where you can begin building your data model and helping them get more out of your company’s data stores.

Building boldly to empower your users

Equipping their teams with true self-service analytics has been the goal of countless businesses for years. Despite that, adoption has lagged. Part of this has been due to the available tools not meeting the needs of their front-line users, but a shift in mindset has also been a powerful missing component. 

Armed with the information outlined here, you should hopefully be one step closer to embodying that much-needed paradigm shift within your organization. Get to know your users, understand their workflows and challenges, then set to work building a data model that will empower them to dig deep into your company’s data and become truly data-driven. Piping that model into the right analytics and BI platform will be key to driving this change.

Discovering user needs and modeling for self-service requires time and work. This is unavoidable, but the net result is a clear path to the most meaningful work that needs doing. You’re building the engine that will drive your company’s insights. Build it boldly!

Tristan Nunnally is a product manager for code-based analytics at Sisense. He’s passionate about people, ideas, and technology, in that order.