Khoirul SyarifSenior Product Designer

Product case study

Yummy CorpProduct case study

Yummy OLM usability test

Ratings were high. The tasks showed where it would break.

A usability study of Smart Admin's Outlet Listing Management beta, the tool that controls every brand's menus, prices and availability across delivery apps.

Timeline
Nov 2022
Role
Product Designer: plan, moderation, analysis
Participants
5 internal users
Methods
Moderated usability test · interviews
Real users, real tasks, before launch 🧪
Yummy OLM usability test cover

80%success on the listing tasks

Case study

13 sections

TL;DR

  • Context. Yummy sells many brands from many kitchens on several delivery apps (GoFood, GrabFood…). Every listing (brand × outlet/kitchen × channel) has its own menu, prices, modifiers and availability. OLM puts all of it in one place. A wrong price or a product left switched off goes live on a delivery app straight away.
  • What I did. Planned and ran a usability test of the beta with 5 of the people who would use it every day: 12 tasks across Listing, Catalog and Section category, covering 13 screens.
  • What we learned.
    • The listing tasks succeeded 80% of the time (20 of 25 attempts) at 36 s per task on average, and participants rated ease of use 4.4 / 5.
    • Underneath that: scheduled price changes succeeded only 60% of the time, against 100% for immediate ones.
    • Every participant mixed up the filter's search box with the table's.
    • 4 of 5 couldn't tell a Sales Channel Listing from a Catalog.
  • What changed. Four design changes before launch: one search field, the listing–catalog relationship shown where it matters, timing chosen as part of saving, and an edit mode that matches the rest of Smart Admin.

Context: what OLM manages

ConceptWhat it is
Outlet → Kitchen → BrandWhere food is cooked, and for which brands
CatalogA menu for one brand, or an all-in-one menu across several brands
Section category → Product → ModifierHow a catalog is organised
Sales channel listingBrand × outlet/kitchen × channel (GoFood, GrabFood…), with its catalog, prices and availability

One catalog can feed many listings, so a single change can update many listings across several apps at once. That's what makes OLM powerful, and it's also why a mistake costs so much. Changes can be applied now or on a date.

Research objectives

  1. Measure how successfully users complete core tasks in OLM
  2. Understand behaviour as they work through the system
  3. Find the difficulties they run into
  4. Collect new insights from the people who would use OLM every day
  5. Confirm the design meets their needs before launch

Metrics: task success, time on task, and a 1–5 ease-of-use rating at the end of each session.

Method

TypeQualitative: moderated usability test + in-depth interview
Participants5 internal users (Product Owner, Content team, BizInfra), the teams who would run OLM
SettingIn person at the Jakarta office · one moderator + one note-taker writing word-for-word notes · screen recorded with consent
Scope12 tasks · 13 screens (listing table, listing detail and split view, catalog table, create catalog, catalog detail and split view, section category table, create and detail, confirmation pop-ups)
Session flowIntroduction and consent → pre-interview → tasks → ease rating (1–5) and final feedback

How each issue was graded

TypeDefinition
SuggestionAn improvement the participant mentions, low importance to them
Strong suggestionA fix for something that clearly annoyed the participant
Minor issueThe participant stops to think but carries on
Major issueA significant delay, or trial and error
BlockerThe participant gets stuck and only continues with help

Why internal users and in person? OLM is a back-office tool. Its users are our colleagues, so we could test with the real users rather than proxies, and watch long, data-heavy tasks up close.

Designing the test

Pre-interview (warm-up and current behaviour):

  • What do you do when you manage an outlet or brand? Do you have specific goals?
  • What's hard about managing outlets in the current system?
  • If technology could help you manage outlets better, how would you want it to help?

How I wrote the prompts:

  • Start every module with an open question, "Spontan: bagaimana menurutmu?" ("first reaction: what do you think?"), before any task
  • "Biarkan responden menyelesaikan task-nya sendiri" ("let the participant finish the task alone"): no help until they finish or give up
  • After every task, the same probes: easier to understand? Why? More useful? Why?, so answers can be compared

Tasks

#ModuleTask
1ListingFilter listings by outlet and status Aktif (active)
2ListingChange a product price and a modifier price, now
3ListingMake the same price change on a date
4ListingTurn a product off, now
5ListingTurn a product off on a date
6CatalogCreate a single-brand catalog for one GoFood listing
7CatalogCreate a multi-brand "all-in-one" catalog for one GrabFood listing
8CatalogTurn a product and a single modifier off, now
9CatalogThe same, on a date
10CatalogReorder section categories (move two of six to positions 2 and 3)
11Section categoryCreate a section category, and explain what its type means
12Section categoryRename a product inside a Customize-type section and read the confirmation

Hypotheses written into the guide

  1. Users won't realise that changes can be scheduled
  2. Users won't be sure when a scheduled price takes effect
  3. Users won't realise list rows are clickable
  4. Users won't know a catalog can hold several brands

Findings

Task performance

Success and time were recorded for the five listing tasks. The catalog and section-category tasks were observed and their issues logged.

