
The 68-Second Fix
The 68-Second Fix

Redesigning Medicine Dispensing at Scale
Redesigning Medicine Dispensing at Scale
Thousands of patients at a pharmacy counter. 250+ healthcare facilities. A pharmacist clicking through a broken system. Every wrong click costs seconds. Every second costs someone in that queue.
We redesigned the dispensing flow and reduced frustration of pharmacist and every patient in that queue.
Thousands of patients at a pharmacy counter. 250+ healthcare facilities. A pharmacist clicking through a broken system. Every wrong click costs seconds. Every second costs someone in that queue.
We redesigned the dispensing flow and reduced frustration of pharmacist and every patient in that queue.

The 68-Second Fix

Redesigning Medicine Dispensing at Scale
Thousands of patients at a pharmacy counter. 250+ healthcare facilities. A pharmacist clicking through a broken system. Every wrong click costs seconds. Every second costs someone in that queue.
We redesigned the dispensing flow and reduced frustration of pharmacist and every patient in that queue.
Project At a Glance
Project At a Glance
Project At a Glance
PROJECT
PROJECT
Hospital Management Information System
Hospital Management Information System
Dispensing Module Redesign
Dispensing Module Redesign
MY ROLE
MY ROLE
UX Designer
UX Designer
End-to-End Ownership
End-to-End Ownership
Research
Research
Design
Design
Test and Refine
Test and Refine
DAILY PATIENTS
DAILY PATIENTS
3000+
3000+
Per Major Hospital
Per Major Hospital
FACILITIES
FACILITIES
250+
250+
Major, Peripheral, Maternity, Dispensaries
Major, Peripheral, Maternity, Dispensaries
IMPACT
IMPACT
68
68
sec
Saved per dispensing, 30% faster than previous flow
Saved per dispensing, 30% faster than previous flow
DOMAIN
DOMAIN
Public Healthcare
Public Healthcare
Enterprise SaaS, HMIS
Enterprise SaaS, HMIS
PRIMARY USERS
PRIMARY USERS
Pharmacists
Pharmacists
at Hospital Dispensing Counters
at Hospital Dispensing Counters
TOOLS
TOOLS
Figma
Figma
FigJam
FigJam
Claude
Claude
Perplexity
Perplexity
The system wasn't broken once.
It was broken everywhere.
The system wasn't broken once.
It was broken everywhere.
The system wasn't broken once.
It was broken everywhere.
The
Problem
The Problem
The
Problem
INVISIBLE WORKLOAD
INVISIBLE WORKLOAD
No one knew what was pending.
No one knew what was pending.
Pending, partial, and dispensed records lived in the same list. Pharmacists tracked progress in their heads.
Pending, partial, and dispensed records lived in the same list. Pharmacists tracked progress in their heads.
FRAGMENTED WORKFLOW
FRAGMENTED WORKFLOW
IPD and OPD. One List. No Categorization.
IPD and OPD. One List. No Categorization.
Two completely different patient types, handled identically. Every switch meant re-orienting from scratch.
Two completely different patient types, handled identically. Every switch meant re-orienting from scratch.
REAL WORLD SCENARIO, IGNORED
REAL WORLD SCENARIO, IGNORED
Partial doses. Substitute medicines. No trace.
Partial doses. Substitute medicines. No trace.
When stock ran out, pharmacists improvised. The system had no way to record it. Patients left confused.
When stock ran out, pharmacists improvised. The system had no way to record it. Patients left confused.
TIME IS THE ENEMY
TIME IS THE ENEMY
4 minutes. Per patient. Every patient.
4 minutes. Per patient. Every patient.
Too many clicks before reaching the actual task. In a queue of hundreds, every second compounded.
Too many clicks before reaching the actual task. In a queue of hundreds, every second compounded.
I didn't start with a problem statement.
I started at the counter.
I didn't start with a problem statement. I started at the counter.
I didn't start with a problem statement.
I started at the counter.
Observing pharmacists during live working hours. No structured script. Just watching, listening, and noticing what they had stopped noticing themselves.
Observing pharmacists during live working hours. No structured script. Just watching, listening, and noticing what they had stopped noticing themselves.
Primary
Research
Primary Research
Primary
Research

