🎨 Unit 6 β€’ UI/UX Design Masterclass

User Flows & Wireflows

Engineering friction-free interaction pathways through state-driven interaction design: ISO flowchart syntax, London Underground Red Route prioritization, hybrid wireflows, canonical e-commerce & auth patterns, non-destructive error recovery, and Hick-Hyman cognitive optimization.

Syntax: ISO 5807 Symbols & Decision Logic
Strategy: Red Route Critical Path Prioritization
Hybrid Design: Wireflows (Screens + Vector Arrows)
Resilience: Error Recovery & State Machines
πŸ”€

1. The User Flow Paradigm: Purpose & Taxonomy

In digital product architecture, static screens tell half the story. Users do not experience an app as an isolated collection of independent canvases; they experience it as a continuous, dynamic stream of decisions, state changes, and causal transitions over time.

πŸ’‘ Formal Definition of a User Flow

A User Flow is a directional visual diagram tracing the complete step-by-step pathway a specific persona follows through an interactive system to achieve a concrete goal. Unlike static sitemaps (which illustrate content inventory), user flows capture intent, branching logic, conditional inputs, and system feedback states.

The 4 Levels of Architectural Flow Diagrams

Diagram Type Primary Focus Visual Granularity Ideal Project Phase
1. Task Flow Singular, linear task (e.g., "Change Account Password"). Zero branching or alternative paths. High-level boxes with arrows; strictly sunny-day path. Early discovery; understanding single-purpose transactional utilities.
2. User Flow Multi-pathway traversal including decision branches, role checks, and error exceptions. Flowchart symbols (decision diamonds, screen nodes, system endpoints). Mid-discovery; defining complete functional logic before wireframing.
3. Wireflow User flow overlaid directly onto mini-wireframe screen drawings rather than abstract boxes. Visual UI sketches connected with branching vector connectors. Transition from IA to UI design; clarifies layout context and trigger placement.
4. Screen Flow / Storyboard High-fidelity chronological walkthrough of high-polish UI mockups. Finished visual design comps with interaction specs and modal overlays. Sprint delivery; handoff to frontend engineers for component state building.
πŸ“

2. Flowchart Grammar: ISO 5807 Symbols & Decision Logic

To prevent miscommunication between UX researchers, product managers, and backend engineers, professional user flows rely on standardized geometric notation adapted from the international ISO 5807 Information Processing standard:

Symbol Shape Formal Name Interaction & UI Semantic Meaning Example In Digital Product
β¬­ (Capsule / Oval) Terminal Node Indicates the definitive entry trigger (Start) or the successful/aborted goal state (End). [Start: User Clicks 'Sign Up'] or [End: Invoice Receipt Sent].
β–­ (Rectangle) Process / Screen State Represents a specific interface view, screen, page, or major user action step. [Screen: Billing Address Form] or [Modal: Confirm Delete].
β—‡ (Diamond) Decision Node A binary (Yes/No) or multi-branch conditional gate based on user input or system state. <Is Cart Value > $100?> or <Is 2FA Authenticator Enabled?>.
β–± (Parallelogram) Input / Output External data provided by the user or output data delivered to the device. /Input: Credit Card Number/ or /Output: Download PDF/.
πŸ›’οΈ (Cylinder) Database / Server API Asynchronous backend network call, database query, or third-party validation webhook. [Stripe Payment Intent API] or [Postgres Token Lookup].
βž” (Connector Arrow) Vector / Directional Line Shows the forward vector of progression; labeled at exit branches (e.g., "True" / "False"). Labeled transitions: [2FA Valid: YES βž” Dashboard].
flowchart_decision_logic_rules.txt
FUNDAMENTAL LAWS OF USER FLOW DECISION LOGIC:
1. THE CONSERVATION OF PATHWAYS:
   Every decision diamond MUST have at least two labeled exit branches (e.g., [Success / True] vs [Failure / False]).
   A diamond with only one exit is a Process Rectangle, not a decision.

2. ZERO DEAD-END TERMINALS:
   Except for final goal completion or voluntary exit, no screen node may terminate without an actionable escape vector.
   Error states must always loop back to the preceding input state with preserved context.

