Sweep Case Study
Case study · Product Design · Enterprise Operations

Sweep

Turning a signed cleaning contract into a launch-ready operation.

Sweep helps commercial cleaning companies launch and operate client sites. I redesigned the site-creation workflow so an operations manager can move from basic property details and a signed contract to an approved service plan, a staffing recommendation, and a launch-readiness checklist. The central challenge wasn't data entry — it was helping the operator interpret contractual requirements, resolve uncertainty, and make accountable operational decisions without losing the original source.

Role Product Designer — end to end
Project type Take-home design assessment
Timeline 3-day design challenge, 2026
Platform B2B desktop web application
Focus Enterprise UX · workflow design · AI-assisted document analysis · operations tooling
Tools Figma · Claude (prototyping)
Sweep operations dashboard: Good afternoon Dana greeting, an urgent no-show banner, a Needs attention list, and a portfolio snapshot with coverage and quality metrics
Sweep Review and create step: extracted site details, service window, labor, access and staffing findings with low-confidence flags and two detected risks Sweep service plan zone view: five service zones with task counts, frequency, weekly hours, priority, equipment, and access notes totalling 36 hours per week
Challenge Operators must manually translate contract language into scope, labor, schedules, staffing, and launch tasks — across disconnected documents and tools.
Solution A guided workflow that analyzes the contract, shows its findings and uncertainties, and turns approved decisions into an editable operational plan.
Key takeaway Automation is most useful when every inference stays reviewable, editable, and connected to its source.
01 — The operational problem

“Adding a site” is actually a chain of operational decisions

A newly signed contract doesn’t create a record — it creates a dependency chain. Each link relies on the one before it, and a wrong call early quietly breaks everything downstream.

Dependency chain · from signed contract to go-live
01Understand the building & client
02Interpret service scope
03Estimate labor & confirm hours
04Identify access & qualification requirements
05Resolve ambiguous language
06Build a weekly plan
07Assign available, qualified staff
08Track every blocker before launch
The reframe

The operator isn’t entering information. They’re translating legal and commercial commitments into a system that people must execute every night.

02 — Research & product framing

Framing the workflow before drawing it

This was a time-boxed assessment, so I used product analysis, operational workflow mapping, and design assumptions rather than claiming primary user research. The framework below identifies what would need to be validated with real operations teams (see the proposed validation plan).

Proto-persona · built from the interface, not interviews
DO
Dana OkaforOperations Manager
Context. Manages dozens of commercial sites; responsible for converting a newly signed account into a functioning operation.
Primary goal. Launch a new site on time — without violating the contract, overloading the crew, or missing a critical access or staffing requirement.
Limited time Multiple sites Contract ambiguity Staffing constraints Client dependencies Cost / quality trade-offs Needs an audit trail
Ecosystem today · workflow analysis

The same site information is re-keyed across a chain of disconnected tools — every hand-off is a chance to drop a requirement.

Signed contract Spreadsheets & notes Site setup Labor planning Scheduling Staffing Client comms Launch checklist
The opportunity: collapse the re-keying into one workflow where the contract is read once and every downstream decision inherits from it — with its source attached.

These framing artifacts are design assumptions, not findings. See what a first study would test in Section 12.

03 — Key insight

The difficult part is not extracting the contract. It’s turning uncertain language into accountable operational decisions.

A system can identify hours, zones, labor, and access terms — but those findings shouldn’t silently become the operating plan. Sweep must show what came directly from the source, what was inferred, what is uncertain, and what the operator approved.

04 — Design principles

Four rules the workflow answers to

01Preserve the sourceEvery extracted or inferred requirement stays traceable to the original contract clause it came from.
02Show uncertainty before actionLow-confidence findings are surfaced before they can influence staffing or scheduling — never after.
03Separate recommendation from approvalSweep may propose a decision, but the operator remains responsible for accepting or changing it.
04Carry decisions forwardOnce approved, a decision automatically updates the service plan, staffing, launch checklist, and activity history.
05 — End-to-end user flow

One workflow, with a clear line between system and human

Sweep analyzes and recommends; the operator reviews and approves. Every automated step hands off to a human decision before it becomes real.

Sweep analyzes / recommends Operator reviews / approves
{{ s.label }}
06 — Adding the site & handling the contract

The workflow begins by earning permission to automate

Before analysis runs, Sweep sets expectations: it states what it intends to extract, keeps a draft saveable, and makes error recovery a first-class part of the flow — not an afterthought.

Sweep Add a new site, step 1 of 4: a Site details form with client name, site name, address, building type, square footage, target go-live date and contact, plus Continue, Save draft and Cancel actions
Step 1A four-step tracker (Site details → Contract → Analysis → Review) sets the whole workflow’s expectations up front. Draft-save is always available, so a launch that spans days never loses progress.
Error states designed as part of the core experience
Sweep contract step: an upload-failed banner reading the connection was interrupted at 64 percent, nothing was saved, with a Retry upload button
Interrupted uploadTells the operator exactly what happened to their data — “nothing was saved” — then offers one clear retry.
Sweep contract step: an unsupported-file banner explaining a .heic scan is not supported and asking for the executed agreement as a PDF, with a Choose another file button
Unsupported formatNames the file, states the fix (“upload the executed agreement as a PDF”), and gives a recovery path.
Sweep contract step: a successfully uploaded PDF named Harbor Point Cleaning Services Agreement, 14 pages, 1.1 MB, with Replace and Remove options and an enabled Analyze contract button
Valid file, ready to analyze“Analyze contract” only enables once a valid file is present — analysis never starts on bad input.
Design decision “Continue without a contract” stays available throughout — automation is offered, never forced. An operator who only has details on hand is never blocked from creating the site.
07 — Contract analysis & human review

