Inferensys

Prompt

ADR Stakeholder Impact Analysis Prompt

A practical prompt playbook for using the ADR Stakeholder Impact Analysis Prompt in production AI workflows. Produces an impact matrix with affected parties, change severity, communication needs, and migration burden, including coverage checks for commonly overlooked stakeholders.
Wide-angle shot of a modern WeWork open floor plan with creative walls covered in AI system architecture diagrams, product team collaborating in standing desk area with industrial lighting.
PROMPT PLAYBOOK

When to Use This Prompt

Identify when to run a stakeholder impact analysis before finalizing an architecture decision record.

Use this prompt when a draft Architecture Decision Record (ADR) is stable enough to share but not yet approved. The primary job-to-be-done is preventing the most common governance failure in software architecture: surprising the teams who must operate, integrate with, or migrate under the new decision. The ideal user is an engineering lead, staff engineer, or architect who owns the decision and needs to communicate its blast radius before locking it in. Required context includes the full draft ADR text, a list of known stakeholder teams or roles, and any organizational context about team responsibilities, on-call rotations, and delivery schedules.

This prompt is designed for decisions that cross team boundaries. A database technology change, a new service extraction, an authentication framework migration, a logging standard mandate, or a deprecation of a shared internal API are all strong candidates. The prompt works by forcing the model to reason about who is affected, how severely, what communication they need, and what migration burden they carry. It produces a structured impact matrix rather than free-text commentary, which makes it suitable for attaching to the ADR as an appendix or using as a pre-review checklist. Do not use this prompt for decisions contained entirely within a single team with no external consumers, or for trivial changes where the impact is already obvious to all parties. It is also not a substitute for actually talking to stakeholders; it is a preparation step that makes those conversations more productive.

Before running the prompt, ensure the draft ADR includes a clear statement of the decision, the context that motivated it, and the options that were considered. If the ADR is vague about what is changing, the impact analysis will be vague too. After receiving the output, review it for missing stakeholders—the model can only identify parties you have described or implied in the input. Pay special attention to commonly overlooked groups: SRE teams inheriting new on-call surfaces, security teams needing to update threat models, compliance officers tracking audit controls, and product teams whose roadmaps depend on the affected systems. Use the resulting matrix to plan communication, schedule migration checkpoints, and update the ADR's consequences section before final approval.

PRACTICAL GUARDRAILS

Use Case Fit

Where the ADR Stakeholder Impact Analysis Prompt delivers value and where it introduces risk. Use these cards to decide if this prompt fits your current decision context.

01

Good Fit: Cross-Team Decisions

Use when: an architectural decision affects multiple teams, services, or business units. The prompt excels at surfacing hidden dependencies and communication needs across organizational boundaries. Guardrail: provide an org chart or team responsibility map in [CONTEXT] to improve coverage.

02

Bad Fit: Single-Team Local Decisions

Avoid when: the decision is contained within one team with no external interfaces. The prompt overproduces impact categories and invents stakeholders. Guardrail: use a lightweight ADR template instead. Reserve stakeholder analysis for decisions that touch shared services, APIs, or user-facing contracts.

03

Required Inputs

What you must provide: a draft ADR or decision summary, a list of known stakeholders or teams, and the system context diagram or service map. Guardrail: missing context causes the model to hallucinate stakeholders. Always include at minimum a team list and system boundary description in [CONTEXT].

04

Operational Risk: Overlooked Stakeholders

Risk: the model may miss compliance, security, or platform teams that are not explicitly mentioned in the input. Guardrail: run a coverage check after generation. Compare the output against a known stakeholder checklist. Add a human review step before distributing the impact analysis.

05

Operational Risk: Severity Inflation

Risk: the model may overstate change severity for minor interface adjustments, causing unnecessary alarm and meeting overhead. Guardrail: calibrate severity labels with explicit criteria in [CONSTRAINTS]. Example: 'Breaking API change = High. Additive field = Low. Internal refactor with no contract change = None.'

06

When to Escalate

Escalate to human review when: the decision involves regulatory compliance, data residency, security boundary changes, or user-facing breaking changes. Guardrail: the prompt output is a draft impact matrix, not a final communication plan. Always require sign-off from affected team leads before acting on migration burden estimates.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A ready-to-use prompt for generating a stakeholder impact analysis from an architecture decision record.