3. UNIDIRECTIONAL DOMINANCE:
   Primary happy paths should flow strictly Top-to-Bottom or Left-to-Right.
   Loopbacks and recovery cycles flow counter to the primary axis (bottom-to-top or right-to-left) to signify regression.
        
πŸ”΄

3. Red Routes: Critical Path Prioritization & Friction Elimination

The term "Red Route" originated in the urban traffic management of London, designating major arterial roads where stopping or parking is strictly forbidden at all times to keep mass transit flowing. In product design, Red Routes represent the vital 10–20% of core interaction flows that deliver 80–90% of business value and user satisfaction.

⚠️ The Feature Bloat Dilemma

A music streaming app might contain 200 secondary flows (e.g., editing profile bios, toggling equalizer frequencies, custom playlist sorting). But if its primary Red Routeβ€”"Search Song βž” Tap Play βž” Audio Streams within 400ms"β€”suffers from UI friction or latency, the product will fail regardless of its secondary bells and whistles.

The Red Route Prioritization Matrix

Frequency vs. Population High Frequency (Used Daily / Hourly) Low Frequency (Used Annually / Rare)
All / Most Users (80–100%) πŸ”₯ CRITICAL RED ROUTE
Zero friction, minimum clicks, highest priority optimization.
🟑 STANDARD FLOW
Password reset, tax form download, updating billing credit card.
Few / Edge Users (5–20%) 🟒 POWER USER ROUTE
Keyboard shortcuts, raw CSV batch imports, API webhook triggers.
βšͺ PERIPHERAL / LOW PRIORITY
Deleting account, changing contrast themes, exporting legal data.
πŸ–ΌοΈ

4. Wireflows: Marrying UI Wireframes with Behavioral Logic

Invented by Jesse James Garrett and popularized by enterprise UX pods, Wireflows solve the single greatest drawback of traditional flowcharts: abstract rectangles tell engineers what happens logically, but fail to show which exact UI trigger button initiates the step.

wireflow_anatomy_ascii_schematic.txt
ANATOMY OF A WIREFLOW CONNECTOR TRIGGER
========================================================================================
[ SCREEN 1: ITEM DETAIL VIEW ]               [ SCREEN 2: SLIDE-OVER DRAWER ]
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ [Product Hero Image]         β”‚             β”‚ πŸ›’ Cart Summary (1 Item)   X β”‚
β”‚ "Industrial Ergonomic Chair" β”‚             β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Price: $450.00               β”‚             β”‚ β€’ Ergonomic Chair    $450.00 β”‚
β”‚                              β”‚             β”‚   Qty: [ - 1 + ]             β”‚
β”‚ [ Selector: Charcoal Grey β–Ό] β”‚             β”‚                              β”‚
β”‚                              β”‚             β”‚ Subtotal:            $450.00 β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚             β”‚ Shipping:         Calculated β”‚
β”‚ β”‚ [πŸ›’ Add to Cart]         │─┼──────┐      β”‚                              β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚      β”‚      β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜      β”‚      β”‚ β”‚ [βž” Proceed to Checkout]  β”‚ β”‚
                                      β”‚      β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
  VECTOR TRIGGER ANNOTATION:          β”‚      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  β€’ Event: onClick                   β”‚                     β–²
  β€’ Target: Primary CTA button        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  β€’ Animation: 300ms ease-out slide-over drawer from right edge
  β€’ State: Optimistic button badge updates from (0) to (1)
========================================================================================
        

Why Wireflows Accelerate Cross-Functional Velocity

βš™οΈ

5. Canonical Enterprise Flow Architectures: Auth, Checkout & Forms

Across enterprise web and mobile applications, three core interaction flows generate the overwhelming majority of user drop-offs and revenue conversion:

1. Authentication & Multi-Factor Verification Flow

