Skip to content

ADR-011 — Application Ontology

Status

Accepted

Context

Applications are the concrete systems that implement UC-BoK capabilities. A canonical application ontology is needed to create the Application Responsibility Matrix and to support vendor mapping without coupling the knowledge model to specific products.

Decision

A UC-BoK Application is a named application archetype that implements one or more Capabilities. Applications are defined in SPEC-011.

Classification (four archetypes):

Archetype Definition Examples
System of Record The authoritative source for a domain's data OMS, WMS, CRM
System of Engagement The primary human-facing interaction layer POS, eCommerce, Mobile App
System of Intelligence Analytics, decisioning, and recommendation CDP, Pricing Engine, Loyalty Platform
System of Integration Orchestrates data flow between systems ESB, API Gateway, Event Broker

Rules:

  1. Applications in UC-BoK are archetypes, not product names — POS is the archetype, Comerzzia or Cegid is a vendor implementation.
  2. Every Application declares its primary archetype and the canonical Capabilities it implements.
  3. An Application may implement Capabilities from multiple domains but must have a primary domain.
  4. The Application Responsibility Matrix maps which application archetype is the primary implementor for each Capability.
  5. Vendor products are mapped to application archetypes, not the other way around.

Consequences

  • catalogs/applications.yaml is the canonical application archetype register.
  • The Knowledge Graph implements relationship connects Applications to Capabilities.
  • Architecture diagrams use application archetypes as nodes — never specific product names.
  • The Application Responsibility Matrix (docs/10-reference-architecture/) uses this ontology as its backbone.