"He switched the tab. His face said everything, किती वेळा? ”

"He switched the tab. His face said everything, किती वेळा? ”
Moment 01
Moment 01
The face that said everything genuinely.
The face that said everything genuinely.
One pharmacist never complained about switching between IPD and OPD. But every time he did, his expression changed. Frustration that had become too routine to mention.
One pharmacist never complained about switching between IPD and OPD. But every time he did, his expression changed. Frustration that had become too routine to mention.
Non-verbal Observation

Moment 02
Moment 02
Every eye in the queue was watching.
Every eye in the queue was watching.
Patients. Relatives. Watching every click. The pharmacist wasn't just slow, he was visibly slow. The pressure of that queue made every extra step cost more than just time.
Patients. Relatives. Watching every click. The pharmacist wasn't just slow, he was visibly slow. The pressure of that queue made every extra step cost more than just time.
Environmental Observation

“You know, dispensing time is the real problem, ती नेहमी खूप जास्त असते”
Moment 03
Moment 03
He said it. Then said it again.
He said it. Then said it again.
One pharmacist mentioned dispensing time multiple times without being asked. Not a passing complaint. A daily pain repeated out loud because it had nowhere else to go.
One pharmacist mentioned dispensing time multiple times without being asked. Not a passing complaint. A daily pain repeated out loud because it had nowhere else to go.
Repeated Verbal Signal
12
12
Pharmacist Observed
Pharmacist Observed
Pharmacist Observed
Live
Live
Working Hours
Working Hours
Working Hours
1
1
Major Hospital Observed
Major Hospital Observed
Major Hospital Observed
No Script
No Script
Pure Observation
Pure Observation
Pure Observation
Research gives you what people say.
Observation gives you what they stopped noticing.
Research gives you what people say. Observation gives you what they stopped noticing.
Research gives you what people say.
Observation gives you what they stopped noticing.
Key
Findings
Key Findings
Key
Findings

