Create your own
Lesson illustration

Translating Business Goals into Measurable Quality Scenarios

Hello again. In the previous lessons, you framed the campaign-checkout initiative as a business problem, then identified the stakeholders, confirmed constraints, and recorded the unknowns that could change a design decision.

Now we turn broad expectations—“handle campaign traffic,” “do not lose orders,” “reduce support effort”—into statements that an architecture can be evaluated against. This is a core Staff-level skill: before recommending services, databases, or deployment patterns, make success concrete enough that product, operations, and engineering can challenge and test it.

Plan for about 45 minutes: two short readings, a focused video segment, and a worked set of quality-attribute scenarios for the checkout case.


From business outcome to architecture driver

A quality attribute is a measurable or testable property that describes how well a system satisfies stakeholder needs. Availability, performance, security, reliability, modifiability, and interoperability are familiar examples.

A functional requirement might say:

A customer can submit an order.

A quality-attribute requirement adds the conditions that matter:

During the campaign peak, a customer submitting an order receives an unambiguous outcome within an agreed time, without duplicate confirmed orders.

The second statement drives architecture. It forces questions about load, dependencies, data correctness, timeouts, operational visibility, and recovery. The first does not.

With Spring Boot microservices, it is easy to begin with implementation-shaped statements such as “the checkout API should be fast” or “we need retries.” At Staff level, begin one layer higher: which user outcome is threatened, under what conditions, and what evidence will show that it is protected?

[PDF] Eliciting and Specifying Quality Attribute Requirements

Read this SEI presentation by Rob Wojcik for the definition of quality attributes, the problem with vague requirements, and the scenario structure used in architecture workshops.

Start with the slide “What are Quality Attributes?” and read the definition and examples. On the later slide about problematic requirements, note why vague quality statements cannot guide a design or a test. Then read the slides under “Step 5: Scenario Brainstorming,” especially the three scenario types. Finish with “Step 8: Scenario Refinement,” where the six-part structure is introduced. Focus on the distinction between a desired behavior and a response measure that proves the behavior occurred.

A useful rule:

A quality attribute is not “performance.” It is a specific, important behavior under stated conditions, with a measurable result.

Compare these:

Weak statementWhy it failsScenario direction
“Checkout must have high performance.”No journey, workload, threshold, or user impact is defined.During a confirmed peak load, order submission completes within a specified latency.
“The system must be highly available.”“Highly” means different things to different stakeholders.If a non-critical dependency fails, the customer still receives a clear order status and the core checkout flow remains available to an agreed percentage of users.
“Avoid duplicate orders.”Important, but it does not identify the triggering situation or evidence.When a customer retries after a timeout, the system records at most one confirmed order and one payment attempt for the same idempotency key.
“Support should be able to investigate failures.”It does not define what “able” or “investigate” means.After a payment timeout, a support agent can find the order state and correlated payment attempt within three minutes without engineering intervention.

Notice that a quality scenario is not an architecture decision. “Use Kafka,” “add Redis,” “deploy across regions,” and “install a circuit breaker” may later be options. They are not requirements. A scenario describes the behavior a suitable option must support.


The six-part scenario grammar

The SEI scenario model gives you a compact way to turn a goal into an evaluable statement:

  1. Source — who or what causes the event?
  2. Stimulus — what happens?
  3. Environment — under what conditions does it happen?
  4. Artifact — which part of the system is affected?
  5. Response — how should the system behave?
  6. Response measure — how will success be measured?
The stimulus-response model places a source, stimulus, affected artifact, expected response, and response measure inside a defined environment. Together, these fields make a quality requirement testable rather than aspirational.

A compact sentence template is:

In [environment], when [source] produces [stimulus] affecting [artifact], the system [response], measured by [response measure].

The response measure is where vague ambition becomes operational. It should typically contain a threshold, a time window, a population or workload, and a method of observation.

For example:

During confirmed campaign-peak traffic, when authenticated customers submit checkout requests to the checkout journey, the system returns an unambiguous accepted, declined, or pending result. The response time is no more than two seconds over a 30-minute peak-load test.

The exact target—two seconds here—is not something an engineer should invent alone. It is a provisional value until validated against customer tolerance, revenue impact, expected workload, technical evidence, and cost.

The environment prevents misleading requirements

The same response may be acceptable in one environment and unacceptable in another:

  • Normal business load: an analytics report may finish in 30 seconds.
  • Campaign peak: checkout must remain responsive under high concurrency.
  • A dependency outage: a payment result may be temporarily pending, but must not be falsely reported as successful.
  • A production deployment: user-facing checkout requests may need continuity while a version changes.
  • A planned growth change: the system may need to add capacity without a long manual reconfiguration effort.

This is why “the checkout API responds in two seconds” is incomplete. It leaves open the most important question: two seconds under which conditions?