1
Screen: Sign-In Gateway
User enters Email/Username OR selects SSO Provider (Google Workspace / Okta / GitHub).
β–Ό
?
Decision: Authentication Route?
Branch A: SSO βž” Validate OAuth2 Token. Branch B: Password βž” Check bcrypt hash in database.
β–Ό
2
Decision: Multi-Factor Authentication (MFA) Required?
If MFA Enabled: Display TOTP / WebAuthn Hardware Key Prompt. If Invalid: Display error and decrement attempts remaining (Max 3).
β–Ό
3
Terminal State: Authenticated Session Established
Issue HTTP-only JWT Cookie, hydrate user permission state, and route to target deep-link or Executive Dashboard.

2. E-Commerce Checkout & Purchase Pipeline

1
Step 1: Cart Review & Guest vs. Account Gateway
Display clear price summary with taxes. Crucial UX rule: Never force account creation before checkout. Support Guest Checkout.
β–Ό
2
Step 2: Shipping & Real-Time Address Validation
Auto-complete address via Google Maps API. Validate postal codes against logistics delivery APIs.
β–Ό
?
Step 3: Payment Gateway & 3D Secure Verification
Credit Card / Apple Pay / PayPal. If 3DS Challenge triggered: Render inline bank iframe. If card declines: Maintain full form state.
β–Ό
4
Step 4: Order Confirmation & Asynchronous Fulfillment
Display order number, clear tracking timeline, PDF invoice download button, and email confirmation dispatch.
πŸ›‘οΈ

6. Error Prevention, Form Submissions & Non-Destructive Recovery

A great user flow is defined not by how smoothly it operates when everything goes right, but by how gracefully it recovers when everything goes wrong. The most egregious design offense is destructive data lossβ€”forcing a user to re-enter a 20-field form because a single credit card security code had a typo.

🚫 The Cardinal Sin of Form Flows: Wiping Form State

When an error occurs during submission (e.g., network disconnect, invalid formatting, server timeout), the system must never clear populated input fields. All valid inputs must remain preserved in DOM state or client cache (IndexedDB), with focus automatically shifted to the first invalid field accompanied by a clear, human-readable correction message.

Designing Simple Navigation Paths: The Hick-Hyman Law

The Hick-Hyman Law mathematically models human decision-making speed as a logarithmic function of the number of choices available:

hick_hyman_cognitive_formula.txt
HICK-HYMAN MATHEMATICAL LAW:
    T = b * log2(n + 1)

Where:
    T = Average reaction / decision time required by user
    n = Number of equal-probability choices presented on screen
    b = Empirical cognitive processing constant (~0.155s per bit)

UX DESIGN IMPLICATION FOR FLOW ARCHITECTURE:
- Presenting 15 choices on one screen forces high cognitive load (T β‰ˆ 0.62 seconds of hesitation).
- Splitting 15 choices into 3 sequential chunks of 5 reduces choice friction dramatically.
- Always provide a clear "Recommended" default path to collapse 'n' down to 1 for 80% of users.
        
βš™οΈ

7. Production Design Artifact: Finite State Machine (XState / JSON)

In enterprise product engineering, UX user flows directly define the Finite State Machine (FSM) that governs frontend application routing and state management (e.g., XState, React Router):

checkout_state_machine_spec.json
{
  "id": "checkoutFlow",
  "initial": "idle",
  "context": {
    "cartItems": [],
    "shippingAddress": null,
    "paymentIntentId": null,
    "retryCount": 0
  },
  "states": {
    "idle": {
      "on": {
        "START_CHECKOUT": "reviewingCart"
      }
    },
    "reviewingCart": {
      "on": {
        "PROCEED_TO_SHIPPING": "enteringShipping",
        "ABORT_CHECKOUT": "idle"
      }
    },
    "enteringShipping": {
      "on": {
        "VALIDATE_ADDRESS_SUCCESS": "selectingPayment",
        "VALIDATE_ADDRESS_ERROR": "shippingError"
      }
    },
    "shippingError": {
      "on": {
        "RETRY_ADDRESS": "enteringShipping"
      }
    },
    "selectingPayment": {
      "on": {
        "SUBMIT_PAYMENT": "processingTransaction"
      }
    },
    "processingTransaction": {
      "invoke": {
        "src": "executeStripePayment",
        "onDone": "orderConfirmed",
        "onError": [
          { "target": "paymentFailed", "cond": "isFatalDecline" },
          { "target": "requires3DSecure", "cond": "isChallengeRequired" }
        ]
      }
    },
    "requires3DSecure": {
      "on": {
        "CHALLENGE_RESOLVED": "orderConfirmed",
        "CHALLENGE_FAILED": "paymentFailed"
      }
    },
    "paymentFailed": {
      "on": {
        "RETRY_PAYMENT": "selectingPayment"
      }
    },
    "orderConfirmed": {
      "type": "final"
    }
  }
}
        
