Planning UAT
Planning UAT means deciding, before user acceptance testing begins, which business processes users will check, who takes part, what must be true before they start, which environment and data they will use, and when. The result is a UAT plan: a short test plan for the acceptance test level, agreed by the business and by IT.
Example: the UAT plan for a new expense-claims module names four processes to accept (submit, approve, pay, export), seven users who will test them over six working days, the condition for starting, the environment and data, and the finance director, who decides.
Why it matters
The scarcest resource in UAT is the users’ time: accountants, nurses or branch staff released from full-time jobs for a few days. Without a plan those days are lost to missing accounts, meaningless data, an unstable build or nobody to answer questions; users stop coming, and acceptance is decided on thin evidence.
For a tester, planning is most of the UAT work: the business judges the result, and the QA side makes judging possible. A gap found while planning costs a meeting; found on the first UAT morning, it costs a day of every participant’s time.
Scope: business processes, not screens
Write the scope as the business processes to accept and the roles that perform them, each traced to its acceptance criteria. "Test the claims screen" is not a scope; "an employee submits a claim, a line manager approves it and finance pays it" is. Each process later becomes UAT scenarios, the subject of the next lesson.
UAT is not a second round of system testing: field validation and boundary values were checked at system level. When time is short, let product risk choose: processes with the highest business impact or the most change come first.
- Out of scope, stated explicitly: for example performance, unchanged reports or features for a later release.
- Planned elsewhere: operational acceptance (backup, restore, monitoring) has its own owner; the UAT plan refers to it.
Try it: Risk-Based Test Generator Try it: Requirements → Test Cases
Participants: business roles and QA roles
Name participants for each role in scope: people who do the work every day, experienced and new, not only managers or super-users who know the workarounds. Add the business process owner, who decides, and confirm with each participant’s manager that their time is released.
The ISTQB Foundation syllabus says acceptance testing is ideally performed by the intended users. The QA side prepares and supports but never accepts for the business; if testers run the scenarios because users have no time, that is more testing by testers, not user acceptance.
- Business process owner, often the product owner: approves scope and priorities, and decides acceptance.
- Business users: perform the scenarios in their own role and judge whether the system supports their work.
- UAT coordinator, often the QA lead (in some teams a business analyst): writes the plan, runs the schedule and the daily triage.
- Testers: draft scenarios with users, prepare environment, data and accounts, support users and confirm fixes before users retest.
- Developers and operations: fix defects and deploy agreed builds.
The schedule: work back from go-live
Build the schedule backwards from go-live, which is usually fixed, and book the users as soon as the dates are agreed. Avoid the business’s busy periods, such as month-end closing for a finance team. If the entry check fails, move the start or reduce the scope; never quietly shorten the users’ time.
- Preparation: environment, data, accounts and scenarios, from the day the scope is agreed.
- Entry check: a few days before the start, while there is still time to react.
- Briefing on the first morning: scope, how to record results and defects, whom to call.
- Execution with daily triage, then fixes, confirmation testing by testers and retesting by users.
- Sign-off, then release preparation.
Environment, data, entry and exit criteria
The UAT environment should resemble production as closely as the project can afford: the same configuration, roles, permissions and integrations, or agreed simulators. Keep it separate from system testing and deploy new builds only at agreed times, so that a scenario passed on day 2 is not silently invalidated on day 3.
Data must make sense to users: realistic employees and approval limits, and records already in the states the scenarios need, such as a claim awaiting approval. Masked production data still needs the personal-data protection from the lesson on test data; synthetic data is safer, and users can help make it realistic. Give each participant their own account, never a shared one, so every result shows who did it.
Entry criteria turn this preparation into a gate. The ISTQB syllabus groups typical entry criteria into available resources, available testware and the initial quality of the test object, the first three items below. The plan also states the exit criteria the business owner will decide against at the end of UAT, and when sessions are suspended and resumed:
- Initial quality: system testing exit criteria met, no open Blocker or Critical defect in scope, smoke test passed on the UAT build.
- Resources: environment and data ready, every account tested, participants’ time confirmed.
- Testware: acceptance criteria agreed, scenarios reviewed by the business, defect reporting ready.
- Exit criteria: every planned scenario executed, no open Blocker or Critical defect, and every acceptance criterion met or covered by an agreed condition.
- Suspension and resumption: suspend a session when a blocking defect or an environment failure stops most scenarios; resume when a fixed build has passed the smoke test.
- Business side:1Agree the scopeProcesses and roles to accept, and their priority
Feeds: Processes and acceptance criteria
QA side:Trace and bound itEach process to its criteria; out of scope written down - Business side:2Name the peopleUsers for each role and the decision maker; their time released
Feeds: Names and available days
QA side:Plan the supportCoordinator, testers on hand, developers on call - Business side:3Fix the datesGo-live and the busy weeks to avoid
Feeds: The go-live date
QA side:Count back from go-liveSign-off, fix and retest, execution, briefing, entry check - Business side:4Describe the real workThe data and record states each process needs
Feeds: Data needs and roles
QA side:Prepare environment and dataProduction-like, stable build, protected or synthetic data, one account each - Business side:5Confirm readinessScenarios reviewed, users available for the whole window
Feeds: Evidence for each entry criterion
QA side:Run the entry checkSystem test exit criteria met, smoke test passed, accounts testedGateFeeds back: Not met: move the start or reduce the scope
Then:UAT execution starts only when every entry criterion is met
Illustrative split: in some teams a business analyst coordinates, and the steps overlap in time.
Worked example: a UAT plan for expense claims
For the expense-claims module, the QA lead drafts the plan with the finance director and the product owner. Days are working days counted from its approval; go-live is on day 22.
- Scope: submit with receipts, approve or reject, pay, nightly export to accounting. Out of scope: mileage claims (next release), backup and restore (operational acceptance).
- People: three employees, two line managers, two finance officers; the finance director decides; the QA lead coordinates.
- Environment and data: linked to the accounting system’s test instance; 60 synthetic employees with managers and approval limits; claims in every status; seven personal accounts.
- Entry: the three groups of criteria above, checked against evidence on day 8.
- Exit: every planned scenario executed, no open Blocker or Critical defect, and every acceptance criterion met or covered by a condition the finance director agrees; a session is suspended if a blocking defect stops most scenarios and resumed on a fixed build that has passed the smoke test.
- Schedule: preparation days 1–10, briefing and execution days 11–16, fixes and retests 17–19, sign-off day 20, release preparation day 21, all clear of month-end closing.
- Risk: a finance officer is on leave on days 15–16, so a named stand-in is briefed too and gets an eighth account.
Common mistakes
- Writing the scope as screens, or repeating the system test suite, instead of business processes and roles.
- Inviting only managers or super-users, so the people who do the work every day never try the system.
- Sharing an unstable environment where new builds arrive at any time.
- Leaving data and accounts to the first morning, or copying production data without protecting personal data.
- Leaving no time for fixes and retests, so the date is met only by skipping scenarios.
The QA perspective
UAT planning starts when the release date is set, not when system testing ends. The QA lead usually drafts the plan; the business process owner approves the scope, participants and dates. Ask early: which processes matter most, who decides, which weeks are impossible for the business, and whether any production data may be used.
Write names and dates, not just roles. Track the entry criteria as a checklist with an owner for each item, and treat the entry check as a real decision: if the build or the data is not ready, say so with evidence and propose a new start date.
Practice exercise
Plan UAT for clinic appointment booking
A clinic group is releasing online appointment booking: patients book, change and cancel on the website, receptionists confirm bookings and register arrivals, and doctors see their daily list. Go-live is fixed for working day 25 from today; system testing should end on day 12. Reception is busiest on the first working day of each week, and call-centre staff can act as patients. Write a one-page UAT plan.
- Write the scope as processes and roles, with at least one item out of scope.
- Name the participants, the decision maker and the QA side’s tasks.
- List the environment and data needs and the entry criteria.
- Build the schedule backwards from day 25.
Show the model answer
Scope: patients book, change and cancel appointments; reception confirms bookings and registers arrivals; doctors see the day’s list. Out of scope: online payment (a later release) and server failover (operational acceptance).
Participants: three receptionists from two branches, two doctors, and two call-centre staff acting as patients. The head of clinic operations decides; the QA lead coordinates; a tester supports the users each day; a developer is on call.
Environment and data: linked to the clinic system’s test instance, with messages sent only to test phones; synthetic patients and doctors’ schedules with free and full slots; one account per participant. Real patient records are health data, which the PDPL classes as sensitive, and stay out of UAT.
Entry criteria: system testing exit criteria met, no open Blocker or Critical defect in booking, smoke test passed, accounts and test phones checked, scenarios reviewed by the head of operations.
Schedule: preparation from day 1, alongside system testing; a readiness review of environment, data and accounts on day 10; the final entry check on day 13, after system testing ends; briefing and execution days 14–18, with receptionists’ sessions kept off the first working day of the week; fixes and retests 19–22; sign-off day 23; release preparation day 24. If system testing slips, cut the scope or move go-live, not the users’ days.
Frequently asked questions
Who writes the UAT plan: QA or the business?
Usually a QA lead, test manager or business analyst drafts it, because they know what preparation is needed. The business process owner approves it, because the scope, the people and the dates are commitments of the business. A plan the business has not agreed to is a wish list.
Is the UAT plan a separate document from the test plan?
It can be either. On a large project it is often a separate test plan for this test level; in a small or agile team it may be a section of the main test plan or a page in the team’s wiki. The content is what matters: scope, participants and roles, entry and exit criteria, environment, data, schedule and how defects are handled.
Can UAT run in the staging environment used for system testing?
It can, if the environment is production-like and the team agrees to freeze it for the UAT window. The risk is sharing: system testers deploying fixes or resetting data in the middle of a user’s scenario. If you share it, write the rules into the plan: who may deploy, when, and who resets the data.
What if users cannot give the planned days?
Treat it as a project risk and raise it with the business process owner early. The options are fewer processes in scope, more participants in shorter sessions, or a later date. Replacing users with testers is not one of them, because the users’ judgement is what UAT is for.
References
- ISTQB Certified Tester Foundation Level (CTFL) v4.0The foundation syllabus of software testing: test levels and types, test design techniques, test management and tools.
- Certified Tester Acceptance Testing (CT-AcT)ISTQB's specialist syllabus on acceptance testing: user, contractual and regulatory acceptance testing, alpha and beta testing, and how testers work with product owners and business analysts.
- ISO/IEC/IEEE 29119-3:2021 — Software and systems engineering — Software testing — Part 3: Test documentationTemplates and content for test documentation — test policy, strategy, plan, status and completion reports, incident reports.
- Personal Data Protection Law (English translation)The Saudi law governing personal data — why test environments should use synthetic data rather than copies of real customer records.
Practise with Mutqan tools
Score features by likelihood and impact, then generate a prioritised risk-based test plan.
Convert a list of numbered requirements into traceable test cases with a requirement-to-test matrix.
Generate fake employee records: employee id, department, job title, salary, hire date and manager.
One-stop factory for synthetic test data: users, customers, companies, addresses, numbers, dates and strings in JSON, CSV, SQL or XML.
Add or subtract days, weeks, months, years, hours and minutes from a date.
Go deeper
Your progress on this topic
Not started
Mark the topic complete when you have studied it and done the exercise.
Sign in to track your progress
Mark topics complete, continue where you left off and unlock specialisation exams.