Skip to main content
Business Analysis

Writing User Stories That Survive Compliance Review in Regulated Industries

April 17, 2026
Writing User Stories That Survive Compliance Review in Regulated Industries

Agile teams in regulated industries inherit a tension that teams in other sectors rarely face. On one side, the user story discipline asks for small, negotiable, testable increments delivered quickly. On the other side, the regulator asks for a complete documented trail from obligation to tested outcome, available on demand, written in language that survives handover to successor teams. The tension is real but solvable. This post is about how.

We write this because we have seen dozens of financial services programmes adopt agile delivery and then produce user stories that either fail compliance review or collapse back into paragraph-long requirements dressed up as stories. Neither outcome is necessary. With a small amount of discipline at the point the story is written, user stories can serve both purposes without compromise.

Why stories struggle in regulated delivery

A user story is a placeholder for a conversation. It is deliberately thin on detail, designed to be fleshed out in refinement and clarified through collaboration. That design works well when the cost of ambiguity is a short rework cycle. It works poorly when the cost of ambiguity is a regulatory breach, because the audit trail does not reward conversations that happened in a standup.

The second structural problem is that stories are organised around user value, not around regulatory obligation. The story "as a compliance analyst, I want to see flagged transactions so that I can review them" contains no trace of the obligation that required the flag in the first place. Six months later, when an auditor asks why this functionality exists, the team has to reconstruct the reasoning from memory or secondary sources.

The fix is not to abandon user stories. It is to add three lightweight disciplines that preserve the trail without adding weight to the story itself.

Discipline one: the INVEST criteria, adapted

The INVEST criteria are well known. Independent, Negotiable, Valuable, Estimable, Small, Testable. In regulated delivery, we add a seventh letter that matters more than the others: Traceable.

Traceable means every story carries a link to the business requirement, regulatory obligation, or control objective that justifies it. The link does not need to be long. A field in Jira labelled "Regulatory Reference" pointing to the relevant DORA article, FCA handbook section, or internal policy identifier is sufficient. What matters is that the link exists and is populated at the moment the story is created, not backfilled six months later when an audit is imminent.

The practical consequence: a story without a traceability reference does not enter the backlog. This is a ticketing configuration, not a cultural campaign. The tooling enforces the discipline.

Discipline two: separate the story from the constraints

The second discipline is to write the story thin and move all regulatory constraints into a separate, referenceable place. The story captures the user value. The constraints capture what the implementation must satisfy regardless of how the story is delivered.

The pattern looks like this in practice:

Story: As a transaction monitoring analyst, I want suspicious activity alerts to display the full rationale for the flag so that I can disposition them within the required SLA.

Regulatory constraints linked from the story:

  • DORA Article 17 on incident classification
  • FCA SUP 15.3 on suspicious activity reporting timelines
  • Internal AML Policy v4.2 Section 6 on disposition documentation
  • Data retention policy requiring alert rationale to be stored for seven years

The story is short, testable, valuable. The constraints are comprehensive, stable and reusable across many stories that touch the same regulated process. This is the design pattern that keeps the backlog readable while preserving the audit trail.

Discipline three: definition of done includes evidence

The third discipline is to expand the definition of done so that "done" includes the evidence the regulator will want. For a non-regulated feature, done typically means merged, tested, deployed, accepted by the product owner. For a regulated feature, done also means the evidence pack is complete: the test scripts, the test evidence, the control effectiveness check, and the sign-off from the relevant second-line function.

The UAT test script library provides templates for the test evidence side of this, but the principle applies more broadly. If an auditor arrives the day after the story is closed and asks for evidence, the team should be able to produce it without reconstructing anything.

What a good regulated user story looks like

Here is a worked example from a payments programme under PSD3 scope.

Story

Title: Display strong customer authentication outcome in transaction audit log

Narrative: As a fraud operations supervisor, I want to see the SCA method and outcome recorded on every payment transaction record so that I can investigate disputed transactions and evidence our compliance with PSD3 Article 97.

Acceptance criteria:

  • The transaction audit log displays the SCA method used (for example biometric, OTP, device binding) for every payment above the exemption threshold
  • The log records the timestamp of SCA completion with millisecond precision
  • The log records the outcome (success, failure, timeout) and, for failures, the failure reason code
  • The log is immutable and retained for seven years per the retention policy
  • The log entry is queryable by transaction reference within two seconds at p95

Regulatory reference: PSD3 Article 97, internal PSD3 Compliance Plan section 4.3 Control reference: Control ID FRAUD-042 in the control framework Data owner: Head of Payment Operations Test evidence location: Jira test plan PAY-TP-0912

Notice what the story does and does not do. It is short and user-focused in the narrative. The acceptance criteria are observable, testable, and quantified. The regulatory and control references point to the authoritative sources without duplicating them. The test evidence location is pre-declared so the closing team knows where evidence must land.

