Software testing statement of work: what goes in it
Updated 2026-09-24
A software testing statement of work turns the chosen proposal into commitments. It should state the scope in and out, the deliverables with acceptance criteria, the team and key people, service levels, the environments and data the vendor will use, assumptions and dependencies on your side, the change control process, pricing, and what is handed over at exit. Write it from your RFP and the vendor's response, not from the vendor's standard template.
What to check
- Start from your RFP scope and the vendor's response, and list every promise in the response that must appear in the SOW.
- Write each deliverable with an owner, a due point and acceptance criteria you can check.
- Move every assumption in the proposal into a numbered assumptions list, and decide which ones you accept.
- Check that service levels have a measurement method and a remedy, not only a target.
- Confirm the SOW states that test code and assets live in your repository and belong to you.
- Make sure change control has a named approver on your side and a rate card for priced changes.
- Check the SOW against the master agreement so the two do not contradict each other.
Ask the vendor
- Which statements in your proposal are you not willing to put into the SOW, and why?
- Which of your assumptions, if they turn out wrong, would lead you to raise a change request?
- How will you evidence each deliverable so we can accept or reject it?
- Who are the key people for this SOW, and what happens if one of them leaves?
From proposal to commitment
A proposal describes what a vendor would like to do. A statement of work (SOW) describes what it must do. Everything that made you choose the vendor, such as named people, a test strategy, a reporting format, ownership of code, needs to move from the proposal into the SOW, or it is not a commitment.
FAR Subpart 37.6, on performance-based acquisition, asks that work statements describe required results in measurable terms rather than only how the work is done. That is a useful test for each SOW line: can you tell whether it was delivered?
Sections of a testing SOW
| Section | What it contains |
|---|---|
| Purpose and background | One paragraph on the product and the goal of the engagement |
| Scope in | Products, platforms, test levels and types, environments, activities |
| Scope out | Everything a reader might assume is included but is not |
| Deliverables | Each item with content, format, due point, owner, acceptance criteria |
| Team and key people | Roles, named key people, allocation, replacement terms |
| Service levels | Targets, measurement method, reporting, remedies |
| Environments, tools and data | What you provide, what the vendor provides, accounts, data rules |
| Assumptions and dependencies | Numbered list, with the effect if one fails |
| Change control | How changes are raised, estimated, approved and priced |
| Price and payment | Model, rates, milestones, invoicing evidence |
| Ownership and exit | Where assets live, who owns them, handover at end |
| Governance | Meetings, reports, escalation path |
Scope: in and out
Write scope as lists. For example:
In scope: functional and regression testing of the web app and iOS and Android apps; API testing of the public API; test automation for regression using the open-source framework agreed in the test strategy; test reporting per release.
Out of scope: penetration testing; load testing beyond smoke checks; testing of third-party payment pages; production monitoring.
A clear out-of-scope list prevents disputes more than anything else in the SOW.
Deliverables and acceptance
ISO/IEC/IEEE 29119-3 describes test documentation such as the test strategy, test plan, test completion report and defect reports. Use it as a checklist for which documents to require. For each deliverable, write how you accept it:
- "Test plan for release 1, covering the sections in Annex A, delivered within [N] working days of start. Accepted when reviewed and approved in writing by the Head of Engineering."
- "Automated regression suite for the checkout journey, in the buyer's repository, running in the buyer's CI pipeline, with a pass rate on a stable build agreed in the test plan. Accepted after a run observed by the buyer."
The contract clauses tool includes an acceptance clause you can attach.
Service levels
Each service level needs a target, a measurement method, a reporting frequency and a remedy. "Timely reporting" is not a service level. "Test completion report within [N] working days of the end of each release test cycle, measured from the cycle end date in the test management tool" is one. See SLA metrics that matter for which ones to choose.
Assumptions and dependencies
Proposals are full of assumptions: environments available by a date, test data provided, a stable build each sprint. Move every one into a numbered list. For each, state what happens if it fails: a change request, a revised timeline or no effect. Assumptions you do not accept should be removed before signing, not after the first change request.
Change control
State who can raise a change, how it is estimated, who approves it on your side, and the rates used. Work done before approval is at the vendor's risk. This keeps a narrow scope from turning into a stream of priced extras.
Ownership and exit
Write that test code, test cases, data and documentation are created in repositories and tools under your accounts from day one, and that IP is assigned to you under the master agreement. Add the handover list for exit. Test automation code ownership and exit planning cover the detail.
Check against the master agreement
The UK Model Services Contract, for example, keeps its core terms separate from the schedules that describe the services. Read the SOW next to your master agreement and remove anything in the SOW that weakens the master terms, such as a different liability cap or a vendor licence to reuse your test assets.
Use the RFP generator output as the starting point for scope and deliverables, since vendors already responded to it.
The selection path shows where the SOW sits: after evaluation and verification, alongside contract negotiation.
Tools for this
Questions buyers ask
- What is the difference between a SOW and the master agreement?
- The master agreement holds terms that apply to all work, such as liability, IP, confidentiality and data protection. The SOW describes one piece of work: scope, deliverables, team, price and timeline. Make sure the SOW does not quietly override the master terms.
- Should I use the vendor's SOW template?
- You can use its layout, but write the content from your RFP and the response you scored. A vendor template is written to protect the vendor's delivery risk; check every clause against what you selected.
- How detailed should the scope be?
- Detailed enough that a third party could tell whether a given activity is in or out. Lists of in-scope and out-of-scope items help more than long prose.
Sources
- ISO/IEC/IEEE 29119-3:2021 Software testing, Part 3: Test documentation, ISO/IEC/IEEE
- FAR Subpart 37.6: Performance-Based Acquisition, US Federal Acquisition Regulation
- Model Services Contract, UK Cabinet Office