Every extracted finding stays editable and attributable

Analysis produces a reviewable ledger, not a finished plan. Findings that were inferred — a service window read from “evening hours,” a labor estimate over contracted hours — are flagged with confidence and consequence, and each one is editable before it’s used.

Sweep Review and create: extracted site details, an inferred service window flagged low-confidence, estimated versus contracted labor with a plus 2 hour variance, access and staffing findings, and two detected risks — each with an Edit link
Review & create. 21 findings, 2 risks — inline low-confidence flags sit next to the values they qualify, and every row has Edit.
Sweep Contract findings tab: a From the signed contract panel listing contract value, term, scope, service window (inferred), labor, access and qualifications, next to a two-risks-to-resolve panel, with a View source contract PDF link
Findings, on the site record. The same findings persist after creation — attached to the original PDF and marked reviewed-by, so the ledger travels with the site.
Anatomy of a finding

A single hierarchy repeats across every extracted item

Source factOriginal contract language
InferenceSweep’s interpretation
SignalConfidence & consequence
ActionOperator decision
RecordRecorded outcome

Example: §3.1 says “evening hours.” Sweep infers a 6:00 PM–12:00 AM window, flags it low-confidence, notes the consequence (“confirm before staffing”), and waits for the operator to confirm, edit, or ask the client — with the decision written back to the source.

08 — Resolving operational trade-offs

Recommendations show the cost, quality, and coverage trade-off

The estimate runs 2 hours over the 36 contracted — so Sweep lays out three responses side by side: add weekly hours, reduce a low-priority task’s frequency, or accept overtime exposure. Each option spells out its consequence; one is marked Sweep recommends, but none is applied without approval.

Sweep Review contract findings, unresolved: a labor-variance decision showing estimated 38 versus contracted 36 hours with three trade-off options — add hours, the Sweep-recommended reduce-frequency option, and accept overtime — plus a service-window ambiguity decision and a decision-record panel listing remaining blockers
2 open. Trade-off options are compared, not pre-decided. The decision record on the right shows what’s still blocking plan sign-off.
Sweep Review contract findings, all resolved: labor variance and service-window ambiguity both marked resolved with approver and date, and a decision record listing approved assumptions and no remaining blockers, ready to generate the service plan
All resolved. Each resolution logs approver + date; blockers clear to “ready to generate the service plan.”
Each decision becomes an audit trail
WhoApprover
WhenDate
FromOriginal source
WhatSelected resolution
LeftRemaining blockers

Source preserved: the original contract text and Sweep’s inference stay attached to every override, so the audit trail survives the operator’s edits.

09 — Generating & adjusting the service plan

The approved contract becomes a plan that can still be challenged

The generated plan isn’t a black box. The operator can inspect zones, task counts, frequencies, weekly labor, equipment, access notes, daily distribution, and nightly crew capacity — across three views of the same 36 hours.

Sweep service plan Zone plan view: a warning that Tuesday exceeds nightly crew capacity, and a table of five zones with tasks, nightly frequency, estimated weekly hours, priority, equipment and access notes, totalling 36 hours which fits the 36 contracted Zone plan. The weekly total fits the contract (36.0 / 36.0 h) — yet a banner still warns that one night exceeds crew capacity.
The interaction · moving a periodic task between days

A plan must be feasible at more than one level

Sweep Weekly schedule before edit: Wednesday flagged at 7.8 hours over the 7.6 hour nightly crew capacity, with day columns each showing nightly core work plus periodic tasks and arrow controls to move a task between days
Before. Wednesday peaks at 7.8 h — over the 7.6 h nightly capacity.
Sweep Weekly schedule after moving a task: the full-floor detail vacuum has shifted to Monday, and the over-capacity flag has moved, with an unsaved-changes indicator and an Undo control
After. Move a periodic task to a lighter day; the warning follows the math, with Undo.

The takeaway. The weekly total can fit the contract while a single night still exceeds crew capacity. Sweep evaluates both total labor and daily feasibility — matching the contract total doesn’t guarantee the plan works each night.

Sweep Labor allocation view: a Labor by zone horizontal bar chart across five zones summing to 36 hours per week against 36 contracted, next to a Plan decisions panel listing the approved biweekly dusting decision and the confirmed service window
Illustrative reconstruction from the prototype
Contracted / week
36.0
Estimated / week
38.0
Revised approved
36.0
Peak night
7.8/n

Values reconstructed from the prototype to illustrate the design intent — not measured production data. The red mark shows the 7.6 h/night capacity a compliant weekly total can still breach.

