Etihad AirwaysETIHADBEYOND BORDERS

Features 01 & 02 · Chauffeur & AI Flight Search

Heuristic evaluation

An expert usability inspection of both prototype flows — the Business-Class chauffeur booking & live tracking, and the AI-powered flight search — assessed against Nielsen’s 10 usability heuristics with severity-rated findings, the issues resolved through iteration, and a prioritised roadmap.

MethodHeuristic inspection (Nielsen, 10)
Scope2 flows · current prototypes
Severity0–4 (Nielsen)
OverallStrong · ship-ready core
Method

How this was evaluated

I inspected each flow screen-by-screen against Nielsen & Molich’s ten usability heuristics, rating issues on the standard 0–4 severity scale. This is an expert inspection by the designer — a fast, structured way to surface problems early. It complements, but does not replace, testing with real users (see the validation plan in the roadmap). Strength scores below are a relative judgement per heuristic, where 5 = exemplary.

0

Not a problem

No usability concern

1

Cosmetic

Fix if time allows

2

Minor

Low priority to fix

3

Major

Important to fix

4

Catastrophe

Must fix before release

At a glance

Heuristic scorecard

Both flows are mature and share one design system. The AI search funnel and the chauffeur’s reassurance model are the standout strengths; remaining issues are mostly cosmetic or stem from intentionally stubbed secondary flows (live data, payment, voice).

Chauffeur
4.4 / 5
Strong — proactive error prevention & reassurance
AI Search
4.8 / 5
Strong — explainable, curated, user-in-control
Flow 1 · Chauffeur booking & live tracking
HeuristicStrengthScore
Visibility of system statusProgress dots, live ETA & status, flight-watch5.0
Match between system & the real worldReal-world transfer language, meet & greet4.0
User control & freedomBack everywhere, custom time, reschedule & cancel4.0
Consistency & standardsShared design system; vehicle card now syncs5.0
Error preventionTight-time warning, impossible-time block, cancel confirmation, capacity upgrade5.0
Recognition rather than recallRecommended pre-selected; review summarises all5.0
Flexibility & efficiency of useRecommended default = fast path; power options4.0
Aesthetic & minimalist designPremium, calm, progressive disclosure5.0
Help users recover from errorsConstructive warnings, non-blocking4.0
Help & documentationContextual reassurance; no dedicated help yet3.0
Flow 2 · AI-powered flight search
HeuristicStrengthScore
Visibility of system statusAI thinking, parse chips, live totals5.0
Match between system & the real worldNatural language, budget headroom, real facts5.0
User control & freedomAI proposes, you decide; refine/undo/save5.0
Consistency & standardsShared design system; sort & refine patterns5.0
Error preventionEmpty-state recovery, honest out-of-scope reply, extras gating5.0
Recognition rather than recallParse chips, why-lines, visible filters5.0
Flexibility & efficiency of useWorking classic search, refine chips, calendar, save5.0
Aesthetic & minimalist designCurated (anti-OTA), collapsed time pickers5.0
Help users recover from errorsEmpty state with fixes, undo bar4.0
Help & documentationAI is the help; minor first-run discoverability4.0
Flow 1 · Chauffeur

What works well

The chauffeur flow turns a logistics task into a premium, reassuring experience — the right emotional register for Business Class.

Reassurance is the backbone

Every step earns trust: progress dots, a recommended pickup tied to the flight, “We’re watching your flight,” a driver-assigned card, and Uber-style live tracking with an ETA countdown. The premium promise is felt, not just stated.

Error prevention is proactive

A tight-time selection (preset or custom) triggers a clear “that’s cutting it close” warning, a time that would miss check-in is blocked with a plain explanation, and cancelling asks for confirmation; exceeding 3 guests/bags auto-upgrades to a BMW X7; an unavailable action (check-in) is visibly disabled rather than tappable.

Real-world mental model

Direction-aware copy (“collect you from home” vs “meet you at the airport”), plain-language timing (“arrives airport ~15:00”), and a tangible vehicle card map directly to how travellers think about an airport transfer.

Calm, premium minimalism

Optional choices (special requests, custom time) are progressively disclosed, keeping each screen focused. The aesthetic reads first-class without clutter.

Findings
CH-01

No dedicated “how the chauffeur works” help

Severity 2 · Minor
HeuristicHelp & documentation
ObservationInclusions are listed, but first-time users have no concise answer to common questions (driver wait time, no-show policy, how far in advance to book, what happens if the flight is very delayed).
ImpactUsers may hesitate or contact support for reassurance that the UI could provide inline.
RecommendationAdd a lightweight “How your chauffeur works” help sheet (wait time, changes, contact) reachable from the intro and trip screens.
CH-02

Manage / cancel booking after confirmation (was missing)

