Perform gap analysis — capability matrix, gap severity scoring, workstream mapping
Scanned 9/5/2026
Install to Claude Code
npx -y skills add tractorjuice/arckit-codex --skill arckit-gap-analysis --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Arckit Gap Analysis?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/tractorjuice-arckit-gap-analysis)More formats (shields.io, HTML) on the badges page.
---
name: arckit-gap-analysis
description: "Perform gap analysis — capability matrix, gap severity scoring, workstream mapping"
---
You are helping an enterprise architect perform a **Gap Analysis** for TOGAF ADM Phase E (Opportunities & Solutions). This document identifies gaps between current and target architectures, scores their severity, and maps them to workstreams for prioritised delivery.
## User Input
```text
$ARGUMENTS
```
## Prerequisites: Read Architecture Artifacts
> **Note**: Before generating, scan `projects/` for existing project directories. For each project, list all `ARC-*.md` artifacts, check `external/` for reference documents, and check `000-global/` for cross-project policies. If no external docs exist but they would improve output, ask the user.
**MANDATORY** (warn if missing):
- **BPCM** (Business Capability Model) — Extract: Capability hierarchy, maturity levels, capability ownership, capability-to-objective mappings
- If missing: STOP and ask user to run `$arckit-business-capability-map` first. Gap analysis requires a capability baseline.
**RECOMMENDED** (read if available, note if missing):
- **PRIN** (Architecture Principles) — Extract: Guiding principles, compliance requirements, technology standards, design constraints
- If missing: note in assumptions that principle alignment could not be validated
- **STRAT** (Architecture Strategy) — Extract: Strategic vision, target state description, strategic themes, investment priorities
- If missing: note in assumptions that strategic alignment could not be validated
- **PRIN** (Architecture Principles, in 000-global) — Extract: Enterprise-level principles, decision framework, governance standards
- If missing: note in assumptions that enterprise-level principle alignment could not be validated
### Prerequisites 1b: Read external documents and policies
- Read any **external documents** listed in the project context (`external/` files) — extract baseline assessments, target architecture descriptions, migration strategies
- Read any **enterprise standards** in `projects/000-global/external/` — extract capability maturity models, technology standards, compliance frameworks
- If no external assessment docs found but they would improve the output, ask: "Do you have any existing capability assessments, target architecture descriptions, or migration plans? I can read PDFs and images directly. Place them in `projects/{project-dir}/external/` and re-run, or skip."
- **Citation traceability**: When referencing content from external documents, follow the citation instructions in `.arckit/references/citation-instructions.md`. Place inline citation markers (e.g., `[GA-C1]`) next to findings informed by source documents and populate the "External References" section in the template.
## Instructions
### 1. Identify or Create Project
Identify the target project from the hook context. If the user specifies a project that doesn't exist yet, create a new project:
1. Use Glob to list `projects/*/` directories and find the highest `NNN-*` number (or start at `001` if none exist)
2. Calculate the next number (zero-padded to 3 digits, e.g., `002`)
3. Slugify the project name (lowercase, replace non-alphanumeric with hyphens, trim)
4. Use the Write tool to create `projects/{NNN}-{slug}/README.md` with the project name, ID, and date — the Write tool will create all parent directories automatically
5. Also create `projects/{NNN}-{slug}/external/README.md` with a note to place external reference documents here
6. Set `PROJECT_ID` = the 3-digit number, `PROJECT_PATH` = the new directory path
### 2. Read Gap Analysis Template
**Read the template** (with user override support):
- **First**, check if `.arckit/templates-custom/gap-analysis-template.md` exists in the project root
- **If found**: Read the user's customised template (user override takes precedence)
- **If not found**: Read `.arckit/templates/gap-analysis-template.md` (default)
- **Then**, read `.arckit/templates/_partials/RENDERING.md` and resolve the template's `<!-- DOC-CONTROL-HEADER -->` marker to the Document Control partial it selects, applying the `${organisation_name}` and `${default_classification}` substitutions. Remove the marker and its comment from the output — a rendered artefact must never contain either.
> **Tip**: Users can customise templates with `$arckit-customize gap-analysis`
### 3. A question to the user: Gap Severity Weighting
Before generating the analysis, ask the user how to weight gap severity scoring:
**A question to the user**: "How should gap severity be weighted?"
- Options: `Balanced` | `Strategic-risk` | `Operational`
- Default: `Balanced`
**Weighting profiles**:
- **Balanced**: Equal weight to strategic impact and operational cost of the gap
- **Strategic-risk**: Heavier weighting on strategic impact — gaps that threaten business outcomes are prioritised regardless of effort
- **Operational**: Heavier weighting on effort/cost — gaps that can be closed quickly with high business value are prioritised
### 4. Gather Gap Analysis Context
Read all available documents identified in the Prerequisites section. Build a mental model of:
- **Current state capabilities** (from BPCM): Maturity levels, coverage, capability gaps
- **Target state** (from STRAT/ADMP): Desired maturity levels, new capabilities, retired capabilities
- **Principles** (from PRIN): Constraints on how gaps can be addressed
- **Risks** (from RISK if available): Existing risk exposure from capability gaps
- **Stakeholder priorities** (from STKE if available): Which capability areas matter most
### 5. Load Mermaid Syntax References
Read `.arckit/skills/mermaid-syntax/references/flowchart.md` and `.arckit/skills/mermaid-syntax/references/quadrantChart.md` for official Mermaid syntax — node shapes, edge labels, quadrant chart syntax, and styling options.
### 6. Generate Gap Analysis
Create a comprehensive Gap Analysis document following the template structure.
#### Document Control
- Generate Document ID: `ARC-{P}-GAPA-v1.0` (for filename: `ARC-{P}-GAPA-v1.0.md`)
- Set owner, dates, status, classification
- Review cycle: Monthly during active ADM cycle
#### 1. Capability Gap Matrix
Build a capability gap matrix comparing current state (from BPCM) against target state (from STRAT/ADMP):
- **Current maturity**: Level 1–5 (Initial → Optimised)
- **Target maturity**: Level 1–5 (Initial → Optimised)
- **Gap Size**: Derived from delta between current and target maturity
- Small: Δ = 1 level
- Medium: Δ = 2 levels
- Large: Δ = 3+ levels
- **Urgency**: Based on business criticality and time sensitivity
- Low: Not time-critical, can wait for planned cycles
- Medium: Should be addressed within next delivery cycle
- High: Must be addressed in immediate planning horizon
- **Severity**: Matrix score = Gap Size × Urgency (weighted per user's chosen profile)
- Critical: Size=Large + Urgency=High
- High: Size=Large + Urgency=Medium, or Size=Medium + Urgency=High
- Medium: Size=Medium + Urgency=Medium, or Size=Small + Urgency=High
- Low: Size=Small + Urgency=Medium/Low
- Informational: Size=Small + Urgency=Low
- **Workstream**: Assign gap to a workstream (see section 3)
#### 2. Gap Heatmap
Create a Mermaid quadrant chart plotting gaps by Size (x-axis) vs Urgency (y-axis):
- **Quadrant 1 (Immediate)**: Large gap + High urgency — must address now
- **Quadrant 2 (Plan)**: Large gap + Low urgency — plan for future cycles
- **Quadrant 3 (Monitor)**: Small gap + High urgency — quick wins
- **Quadrant 4 (Low Priority)**: Small gap + Low urgency — backlog
#### 3. Workstream Mapping
Define workstreams that group related gaps:
- Each workstream addresses a coherent set of capability gaps
- Include dependencies between workstreams (some must complete before others can start)
- Estimate duration, resources, and key milestones
- Create a Mermaid flowchart showing workstream dependencies
#### 4. Gap-to-Risk Mapping
Map each gap to associated risks:
- Unmitigated capability gaps create operational, strategic, or compliance risks
- Cross-reference with existing risk register if available
- Rate impact level (Low/Medium/High/Critical)
#### 5. Assumptions & Constraints
- List assumptions made about current state (from BPCM assessment)
- List constraints that affect gap closure (budget, timeline, skills, technology)
- Note any principle compliance implications
#### 6. Traceability
- Link each capability gap back to BPCM source
- Link workstreams to strategic themes (from STRAT)
- Link gaps to principles (from PRIN) if principle compliance is affected
- Cross-reference to stakeholder drivers (from STKE)
### 7. UK Government Specifics
If the user indicates this is a UK Government project, include:
- **Financial Year Notation**: Use "FY 2024/25", "FY 2025/26" format
- **Spending Review Alignment**: Reference SR periods
- **GDS Service Standard**: Reference Discovery/Alpha/Beta/Live phases
- **TCoP (Technology Code of Practice)**: Reference 13 points for technology gaps
- **NCSC CAF**: Security maturity progression for security-related gaps
- **Cross-Government Services**: Identify reuse opportunities (GOV.UK Pay, Notify, Design System)
- **G-Cloud/DOS**: Procurement alignment for procurement-related gaps
### 8. MOD Specifics
If this is a Ministry of Defence project, include:
- **JSP 440**: Defence project management alignment for workstream planning
- **Security Clearances**: BPSS/SC/DV requirements for security capability gaps
- **IAMM**: Security maturity progression for security gaps
- **JSP 936**: AI assurance requirements for AI/ML capability gaps (if applicable)
### 9. Quality Gate
Before writing the file, read `.arckit/references/quality-checklist.md` and verify all **Common Checks** plus the **GAPA** per-type checks pass. Fix any failures before proceeding.
**GAPA-specific quality requirements**:
- Capability gap matrix contains at least 5 capabilities
- Severity scoring is present for every gap
- Gap heatmap Mermaid diagram is present
- Workstream mapping contains at least 2 workstreams
- Workstream dependency diagram is present
### 10. Write the Gap Analysis File
**IMPORTANT**: The gap analysis document will be a substantial document (typically 250-400 lines). You MUST use the Write tool to create the file, NOT output the full content in chat.
Create the file at:
```text
projects/{P}/ARC-{P}-GAPA-v1.0.md
```
Use the Write tool with the complete content following the template structure.
### 11. Show Summary to User
After writing the file, show a concise summary (NOT the full document):
```markdown
## Gap Analysis Created
**Document**: `projects/{P}/ARC-{P}-GAPA-v1.0.md`
**Document ID**: ARC-{P}-GAPA-v1.0
### Analysis Overview
- **Severity Weighting**: [Balanced / Strategic-risk / Operational]
- **Capabilities Assessed**: [N] capabilities
- **Gaps Identified**: [N] gaps ([Critical] critical, [High] high, [Medium] medium, [Low] low)
### Gap Heatmap Summary
| Quadrant | Count | Priority |
|----------|-------|----------|
| Immediate (Large + High urgency) | [N] | 🔴 Must address |
| Plan (Large + Low urgency) | [N] | 🟡 Plan ahead |
| Monitor (Small + High urgency) | [N] | 🔵 Quick wins |
| Low Priority (Small + Low urgency) | [N] | ⚪ Backlog |
### Workstreams
| WS-ID | Name | Gaps | Duration | Resources |
|-------|------|------|----------|-----------|
| WS-001 | [Name] | [N] gaps | [X months] | [N FTE] |
| WS-002 | [Name] | [N] gaps | [X months] | [N FTE] |
### Top Critical Gaps
1. **[Gap 1]**: [Capability] — [Severity] — assigned to WS-[N]
2. **[Gap 2]**: [Capability] — [Severity] — assigned to WS-[N]
3. **[Gap 3]**: [Capability] — [Severity] — assigned to WS-[N]
### Synthesised From
- ✅ Business Capability Model: ARC-{P}-BPCM-v[N].md
- [✅/⚠️] Architecture Principles: ARC-{P}-APP-v[N].md
- [✅/⚠️] Architecture Strategy: ARC-{P}-STRAT-v[N].md
- [✅/⚠️] Principles: ARC-000-PRIN-v[N].md
### Next Steps
1. Review gap analysis with Architecture Board: `$arckit-architecture-board`
2. Create work packages to close gaps: `$arckit-transition-architecture`
3. Validate workstream sequencing with delivery team
4. Prioritise immediate-action gaps with sponsor
### Traceability
- [N] capabilities assessed against [N] target state requirements
- [N] gaps mapped to [N] workstreams
- [N] workstreams linked to [N] strategic themes
- [N] gaps cross-referenced to risk register
**File location**: `projects/{P}/ARC-{P}-GAPA-v1.0.md`
```
## Important Notes
1. **Evidence-Based, Not Speculative**: This command analyses gaps between documented current state (BPCM) and documented target state (STRAT/ADMP). It should NOT invent capabilities or maturity levels without source evidence.
2. **Use Write Tool**: The gap analysis document is typically 250-400 lines. ALWAYS use the Write tool to create it. Never output the full content in chat.
3. **Mandatory Prerequisites**: BPCM is the only mandatory prerequisite. Without a capability baseline, gap analysis cannot be performed. STRAT and APP are recommended for target state and principle alignment.
4. **Severity Scoring**: The severity matrix (Size × Urgency) is the core analytical engine. The user's chosen weighting profile (Balanced/Strategic-risk/Operational) determines which gaps rise to the top.
5. **Workstream Design**: Workstreams must be coherent — grouping gaps that share technology, skills, or dependencies. Avoid creating workstreams for single gaps unless they are genuinely standalone.
6. **Traceability is Critical**: Every gap, workstream, and risk must trace back to source documents. This ensures the gap analysis is grounded in evidence, not assumptions.
7. **Integration with Other Commands**:
- Gap Analysis feeds into: `$arckit-transition-architecture` (Phase F — Migration Planning), `$arckit-architecture-board` (governance review)
- Gap Analysis is informed by: `$arckit-business-capability-map` (BPCM), `$arckit-strategy` (STRAT), `$arckit-principles` (PRIN)
8. **Version Management**: If a gap analysis already exists (`ARC-*-GAPA-v*.md`), create a new version (v2.0) rather than overwriting. Gap analyses should be versioned to track re-assessment across ADM cycles.
9. **Gap Triage Framework**: Use the heatmap quadrants as a decision framework:
- **Immediate**: Assign to next work package immediately
- **Plan**: Include in 12-month planning horizon
- **Monitor**: Review quarterly, escalate if urgency increases
- **Low Priority**: Maintain in backlog, remove if no longer relevant
10. **Markdown escaping**: When writing less-than or greater-than comparisons, always include a space after `<` or `>` (e.g., `< 3 seconds`, `> 99.9% uptime`) to prevent markdown renderers from interpreting them as HTML tags or emoji
## Suggested Next Steps
After completing this command, consider running:
- `$arckit-transition-architecture` -- Create work packages to close identified gaps
- `$arckit-architecture-board` -- Present gap analysis to Architecture Board for prioritization
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!