ADR-008 — Capability Ontology¶
Status¶
Accepted
Context¶
"Capability" is one of the most overloaded terms in enterprise architecture. In retail systems design it is used to mean a software feature, a business process, an application module, or an architectural building block. UC-BoK requires a precise definition that supports maturity scoring, gap analysis, and vendor mapping without being tied to any specific application or vendor.
Decision¶
A UC-BoK Capability is a named, vendor-neutral business ability that a retail organisation must possess to execute Unified Commerce. Capabilities are defined in SPEC-008.
The ontology classifies Capabilities into four types:
| Type | Definition |
|---|---|
| Transactional | Executes a discrete commercial action (e.g. checkout, payment-processing) |
| Operational | Manages ongoing state or inventory (e.g. inventory-visibility, store-operations) |
| Analytical | Produces insight from data (e.g. customer-segmentation) |
| Orchestration | Coordinates multiple capabilities or systems (e.g. order-orchestration) |
Rules:
- A Capability is not an application — it is the ability that an application implements.
- A Capability has a maturity scale (0–4) defined by the Assessment Framework (ADR-014).
- Capabilities are the primary bridge between the Reference Architecture layer and the application/vendor layer.
- Each Capability must declare its domain, business outcome, and canonical supporting application types.
- Capability IDs are stable and immutable once published.
Consequences¶
catalogs/capabilities.yamlis the canonical capability register.- Reference Architectures (ADR-013) express capability priorities using this vocabulary.
- The UCMI Assessment Engine (scripts/assess.py) scores retailers against RA capability priorities.
- Vendors cannot create new capabilities; they implement existing ones.