Tutorial 3: Capability Decomposition & Portfolio Scoring
In Tutorial 2, you established NeoBank's architectural layers and connected strategic goals to applications and cloud environments.
In this tutorial, you will build NeoBank's Business Capability Map — the foundational anchor used by CIOs and enterprise architects to evaluate IT investment, rationalize application portfolios, and track strategic coverage.
You will learn how to:
- Decompose business capabilities hierarchically across Levels 1, 2, and 3.
- Apply the Gartner TIME Framework (
Invest,Migrate,Tolerate,Eliminate). - Quantify capability health with Business Value and Technical Fit scores.
- Project a dedicated Capability Map View (
capability_map).
1. Expanding the NeoBank Workspace Layout
We will add a dedicated capability fragment under business/:
neobank/
├── main.ea
├── strategy/
│ └── goals_kpis.ea
├── business/
│ ├── actors_processes.ea
│ └── capabilities.ea # [NEW] Business capabilities L1-L3 with scoring
├── application/
│ └── customer_onboarding.ea
└── technology/
└── environments.ea
2. Define the Capability Map (business/capabilities.ea)
Create business/capabilities.ea. NeoBank structures its capabilities into strategic domains (Level 1), decomposing each into operational Level 2 sub-capabilities, and down to granular Level 3 execution functions:
layer "Business Architecture" {
// Domain 1: Retail Banking Operations
capability cap_retail_banking "1.0 Retail Banking Operations" {
description "Core consumer banking products, deposits, lending, and transaction services"
number "1.0"
time "Invest"
score {
business_value 9.5
tech_fit 8.8
}
capability cap_consumer_lending "Consumer Lending" {
description "End-to-end unsecured personal loans and credit decisioning"
number "1.1"
time "Invest"
maturity "High"
capability cap_credit_scoring "Automated Credit Scoring" {
description "Real-time algorithmic risk and credit scoring"
number auto
time "Invest"
}
}
capability cap_payments_transfers "Payments & Transfers" {
description "Domestic and international money movement and clearing"
number "1.2"
time "Invest"
capability cap_real_time_payments "Real-Time Instant Payments" {
description "FedNow and RTP instant settlement processing"
number auto
time "Invest"
}
}
}
// Domain 2: Customer Service & Operations
capability cap_customer_service "2.0 Customer Service & Ops" {
description "Customer engagement, account servicing, and contact center operations"
number "2.0"
time "Invest"
capability cap_digital_onboarding "Digital Onboarding & KYC" {
description "Self-service customer registration, ID verification, and KYC"
number "2.1"
time "Invest"
maturity "High"
score {
business_value 9.6
tech_fit 9.2
}
capability cap_identity_verification "Biometric Identity Verification" {
description "Document validation and liveness detection"
number auto
}
}
capability cap_customer_support "Customer Support Operations" {
description "Omnichannel inquiries, ticketing, and dispute triage"
number "2.2"
time "Migrate"
capability cap_voice_telephony "Legacy PBX Voice IVR" {
description "Traditional phone tree routing slated for retirement"
number auto
time "Eliminate"
lifecycle {
phase Run start "2018-01-01" end "2026-12-31"
phase Retire start "2027-01-01"
}
}
}
}
// Domain 3: Risk & Compliance Management
capability cap_risk_compliance "3.0 Risk and Compliance Management" {
description "Enterprise risk management, AML fraud detection, and regulatory filings"
number "3.0"
time "Invest"
capability cap_fraud_prevention "Fraud Prevention" {
number "3.1"
time "Invest"
capability cap_transaction_scoring "Real-time Transaction Fraud Scoring" {
number auto
time "Invest"
}
}
}
}
3. Realize Capabilities with Applications
Update application/customer_onboarding.ea to connect our applications to the capabilities they deliver:
app app_mobile_banking "NeoBank Mobile App" {
// ... existing properties ...
relationships {
this serves customer "Provides self-service mobile banking"
this flows_to system_core_banking "Posts onboarding registration transactions"
this writes data_customer_record "Persists customer KYC profile"
// Connect application to the capability it delivers
this realizes cap_digital_onboarding "Delivers mobile digital onboarding"
}
}
4. Add the Capability Map View (main.ea)
In main.ea, add the capability_map projection view. The capability_map view type is specifically engineered to render hierarchical capability boxes with color-coded TIME and maturity indicators:
views {
// ... previous views ...
capability_map capability_map_view "Neo Bank Capability Map" {
description "Comprehensive business capability map showing L1 domains through L3 capabilities with TIME classification."
tags ["Business Architecture", "Capabilities", "TIME", "Portfolio"]
include where layer == "Business Architecture"
auto_layout LeftToRight
}
}
5. Visual Projection: capability_map_view
NeoBank Capability Map showing 3-level decomposition, TIME categorization, and scoring indicators
Key Features Promoted in this View:
- Hierarchical Nesting: Child capabilities are automatically rendered inside parent domain boxes with clean visual containment.
- Automatic Numbering (
number auto): Scapius auto-computes numbering sequences (e.g.1.1.1,1.1.2) while respecting explicit labels (likenumber "1.0"). - TIME Heatmap Overlays: Nodes automatically receive standardized color-coded visual treatments based on their TIME categorization (
Invest→ Green,Migrate→ Amber,Eliminate→ Red). - Scoring Badges: Displays composite
business_valueandtech_fitratings directly on capability cards to guide architectural investment decisions.
6. Validate the Capability Model
Validate the entire workspace:
scapius validate ./neobank
Validation Successful! Workspace 'Neo Bank Enterprise Architecture' is valid.
Next Steps
Now that your business capabilities are clearly mapped and scored, continue to Tutorial 4: Security & Governance to model trust boundaries, PCI-DSS compliance, preventive controls, and STRIDE threats.