How I redesigned a legacy enterprise product
For the past year, I have been a user experience designer for Azure test plans, a manual testing software, part of the Azure DevOps suite by Microsoft. Presented here are some personal views about the key aspects of the redesign. But before that, let’s give a background about the product:
What’s software testing?
In recent years, software testing is becoming more popular and important in the software development industry. Testing is the critical element of software quality assurance and represents the ultimate review of specification, design, and coding.
Software can be tested either manually or automatically.
To create test cases manually and execute them without any tool support is known as manual testing. Manual software testing is performed by a human sitting in front of a computer carefully going through application screens, trying various usage and input combinations, comparing the results to the expected behavior and recording their observations.
Who are software testers?
Professional testers reveal problems in a structured, effective and efficient way based on different heuristics, identifying potential risks based on models we create, analysing actual risks based on experiments we do, and communicating these risks in a helpful way.
The design challenges
The term “enterprise web app” doesn’t exactly conjure visions of attractive software. Beautiful design isn’t often a priority; given finite resources and paying customers, the choice between the next big feature and improved aesthetics usually comes down in favour of the feature.
Cater to frequently requested features
With the redesign we decided to go after some of the most requested features, which meant that the design has to scale and should be ready for extensibility. Several other features are part of the backlog and we pick them up as and when the bandwidth opens.
Inconsistent design
Our look and feel felt dated, and over time — it had fragmented into inconsistency. While there’s no easy way to quantify how the look and feel affects user sentiment or prospective sales deals, it was a concern. For example, we had two filter bars, that filtered the same content, but both looked and worked differently.
Performance is key
A web enterprise software needs to be robust and perform under stress. To make sure that the product scales to all customer needs, we required to stress test every feature and make sure that it is fast, reliable and gives minimum error.
Take customer feedback seriously
Every customer voice captured through surveys was carefully understood and translated into action items for the design to cater to. Over time we hope to get more positive scores after the new design is made default.
The design process
Here are a few things that we focused on during the design process and the principles that guide the redesign:
An evolving design system
The Azure Dev Ops team set out to create our own design system, which helps create a unified design language for all the developer services and the designers. Since it is evolving, it was important to keep exploring the design from the design system point of view, collaborate with design system team and ensure the overall design sanctity of the product which is a part of a larger suite.
Incremental improvements
That meant reminding myself that any consistent, clean, modern design system would be an improvement over the current. Any such system, once implemented, would be more conducive to its own evolution over time.
Good, not perfect
It has to work flawlessly, which means it can not always be pixel perfect, but good enough to ship and make improvements on. So we started with the simpler changes, but effective areas to focus on.
Transcend current functionality
While we weren’t making many functional changes, we certainly plan to do so in the future. So we needed a flexible style — one that supported our existing features and would stand up to the addition of new ones. Often, the route to flexibility is through simplicity.
Data density matters
Products like Azure Dev Ops must show far more data at a far greater density than the average app. That in itself places useful constraints on the design: Because we need to let the information shine through, there’s less call for (and strong reasons to avoid) much decoration.
This wouldn’t have been possible without the collaboration of our team product managers, engineers and designers. I will update the blog with screens when they’re shipped.