Skip to content

Application Architecture

Purpose

This document defines the UC-BoK view of Application Architecture.

Application Components implement Application Capabilities and expose Business Services through APIs, events, user interfaces or integration mechanisms.


Core Rule

An Application Component SHALL NOT be confused with a Business Capability or a Business Process.

Concept Disambiguation

Concept Type
Order Management Business Capability
Create Order Business Service
BOPIS Business Process
OMS Application Component

Application Responsibility Model

Every Application Component SHALL define:

  • responsibilities;
  • explicit non-responsibilities;
  • owned business objects;
  • consumed business objects;
  • exposed services;
  • published events;
  • consumed events.

Canonical Application Components

Component Primary Role
OMS Order lifecycle and orchestration
POS Store checkout execution
SIM Store inventory and fulfillment execution
Payment Hub Payment provider abstraction
Promotion Engine Promotion evaluation and redemption
CRM Customer identity and engagement

Design Rules

  1. Each Business Object SHOULD have one authoritative owner.
  2. Application Components MAY consume business objects owned by other components.
  3. Cross-component communication SHOULD use APIs or events.
  4. Shared databases SHALL NOT be considered a valid integration pattern in the UC-BoK reference architecture.
  5. Application Components SHOULD publish events for relevant business state changes.

References

  • UCBOK-001 Meta Model
  • UCBOK-300 Business Services
  • UCBOK-400 Core Retail Business Objects
  • UCBOK-820 Application Responsibility Matrix