CMS UX Case study
Introduction
The client was a US startup backed by a significant round of funding, looking to quickly bring an MVP version of a highly advanced internal dashboard to life.
Challenge
Designing a system that supported six different user modes, each with distinct, and in some cases conflicting, needs, permissions, and workflows. One of the first and most critical steps was mapping out user dependencies and identifying which views and actions should (or shouldn’t) be accessible to whom.
What made this project especially unique was the importance of real-time notifications. The client needed a separate, dedicated notification system to inform users about changes in system states and tasks relevant to their specific role. This led to the creation of a custom flow for notifications, fully integrated but treated as a parallel, layered experience within the product.
This dashboard wasn’t just about layout, it was about structure, clarity, and deeply strategic interaction design.
Process
Pre-Project Estimation & Roadmap
Before the project officially kicked off, we worked closely with the client during the estimation and sales phase to provide an initial time and scope assessment.
At this stage, we created a preliminary product roadmap to help the client understand the potential timeline, resource needs, and investment range for the MVP. This was crucial for aligning expectations and allowing the client to make early decisions around budget, milestones, and team involvement.
This roadmap was not yet detailed, but it laid the foundation for what would become the phased delivery plan — and gave both sides a clear view of what the collaboration could look like before we officially entered discovery and design.
Scope & Define
The first phase of the project focused on clearly defining the entire product scope together with the client. We kicked off with two intensive 8-hour strategy workshops, which helped align all stakeholders and set a clear foundation for what the MVP should deliver.
Given the complexity of the platform and the fact that it served six completely distinct user roles, we conducted deep persona mapping, outlining the goals, needs, and risks specific to each user type. This process helped us distribute functionalities per persona and identify overlapping needs, as well as role-based conflicts and limitations that had to be managed in the design.
From there, we moved into user stories and feature prioritization, where we mapped out the full ecosystem of actions, user journeys, and functionality relationships. This step was critical in understanding how each part of the system would behave and interact, both independently and together — especially considering the high level of interdependencies across roles and views.
These flows became the core of the UX strategy, ensuring that each user mode had a coherent and efficient experience, even within such a layered and complex dashboard.
4 iterations of the user flow
Wireframes & UI
The wireframing and UI phase had its own unique complexity, mainly due to the fact that we had a separate, dedicated flow for notifications. Since real-time alerts were crucial to the user experience, they had a significant impact on how wireframes were perceived and interacted with. Designing these flows early helped shape the logic, layout, and focus across different user journeys.
Once we aligned on the key flows, especially for the most data-heavy and deeply nested dashboard views, we mapped out all possible states and role-based variations.
From there, we ran visual direction workshops, using moodboards to define the tone and visual language of the platform. The final direction was based on a dark UI theme, which matched the product’s advanced, professional tone.
Using this foundation, we built a comprehensive design system, scalable, reusable, and role-aware, which became the base for the full UI execution across the platform.
130 unique wireframes screens + error handling
Prototyping & Tests
In the final phase, we focused on three core user types and created dedicated prototypes tailored to their specific flows. With a testing group of ten participants, we ran two testing rounds per user type.
We tested the updated version with the next users, refining iteratively and focusing on real behavior, not assumptions.
We prepared a full testing scenario, with structured questions and specific user tasks. Each session was carefully documented, including insights, behavioral notes, and video screen recordings that captured reactions and user commentary. These recordings proved incredibly helpful when presenting insights and justifying design decisions to the client.
We also created a comprehensive report summarizing the findings, along with clear recommendations and prioritization of changes, including a breakdown of what should be implemented now, and what can be added later.
This process ensured that every critical change was rooted in real user behavior, not just opinion. It also helped build client trust and alignment across the product roadmap.
12 user interviews with 2 iterations
Summary & Key Learnings
This was a long-term project that spanned over seven months of close collaboration. The most complex part turned out to be the first phase, where we had to deeply define and understand the relationships between the six user roles. Many of them were interdependent, or even mutually exclusive, which created a highly intricate structure to manage.
A lot of critical insights emerged during user testing, where we discovered that some of our early assumptions didn’t align with how users actually navigated or interacted with the platform. These findings led to significant adjustments to the user flows, particularly around how information was prioritized and presented to different roles.
This experience reinforced a valuable lesson:
When you’re working on a product with multiple user types at its core, it’s essential to start testing your flows and assumptions early, even before the UI is fully built. Waiting until the final product is ready can cost time and clarity.
Despite the complexity, the final result was a huge success, a fully functional, role-based dashboard that responded to the real needs of its users.