This prompt template is designed to be pasted directly into your AI harness. It takes a complete or draft Architecture Decision Record (ADR) and produces a structured stakeholder impact matrix. The prompt instructs the model to identify affected parties, assess change severity, define communication needs, and estimate migration burden. It also includes a specific coverage check for commonly overlooked stakeholders like SRE, security, and support teams.

text
You are an experienced software architect and organizational analyst. Your task is to perform a thorough stakeholder impact analysis based on the provided Architecture Decision Record (ADR).

## INPUT
[ADR_DOCUMENT]

## INSTRUCTIONS
1.  **Identify Stakeholders:** List every team, role, system, or external party affected by this decision. Go beyond the obvious engineering teams. Consider operations, security, support, product, sales, legal, and end-users.
2.  **Assess Impact:** For each stakeholder, determine the severity of the impact (High, Medium, Low) and describe the nature of the change (e.g., new workflow, API deprecation, schema migration, retraining required).
3.  **Define Communication Needs:** Specify what each stakeholder needs to know, the best channel for communication (e.g., email, team meeting, API changelog), and the recommended timing (e.g., at decision, before implementation, at release).
4.  **Estimate Migration Burden:** For stakeholders with a High or Medium impact, estimate the effort required to adapt (e.g., person-weeks, system downtime, data migration complexity).
5.  **Coverage Check:** Explicitly check for the following commonly overlooked stakeholders and include them if relevant: Site Reliability Engineering (SRE), Database Administrators (DBAs), Customer Support, Legal/Compliance, and Data Science/Analytics teams.

## OUTPUT_SCHEMA
Your response must be a single valid JSON object with the following structure. Do not include any text outside the JSON object.
{
  "decision_title": "string",
  "analysis_summary": "string (2-3 sentence executive summary of the overall impact)",
  "stakeholder_impacts": [
    {
      "stakeholder_name": "string",
      "impact_severity": "High | Medium | Low",
      "change_description": "string",
      "communication_needs": "string",
      "communication_channel": "string",
      "communication_timing": "string",
      "migration_burden_estimate": "string (provide if High or Medium severity, otherwise null)"
    }
  ],
  "overlooked_stakeholders_found": [
    {
      "stakeholder_name": "string",
      "was_initially_overlooked": true,
      "reason_for_inclusion": "string"
    }
  ]
}

## CONSTRAINTS
- Base your analysis strictly on the provided [ADR_DOCUMENT]. Do not invent stakeholders or impacts not implied by the text.
- If the ADR lacks sufficient detail to assess a dimension, set the relevant field to "Insufficient information in ADR" and note it in the analysis_summary.
- Be specific. Instead of "teams need to update things," write "Backend API teams must update service clients to use the new v2 endpoint and retire v1 calls by Q3."
- The `overlooked_stakeholders_found` list must only contain stakeholders that were not explicitly mentioned in the ADR but are clearly impacted.

To adapt this template, replace the [ADR_DOCUMENT] placeholder with the full text of your ADR. The prompt is designed for a single-turn generation task. For high-risk architectural decisions, the output JSON should be reviewed by a human architect or program manager before being used to drive communication plans. You can integrate this prompt into a CI/CD pipeline by adding a validation step that checks the JSON schema and flags any impact_severity of "High" for mandatory human review.

IMPLEMENTATION TABLE

Prompt Variables

Inputs the prompt needs to work reliably. Validate each before execution. Missing or malformed variables are the most common cause of brittle outputs in stakeholder impact analysis.

PlaceholderPurposeExampleValidation Notes

[ADR_CONTENT]

Full text of the architecture decision record to analyze

ADR-0042: Adopt PostgreSQL as primary OLTP store

Required. Must be non-empty string. Reject if under 200 characters or missing required ADR sections (Context, Decision, Consequences). Parse check for section headers before execution.

[STAKEHOLDER_CATALOG]

Known list of teams, roles, and systems that could be affected

Platform Engineering, Mobile SDK Team, SRE, Data Platform, Customer Support, Security

