Design audit
A capture that I made auditing Overstock.com while working on the 2-person Design Systems team (supporting 20+ UX Designers).
š§ļø this is a bit of a mess, but tl;dr auditing includes tools, processes, & creating ways of managing change š§
Notes on a design audit @ Overstock.com
Thereās a lot of communication that happens around design systems, but one of the first things that needs to happen is getting an inventory of what patterns currently exist.
Working within a newly-formed Design Systems Team at Overstock.com, I was part of a duo tasked with supporting 20+ UX designers.
One of my first tasks was to identify the current components, discrepancies, and mobile variation patterns across the user experience.
Note the existing system
Before making suggestions, take a few weeks (or months in larger-orgs) to really experience the communication patterns throughout the org (tools + how people operate).
- note all the tools used on the UX team
- map out workflows
(Note: if you need to knock out auditing design patterns right away, Iād use Brad Frostās interface audit is a great resource if you want to jump in & start putting screenshots into Keynote.
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/whimsical.CBwByGnV_MSSIb.webp)
I used Whimsical to map out what the team was currently paying for & the toolās features.
Letās imagine youāre on a team of 15 ux designers, split across several teams along the purchase journey.
- does every team use the same tools?
- how do cross-functional teams communicate internally?
- how does the ux-team communicate internally?
- externally?
- how would you collaborate on a design?
- specifically, list the step-by-step-process
- how do people find out about design updates?
- is there a visible, centralized tool for ux-stuff?
- if a request is outside of that centralized tool, how are the comms managed around that request?
- how is research done?
- how are findings shared?
- how is prototyping done?
- how are prototypes shared?
- etc., etc.,
After a few weeks, youāll get an idea of how people do things.
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/mmsketchcomponents.Dz9Irm2S_Z1udLG9.webp)
An overview of the components in the sketch library in mindnode. I like using different tools & this one is a solid native mac app for mindmapping.
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/invisionusage.C7e7FVnl_1OMcEv.webp)
Before making too many waves, I contacted the main users of the existing tools that would be impacted by any contract changes. (note: it was only one account generating 90+% of the projects).
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/handlecomms.DikvK4Wr_1yfgg.webp)
Supporting a new tool means handling the old tool comms & creating channels that support & encourage the new tool usage & adoption.
Start Small, Think Big
I wanted to be able to show some value right away, and in the case of e-commerce, thatās going to be the PDP (Product Details Page) (whatās nice, is that in theory youāll eventually get to everything).
Start wherever the most used part of your app/service is, which will likely contain a lot the main components.
Design tool + Browser
Using Figma and Chrome DevTools, I would start the process of interacting with the page and documenting the patterns.
After a while, you start to get into a rhythm. Having the same URL in two tabs, one in desktop view and one in mobile, then capturing component-by-component ended up being a favorite flow of mine.
It ensured that if I had to stop for something, I would have the component captured on desktop and mobile. I err on the side of desktop and mobile being ācompleteā rather than documenting all patterns found in a certain view as complete (e.g., ādesktop completeā). We are going component-first instead of viewport-first.
![A collection of macOS graphical user interface cursors displayed in a grid, showcasing different actions such as pointing, clicking, dragging, and loading.](/_astro/cursors.DlTp0tc9_Z1o78Y0.webp)
Preview of the cursors figma library that helped showing accurate cursor hover-states.
A Picture is Worth a Thousand Words
![A web development workflow diagram depicting the evolution from a live e-commerce site through coding stages to a content management system interface.](/_astro/auditnotes.DIu7FLi0_Z1XvBeU.webp)
Screenshots and annotations in Figma were pivotal in our audit. This method of visual documentation is invaluable in any context, serving as a clear reference point that transcends language barriers and subjective interpretations.
Some metdata Iād include:
- date captured
- full url
- if itās complete or not (i.e., are you halfway down the page, if so, make it clear on the design file where you left off)
Universal Patterns for Collaboration & Cohesion
Identifying & aligning on patterns not only saves the design & dev team implementation time, but it creates a cohesive experience for the end user.
Just remember, itās whatās live on production that matters.
Conversations can get muddy because people start getting design components vs. code components vs. words-only components blurred, which can create miscommunication.
Stepping back and making sure everyone is aligned on what type* of component we are talking about, can save some confusion.
A Dirty Job
There seems to be a desire to automate things, especially if itās a process that naturally takes time to complete.
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/auditcursors.Cfvhb9Q0_Z2hsW5K.webp)
Zoomed in around the menu hover interactions. Even though they were a few pixels away on the nav, they were miles apart when it came to styling patterns.
For example, clicking through a site/app.
It takes time for a human to click through and experience whatever is being presented on their screen. Iām not sure of a better way to design for an experience than to go through it yourself.
Even if there are tools that can automate audits and capture components to document, thereās still the human experience of interacting with the product.
Thereās a difference between reading about a 900ms blocking transition thatās happening on a key component versus having to sit through the experience.
When you go through the product and start capturing patterns, you begin to develop a broader āsenseā of the system. Hearing about changes, you might be able to predict how the system might respond and ask questions accordingly.
Alignment instead of blame
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/ostk-valuespaper2.CkAOYkQp_Z1iXwlx.webp)
The Overstock design system page & the Paper doc I had with notes around the teamās values.
Capturing the product experience in a visual way can help build alignment and allow for discussions around patterns & current implementation. Remember to include some helpful metadata that letās you get to whatever you were testing quickly (e.g., full url, date-test, environment, etc.).
![A graphic overview of a user interface design process, showcasing various application modals, button styles, and navigation patterns to improve site consistency.](/_astro/ostkuilibrary.DI2J74eX_1uT1as.webp)
A peek at the sketch library & the library file preview, scroll* down memory lane with this howto article
Itās possible to quantify aspects of a āpoor experienceā, as defined in one part as having inconsistencies in the experience. It might be interesting to get the number of buttons that have a unique shade of blue, but whatās more interesting is understanding why those inconsistencies happened in the first place.
- Assuming there are a bunch of different buttons, how large of a technical issue is this?
- Are there multiple dev teams that would have to align on process in order to fix this?
- Does this issue impact an initiative thatās already going over not-so-well with a part of the team?
Thereās an infinite amount of possible scenarios that might cause a bunch of unique buttons to show up on a product.
The chances of guessing the right cause is slim, so itās best to involve people that have insights into areas you donāt.
Itās about the people
When it comes to āissuesā or inconsistencies in the experience, itās usually a manifestation of a human relation dysfunction somewhere along the creation line.
Being mindful that thereās a human relations factor underneath the ui conversations can help bring a gentler tone.
Identifying & aligning on patterns not only saves the design & dev team implementation time, but it creates a cohesive experience for the end user.
This helps the people āmaking the thingā & the people āusing the thingā.
Just remember, design components are an abstraction ā itās whatās live-on-production that matters.
Conversations can get muddy because people start getting design components vs. code components vs. words-only components blurred, which can create miscommunication.
Stepping back and making sure everyone is aligned on what type* of component we are talking about, can save some confusion.