BREAKTHROUGH INSIGHT
BREAKTHROUGH INSIGHT
NOT TOLD . JUST FOUND
NOT TOLD . JUST FOUND
Nobody mentioned the substitute medicine problem. Because they had stopped seeing it as a problem.
Nobody mentioned the substitute medicine problem. Because they had stopped seeing it as a problem.
When a prescribed medicine was unavailable, pharmacists would quietly dispense an equivalent substitute. No record. No indication. Patients left with a different medicine than what was written on their prescription paper, and sometimes bought the original from outside, ending up with duplicates they didn't need. A patient safety issue hiding inside a workflow habit.
When a prescribed medicine was unavailable, pharmacists would quietly dispense an equivalent substitute. No record. No indication. Patients left with a different medicine than what was written on their prescription paper, and sometimes bought the original from outside, ending up with duplicates they didn't need. A patient safety issue hiding inside a workflow habit.
FINDING 1
Pharmacists were navigating from memory, not the system.
Pharmacists were navigating from memory, not the system.
No status visibility meant tracking pending and dispensed work was entirely a mental task.
No status visibility meant tracking pending and dispensed work was entirely a mental task.
FINDING 2
Two patient types. One broken path for both of them.
Two patient types. One broken path for both of them.
IPD and OPD workflows were fundamentally different in real life but identical in the system, forcing constant re-orientation.
FINDING 3
Partial dispensing happened daily. The system pretended it didn't.
Partial dispensing happened daily. The system pretended it didn't.
When stock ran short, pharmacists dispensed what they had. The remaining medicines had no pending status, no follow-up path, no record.
When stock ran short, pharmacists dispensed what they had. The remaining medicines had no pending status, no follow-up path, no record.
FINDING 4
Every dispensing started three decisions too late.
Every dispensing started three decisions too late.
Before reaching the actual task, pharmacists made mode-switching decisions that added clicks, added time, and added pressure to every single transaction.
Before designing for one hospital,
I needed to understand a hundred.
Before designing for one hospital,
I needed to understand a hundred.
Before designing for one hospital,
I needed to understand a hundred.
Secondary
Research
Secondary Research
Secondary
Research
The Question
How do dispensing workflows differ across scales of healthcare?
How do dispensing workflows differ across scales of healthcare?
Using Perplexity AI for secondary research, I studied dispensing patterns across large government hospitals, small private clinics, standalone pharmacies, and dispensing counters.
The goal was to find what was universal, not just what worked here.
Using Perplexity AI for secondary research, I studied dispensing patterns across large government hospitals, small private clinics, standalone pharmacies, and dispensing counters.
The goal was to find what was universal, not just what worked here.
What it confirmed
What it confirmed
The core friction was the same everywhere. Too many steps before the actual task.
The core friction was the same everywhere. Too many steps before the actual task.
What it unlocked
What it unlocked
A solution scalable from 3,000 patients a day to a single counter private pharmacy.
A solution scalable from 3,000 patients a day to a single counter private pharmacy.
Secondary research also surfaced the substitute medicine gap, a problem invisible at the counter but documented across multiple healthcare dispensing contexts globally.
Secondary research also surfaced the substitute medicine gap, a problem invisible at the counter but documented across multiple healthcare dispensing contexts globally.
Before touching Figma,
I set five rules I couldn't break.
Before touching Figma,
I set five rules I couldn't break.
Before touching Figma,
I set five rules I couldn't break.
Design
Principles
Design Principles
Design
Principles
01
01
01
Fewer clicks must equal faster dispensing.
Fewer clicks must equal faster dispensing.
Fewer clicks must equal faster dispensing.
Every interaction removed is seconds saved. Multiply that by 3,000 patients a day and the stakes become obvious.
Every interaction removed is seconds saved. Multiply that by 3,000 patients a day and the stakes become obvious.
02
02
02
Status must always be visible. Never assumed.
Status must always be visible. Never assumed.
Status must always be visible. Never assumed.
A pharmacist should never have to calculate what is pending. The system carries that load, not the person.
A pharmacist should never have to calculate what is pending. The system carries that load, not the person.
03
03
03
Reflect real workflows, not assumed ones.
Reflect real workflows, not assumed ones.
Reflect real workflows, not assumed ones.
IPD and OPD are different realities. The interface must reflect that without asking the pharmacist to make that call every single time.
IPD and OPD are different realities. The interface must reflect that without asking the pharmacist to make that call every single time.
04
04
04
Make hidden processes visible.
Make hidden processes visible.
Make hidden processes visible.
Substitute medicines, partial dispensing, unavailable stock. These were daily realities the system pretended did not exist. Every hidden process is a future error waiting to happen.
Substitute medicines, partial dispensing, unavailable stock. These were daily realities the system pretended did not exist. Every hidden process is a future error waiting to happen.
05
05
05
Design for scale from day one.
Design for scale from day one.
Design for scale from day one.
This solution had to work at a 3,000-patient government hospital and at a single-counter private pharmacy. Scalability was not a future concern. It was a day one constraint.
This solution had to work at a 3,000-patient government hospital and at a single-counter private pharmacy. Scalability was not a future concern. It was a day one constraint.
Three attempts at the truth.
Three attempts at the truth.
Three attempts at the truth.
Good design rarely arrives on the first try. Here is exactly how the thinking evolved.
Good design rarely arrives on the first try. Here is exactly how the thinking evolved.
Ideation and
Iteration
Ideation and
Iteration
Ideation and
Iteration
01
Fewer clicks must equal faster dispensing.
Fewer clicks must equal faster dispensing.
First attempt at removing the drawer entirely
First attempt at removing the drawer entirely