Required. Must contain at least 5 entries. Each entry should map to a real team or role. Null allowed only if prompt is configured for discovery mode. Validate against org chart or service registry if available.

[SYSTEM_BOUNDARY_CONTEXT]

Description of the system scope and boundaries relevant to the decision

Customer-facing API layer, authentication service, billing pipeline, and mobile clients

Required. Must be non-empty string. Should reference concrete system names, not generic categories. Reject if contains only vague terms like 'the platform' without specifics.

[CHANGE_SEVERITY_THRESHOLDS]

Definitions for low, medium, high, and critical impact levels

Low: no code or config change; Medium: config change only; High: code change required; Critical: data migration or API break

Required. Must define all four severity levels with actionable criteria. Reject if thresholds are circular or reference undefined states. Schema check: object with low, medium, high, critical keys.

[COMMUNICATION_CHANNELS]

Available channels for stakeholder notification and their urgency rules

Slack #eng-announce for low/medium; email + Slack for high; PagerDuty + email + Slack for critical

Required. Must map severity levels to at least one channel each. Validate that each channel name corresponds to a real communication path. Null not allowed.

[MIGRATION_BURDEN_FACTORS]

Dimensions to assess migration cost: data migration, API changes, client updates, documentation, training

Data migration: schema change scripts; API changes: version bump; Client updates: SDK release; Documentation: API docs + runbooks; Training: team walkthrough

Required. Must list at least 4 factors. Each factor should have a concrete artifact or activity. Reject if factors are abstract without operational meaning.

[PREVIOUS_IMPACT_ANALYSES]

Prior stakeholder impact analyses from related ADRs for consistency checking

ADR-0038 impact analysis, ADR-0041 stakeholder matrix

Optional. If provided, must be valid JSON array of analysis objects. Used for cross-reference and conflict detection. Null allowed. If present, validate each entry has adr_id and stakeholder_impacts fields.

[OUTPUT_SCHEMA]

Expected JSON schema for the impact matrix output

See output-contract table for full schema definition

Required. Must be a valid JSON Schema object. Reject if schema is missing required fields: affected_parties, change_severity, communication_needs, migration_burden, coverage_gaps. Validate with schema parser before prompt execution.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the ADR Stakeholder Impact Analysis prompt into a reliable application or review workflow.

This prompt is designed to be called programmatically as part of an architecture review pipeline, not as a one-off chat interaction. The primary integration point is after an ADR draft is written but before it is approved. The application should supply the full ADR text and a structured list of known stakeholders, teams, and systems as [CONTEXT]. The model returns a structured impact matrix that downstream systems can parse, store, and display. Because the output affects team planning and communication, the harness must validate the response before it reaches a human reviewer or an automated notification system.

Implement the harness with a schema validation gate before accepting the output. The expected output is a JSON object containing an impact_matrix array where each entry has stakeholder, role, impact_severity (one of high, medium, low, none), change_description, communication_needs, and migration_burden. Use a JSON Schema validator in your application code to reject malformed responses. If validation fails, retry once with the same prompt plus the validation error message appended as a correction instruction. If the retry also fails, log the failure and escalate to a human reviewer with the raw output attached. Do not silently accept unparseable impact data.

For model choice, prefer a model with strong structured output capabilities and a large context window, since ADRs plus stakeholder lists can be lengthy. If your ADR repository is large, consider using retrieval-augmented generation (RAG) to pull in relevant past ADRs and their stakeholder impact records as few-shot examples. Store validated impact matrices in a database keyed by ADR ID and version. This enables historical comparison: when an ADR is superseded, the harness can diff the old and new impact matrices to highlight which stakeholders experience a change in severity or burden.

Logging and observability are critical. Log the prompt version, model used, input token count, output token count, validation pass/fail, retry count, and any human escalation events. If the prompt is used in a CI/CD gate for ADR approval, emit a structured check result that the pipeline can consume. Include a coverage_warning field in the output schema that flags when the model detects a stakeholder mentioned in the ADR body that was not in the provided stakeholder list. This prevents silent omissions. Always require human sign-off on the impact matrix before it is distributed to affected teams, especially when migration burden is rated high or communication needs include training or budget approval.