πŸŽ“

8. University Exam & Senior Product Interview Viva Guide

Q1 β€’ Concept What is the fundamental difference between a User Flow and a Task Flow?
A Task Flow is a single-path, linear sequence representing how any user completes a specific task without deviation (e.g., submitting a contact form on the happy path). A User Flow is persona-specific and comprehensive, illustrating multiple alternative entry points, decision diamond branches, edge cases, error loops, and role-based permissions across an entire user journey.
Q2 β€’ Methodology What is a "Wireflow" and what critical problem does it solve in design handoffs?
A Wireflow merges abstract flowchart nodes with simplified wireframe screen layouts. It solves the context problem of abstract box diagrams by visually showing which specific interactive element (e.g., a specific button, modal toggle, or table row) triggers the flow, and what the resulting screen layout looks like upon arrival, eliminating guesswork for frontend developers.
Q3 β€’ Strategy Explain the concept of "Red Routes" in product design and how they are identified.
Derived from London's strict traffic clearways, Red Routes are the 10–20% of core workflows that the vast majority of users execute frequently and that generate the bulk of commercial value. They are identified using a $2 \times 2$ matrix evaluating Frequency of Use (Daily vs. Infrequent) against User Proportion (All Users vs. Few Users). Critical Red Routes must be streamlined to eliminate every micro-second of friction.
Q4 β€’ Standards In ISO 5807 flowchart syntax, what is the mandatory structural rule governing Decision Diamonds?
A Decision Diamond must always represent a conditional predicate and have at least two labeled exit pathways (e.g., Yes/No, True/False, Success/Error). A diamond with only one exit is invalid syntax because no branching decision occurred.
Q5 β€’ Cognitive Law How does the Hick-Hyman Law ($T = b \cdot \log_2(n + 1)$) influence the design of form-submission flows?
The Hick-Hyman Law dictates that cognitive reaction time increases logarithmically with the number of options presented. In complex form flows, presenting 20 fields at once causes decision paralysis and abandonment. Designers apply Hick-Hyman by chunking forms into multi-step progressive disclosure sequences (e.g., Steppers: Account $\rightarrow$ Profile $\rightarrow$ Verification), presenting smaller sets of choices per screen.
Q6 β€’ Usability Ergonomics What are the core design principles of Non-Destructive Error Recovery in checkout flows?
Principles include: (1) Preserve all entered user data in DOM/client state so nothing is wiped, (2) Never block the user with dead-end error pages; keep them within the flow context, (3) Auto-focus on the offending input field with inline contextual guidance explaining how to resolve it, and (4) Provide smart defaults or autofill to prevent repeated typing errors.
Q7 β€’ Architecture Why is Guest Checkout considered a mandatory Red Route pattern for modern e-commerce UX?
Forcing users to register an account before purchasing introduces a severe friction barrier, accounting for up to 30% of total cart abandonment. Guest Checkout respects user intent by deferring account creation until after the transaction is completed, offering a one-click option on the order confirmation screen: "Save your info for next time: Enter a password to create an account."
Q8 β€’ Technical Handoff How does a UX User Flow map to a Finite State Machine (FSM) in frontend engineering?
In both frameworks, the system can only exist in one finite state at a time (e.g., reviewingCart, processingPayment). Flowchart screen states map directly to FSM States; user clicks and API responses map to FSM Events / Transitions; and conditional decision diamonds map to FSM Guards. This 1-to-1 parity ensures the UI never enters an impossible or unhandled state.