Visier is a SaaS startup based in Vancouver. Their goal is to redefine the Business Analytics field by creating domain specific and user-centric analytic applications. Visier current has two products: Workforce Analytics (WFA) and Workforce Planning (WFP).
WFA helps businesses answer key workforce questions and uncover insights through beautiful visualizations. Whereas WFP builds on the foundation of WFA and lets you create workforce plans based on insights discovered. These insights can range from what is the turnover rate, who should you promote next, to how feasible is your growth strategy.
To demonstrate some of the UX improvements I contributed, I will dissect the design decisions I made while designing a sub-workflow for the security feature.
Data Role Creation
The data role creation workflow allows admins to control what data users are able to see.
As an inherently data heavy, complex and sensitive workflow, achieving simplicity and clarity was of great importance. An easy to use workflow will reduce the chances of the user making mistakes - which would bad when handling sensitive HR data. Below are some UX strategies I employed in order to simplify and reduce the cognitive load on the user.
At Visier, Customer's data fields are mapped to Visier defined Metrics. The admin might remove access to certain data fields for security and privacy reasons. Because of this, we allow the admin to block data fields they deem to be sensitive. Since Visier defined Metrics uses data fields, some metrics might stop working because a data field access is removed. In addition, the admin is likely to be more familiar with their company's data. As such, we needed to create an interface that allowed them to easily secure their own data while being able to review what Visier metrics were impacted.
To help the user form a clear mental model, we broke the task to two different steps for the two distinct actions:
1. Selecting which data fields to give access to
2. Reviewing what metrics are available based on the access provided.
To further reinforce the state change, colors were used to differentiate to between the different steps to visually cue the user that the data they are working on is different.
When reviewing the metrics that were visible or not, I wanted to ensure that the design was highly scannable. This was important as users often have to manage hundreds to thousands of data fields. I primary used positioning to help the user differentiate between if a metric was visible or not. This allowed the user to quickly scan the list and check the access levels.
One important design consideration we made was that our designs were color independent design so users with color blindness can also use the interface. This can be seen with our previous example; the positioning of objects were used to distinguish between the different state. In instances where we could not use position to indicate the different states, we used shapes to distinguish between the different states.
It is important to note that our designs did employ the use of color. However, they were used to enhance the experience rather than as the primary means of understanding and interacting with the interface.
Below was the interface that implemented.
Over the course of 8 months, I developed a wide set of skills while working in a startup environment. The key lessons I learned were defining mental models, designing in an agile environment and creating scalable designs.
Mental Model Theory
As a novice designer, there is a tendency to jump into straight into designing the user interface without first defining the user's mental model. This generally leads to unintuitive user interfaces filled with usability issues.
At Visier, I had the opportunity to work closely with the senior user experience designers on the team. Through the weekly review sessions we had, I developed an understanding as to how an experienced designer would approach a design problem. I noticed that the conversations we had were rarely around the user interface, but around how we can develop correct mental models for the user. Now, I understand that developing a strong conceptual model is essential because it provides the framework in which the user would think about the workflow. Developing a clear conceptual model is the first step in designing a cohesive and intuitive interface!
Working in a software startup company with a 4 months development cycle gave me real life experience in working an agile development environment. With short development cycles, features are generally designed in tandem with development. As such, quick pivots of designs are required often when the dev team finds out a particular design will be too complex and infeasible to implement within the timeframe.
I found the importance of creating scalable designs. For conceptual designs, I had the freedom to choose and manipulate the content to fit my designs and aesthetics. However, I learn very quickly that it’s the other way around when you are designing for real products. In real products, you have to account for a large variety of data sets and the UI must be able to accommodate for it. For example, users can have very long names and the design needs to be able to adapt to it.