IMPLEMENTATION TABLE

Expected Output Contract

Defines the required fields, types, and validation rules for the structured impact analysis output. Use this contract to build post-processing validators, schema checks, and downstream ingestion logic.

Field or ElementType or FormatRequiredValidation Rule

impact_analysis_id

string (UUID v4)

Must match UUID v4 regex pattern. Generate if not provided in [INPUT].

decision_record_id

string

Must match the ADR identifier from [ADR_ID]. Fail if missing or mismatched.

stakeholder_impacts

array of objects

Array length must be >= 1. Each object must conform to the stakeholder_impact sub-schema.

stakeholder_impacts[].role

string

Must be a non-empty string. Should match a known role from [STAKEHOLDER_CATALOG] if provided, else flag for human review.

stakeholder_impacts[].change_severity

enum: critical, high, medium, low, none

Must be one of the allowed enum values. Reject or repair unknown values.

stakeholder_impacts[].communication_needs

array of strings

Array length must be >= 1. Each string must be non-empty. Validate against [COMMUNICATION_CHANNELS] if provided.

stakeholder_impacts[].migration_burden

object

Must contain 'effort' (enum: high, medium, low) and 'description' (string, non-empty). Null not allowed.

coverage_gaps

array of strings

If present, each string must be non-empty. List commonly overlooked stakeholders not included in the analysis. Null allowed.

PRACTICAL GUARDRAILS

Common Failure Modes

Stakeholder impact analysis fails in predictable ways. These are the most common failure modes when using an ADR Stakeholder Impact Analysis Prompt, with practical mitigations to catch them before the analysis is used for communication or migration planning.

01

Overlooking Indirect Stakeholders

What to watch: The prompt identifies direct consumers and owners but misses teams indirectly affected by API contract changes, schema migrations, or performance regressions. Security, SRE, and downstream data teams are common omissions. Guardrail: Include a static checklist of commonly overlooked roles (security, SRE, data engineering, QA, release management) in the prompt's [STAKEHOLDER_CATEGORIES] input and instruct the model to justify any category it marks as unaffected.

02

Underestimating Migration Burden

What to watch: The analysis describes change severity in abstract terms without quantifying migration effort. A 'moderate' impact on a team of two is very different from a 'moderate' impact on a team of twenty. Guardrail: Require the prompt output to include an estimated effort range (person-days or person-weeks) per affected team, and flag any entry where the estimate is missing or uses vague qualifiers like 'some effort required.'

03

False Consensus on Communication Needs

What to watch: The prompt assumes all stakeholders need the same level of detail. Executives get buried in implementation specifics, while engineers receive only high-level summaries. Guardrail: Add a [COMMUNICATION_TIERS] input that defines distinct audience levels (executive, team lead, individual contributor, external partner) and require the output to specify communication format and depth for each tier.

04

Ignoring Temporal Sequencing

What to watch: The impact matrix treats all stakeholder impacts as simultaneous, missing that some teams must complete their work before others can begin. This creates hidden critical-path dependencies. Guardrail: Instruct the prompt to produce a dependency-ordered migration sequence, not just a flat impact list. Validate that each team's prerequisites are listed before their own migration steps.

05

Confirmation Bias Toward the Proposing Team

What to watch: The analysis minimizes disruption for the team that authored the ADR while amplifying costs for other teams. This is especially common when the prompt receives context written primarily from the proposing team's perspective. Guardrail: Require the prompt to explicitly state whose perspective the input context represents and flag any stakeholder whose impact assessment relies entirely on that single viewpoint. Add a [MISSING_PERSPECTIVES] section to the output schema.

06

Silent Agreement on Undocumented Assumptions

What to watch: The impact analysis accepts assumptions about team capacity, system readiness, or organizational priorities without surfacing them. When those assumptions prove false, the entire impact assessment collapses. Guardrail: Add an [ASSUMPTIONS] output field that lists every assumption the analysis depends on, with a confidence level and an owner who must validate each one before the analysis is considered complete.

IMPLEMENTATION TABLE

Evaluation Rubric