Start with the user objective, not the service name

Business goals usually refer to outcomes: capture revenue, retain users, reduce risk, meet a contractual commitment, or enable a new market. They rarely say which internal service deserves the strictest requirement.

The more reliable path is:

  1. identify the user objective;
  2. identify the critical step within that objective;
  3. identify how failure of that step harms the business goal;
  4. write quality scenarios around that step.

For campaign checkout:

LevelExample
Business goalCapture high-value campaign demand without increased support burden or payment errors.
User objectiveBuy a selected item.
Critical stepSubmit order and receive a trustworthy outcome.
Failure impactCustomer abandons purchase, retries, contacts support, or is charged incorrectly.
Quality attributes likely involvedPerformance, availability, reliability, data integrity, recoverability, operability.

Product SRE, improving reliability of services

This Google SRE article connects reliability work to what users are actually trying to accomplish. Read it to keep the architecture focus on critical journeys rather than individual service dashboards.

In the section “2. Model the Product,” read the explanation of user objectives and steps. Then move to “Product SLOs” and read the connection between user steps and measurable objectives. For this lesson, use the idea to choose the right journey and step. Later, when you study reliability in depth, service-level objectives will provide an ongoing production measurement mechanism for selected availability and latency scenarios.

A checkout system may contain an Order Service, Inventory Service, Payment Adapter, notification publisher, and database. But “Payment Adapter availability” is not automatically the most important measure. If a payment-provider outage can be handled by recording a clear pending state and reconciling safely, the customer objective may still be partially protected. Conversely, a low-error Payment Adapter can coexist with a failing customer journey if the order-status flow is ambiguous.

This distinction prevents a common architecture mistake: optimizing component metrics while users still cannot complete the job that matters.


Three useful kinds of scenarios

Scenario brainstorming is more productive when you deliberately consider three forms.

1. Use-case scenarios: normal, important behavior

These describe the system while it is operating as expected, often under ordinary or anticipated peak load.

Example direction: Customers submit orders at campaign peak and receive a result within an agreed latency.

These often expose performance, throughput, usability, interoperability, and security requirements.

2. Exploratory scenarios: adverse or exceptional conditions

These ask what happens when something goes wrong: a dependency is slow, a database replica is unavailable, a request is duplicated, or capacity is exhausted.

Example direction: The payment provider times out, but checkout does not create duplicate charges or falsely claim that an order is confirmed.

These reveal reliability, availability, fault tolerance, recoverability, security, and operability requirements.

3. Growth scenarios: anticipated change

These describe how the system should accommodate a foreseeable change in scale, behavior, team structure, or integration.

Example direction: A new sales channel needs to submit orders through the existing public contract with a bounded implementation effort and no breaking change for current clients.

These often reveal modifiability, scalability, deployability, and interoperability requirements.

A scenario is worthwhile only if it protects a meaningful business outcome or reduces a material risk. Do not create a long catalog of generic “ilities.” A small, well-reasoned set around the critical journey is more useful than 40 unprioritized statements.


Worked scenarios for campaign checkout

The figures below are illustrative assumptions, not discovered facts. In a real initiative, the product lead, campaign lead, support lead, payments owner, and operations team would validate or replace them.

Scenario 1: Peak-load performance

ElementScenario
Business goalCapture campaign demand rather than losing customers to slow checkout.
Quality attributePerformance and throughput
SourceCampaign customers
StimulusCustomers submit checkout requests at the confirmed forecast peak rate.
EnvironmentThirty-minute campaign-peak period with the expected production traffic mix.
ArtifactThe customer checkout and order-submission journey.
ResponseThe system returns a clear outcome for each request without queueing customers indefinitely.
Response measureAt the validated peak rate, checkout response time is at most two seconds and is at most five seconds over the 30-minute test window.

Two details matter:

  • “Peak rate” must become an actual workload estimate, not an adjective. The traffic forecast from marketing and historical data are evidence sources.
  • Latency alone is insufficient. In a later scenario, you may need a separate measure for error rate, accepted request rate, or capacity headroom.

Scenario 2: Payment dependency failure and correctness

ElementScenario
Business goalPreserve payment correctness and avoid uncertain order outcomes that create support work and customer distrust.
Quality attributeReliability, recoverability, and data integrity
SourcePayment provider
StimulusThe provider returns errors or does not respond for three minutes.
EnvironmentCampaign peak while customers continue submitting orders.
ArtifactPayment and order-confirmation workflow.
ResponseThe system records a durable, unambiguous state—confirmed, declined, or pending—and safely reconciles pending work when the provider recovers.
Response measureNo duplicate confirmed orders or duplicate payment attempts occur for the same idempotency key; 100% of affected requests have a durable customer-visible state within five seconds; 99% of pending cases are reconciled within 15 minutes after provider recovery.