#TaskSuccessAvg. time
1Filter listings3 / 5 (60%)17 s
2Change price, now5 / 5 (100%)57 s
3Change price, on a date3 / 5 (60%)54 s
4Product off, now4 / 5 (80%)18 s
5Product off, on a date5 / 5 (100%)35 s
Overall20 / 25 (80%)36 s

Ease-of-use rating: 4.4 / 5 (4, 4, 5, 5, 4)

Issues logged

#IssueWhereTypeParticipants
1Mixed up the search inside the filter with the search on the tableListing tableMinor5 / 5
2Unsure how Sales Channel Listing differs from Catalog in the menuNavigationMinor4 / 5
3Didn't realise one catalog feeds many listingsCatalog detailStrong suggestion2 / 5
4Clicked Edit first to reorder section categoriesCatalog detailMinor2 / 5
5Assumed Edit was needed to switch a modifier on or offCatalog detailMajor1 / 5
6Didn't know what a catalog isCatalog tableMajor1 / 5
7Didn't know what the Complete status meansListing detailSuggestion1 / 5
8Searched through the filter rather than clicking the listing in the tableListing tableMinor1 / 5

Insights

1. Two search boxes, one intention. Every participant confused the filter's search with the table's (5/5, the highest-severity issue), and filtering was one of the two weakest tasks (60%). Another participant skipped the table entirely and went straight to the filter. For a list of hundreds of listings, search is the way in, and it has to be one obvious thing.

2. The model that makes OLM powerful was invisible. 4 of 5 couldn't tell Listing from Catalog, 2 didn't realise a catalog feeds many listings, and 1 didn't know what a catalog was. That's more than a naming problem: someone who doesn't know a catalog feeds ten listings might edit it thinking they're changing one.

3. Scheduling is easy to use but hard to find the first time. Changing a price now: 100%. Scheduling the same change: 60%. Yet scheduling a product off, later in the session, succeeded 100% of the time in 35 s. Once people had found the option, it was easy. The problem is finding it the first time, not complexity.

4. Our own design system taught people to look for Edit. 3 of 5 participants reached for Edit before reordering or toggling. Elsewhere in Smart Admin and the stock tools, tables work as Edit → Simpan (save). The catalog's direct-manipulation controls broke a pattern we had taught them ourselves.

5. A high rating doesn't mean an easy task. Participants rated ease 4.4/5 even though two tasks failed 40% of the time. Internal users are generous, so we prioritised what they did over what they said.

Hypotheses

HypothesisResult
1. Scheduling isn't discoveredPartly confirmed: 60% on the first scheduled task, 100% on the second
2. Effective time is unclearNot measured directly. The 2 failed scheduled-price attempts point this way
3. Rows don't look clickableWeak signal: 1 of 5 used the filter instead of clicking a row
4. Multi-brand catalogs aren't discoveredBroader than expected: the catalog concept itself was unclear (Insight 2)

Design changes

Prioritised by how severe and how frequent each issue was, against the effort to fix it.

IssuesChangeWhy
1, 8One search field above the table. The filter panel only holds structured filters (outlet, brand, channel, status), and applied filters show as removable chipsOne place to type, and you can always see what's filtering the list
2, 3, 6Show the relationship where it matters. A short description under each menu item, a "Dipakai di N listing" ("used in N listings") column on the catalog table, a link from each listing to its catalog, and a warning on catalog edits: "Perubahan ini berlaku untuk N listing" ("this change applies to N listings")Makes the one-to-many effect visible before someone changes it
Insight 3Choose the timing when saving. Langsung / Jadwalkan (now / schedule) appears in the save step, the confirmation states the exact moment ("Harga baru berlaku 3 Des 2022, 00:00": "new price takes effect 3 Dec 2022, 00:00"), and scheduled rows get a Jadwal mendatang (upcoming) tag. This is the same pattern as the stock take schedulerScheduling becomes a choice everyone sees, not an option you have to find
4, 5Follow the system's edit pattern. Catalog detail uses Edit → Simpan like other Smart Admin tables, and reorder handles and modifier toggles appear in edit modeDo what users already expect instead of teaching an exception
7Status legend with a tooltip, and Complete renamed to Siap tayang ("ready to go live")Status names should say what happens next

Result: a quick retest with 3 users: scheduled price change 3/3, and nobody confused the two searches.

Reflection

  • Hypotheses before sessions. Writing down what I expected to break pointed the sessions at the riskiest flows: scheduling and catalogs.
  • Behaviour over ratings. 4.4/5 would have read as "ship it". The task data said otherwise.
  • Consistency works both ways. A design system builds expectations, and anything that breaks them gets noticed. Issue 4 came from our own patterns.
  • What I'd do differently:
    • Time every task, not just the listing ones
    • Vary the task order. Scheduled on/off came after scheduled price, so its 100% is partly learning from the previous task
    • Add outlet ops to the participants, not only HQ teams

KhoirulAuthor

Thanks for reading — happy to walk you through the decisions on a call.

Next

9 of 14

Next ux case studySemojoBook a motorbike in Yogyakarta before you even arriveRead it →