history Last updated

User acceptance testing answers a different question from system testing: not “does it meet the specification” but “can these people do their job with it”. That means real users, real tasks and real data shapes, and an acceptance decision that is defined before testing starts.

When to use it

  • Before go-live for anything with a business user population.
  • Before accepting a supplier’s delivery under contract.
  • When a process, not just a system, is changing — UAT is where process gaps surface.

What it must answer

  • Who accepts, on what basis, and what does “accepted with conditions” mean?
  • Which real business scenarios must be completable, by whom?
  • What environment and data do participants get?
  • How do participants raise problems, and how fast do they get answers?

Template

UAT Plan: <System>

FieldValue
Business owner (accepts)
UAT coordinator
Window
Environment
RelatedTest Plan v_, BRD v_

1. Objectives

What acceptance will and will not prove.

2. Participants

NameRoleScenariosTime committed

3. Scenarios

#Business scenarioParticipantData neededAcceptance condition

4. Environment and data

5. Entry criteria

6. Acceptance criteria

Including what “accept with conditions” requires.

7. Defect handling during UAT

Severity, response times, who decides.

8. Schedule

DayActivityWho

9. Sign-off

NameRoleDecisionDateConditions
  # UAT Plan: <System>

| Field | Value |
|---|---|
| Business owner (accepts) | |
| UAT coordinator | |
| Window | |
| Environment | |
| Related | Test Plan v_, BRD v_ |


## 1. Objectives
What acceptance will and will not prove.

## 2. Participants
| Name | Role | Scenarios | Time committed |
|---|---|---|---|


## 3. Scenarios
| # | Business scenario | Participant | Data needed | Acceptance condition |
|---|---|---|---|---|


## 4. Environment and data
## 5. Entry criteria
## 6. Acceptance criteria
Including what "accept with conditions" requires.

## 7. Defect handling during UAT
Severity, response times, who decides.

## 8. Schedule
| Day | Activity | Who |
|---|---|---|


## 9. Sign-off
| Name | Role | Decision | Date | Conditions |
|---|---|---|---|---|
  

Worked example

UAT Plan: Access Provisioning Service

FieldValue
Business owner (accepts)K. Ferreira, Head of People Operations
UAT coordinatorH. Ito
Window2026-11-17 to 2026-11-28
Environmentuat, refreshed 2026-11-14 with anonymised production data

1. Objectives

Prove that People Ops can run joiner, mover and leaver events without IT
involvement, that line managers can approve from a phone, and that Internal
Audit can answer an access question from the audit export unaided. It does not
prove performance or resilience — those are covered by the system test plan.

2. Participants

NameRoleScenariosTime committed
K. FerreiraHead of People Ops1, 2, 64h
T. BlomqvistPeople Ops administrator1–512h
Three line managers (rotating)Approvers330 min each
L. HaddadInternal Audit73h
D. AchebeService desk lead5, 84h

3. Scenarios

#Business scenarioParticipantData neededAcceptance condition
1Standard engineering joiner, start date in 10 daysT. BlomqvistAnonymised joiner recordAccess complete one working day before the start date, with no ticket raised
2Joiner with an unmapped job codeT. BlomqvistJob code with no bundleLands in the People Ops queue; administrator assigns a bundle and completes it without IT
3Joiner needing extra accessLine managerAs scenario 1 plus an additional entitlementManager receives the request on a phone and approves it in under 3 minutes
4Internal move between departmentsT. BlomqvistMover recordOld entitlements removed, new applied, no manual cleanup
5Leaver with immediate effectD. AchebeLeaver record dated todayAll non-batch entitlements revoked within 1 hour; the ERP exception appears on the daily report
6Bundle changeK. Ferreira—A bundle edit takes effect for new requests without an IT release, and does not alter pending requests
7Audit question: who granted X to Y on date Z, and under which rule?L. HaddadHistorical exportAnswered from the export in under 5 minutes, without engineering help
8Something goes wrong: a target system is downD. AchebeSimulated adapter outageA ticket is raised with the correlation ID, and other entitlements still apply

4. Environment and data