What I tried
Surface pending dispensing directly on the main page. Each patient row expandable via accordion showing items, batches, and quantities inline.
Surface pending dispensing directly on the main page. Each patient row expandable via accordion showing items, batches, and quantities inline.
WHy I Tried
The core friction was the same everywhere. Too many steps before Removing the drawer as the entry point meant fewer clicks before reaching the actual task.
The core friction was the same everywhere. Too many steps before Removing the drawer as the entry point meant fewer clicks before reaching the actual task.
The core friction was the same everywhere. Too many steps before Removing the drawer as the entry point meant fewer clicks before reaching the actual task.
What Worked
The concept of surfacing pending work upfront was validated. The right direction, wrong execution.
The concept of surfacing pending work upfront was validated. The right direction, wrong execution.
What Failed
Partial quantities, substitute items, and batch management inside an accordion became too complex. Dev flagged significant API constraints.
Partial quantities, substitute items, and batch management inside an accordion became too complex. Dev flagged significant API constraints.

What I Changed
Kept the concept of a pending-first view. Abandoned the accordion as the interaction model. Moved toward a list with a focused detail view.
Kept the concept of a pending-first view. Abandoned the accordion as the interaction model. Moved toward a list with a focused detail view.
02
Pending List with Drawer for Detail
Pending List with Drawer for Detail
Closer. But status was still invisible at the list level.
Closer. But status was still invisible at the list level.


What I tried
Pending list as main view. Clicking a patient row opens a drawer showing available items, unavailable items, and substitute selection.
Pending list as main view. Clicking a patient row opens a drawer showing available items, unavailable items, and substitute selection.
WHy I Tried
Solved the accordion complexity. Gave substitute medicine a proper documentation path. Pharmacist tested the prototype positively.
Solved the accordion complexity. Gave substitute medicine a proper documentation path. Pharmacist tested the prototype positively.
What Failed
Status was still invisible at the list level. Pharmacists had to open each row to understand workload. Not fast enough for a 3,000-patient environment.
Status was still invisible at the list level. Pharmacists had to open each row to understand workload. Not fast enough for a 3,000-patient environment.
What Worked
Pharmacist understood the flow immediately in prototype testing. Substitute medicine indication was well received by all stakeholders.
Pharmacist understood the flow immediately in prototype testing. Substitute medicine indication was well received by all stakeholders.

What I Changed
Status needed to be visible at the list level without opening anything. Moved to a tab-based status separation and inline quantity data.
Status needed to be visible at the list level without opening anything. Moved to a tab-based status separation and inline quantity data.
03
The Final System
The Final System
Status-first. Workflow-aware. Built for real-world chaos.
Status-first. Workflow-aware. Built for real-world chaos.


What I tried
Two Tabs: Pending, Dispensed. IPD and OPD tags with filters. Inline ordered, dispensed, and pending quantity. Substitute indication. Barcode scanning.
Two Tabs: Pending, Dispensed. IPD and OPD tags with filters. Inline ordered, dispensed, and pending quantity. Substitute indication. Barcode scanning.
WHy I Tried
Every failed iteration pointed to the same gap: pharmacists needed to assess their entire workload at a glance before touching a single patient record.
Every failed iteration pointed to the same gap: pharmacists needed to assess their entire workload at a glance before touching a single patient record.
What Worked
Pharmacists adapted within two days. Unprompted positive feedback. Dispensing time dropped from 4 minutes 2 seconds to 2 minutes 54 seconds (avg.). 30% faster.
Pharmacists adapted within two days. Unprompted positive feedback. Dispensing time dropped from 4 minutes 2 seconds to 2 minutes 54 seconds (avg.). 30% faster.
What Failed
Everything the previous iterations got right was kept. Everything that forced pharmacists to think instead of act was removed.
Everything the previous iterations got right was kept. Everything that forced pharmacists to think instead of act was removed.