Resolved
HeuristicUser control & freedom
ObservationEarlier builds had no visible path to modify or cancel the chauffeur once it was booked.
ImpactPlans change; without a clear exit the user feels locked in, which undercuts the premium, in-control feel.
ResolutionThe trip screen now has Reschedule (its own mode, “Save new time”) and Cancel, which opens a confirmation dialog stating the free-until-1-hour policy. “Keep my booking” has focus and Esc keeps it.
CH-03

“T-4h” badge is mild jargon

Resolved
HeuristicMatch between system & the real world
ObservationThe recommended-time badge reads “T-4h.” It is decoded by the subtext (“arrives airport ~15:30”) but the abbreviation itself is industry shorthand.
ImpactMinor momentary friction for non-frequent flyers.
ResolutionNow reads “4h before” (and “After landing” for the airport-to-hotel direction).
CH-04

Arrival / rating relied on a manual tap

Resolved
HeuristicVisibility of system status
ObservationIn the prototype the journey completes when the user taps “I’ve arrived,” which then reveals the rating. Production should detect arrival automatically.
ImpactNone in the demo; flagged as a production requirement so the rating fires at the true end of the trip.
ResolutionArrival at the airport is now simulated automatically and the rating appears only then. Production still needs a real geofence or driver “trip ended” event.
CH-05

Contact-number editing was stubbed

Resolved
HeuristicHelp users recover from errors
ObservationThe driver-coordination contact field shows a toast rather than a real editable field with validation.
ImpactPrototype scope only; no impact on the demonstrated flow.
ResolutionThe contact field now edits inline with validation (8–15 digits). The address and driver-note rows also open real editors instead of toasts.

Issues resolved through iteration

  • Rating timing (H1 · H3) — the “How was your ride?” rating previously appeared on the “You’re on your way” screen; it now appears only after the trip completes (“You’ve arrived”).
  • Vehicle card consistency (H4) — the “Your vehicle” card now updates to the BMW X7 — title, seats, bags and the day-of trip label — in lock-step with the capacity warning.
  • Disabled state clarity (H5) — the not-yet-available “Online check-in” card is now visibly disabled (muted, locked “Soon” chip, aria-disabled).
  • Time control & error prevention (H3 · H7 · H5) — users can now set a custom pickup time, with the tight-time warning evaluating any chosen time against the flight.
  • Cancel without confirmation (H5 · H3) — one tap on Cancel used to cancel instantly; it now opens a confirmation dialog with the policy and a safe default.
  • Reschedule dragged through the booking funnel (H7 · H3) — it now has its own mode and returns straight to the trip.
  • Impossible pickup times (H5) — a time that reaches the airport after check-in closes is blocked, and the “leave by” suggestion matches the recommended time.
  • Data consistency (H2 · H4) — one flight record now drives every screen (AUH → LHR, Fri 12 Jun). “Today” is replaced by the real date; “From airport” has a London drop-off and driver; the AM/PM time field is a 24-hour picker.
  • Travel-day logic (H1) — tracking is clearly locked until travel day, then unlocks; map pins read “Driver” and “You”; the status bar is legible over the map.
  • Tap targets (H7) — every control is now at least 44 × 44 px; a vehicle name that truncated now wraps.
Flow 2 · AI Search

What works well

The AI flow’s defining quality is that it is explainable and keeps the traveller in control — the AI does the heavy lifting, the user makes the call.

Explainable AI, user in control

The system shows what it understood (parse chips), why it recommends each trip (“why this trip… $88 under your $700 budget”), and lets the user steer at every turn — refine chips, edit criteria, exact-date calendar, time slots, fare and extras, save, and undo. “AI proposes, you decide” is delivered, not promised.

Curated, not cluttered

Results are a ranked shortlist by destination with a clear rationale — a deliberate contrast to OTA aggregator density (coupons, lock-price, dozens of combos). This is the feature’s core value and its strongest usability decision.

Strong status & live feedback

An AI “thinking” state, “searching 40+ routes,” match scores, and a total that updates live as the user changes time, fare or extras keep the system’s state continuously visible.

Graceful empty state

When nothing fits the budget, the screen doesn’t dead-end — it states the lowest achievable price and offers one-tap fixes (raise budget, fewer travellers).

Findings
AI-01

First-run discoverability of natural language

Resolved
HeuristicHelp & documentation
ObservationThe power of free-text intent is conveyed mainly through example tiles. A brand-new user may not realise how flexible the input is.
ImpactSome users may default to narrow queries and under-use the feature.
ResolutionA dismissible first-run hint offers examples the assistant can really do, and the assistant sheet adds starter chips.
AI-02

Fares, dates and time-deltas are illustrative