Score each dimension on a 1-5 scale before shipping the ADR Stakeholder Impact Analysis Prompt. A passing score is 4 or higher on all dimensions. Run these tests against at least 5 real ADR scenarios.

CriterionPass StandardFailure SignalTest Method

Stakeholder Coverage

All directly affected teams, roles, and systems from [ADR_CONTEXT] appear in the impact matrix. At least one commonly overlooked stakeholder (e.g., SRE, security, data governance) is identified.

Missing an explicitly named team from the input context. No overlooked stakeholders surfaced when at least one exists.

Diff stakeholder list against [ADR_CONTEXT] entities. Check for presence of at least one non-obvious stakeholder category from a known checklist (ops, security, legal, data).

Impact Severity Calibration

Each stakeholder has a severity rating (low/medium/high/critical) with a concrete justification tied to a specific change (API break, schema migration, SLA shift, etc.).

Severity ratings are all 'medium' or lack specific change justification. Ratings contradict the described change (e.g., 'low' for a breaking API change).

Spot-check 3 stakeholders: verify severity label matches the described change. Flag if justification column is generic or empty.

Communication Need Specificity

For each high or critical severity stakeholder, the output specifies a communication channel, timing (before/at/after rollout), and responsible owner.

High-severity stakeholders lack a communication plan. Communication entries are generic ('notify team') without channel, timing, or owner.

Filter rows where severity is high or critical. Assert communication_plan field is non-null and contains channel, timing, and owner subfields.

Migration Burden Assessment

Each affected team has a migration burden estimate (none, light, moderate, heavy) with a one-line description of what changes are required.

Migration burden is missing for teams that own systems listed in the ADR's affected components. Burden descriptions are vague ('some work needed').

Cross-reference affected teams with ADR's system/components list. Assert migration_burden field is present and description is at least 10 words.

Schema Compliance

Output is valid JSON matching the expected [OUTPUT_SCHEMA]. All required fields present. No extra top-level keys.

JSON parse failure. Missing required field (stakeholder_id, name, severity, communication_plan, migration_burden). Extra unexpected keys at root.

Validate against JSON Schema. Run strict mode parser. Reject if additionalProperties detected at any level.

No Hallucinated Stakeholders

All listed stakeholders are traceable to [ADR_CONTEXT] or are plausibly inferred with a confidence note. No invented team names or roles.

Output contains a team name, role, or system not mentioned in [ADR_CONTEXT] and not flagged as inferred. Fabricated contact details.

For each stakeholder, grep [ADR_CONTEXT] for the name. If not found, check for an inference_confidence field. Flag if absent or confidence is high without evidence.

Actionability

Every stakeholder entry contains at least one actionable recommendation (what they need to do, review, or prepare). Recommendations are specific to the ADR decision.

Recommendations are generic ('review the change', 'be aware') or missing entirely. No clear next action for the stakeholder.

Assert recommendations array is non-empty for each stakeholder. Check that at least 80% of recommendations contain a verb specific to the ADR domain (migrate, update, test, approve, monitor).

Edge Case: Empty Context

When [ADR_CONTEXT] contains no stakeholder information, output returns an empty impact matrix with a note explaining insufficient context, rather than hallucinating.

Output invents stakeholders when input has none. Returns a populated matrix from an empty or irrelevant context.

Test with [ADR_CONTEXT] set to 'No stakeholder information available.' Assert stakeholders array is empty and a warning field explains the gap.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Use the base prompt with a frontier model (GPT-4o, Claude 3.5 Sonnet). Drop the strict [OUTPUT_SCHEMA] requirement and accept a Markdown table or bulleted list. Focus on getting the stakeholder list and impact severity right before enforcing JSON structure.

Prompt modification

  • Remove the JSON schema block and replace with: Output the impact matrix as a Markdown table with columns: Stakeholder, Role, Impact Severity, Change Description, Communication Needs, Migration Burden.
  • Add: If you are unsure about a stakeholder's impact, mark it as [NEEDS CONFIRMATION] and explain why.

Watch for

  • Missing non-obvious stakeholders (security team, on-call, compliance, end-user support)
  • Overly broad impact descriptions that don't help the architect act
  • No differentiation between direct and indirect impact
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.