Every failed iteration pointed to the same answer. Stop fighting the complexity and design around it. The result wasn't just a faster flow, it was a system that finally told the truth about what was happening at the counter.
Every failed iteration pointed to the same answer. Stop fighting the complexity and design around it. The result wasn't just a faster flow, it was a system that finally told the truth about what was happening at the counter.
The new flow. Fewer decisions.
Faster dispensing.
The new flow. Fewer decisions.
Faster dispensing.
The new flow. Fewer decisions.
Faster dispensing.
The Final
Flow
The Final Flow
The Final
Flow
Dispensing Page
Dispensing Page
Dispensing Page
Entry point for all flows
Entry point for all flows
Entry point for all flows
Path 01 - Dispensed Tab - Pending / Partial Patients
Path 01 - Dispensed Tab - Pending / Partial Patients
Path 01 - Dispensed Tab - Pending / Partial Patients
Select Patient from List
Select Patient from List
Select Patient from List
IPD / OPD tag visible
IPD / OPD tag visible
IPD / OPD tag visible
View Items
View Items
View Items
Ordered / Dispensed / Pending Qty.
Ordered / Dispensed / Pending Qty.
Ordered / Dispensed / Pending Qty.
Selection and Edit
Selection and Edit
Selection and Edit
Batch(Auto), qty (Auto), substitute if needed
Batch(Auto), qty (Auto), substitute if needed
Batch(Auto), qty (Auto), substitute if needed
Dispense and generate Invoice
Dispense and generate Invoice
Dispense and generate Invoice
Moves to Dispensed Tab
Moves to Dispensed Tab
Moves to Dispensed Tab
Path 02 - New or Unregistered Patient
Path 02 - New or Unregistered Patient
Path 02 - New or Unregistered Patient
Click "+" and Search Patient
Click "+" and Search Patient
Click "+" and Search Patient
UHID, name, or contact
UHID, name, or contact
UHID, name, or contact
Add Item, Edit, Delete
Add Item, Edit, Delete
Add Item, Edit, Delete
Batch auto-selected
Batch auto-selected
Batch auto-selected
Dispense and generate Invoice
Dispense and generate Invoice
Dispense and generate Invoice
Moves to Dispensed Tab
Moves to Dispensed Tab
Moves to Dispensed Tab
Path 03 - Dispensed Tab - View Completed Records
Path 03 - Dispensed Tab - View Completed Records
Path 03 - Dispensed Tab - View Completed Records
View Dispensed Patients
View Dispensed Patients
View Dispensed Patients
Fully dispensed and partial records with reasons
Fully dispensed and partial records with reasons
Fully dispensed and partial records with reasons
Select Record
Select Record
Select Record
Find the dispensing entry
Find the dispensing entry
Find the dispensing entry
Reprint Invoice
Reprint Invoice
Reprint Invoice
At any dispensing step —> Substitute Medicine
At any dispensing step —> Substitute Medicine
If a medicine is unavailable, the pharmacist can select a substitute, mark it against the original prescription, add a remark, and dispense. Fully documented. No confusion for the patient.
If a medicine is unavailable, the pharmacist can select a substitute, mark it against the original prescription, add a remark, and dispense. Fully documented. No confusion for the patient.
At any dispensing step —> NoN-Dispensing List
At any dispensing step —> NoN-Dispensing List
If a pharmacist cannot or should not dispense an item, whether due to zero stock, patient refusal, or any other reason, they can move it to Not Dispensing with a reason. The item can be moved back to the dispensing list if the situation changes. Every decision is documented, nothing disappears silently.
If a pharmacist cannot or should not dispense an item, whether due to zero stock, patient refusal, or any other reason, they can move it to Not Dispensing with a reason. The item can be moved back to the dispensing list if the situation changes. Every decision is documented, nothing disappears silently.
Not just a redesign. A system that finally worked like the counter did.
Not just a redesign. A system that finally worked like the counter did.
Not just a redesign. A system that finally worked like the counter did.
The Final
Solution
The Final Solution
The Final
Solution
A.
Two tabs. One simple question: is there work to do?
Two tabs. One simple question: is there work to do?
Pending shows everything that still needs action, fully pending and partially dispensed patients. Dispensed shows completed work, including partial dispensing with documented reasons for items not given. No mental tracking. No guesswork.
Pending shows everything that still needs action, fully pending and partially dispensed patients. Dispensed shows completed work, including partial dispensing with documented reasons for items not given. No mental tracking. No guesswork.

