FORMA.AI | 2023

Dashboard Evolution

Dashboard Evolution is a configuration tool designed to allow Forma.ai's internal teams to create and maintain client dashboards without the need of developers.

At the time, 80% of dashboards were hard coded and each change took a lot of manual effort. We set out to design a configuration tool to make it easier and faster to create and maintain dashboards.

RESPONSIBILITIES

End to end design process: discovery, user research, requirements, design, testing, support through launch

ROLE AND TEAM

Product designer working with engineer manager and 3 engineers.

USERS

Internal teams – customer operations and engineers.

PROBLEM STATEMENT

How might we allow internal teams create and maintain dashboards without the help of engineers?

Creation and maintenance of dashboards depended a lot on development teams for their time and resources. Changes were often requested from clients after launching, requiring additional efforts to maintain. The dashboard experience also varied from client to client which required unique logic for each one.

BUSINESS VALUE

1. Creation and maintenance of dashboards by Customer Ops

2. Consistent and faster dashboard implementations without custom front end logic

By creating a dashboard configurator, we set out to standardize widgets along with giving the ability to customer ops to set them up themselves.

CHALLENGE

Inconsistent UX across existing dashboards

There were many inconsistencies and custom designs used throughout the dozen or so existing client dashboards. Many widgets and patterns were used in only a handful of dashboards. A thorough audit was done to identify these differences and inform what types of widgets to include. A challenge was figuring out what the standard of each widget looked like and how a user can configure it with the configurator.

Inconsistencies with filtering on data visualizations

Transaction tables located in subpages vs. slideouts accessed through links from the main dashboard

STRATEGY

Finding the right balance

Flexibility ↔️ Consistency
Customization ↔️ Templates

Another challenge was balancing the flexibility with consistency. We had to establish how much customization to allow for, that sufficed what Customer Ops was looking for their clients while balancing it with a consistent dashboard experience. We first started with providing configurations that would have the greatest impact and be utilized the most.

STRATEGY

Phases approach to incrementally add functionality

The requirements for each phase was formed with a technical approach from the engineer manager. Each phase added on to the previous phase with additional functionality. In parallel, developers that were working on creating the configurations of the widgets also worked on the standardization and templates for them.

PHASE 2 - INFORMATION ARCHITECTURE

Align on dashboard terminology and hierarchy

Establishing set terminology on what each part of the dashboard is helped with being aligned in feedback sessions and maintain consistency throughout the configurator. A requirement was a client could have multiple dashboards. Each dashboard included pages with multiple widgets. Current dashboards did not have the notion of hubs – which was to be introduced in the future phase 4. The idea of hubs was later scrapped altogether.

PHASE 2 - ITERATIONS

Iterating on a flexible layout to accommodate for all phases

The approach we took was focusing on the next phase of the project was strategic, considering the feature's evolution from its current phase to the final iteration. Because of the lack of certainty in requirements for the future, we focused on refining the closest phase first while leaving room for change as the project went on.

Iterations tried were using existing features layouts such as an existing other feature, Form Builder, and Forms, which both accomplished similar objectives of configuring a layout.

PHASE 2 - TESTING AND FEEDBACK

Arriving at the layout

Through discussions with the design manager, PM and engineer, we decided to focus on this iteration. The approach came from identifying the future vision of where we want to get to, and stripping away elements to result in the Phase 2 iteration.

Upon ideating further with the same layout, we realized the complexity and (large aspect) of this project required it’s own set of feature requirements and given an experience that fully catered to it’s needs.

PHASE 3

Organizing widgets IA

Once the layout was planned, the next big challenge was coming up with how to best organize the widgets and what configurations to include. I noted down common configurations across widgets, which typically were in the same widget category.

Throughout the process, we got frequent feedback from customer operation team members to ensure it continued to match their mental model of how to configure a dashboard and where to locate a widget. I also iterated on whether we should organize widgets by it’s use vs. what it is literally. Upon receiving feedback, we decided to order them by the type of widget which gave flexibility in potential uses in other parts of the app.

PHASE 4 ONWARDS

Putting it all together

After organizing the widget types, I began creating configurations for the most common widgets. To decide on what to include, we got feedback on what was the most common configurations used.

PHASE 4 ONWARDS

Continuous feedback loop as phases continued

Upon establishing the main configurator experience in phase 3 and having some widget configurations be implemented, I had been continuing to design the rest of the widget configurations.  

Bi-weekly feedback sessions/forum was held with those interested in hearing about the progress and new features of configurator. It was a space where we gathered feedback since the configurator was being used with a few of the current clients and all new existing clients.

REFLECTION

In conclusion

Although I did not get to see the end product become fully rolled out, the configurator allowed for the majority of widgets to be configured. As of June 2023, phases 2 and 3 were shipped with 50% of clients being successfully migrated with their dashboards being maintained with Dashboard Evo. The rest of the clients were awaiting specific widget configurations which were being implemented and designed. We received lots of positive feedback from users with excitement on the release of additional widgets to be configured.

Reflecting back, a big learning was designing for an end state feature with a phased approach and with uncertainty of requirements especially in future phases. It was also challenging finding a balance between standardization and customization of widgets.