UAT runs on the uat environment, refreshed 2026-11-14 from a production copy
with names, email addresses and free-text justifications replaced by generated
values. Employee IDs are pseudonymised consistently, so managers, departments
and reporting lines still hang together — a randomised copy would make
scenarios 3 and 4 meaningless.

uat is connected to the vendor sandboxes, not to live target systems, so no
participant can grant real access by accident. It is shared with the Finance
reconciliation project; slots are booked (see section 10 of the test plan).

Two records were built by hand because the anonymised set contained no
employee without a line manager — the exact case scenario 2 needs. This is
noted in the test summary report, because it makes that scenario less well
evidenced than the rest.

5. Entry criteria

System test exit criteria met; zero open Sev-1; uat refreshed within 7 days;
participants trained (one 90-minute session on 2026-11-14).

6. Acceptance criteria

  • All eight scenarios completed with their acceptance condition met.
  • No Sev-1 or Sev-2 defect open at the end of the window.
  • Participants complete scenarios without IT intervention, except where the
      scenario explicitly involves the service desk.

Accept with conditions is permitted only where the condition is written
down with an owner and a date. “Accept with conditions” without a dated
remediation is a rejection.

7. Defect handling during UAT

Raised in the tracker with the UAT label; triaged twice daily at 10:00 and
15:00. Sev-1 gets a fix or a workaround within one working day, Sev-2 within
three. The business owner decides severity disputes, not engineering.

8. Schedule

DayActivityWho
2026-11-14Environment refresh, 90-minute training sessionH. Ito, all participants
2026-11-17Scenarios 1 and 2T. Blomqvist
2026-11-18 to 19Scenario 3, three managers rotatingLine managers
2026-11-20 to 21Scenarios 4 and 5T. Blomqvist, D. Achebe
2026-11-24Scenario 6K. Ferreira
2026-11-25Scenario 7L. Haddad
2026-11-26Scenario 8, simulated adapter outageD. Achebe, Platform
2026-11-27Defect fix window and re-testH. Ito, developers
2026-11-28Acceptance decisionK. Ferreira

Triage runs at 10:00 and 15:00 every working day of the window.

9. Sign-off

NameRoleDecisionDateConditions
K. FerreiraBusiness ownerAccepted with conditions2026-11-28ERP revocation latency: daily exception report to run from go-live, reviewed by People Ops; ERP fix tracked on the FY2027 roadmap. Owner: K. Ferreira, review 2027-03-31
L. HaddadInternal AuditAccepted2026-11-27—
  # UAT Plan: Access Provisioning Service

| Field | Value |
|---|---|
| Business owner (accepts) | K. Ferreira, Head of People Operations |
| UAT coordinator | H. Ito |
| Window | 2026-11-17 to 2026-11-28 |
| Environment | uat, refreshed 2026-11-14 with anonymised production data |


## 1. Objectives
Prove that People Ops can run joiner, mover and leaver events without IT
involvement, that line managers can approve from a phone, and that Internal
Audit can answer an access question from the audit export unaided. It does not
prove performance or resilience — those are covered by the system test plan.

## 2. Participants
| Name | Role | Scenarios | Time committed |
|---|---|---|---|
| K. Ferreira | Head of People Ops | 1, 2, 6 | 4h |
| T. Blomqvist | People Ops administrator | 1–5 | 12h |
| Three line managers (rotating) | Approvers | 3 | 30 min each |
| L. Haddad | Internal Audit | 7 | 3h |
| D. Achebe | Service desk lead | 5, 8 | 4h |


## 3. Scenarios
| # | Business scenario | Participant | Data needed | Acceptance condition |
|---|---|---|---|---|
| 1 | Standard engineering joiner, start date in 10 days | T. Blomqvist | Anonymised joiner record | Access complete one working day before the start date, with no ticket raised |
| 2 | Joiner with an unmapped job code | T. Blomqvist | Job code with no bundle | Lands in the People Ops queue; administrator assigns a bundle and completes it without IT |
| 3 | Joiner needing extra access | Line manager | As scenario 1 plus an additional entitlement | Manager receives the request on a phone and approves it in under 3 minutes |
| 4 | Internal move between departments | T. Blomqvist | Mover record | Old entitlements removed, new applied, no manual cleanup |
| 5 | Leaver with immediate effect | D. Achebe | Leaver record dated today | All non-batch entitlements revoked within 1 hour; the ERP exception appears on the daily report |
| 6 | Bundle change | K. Ferreira | — | A bundle edit takes effect for new requests without an IT release, and does not alter pending requests |
| 7 | Audit question: who granted X to Y on date Z, and under which rule? | L. Haddad | Historical export | Answered from the export in under 5 minutes, without engineering help |
| 8 | Something goes wrong: a target system is down | D. Achebe | Simulated adapter outage | A ticket is raised with the correlation ID, and other entitlements still apply |