Clear Categorization

Clear Categorization

Patient Type Filter and Visibility in The List

Patient Type Filter and Visibility in The List
B.
IPD and OPD. Finally treated differently.
IPD and OPD. Finally treated differently.
Patient type tags and filters visible at the list level. No more mode switching decisions before every single dispensing. The system made the distinction so the pharmacist didn't have to.
Patient type tags and filters visible at the list level. No more mode switching decisions before every single dispensing. The system made the distinction so the pharmacist didn't have to.
OPD
IPD
C.
Partial doses. Substitutes. Now documented.
Partial doses. Substitutes. Now documented.
Ordered, dispensed, and pending quantities visible inline. Substitute medicine selection with indication and remark field. Daily realities the old system pretended didn't exist, now first-class features.
Ordered, dispensed, and pending quantities visible inline. Substitute medicine selection with indication and remark field. Daily realities the old system pretended didn't exist, now first-class features.
Ordered
Ordered
12
12
Dispensed
Dispensed
8
8
Pending
Pending
4
4

Ordered, dispensed, and pending quantities visible

Ordered, dispensed, and pending quantities visible


D.
Scan. Select. Substitute. Done.
Scan. Select. Substitute. Done.
Barcode scanner support added for medicine entry. No manual name typing. No search. Point, scan, and the item is in. During peak hours, every second saved per item compounds across hundreds of dispensing.
Substitute medicines are now documented and gives clarity to the patients, their families, pharmacists, and inventory management users.
Barcode scanner support added for medicine entry. No manual name typing. No search. Point, scan, and the item is in. During peak hours, every second saved per item compounds across hundreds of dispensing.
Substitute medicines are now documented and gives clarity to the patients, their families, pharmacists, and inventory management users.
E.
Nothing disappears silently.
Nothing disappears silently.
If a pharmacist cannot or should not dispense an item, whether due to zero stock, patient refusal, or any other reason, they move it to the Non-Dispensing list with a documented reason. The item can be moved back if the situation changes. Every decision has a record. Nothing is quietly dropped.
If a pharmacist cannot or should not dispense an item, whether due to zero stock, patient refusal, or any other reason, they move it to the Non-Dispensing list with a documented reason. The item can be moved back if the situation changes. Every decision has a record. Nothing is quietly dropped.
Item moved to Non-Dispensing with reason
Item moved to Non-Dispensing with reason
Zero stock/Patient refusal/Substituted/Other
Zero stock/Patient refusal/Substituted/Other
Reversible
Item moved back to dispensing list if situation changes
Item moved back to dispensing list if situation changes