Sweep Labor allocation with the plan approved: a completed banner noting the service plan is approved and staffing is next, the labor-by-zone chart at 36 of 36 hours, and a Plan decisions panel, with a Continue staffing action Approved. Sign-off carries the plan’s decisions forward and unlocks staffing — the plan stops being editable-in-place and becomes the launch baseline.
10 — Staffing & launch readiness

Planning is incomplete until the right people can execute it

Staffing recommendations weigh role, availability, certification, experience, travel time, weekly hours, overtime risk, and coverage gaps. Crucially, Sweep exposes its imperfections rather than hiding them.

Sweep Staffing tab: a launch roster of Sweep-picked crew for supervisor, four cleaners, an open floor-care specialist role, and an on-call backup — with a Friday gap and an overtime-risk flag — beside a coverage and overtime panel showing 6 of 7 roles filled and notes on limitations
Launch roster. 6 of 7 roles filled — the gaps are labeled, not buried.
Imperfections made visible
!One role (floor-care specialist) remains open. !A Friday coverage gap where a cleaner works Mon–Thu only. !The on-call backup carries overtime risk. !A supervisor may temporarily dual-role. !Certification depth on site is limited.
Sweep candidate-assignment drawer for the floor-care specialist role: a comparison card for Lucia Chen showing availability, certification, experience, travel, weekly hours and low overtime risk, marked Sweep recommends, with an Assign button Candidate comparison. Assigning a role opens a drawer that compares candidates on the exact factors the recommendation used — availability, certification, experience, travel, hours, overtime.

Then staffing connects to launch readiness

Security badges, loading-dock procedure, client walkthrough, team acknowledgements, client dependencies, overdue blockers, and monitored launch risks all become tracked tasks — carried forward from the decisions before them.

Sweep Readiness tab: 7 of 11 launch tasks complete with a progress bar, task rows for security badges awaiting client, an overdue loading-dock procedure, an unscheduled client walkthrough and pending team acknowledgements, beside a monitored-risks panel carried from staffing
Readiness checklist. Status is explicit — awaiting client, overdue, unscheduled — and monitored risks carry over from staffing.
Sweep Readiness task expanded: a security-badges task showing a Why it matters explanation, a Next action, a pre-drafted follow-up message to the client with a Send message button, and a history of prior requests
More than a flag. An expanded task explains why it matters, proposes the next action, drafts the message, and keeps the history.
11 — Edge cases & responsible automation

Designing for the ways document analysis and plans fail

Group A · Document & analysis failures
Unsupported file format
Interrupted upload
Missing contract — continue without one
Low-confidence extraction
Conflicting contract clauses
Outdated contract version
Group B · Operational & planning failures
Weekly labor fits, but one night exceeds capacity
Required certification is unavailable
Candidate declines the assignment
Client dependency remains unresolved
Service window changes after staffing
Plan is approved with a monitored risk
The boundary of responsibility

Sweep can organize evidence, surface risks, model trade-offs, and recommend actions. It should not silently approve contractual interpretations, make irreversible staffing decisions, or hide uncertainty from the operator. The human stays accountable; the system stays legible.

12 — Proposed validation plan

What I’d test before trusting the workflow

No testing has been run. This is a proposed plan — 5–7 commercial-cleaning operations managers, site-launch coordinators, or workforce planners, think-aloud on the prototype.

Proposed tasks
T1Add a new commercial site from the provided information.
T2Upload a valid contract and recover from an upload error.
T3Explain which findings came from the contract and which were inferred.
T4Resolve the labor variance while staying within contracted hours.
T5Confirm or edit the inferred service window.
T6Identify why the generated weekly schedule isn’t operationally feasible.
T7Move a periodic task to resolve nightly capacity.
T8Assign a floor-care specialist, then find the most urgent launch blocker.
Research questions
·Can users distinguish facts, inferences, and recommendations? ·Do they understand the operational consequence of each risk? ·Do recommendation options support decisions without feeling authoritative? ·Can users trace a plan decision back to the contract? ·Can they recover from document and staffing failures?
Success signals · behavioral, not invented percentages
Task completion without assistance Correct read of confidence & source Can explain the chosen trade-off Locates unresolved blockers Recovers from an induced error Understands what ran automatically
13 — Reflection

What designing an accountable operations workflow taught me

Automation should expose its seams. The product is more trustworthy when users can see exactly where extraction ends and inference begins — the low-confidence flag is a feature, not an apology.

Enterprise workflows are decision systems. The most important work wasn’t styling the dashboard — it was structuring how risks, approvals, dependencies, and consequences move through the product.

A plan must be feasible at more than one level. Matching the weekly contract total doesn’t guarantee the staffing plan works each night; the workflow has to check both.

Source preservation changes behavior. Keeping contract language attached to every override encourages careful decisions and creates an audit trail worth trusting.

The workflow should end in action. A useful operations product doesn’t stop at analysis — it converts the approved decision into schedules, staffing requirements, messages, tasks, and launch readiness. If I continued, I’d run the validation plan above, starting with T3, the fact-vs-inference comprehension task the whole concept depends on.

← Back to all work