In 2018, Industrial embarked on a multi-year design and front-end development project for a complex legal research application. The application required two major systems, one for the app’s admins and one for the front-end users, each required accommodating a unique set of features and user actions. Because the legacy version was built many years prior and had a software infrastructure that wouldn’t be compatible with the new features we were planning for, it required rebuilding the system from the ground up in a way that could accommodate a richer user experience and support complex reporting functions. 

Guided by key UX principles, we embarked on shaping our process to ensure the result would be a seamless and empowering experience for both admin and front-end users. Looking back on this project that involved teams from 3 different time zones, well over 500 meetings, and countless user stories written, here are some of the lessons we learned along the way.
 

  1. Get feedback early
    • This holds true for any design effort; however, the ramifications for not doing this when designing for powerful applications with big data can be even more detrimental. To ensure we were spending our efforts on the right solutions, we created a clickable prototype for both systems (admin and front-end). In doing this, we were able to validate it with a diverse set of users who represented the different user groups who would use each system.
    • Through moderated Zoom sessions, we created tasks for these users to complete and recorded their thoughts, success and error rates per task, and ultimately summarized our findings into a report detailing key recommendations to improve the design.
    • This approach allows you to pivot and refine ideas at an early stage, validate the priorities to focus on and get buy-in from key stakeholders who can start to visualize the potential and value of the re-design. In this case, user testing led to some valuable insights and notable updates to the design of core features. 
       
  2. Organization is critical
    • ​​​​​​​When dealing with multiple systems, cross-country teams, and the task of completely rebuilding an application, the importance of organization across all areas of the project is an understatement. For designers, labelling design files according to their version, creating consistent naming conventions for features and uploading design files to an easily accessible place goes a long way in keeping the process moving without wasting time navigating through messy systems.
    • We found that keeping our most up-to-date files in InVision was a great way to allow everyone from across teams to have access to them and to facilitate collaboration. 
    • Organization is vital as well when communicating specifications to developers. As things change, documentation needs to change as well! Taking time to go back and update user stories to reflect design changes due to technical limitations or unforeseen developments will help in the long run. Therefore, when it is time to perform testing on the implementation or even communicate requirements to stakeholders once the product is launched, no details will be missed. 
       
  3. Make a plan for showcasing a lot of data
    • ​​​​​​​Designing the UI for an information-heavy application with a continually increasing data set to showcase can be complicated. Because of this, the interface should be designed to accommodate a full amount of data and not just sample data. For easier comprehension, from a user perspective, we found that incrementally showing the data through the use of accordions and hiding certain fields until user action requires them worked well in terms of keeping a clear UI, and not overwhelming the user all at once.
    • From a design perspective, understanding how to communicate requirements and create templates that would accommodate nth levels of meta-data and nested fields in a visually clear way was vital in maintaining consistency across the application and ensuring data is presented to users in the clearest way. These are patterns and flags that should be raised early on in the project, to ensure there are no surprises at the end!
       
  4. Create a smooth handoff process
    • How do you ensure that as a designer your work gets implemented according to the expected functionality? Clear, consistent communication and detailed documentation. At Industrial, we work just as hard on our user stories and documentation as we do on the designs themselves. This becomes increasingly important when working with external development teams that are doing the implementation. Create weekly meetings that provide the opportunity for either team to ask questions about functionality, bugs found or business priorities. 
    • Establish a clear workflow (TargetProcess can be a great tool for this) for documenting criteria, reviewing, implementing, and testing so each feature can be isolated and handled in a manageable way, rather than trying to do everything at once.
       
  5. Keep it to the essentials
    • ​​​​​​​With a rebuild project, especially one that has existed on the market for a while, it can be easy to take the opportunity to try to build everything and solve every problem. As a team, and through an ever-evolving process, we learned how to pare down features and functionalities to the essentials and build on this foundation. This enabled us to launch the product according to a realistic timeline while having a healthy backlog of features ready to be worked on right after going live.
       
  6. Educate the users (and internal stakeholders too!)
    • ​​​​​​​Even the best experiences sometimes require help documentation to empower users to take advantage of all the functionalities within an application. Making the education component a part of your launch plan will help end-users be less change-averse, and empower internal users of the application to use the tools in a seamless way.
    • Whether the education plan involves in-app cues and contextual onboarding prompts, help center documentation, webinars or video walk-through’s, planning for this will create a stronger support system for users who must get used to a new way of doing things. Additionally, when it comes to educating users, ensuring the copy within the application itself informs users before they could make an error or get confused will go a long way in building their confidence.

Ultimately, redesigning complex applications will always have its struggles, but ensuring early feedback, organization of files and documentation, planning the UI for all scenarios, creating strong processes, filtering down to the essentials and supporting your users post-launch will help make sure the effort was a success! At Industrial, we are no strangers to complex problems and we would love to help you with yours. Have an idea for an application or a plan to re-design an existing digital product? Get in touch with us to see how we can help you.