Two pushbacks. One feature cut.
Here is how each decision was made.
Two pushbacks. One feature cut.
Here is how each decision was made.
Two pushbacks. One feature cut.
Here is how each decision was made.
Constraints and
Stakeholder
Management
Constraints and Stakeholder Management
Constraints and
Stakeholder
Management
01
01
Dev team said the API rework was too big.
Dev team said the API rework was too big.
Restructuring dispensing into status-separated tabs required significant backend changes. The team resisted. I escalated to the tech lead with the research evidence, timed observations, pharmacist frustration data, and the patient safety risk of the substitute medicine gap. The problem was real. They committed to the rework.
Restructuring dispensing into status-separated tabs required significant backend changes. The team resisted. I escalated to the tech lead with the research evidence, timed observations, pharmacist frustration data, and the patient safety risk of the substitute medicine gap. The problem was real. They committed to the rework.
Restructuring dispensing into status-separated tabs required significant backend changes. The team resisted. I escalated to the tech lead with the research evidence, timed observations, pharmacist frustration data, and the patient safety risk of the substitute medicine gap. The problem was real. They committed to the rework.
02
02
PM pushed back on the scope of change.
PM pushed back on the scope of change.
Changing the full dispensing structure mid-product raised concerns about stability and delivery timelines. Same approach. Evidence over opinion. The scope stayed. The timeline was adjusted.
Changing the full dispensing structure mid-product raised concerns about stability and delivery timelines. Same approach. Evidence over opinion. The scope stayed. The timeline was adjusted.
03
03
OTC dispensing was cut. Intentionally.
OTC dispensing was cut. Intentionally.
Government hospitals do not dispense over the counter. Including the feature would have added complexity with zero current value. It was documented and deferred to Phase 2 for private pharmacy deployments. Knowing what to cut is as important as knowing what to build.
Government hospitals do not dispense over the counter. Including the feature would have added complexity with zero current value. It was documented and deferred to Phase 2 for private pharmacy deployments. Knowing what to cut is as important as knowing what to build.
30% faster.
But that is not the whole story.
30% faster.
But that is not the whole story.
30% faster.
But that is not the whole story.
20 dispensings timed before and after. Averaged. Here is what changed.
20 dispensings timed before and after. Averaged. Here is what changed.
Impact
Impact
Impact
BEFORE
BEFORE
4:02 Approx.
4:02 Approx.
Minutes Per Dispensing (avg.)
Minutes Per Dispensing (avg.)
AFTER
AFTER
2:54 Approx.
2:54 Approx.
Minutes Per Dispensing (avg.)
Minutes Per Dispensing (avg.)
BEFORE
BEFORE
3K+ Approx.
3K+ Approx.
Daily Dispensing Per Major Hospital
Daily Dispensing Per Major Hospital
AFTER
AFTER
4K+ Approx.
4K+ Approx.
Daily Dispensing Per Major Hospital
Daily Dispensing Per Major Hospital
30% Approx.
30% Approx.
Faster Dispensing
Faster Dispensing
Measured using stopwatch timestamp observation. 20 dispensings recorded in each condition during live working hours. Times averaged. No simulations.
Measured using stopwatch timestamp observation. 20 dispensings recorded in each condition during live working hours. Times averaged. No simulations.
Substitute medicines are now documented. Partial dispensings have a paper trail. Patients leave knowing exactly what they received and why.
Substitute medicines are now documented. Partial dispensings have a paper trail. Patients leave knowing exactly what they received and why.
Learnings and Reflections
Learnings and Reflections
Learnings and Reflections

Users do not complain about what they have normalized.
Users do not complain about what they have normalized.
Nobody mentioned the substitute medicine problem because they had stopped seeing it as one. The most impactful design opportunities live in the gap between what users say and what they have accepted as unchangeable. Observation finds what interviews miss.
Nobody mentioned the substitute medicine problem because they had stopped seeing it as one. The most impactful design opportunities live in the gap between what users say and what they have accepted as unchangeable. Observation finds what interviews miss.

Evidence is the only language that moves teams.
Evidence is the only language that moves teams.
When dev and PM pushed back, opinion would not have worked. Timed observations, documented pain points, and a patient safety risk did. Design decisions defended with research are far harder to dismiss than ones defended with preference.
When dev and PM pushed back, opinion would not have worked. Timed observations, documented pain points, and a patient safety risk did. Design decisions defended with research are far harder to dismiss than ones defended with preference.

Resistance on day one is not failure. It is data.
Resistance on day one is not failure. It is data.
Pharmacists resisted the change on day one after a year on the old system. By day two they owned it. Users who trust a product enough to want it better have already accepted it as their own. That shift from resistance to ownership is the real measure of whether the design worked.
Pharmacists resisted the change on day one after a year on the old system. By day two they owned it. Users who trust a product enough to want it better have already accepted it as their own. That shift from resistance to ownership is the real measure of whether the design worked.