This scenario does not prescribe asynchronous messaging, a transactional outbox, retries, or a particular database. It sets the bar against which those later options will be judged.

It also exposes discovery questions from the previous lesson:

  • Does the payment provider support idempotency keys?
  • What does “payment accepted but response lost” look like in its contract?
  • Can the provider support reconciliation queries?
  • Which customer-visible states are acceptable to product and support?

Scenario 3: Operational supportability

ElementScenario
Business goalReduce manual investigation and avoid unnecessary engineering escalation.
Quality attributeOperability and diagnosability
SourceCustomer-support agent
StimulusA customer reports that checkout timed out and asks for the order status.
EnvironmentNormal operation or shortly after a payment-provider incident.
ArtifactOrder-status capability and operational telemetry across checkout and payments.
ResponseThe agent can identify the customer-visible state, order identifier, payment attempt, and next action.
Response measureFor 95% of such cases, a trained support agent reaches a definitive status within three minutes without direct database access or engineering escalation.

This scenario changes the architecture conversation. Logging “an exception occurred” is not enough; the system needs information that lets people answer a customer’s question safely. The eventual mechanism might involve correlation identifiers, structured logs, an internal status view, or workflow audit records—but those are design options, not the requirement itself.


Make measures defensible, not arbitrary

A target is credible when you can explain where it came from. Common sources include:

  • customer research or observed abandonment behavior;
  • existing latency, error, and support-ticket data;
  • a contractual obligation or compliance rule;
  • campaign traffic forecasts and historical peaks;
  • financial impact of downtime or delay;
  • capability limits of an external provider;
  • cost and operational constraints.

Non-Functional Requirements - FULL guide with REAL Examples

Watch this focused segment from “Non-Functional Requirements - FULL guide with REAL Examples” by Win The cloud. It illustrates that availability and resilience targets are negotiated with stakeholders and involve cost trade-offs, rather than being chosen by architecture preference.

Watch reliability trade-offs. Focus on the distinction between saying a system should run continuously and agreeing a realistic availability, recovery, and fault-tolerance target for specific capabilities. Treat the technology examples as possible later design responses; the central lesson here is the stakeholder negotiation behind the measurable requirement.

Be especially careful with the phrase “99.99% availability.” It may be justified for a revenue-critical order-submission step, but excessive for an internal reporting page. A stricter target has consequences: more infrastructure, more testing, more operational work, and sometimes more delivery time. The quality scenario makes that trade-off visible early.

Also separate a constraint from a quality scenario:

  • “The campaign launches on 1 November” is a delivery constraint.
  • “Checkout must remain usable during a deployment before campaign launch” is a deployability or availability scenario.
  • “Do not store cardholder data in the Order Service” is a security/compliance constraint.
  • “A customer cannot access another customer’s order status” is a security scenario that can be tested.

Both constraints and scenarios shape architecture, but they do different jobs.


A practical drafting routine

When creating your initial quality-attribute set, use this sequence:

  1. Copy the business outcome from your problem statement.
  2. Name the critical user objective and step.
  3. Describe a realistic normal, failure, or change stimulus.
  4. Specify the response without naming a technology.
  5. Add a measurable threshold, population, and time window.
  6. Label each number as confirmed, assumed, or unknown.
  7. Record the stakeholder who must validate it.

Before treating a scenario as ready for architecture evaluation, check that it answers these questions:

  • Can a tester, load test, production metric, operational drill, or code review determine whether it was met?
  • Is the environment explicit enough to prevent a misleading “pass”?
  • Is the affected artifact limited to a meaningful journey or responsibility?
  • Does the response protect the stated user or business outcome?
  • Have solution choices been kept out of the requirement?
  • Are uncertain measures visibly linked to a discovery action?

For a short workplace practice session, draft three scenarios around one real critical journey: one normal use-case scenario, one dependency-failure scenario, and one growth or operational-change scenario. Keep each to the six fields above, then mark every threshold as confirmed, assumed, or unknown. This produces useful material for both architecture reviews and Staff-level system-design interviews.


Key takeaways

  • Quality attributes describe measurable or testable properties of a system: how well it serves stakeholder needs.
  • A quality-attribute scenario has six parts: source, stimulus, environment, artifact, response, and response measure.
  • Start from business outcomes and critical user steps, rather than from service names or preferred technologies.
  • Use normal, adverse, and growth scenarios to expose different architecture drivers.
  • Keep requirements separate from solutions. “No duplicate payment attempts after a timeout” is a requirement; the mechanism is a later design decision.
  • Measures should be evidence-based and clearly labeled when they remain assumptions.

Next, you will prioritize competing architecture drivers using an explicit scoring method. That step matters because performance, correctness, operability, cost, delivery date, and security will rarely all demand the same design choice.

Can't find a good explanation? Sign up and we'll make it for you

Sign up