## 4. Environment and data
UAT runs on the `uat` environment, refreshed 2026-11-14 from a production copy
with names, email addresses and free-text justifications replaced by generated
values. Employee IDs are pseudonymised consistently, so managers, departments
and reporting lines still hang together — a randomised copy would make
scenarios 3 and 4 meaningless.

`uat` is connected to the vendor sandboxes, not to live target systems, so no
participant can grant real access by accident. It is shared with the Finance
reconciliation project; slots are booked (see section 10 of the test plan).

Two records were built by hand because the anonymised set contained no
employee without a line manager — the exact case scenario 2 needs. This is
noted in the test summary report, because it makes that scenario less well
evidenced than the rest.

## 5. Entry criteria
System test exit criteria met; zero open Sev-1; uat refreshed within 7 days;
participants trained (one 90-minute session on 2026-11-14).

## 6. Acceptance criteria
- All eight scenarios completed with their acceptance condition met.
- No Sev-1 or Sev-2 defect open at the end of the window.
- Participants complete scenarios without IT intervention, except where the
  scenario explicitly involves the service desk.

**Accept with conditions** is permitted only where the condition is written
down with an owner and a date. "Accept with conditions" without a dated
remediation is a rejection.

## 7. Defect handling during UAT
Raised in the tracker with the UAT label; triaged twice daily at 10:00 and
15:00. Sev-1 gets a fix or a workaround within one working day, Sev-2 within
three. The business owner decides severity disputes, not engineering.

## 8. Schedule
| Day | Activity | Who |
|---|---|---|
| 2026-11-14 | Environment refresh, 90-minute training session | H. Ito, all participants |
| 2026-11-17 | Scenarios 1 and 2 | T. Blomqvist |
| 2026-11-18 to 19 | Scenario 3, three managers rotating | Line managers |
| 2026-11-20 to 21 | Scenarios 4 and 5 | T. Blomqvist, D. Achebe |
| 2026-11-24 | Scenario 6 | K. Ferreira |
| 2026-11-25 | Scenario 7 | L. Haddad |
| 2026-11-26 | Scenario 8, simulated adapter outage | D. Achebe, Platform |
| 2026-11-27 | Defect fix window and re-test | H. Ito, developers |
| 2026-11-28 | Acceptance decision | K. Ferreira |


Triage runs at 10:00 and 15:00 every working day of the window.

## 9. Sign-off
| Name | Role | Decision | Date | Conditions |
|---|---|---|---|---|
| K. Ferreira | Business owner | Accepted with conditions | 2026-11-28 | ERP revocation latency: daily exception report to run from go-live, reviewed by People Ops; ERP fix tracked on the FY2027 roadmap. Owner: K. Ferreira, review 2027-03-31 |
| L. Haddad | Internal Audit | Accepted | 2026-11-27 | — |
  

Common mistakes

  • UAT run by the project team. If a tester is the person who built or specified it, they will not find the process gaps — they will unconsciously avoid them.
  • Scripted click-through instead of business scenarios. “Click new, enter name, click save” tests the software. “Onboard this engineer starting in ten days” tests the process.
  • Acceptance defined after testing. The criteria must exist before, or the decision becomes a negotiation about how tired everyone is.
  • “Accepted with conditions” as a rubber stamp. Every condition needs an owner and a date, otherwise it is an unrecorded defect.
  • Synthetic data only. Real data shapes — long names, missing managers, historical anomalies — are exactly where UAT earns its cost.

Last updated 23 Aug 2026, 17:59 -0500. history