Patterns that save time

Pattern one: the constraint library

Programmes that deliver against a specific regulatory regime (DORA, EU AI Act, Consumer Duty, Solvency II) should maintain a constraint library that stories reference rather than re-stating constraints each time. The library is a living document, versioned, owned by the regulatory change function, and linked from every relevant story.

The benefit compounds as the programme grows. Story 001 and story 437 both reference "DORA-17 incident classification constraints". When the regulator clarifies interpretation of Article 17, the constraint is updated in one place and every affected story surfaces in an automated query.

Pattern two: spikes for ambiguous regulation

Regulation is often ambiguous. The right response is not to embed the ambiguity in a story and hope it resolves during implementation. It is to run a spike, produce a decision memo, record it in the decision log, and reference the decision from every story that depends on the interpretation.

The decision log is the record that tells a future auditor why the firm interpreted a regulatory obligation a particular way, who approved the interpretation, and what alternatives were considered. Without it, the team is defending interpretation decisions from memory three years later.

Pattern three: epics aligned to control objectives

In regulated programmes, the epic level is often better aligned to control objectives than to user personas. "Strong customer authentication across the payment channel" is a useful epic because it corresponds to a regulatory and control framing. Stories under that epic are naturally cohesive, and coverage gaps show up as missing stories rather than missing functionality.

See our post on business rules catalogues for how to structure the rules layer that sits underneath these epics.

Common failure modes

Failure: the story without traceability

A story reaches the sprint with no regulatory reference and no control reference. It gets delivered. The audit review finds a control with no evidence. The cost is the time to reconstruct the link after the fact, plus the loss of confidence from the internal audit function. Fix: ticketing configuration that refuses to accept a story without a populated traceability reference for stories in regulated scope.

Failure: the story as hidden FRD

A story's acceptance criteria run to four pages, cover every edge case, and include implementation detail. This is an FRD hiding inside a story template. It defeats the purpose of the story format and is harder to review than a proper FRD would be. Fix: cap acceptance criteria at a reasonable length, push detailed specifications into a linked FRD or design document, keep the story itself thin.

Failure: "as a user I want..."

The laziest story anti-pattern is the generic "as a user" story. Regulated delivery requires specificity about the user role because the role determines permissions, responsibilities, and regulatory treatment. An analyst, a supervisor, a customer, and a senior manager have different rights and different evidence requirements. Write the role with precision.

Failure: missing non-functional criteria

Stories capture functional behaviour well and non-functional behaviour badly. In regulated delivery, non-functional properties (latency, retention, availability, data residency) are often regulated themselves. Fix: include the relevant non-functional criteria in the acceptance criteria, or link to the non-functional requirements specification that applies.

Failure: stories disconnected from the BRD

User stories are often treated as an alternative to formal requirements. In regulated programmes, they should be a complement. The BRD captures business intent, the stories deliver it, and the traceability matrix proves the trail. See our post on BRD vs FRD in regulated change for how the documents relate.

Tooling that helps without getting in the way

Jira with a well-configured story template handles most of this. The story template should have explicit fields for regulatory reference, control reference, data owner and test evidence location. The workflow should prevent a story from being marked done if those fields are empty or if the test evidence link returns 404.

For programmes at scale, Jira combined with a requirements management plugin (such as Polarion, Jama or requirement-tracking features in Azure DevOps) provides the traceability matrix natively. The business analysis service we provide uses whichever toolchain the client already operates; the discipline is tool-agnostic but tool-sensitive.

For external reference, the Scrum Alliance on user stories covers the general pattern, and the FCA Consumer Duty expectations provide a current example of what regulated scope looks like in practice.

The short version

Agile works in regulated industries. Stories work in regulated industries. What does not work is pretending that "as a user" stories written without traceability, constraints or evidence requirements will satisfy an auditor three years later. The discipline is cheap if you embed it at story creation. It is expensive if you try to retrofit it in response to an audit finding.

If you are about to scale agile delivery into a regulated environment, our business analysis service helps teams stand up the story discipline that protects the audit trail without slowing the delivery cadence. The BRD/FRD guide covers the upstream artefacts that the stories should connect to.

Ready to do the structural work?

Our AI Enablement engagements are built around the five pillars in this article. We start with a focused diagnostic, then redesign one priority workflow end-to-end as proof — including the data layer, decision rights, and governance machinery.

Explore the AI Enablement service
Monthly newsletter

More like this — once a month

Get the next long-form essay on AI enablement, embedded governance, and operating-model design straight to your inbox. One considered piece per month, written for senior practitioners in regulated industries.

No spam. Unsubscribe anytime. Read by senior practitioners across FS, healthcare, energy, and the public sector.