I led the the color palette revamp for our team of 250 designers, which is a major improvement to our design system.

Product

Volcano engine design system

Skills

Design system - Color palette

Timeline

Q1  2023

Collaborators

HongLiu

The problem

The 2023 half-year NPS results showed ineffective search as the top user experience issue.

Some products do not support fuzzy search. For products that have already supported fuzzy search, the degree of fuzziness is not sufficient.

Our current capability

Boolean

Limited fuzzy

User desired

Fuzzy

Problem#1: Lack of fussy search

"ALB does not have a fuzzy search function. The current search of LB is an exact search, which is basically unusable."

Problem#2: Not smart enough

"The ECS instance list search can't match query to ".id", "name", "ip". manual adjustment is needed each time, very inconvenient."

As design system team members, we see an opportunity to enhance search experience.
We began by understanding how search works and auditing Volcano Engine's product search function to understand our situation.

5 steps solution

Understand search

Find the area of focus and audit the criteria.

Search state audit

Understand the current state to define a realistic and feasible project goal.

Define project goal

Set clear goal and align with dev team.

Set and test rules

Formulate rules in line with use cases and development capabilities.

Implementation

Offer an enhanced search experience to a broader
range of products.

01

02

03

04

05

Understand search

Identify the area of focus and establish audit criteria.

Our goal is to thoroughly understand what takes place at the front end and back end/behind the scenes at different stages of searching. Determine the areas where improvement is possible and establish our main area of focus.

Based on user's feedback, we decide to focus on [Query parsing] stage:

After aligning with the dev team, we classified focus area functions into three levels (basic, intermediate, and advanced) and audited 30 tier one products to understand our current status.

Basic

Intermediate

Advanced

Case conversion.

Remove meaningless characters

Auto-suggest

Pinyin to text conversion

Content rewriting

Auto-complete

Error correction

The audit

Our search function as a whole is extremely rudimentary.

Result

73% (22/30) have basic search function.
27% (8/30) implemented remove useless characters.
10% (3/30) have auto-complete.
0% (0/30) have advanced functions.

Why so basic?

Rapid delivery comes at the cost of user experience.

The business expands rapidly. As the existing data volume increases significantly, optimizing search requires a substantial amount of development work, especially for the backend.

The design of the search function has been overlooked, whether at the interaction level or the product level.

Implication

Given our limited development resources, set a realistic goal and concentrate on areas that can be improved on the front end.

The goal

Raise the baseline
Raise the awareness

Raise the baseline metrics

100% (30/30) have basic search function.
100% (30/30) implemented remove useless characters.
50% (15/30) have auto-complete.

Raise the awareness

Organize sharing sessions to answer designers' common search questions and share best practices, engaging more designers to optimize search experience for their products.

Raise the baseline / Define rules

How to determine if a search requires fuzzy search?

Not every use case requires fuzzy search. We classify different use cases based on how the data is generated.

How the data is generated?

Corresponding use case

How the query is inputed?

Fuzzy search?

User inputs manually

Repo name
Service name
Instance name
Cluster name

User recall

✅ YES
Reduce user cognitive load

User inputs manually+System generated

Monitoring metrics
Alert rules

User recall

Copy & paste

Case by case

System generated

Pod ID
Image ID
IP address
Time
Number

Copy & paste

❌ No

Raise the baseline / Implementation & challenge

What steps can we take to achieve the maximum impact with only front end?

Strategy

Incorporate target functions into the basic search component. This approach can achieve the maximum impact while requiring the least effort from product owners.

Challenge

For most products to achieve full auto-complete—a highly demanded feature—backend support is required. What can we do in this situation?

Rules

Priority

Difficulty

Dev team

Within 1st scope

Case conversion

P0

Easy

Front end

✅ YES

Remove useless character

Auto-complete

P0

Medium

Front end + Back end

TBD

Pinyin to text conversion

P0

Hard
Need search lexicon

Back end

❌ No

Auto-suggest

Hard
Need search engine

Content rewrite

Error correction

Raise the baseline / Solution

Auto-complete based on data stored on the front end.

Deep-dive into how back/front end interact with each other

When a page loads, the back end returns a limited number of rows to the front end. Thus, we can at least provide auto-complete functionality based on the loaded front-end data.

Before

After

Raise the baseline / Verify

Test our rules with a new project

We selected a project with a large number of filters. We divided all these filters into five categories according to data property and generation method. Subsequently, we listed which rules are needed for each category.

Findings / learning

Refining the search experience at the beginning is far easier than making improvements later on.
This further demonstrates the importance of increasing awareness to consider taking another look at features that may seem simple.

Raise the awareness

Sharing sessions

Different search scenarios

Why so many different design patterns?

How data volume influence design decision?

The result

From AOC ticket, the number of issues related searched decreased by 40% in the thrid quarter compared to the first quarter of 2023.

Yuexi2009@gmail.com

Linkedin

Dribbble

© 2024 Yue Xi. Created with time