Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 1 of 6

Non-functional requirements that can be tested

9 min

Listen to this lesson

0:00 / 5:07

Functional tests prove the system does the right thing. Non-functional tests prove it does it fast enough, at the volumes the business really runs, inside the time the business has, and that it can be operated and recovered when something breaks. On SAP programs these tests are often left until late, run once, and reported as "performance OK." That is not evidence. Evidence starts with requirements you can measure.

From vague to measurable

A requirement such as "the system must be fast" can never fail, so it can never pass. A testable non-functional requirement (NFR) names the process, the measure, the target, the percentile and the conditions under which it applies. The conditions matter most: a sales order that saves in one second for one user tells you nothing about the last business day of the quarter.

An NFR only becomes testable once it names a process, a measure, a percentile target, conditions and an owner who will accept the result.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-306
VagueTestable
Order entry must be fast95% of sales order saves complete within 2 seconds with 300 concurrent users and month-end order volume
MRP must run overnightMRP for plants 1710 and 1720 completes within 90 minutes, starting 01:00, with current production data volumes
Billing must be done before the morningThe billing run for all deliveries goods-issued by 22:00 completes by 05:00, including output
Reports should not be slowThe open AR overview for company code 1710 returns within 5 seconds for 95% of calls at 50 concurrent finance users
The system must be availableDatabase takeover to the secondary completes and users can log on again within the agreed recovery time objective

Contoso Motor Co. NFRs before and after rewriting. The targets are Contoso's own; yours come from your business.

ProcessWhich business step: save sales order, post goods issue, run MRP
MeasureResponse time, throughput per hour, elapsed batch time, recovery time
Target and percentile2 seconds for 95% of steps; not an average
ConditionsConcurrent users, data volume, time of day, other load running
OwnerThe process owner who agreed the target and will accept the result
The five parts of a testable non-functional requirement.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-306

Kinds of non-functional test

Performance testing is a family. The ISTQB performance testing syllabus treats load generation, test types, metrics and results analysis as separate skills; for SAP programs the useful types are:

  • Load test: the expected peak workload (for Contoso, month-end) runs against the system for long enough to stabilize; check targets.
  • Stress test: push beyond the expected peak to find where and how the system degrades.
  • Volume test: run processes against production-sized data, for example a full year of journal entries, to expose growth-sensitive code and reports.
  • Endurance (soak) test: hold a realistic load for hours to find memory growth, lock build-up and queues that only appear over time.
  • Batch window test: run the real job chain with real volumes and measure it against the business deadline.
  • Operational acceptance test: prove the system can be monitored, backed up, restored and failed over by the people who will run it.
Each kind of non-functional test answers a different question, so one "performance OK" run cannot stand in for the others.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-306
Load and stress testsPeak users on realistic data; find limits
Month-end rehearsalPeak users and full volumes together: the closest thing to real life
Functional testsLow load, small data: no performance evidence
Volume and batch testsFull data, few users: reports, MRP, billing runs
Where each test type sits. Only the top-right box resembles Contoso's last business day of the quarter.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-306

What would you do?

Contoso's order-to-cash design document says: "Sales order performance must be acceptable." The sales process owner owns the process, and Maria is the order-to-cash key user. What should Priya do?

Key points
  • A testable NFR names the process, measure, target, percentile, conditions and owner.
  • Load, stress, volume, endurance, batch window and operational acceptance tests answer different questions.
  • Use percentiles rather than averages, and production-like data and concurrency.
  • Process owners agree targets; testers and Basis measure against them.

Check your understanding · not graded

Lesson check

  1. 1. Which requirement is testable?

  2. 2. Which test holds a realistic load for hours to find memory growth or queue build-up?

  3. 3. Why are percentiles better targets than averages?

  4. 4. Who should agree the target in a business NFR?