Severity 1 · Cosmetic
HeuristicFlexibility & efficiency of use
ObservationPrices, the daily-price calendar and same-day time-slot deltas are static sample data in the prototype.
ImpactPrototype scope only; the interaction model is complete and ready for live data.
RecommendationWire to live fare/inventory APIs; keep the same explainable presentation.
AI-03

Voice input was decorative

Resolved
HeuristicHelp users recover from errors
ObservationA microphone affordance is present in the composer but non-functional.
ImpactCould imply a capability that isn’t there.
ResolutionThe microphone uses the browser’s speech recognition where available and falls back gracefully to typing.
AI-04

Party-total vs per-person pricing

Severity 1 · Cosmetic
HeuristicMatch between system & the real world
ObservationPricing is shown as the total for the party (clearly labelled “total for 2 guests”). Some users instinctively compare per-person.
ImpactLow risk given explicit labelling, but a small mismatch with some users’ habits.
RecommendationOffer an optional per-person toggle or a secondary “~$306 each” hint on the detail screen.

Issues resolved through iteration

  • Reduced redundancy (H4 · H8) — removed the hardcoded “12–16 Jun · fixed dates” option once the exact-date calendar made it redundant.
  • Cognitive load (H8) — the same-day time pickers are now collapsed behind the AI’s recommendation (“Change time”), so the default screen stays calm; compact single-line pills replaced tall cards.
  • On-brand value cue (H2) — added a budget-headroom line (“comes in $88 under your $700 budget”) instead of OTA-style struck-through “discounts.”
  • Error prevention (H5) — optional paid extras (chauffeur, bag, seat) appear only for Economy, never doubling up on what Business already includes.
  • Dead classic search (H3 · H4) — From, To, Dates and Guests only showed toasts. To, Dates and Guests now open the real refine sheets, and “Search flights” asks for a destination first. Unavailable trip types are visibly disabled.
  • Silent parsing failures (H1 · H9) — a euro budget showed as “Under $700”, “5 people” was quietly capped, and “Paris” became “Europe”. The assistant now lists what it assumed, converted or ignored, and says plainly when it can’t search a place (for example Tokyo).
  • Home hint promised the impossible (H2) — the example prompt “direct to Tokyo in May” could not be served; the hint now uses prompts the assistant can answer.
  • Wrong arrival times (H2) — arrivals are now derived from departure, duration and time zone (Rome 03:05 → 07:25; return 19:40 → 03:35 +1).
  • Currency leak and copy drift (H4) — “Changes from $90” stayed in USD in AED mode; “best value for two” was hard-coded for any party size. Both now follow the state.
  • Disconnected booking (H1 · H7) — “Your trip is in My Trips” was untrue. There is now a My Trips screen, a booked trip appears on Home, and a Business booking opens the chauffeur flow with the real flight.
  • Keyboard and layout bugs (H7) — focus no longer drops after toggling an extra or closing a sheet; the saved-trip thumbnail no longer fills the screen; a grey shadow on the tab bar is gone; the floating button no longer covers content; controls are 44 px.
Across both flows

Consistency & the design system

Evaluating the flows together surfaces a clear cross-cutting strength: they read as one product.

One shared visual language

Identical tokens, type (Figtree + IBM Plex Mono), components (cards, steppers, sheets, CTAs) and the real Etihad tail across both features — so moving from search to a Business-Class service feels seamless. (Heuristic 4.)

A consistent interaction principle

Both flows “recommend first, then let the user control”: a smart default (best-value flight / flight-matched pickup) with progressive disclosure for power options. Users learn the pattern once.

Shared accessibility patterns

Live-region announcements, focus moved to each screen’s title, role=radio/switch controls, reduced-motion handling and generous tap targets are applied consistently in both prototypes.

Honest, calm tone

Plain-language reassurance over hype; no dark patterns, countdown pressure or fake scarcity — appropriate for a premium airline and consistent across features.

Plan

Prioritised roadmap

Sequenced from low-effort polish, to validation with real users, to the engineering needed for production.

Quick wins

  • Chauffeur help sheet — “how it works,” wait time, changes (CH-01)
  • Per-person price hint on the detail screen (AI-04)
  • Screen-reader pass with VoiceOver and TalkBack on both flows

Validate

  • Moderated usability test — 5–7 users per flow, task-success + SUS
  • A/B the AI entry point on the home screen (placement & copy)
  • Comprehension check on the budget-headroom & time-slot cues
  • Full WCAG 2.2 AA contrast audit across flows, wireframes & reports

Production hardening

  • Live fare / inventory + secure checkout handoff (AI-02)
  • Geofenced arrival → auto trip-complete & rating (CH-04)
  • Saved addresses and one-tap rebook
  • Real driver and flight feeds for the live map and “we’re watching your flight”