Features/MCP Workflows/Jira/Requirement change impact analysis

Requirement change impact analysis

The cost of a requirement change is everything downstream of it that nobody remembered. This traces the whole set from the model, says which passed tests are now invalid, and drafts the change request for you to approve.

JiraWrites · gated

The problem this solves

Impact is assessed from memory, by whoever is in the room. The obvious children get found; the trade study that scored options against the old value does not, and neither does the test that already passed and is now meaningless. The change goes through, and the gap surfaces months later as a verification failure or an interface argument with another team.

How it works

The full blast radius of a requirement change, drafted as a Jira change request. Traces hierarchy, allocation, verification, hazards, trade studies, interfaces and second-order effects, names which passed test runs are now invalid, and drafts the change request for your approval.

01
Take the change, if you know it
The requirement by ID and the intended new value. The set is sharper with the direction of the change, and it runs change-agnostic and says so if you do not know yet.
02
Trace seven ways
Hierarchy to full depth, allocation and the attributes constrained, verification, hazards, trade studies, interfaces, and second-order effects on anything sharing the same attribute or budget.
03
Assess the radius
How big, which section carries the real risk, whether it crosses a subsystem boundary and so needs another team, and whether it touches anything safety-related.
04
Draft, do not create
A full Jira change request with the impact set, suspect test runs, affected hazards and invalidated trade studies called out, plus proposed child issues. You approve before anything is created.

The prompt

You are producing the impact set for a requirement in the Dalus model
[model name] that the user is about to change, and then drafting a
Jira change request covering that set. You change nothing in the
model. You create nothing in Jira until the user approves the draft.

CONFIRM FIRST: which Dalus model, which requirement (by ID), which
Jira project. Also ask what the change is: the new value or intended
new wording. The impact set is sharper when you know the direction of
the change, but produce it anyway if the user does not know yet, and
say the analysis is change-agnostic. Ask anything else in the same
message, once.

TRACE THE IMPACT SET, each as its own section, each item naming the
model element and the relationship that put it there:
1. Requirement hierarchy: parents, children, and derived
   requirements, to full depth. State the depth reached.
2. Allocation: parts and connections the requirement is allocated to,
   and the attributes on those parts that the requirement constrains.
   Where the change is known and numeric, name attributes whose
   current values would violate the new value.
3. Verification: test cases and verification items covering it. Flag
   any that have already passed: those runs are now suspect and must
   be re-planned. Say explicitly which passed runs become invalid.
4. Hazards: any hazard whose mitigation includes this requirement.
   A change here is a safety change, so mark this section clearly if
   it is non-empty.
5. Trade studies: any study that scored options against the old
   value. A change may invalidate the decision, not just the score,
   so say which selected option depended on it.
6. Interfaces: connections whose flows or units the requirement
   governs, and the parts on the other side, since their owners will
   need to agree.
7. Second-order effects: requirements that are not directly related
   but constrain the same attribute or share the same budget, and
   would be affected if the design responds to this change. Mark
   these as second-order and explain the chain in one line each.

ASSESS: a short summary stating the size of the blast radius, which
of the seven sections carries the real risk, whether the change
crosses a subsystem boundary (and so needs another team's agreement),
and whether it touches anything safety-related. Where the model
cannot answer something, say so rather than implying the set is
complete.

DRAFT THE JIRA CHANGE REQUEST, do not create it yet:
- Summary naming the requirement and the change.
- Description: the current statement, the proposed change, the
  rationale if the user gave one, and the impact set as a structured
  list with model element IDs.
- Explicit sections for suspect test runs, affected hazards, and
  invalidated trade studies, since those are the ones a reviewer
  must see.
- Proposed child tasks or linked issues for each concrete piece of
  follow-on work: requirements to re-baseline, tests to re-run,
  interfaces to renegotiate, trade studies to revisit.
- Proposed links to existing Jira issues that already cover affected
  elements, rather than duplicating them.
- No assignees, no due dates, no estimates.
Show the full draft and ask whether to create it, create it with the
child issues, or stop.

NEVER: change the requirement, change any model element, or create
Jira issues before approval. If the user asks you to apply the change
in Dalus afterwards, treat that as a separate request and show the
exact model edits before writing.

Replace the [bracketed] placeholders with your model and project names.

Example output

Sections six and seven of a generated impact set: interfaces the requirement governs, including one that crosses a subsystem boundary and one that is not modelled at all, followed by a table of second-order effects with the chain explained for each.
Two of the seven sections. The interface list names the subsystem boundary the change crosses and who has to agree to it, and says plainly where the model has no connection to trace. Second-order effects carry the chain, so each entry argues for itself rather than appearing on a list.

What you get

Impact set in seven sections, each item naming the relationship that put it there
Passed test runs that are now invalid, listed explicitly
Blast-radius assessment, including subsystem and safety crossings
Drafted Jira change request with proposed child issues and links
Dalus + Jira

The change request is drafted and shown in full before anything is created, with proposed child issues for the follow-on work and links to existing issues that already cover affected elements rather than duplicates of them. No assignees, no due dates, no estimates. You choose to create it, create it with the children, or stop.

Nothing is written until you approve it. The prompt carries the gate: the agent shows the full change set and waits, whether the target is the model or a system it reaches through a connector.

Common questions

Does it apply the change to the model?
No. It changes nothing in the model, and creates nothing in Jira until you approve the draft. Applying the change in Dalus afterwards is a separate request, and the exact edits are shown before anything is written.
What if we do not know the new value yet?
It still runs. The impact set is change-agnostic in that case, and it says so rather than implying it has assessed a change it was not given.
What are second-order effects?
Requirements not directly related to the one changing, but constraining the same attribute or drawing on the same budget, which would be affected if the design responds to the change. They are marked as second-order with the chain explained in a line.