Skip to content

Naming Convention

This page defines the hierarchical taxonomy used to classify all functional behaviors in the Arda platform and the naming scheme used to assign stable, unique identifiers to each element. It is the canonical reference for all use case, user story, and functional scenario identifiers.

The taxonomy has four levels, from broadest to most specific:

LevelNameDescription
1DomainTop-level functional area of the platform (e.g., Procurement, Reference Data).
2AreaA coherent module or capability group within a domain (e.g., Order Queue, Items).
3Use CaseA distinct user-facing behavior within an area (e.g., Add Card to Order Queue, View Receiving List).
4ScenarioA specific realization of a use case in the business domain (e.g., Add Card via QR Scan, Add Card via Item List).

Each Domain contains one or more Areas. Each Area contains one or more Use Cases, assigned chronologically within that area. Each Use Case contains one or more Scenarios, assigned chronologically within that use case. Each Scenario is the leaf element and corresponds to a single documentable behavior.

${domain}::${area}::${use_case}::${scenario}.${type}

Example: PRO::OQ::0001::0001.US — Procurement, Order Queue, first use case, first scenario, User Story.

The immutable, stable portion of the identifier excludes the type suffix:

${domain}::${area}::${use_case}::${scenario}

All cross-references, citations, and links must use this prefix form. The type suffix is metadata and may change as understanding of the element evolves. Example citation:

See PRO::OQ::0001::0002 for the QR scan entry point.

Identifiers are case-insensitive. The canonical form uses uppercase for domain and area codes and for type codes. Comparisons, lookups, cross-references, and anchor-slug generation must treat PRO::OQ::0001 and pro::oq::0001 as equivalent. Documents must always render identifiers in the canonical uppercase form.

ElementFormatScope of UniquenessAssignment Rule
domain3—6 uppercase letters (case-insensitive)Globally uniqueAssigned when the domain is created
area3—6 uppercase letters, may contain - (case-insensitive)Unique within its domainAssigned when the area is created
use_case4-digit zero-padded number (00019999)Unique within its areaAssigned chronologically within the area
scenario4-digit zero-padded number (00019999)Unique within its use caseAssigned chronologically within the use case
typeShort uppercase code (see Type Codes below, case-insensitive)N/A — metadata, not part of the identityAssigned based on the nature of the artifact
SeparatorUsage
::Between taxonomy levels (domain, area, use case, scenario)
.Before the type suffix
-Allowed within a single level as an intra-level separator (e.g., in area codes)

The type suffix classifies the nature of the documented artifact. The current set is:

CodeMeaning
USUser Story — written in the “As a… I want… so that…” form.
UCUse Case — actor-goal behavioral specification with steps, pre/post-conditions, and alternative paths.
FSFunctional Scenario — a design rule, data rule, or system behavior constraint.

This set is intentionally open. Additional type codes may be introduced as new artifact types emerge. The type is not part of the immutable identifier and may change without affecting the identity of the element.

  • Numbering starts at 0001 for both use cases and scenarios.
  • 0000 is reserved for potential future use (e.g., metadata or overview records) and must not be assigned to regular elements.
  • Numbers are never reused. If an element is retired, its number remains permanently consumed and is not reassigned to a different element.
  1. Identifiers are immutable. Once assigned, the prefix ${domain}::${area}::${use_case}::${scenario} never changes.
  2. Identifiers are never reused. A retired identifier remains permanently consumed.
  3. Reclassification creates a new identifier. If an element is moved to a different domain or area, it receives a new identifier in the target location. The old identifier is retired with a link to its successor(s).
  4. Type is mutable. The .${type} suffix may change without affecting the identity of the element.

When a story graduates from Unclassified to a proper domain:

UNC::PHY::0001::0001 -- RETIRED
Successor: PRO::OQ::0005::0003
Reason: Reclassified to Procurement after physical workflow was given a digital counterpart.

All twelve domains and their codes:

CodeNameDescription
FNDFoundationShared utilities and libraries consumed as dependencies across all services.
OAMOperation, Administration, and MaintenanceSystem management: tenants, users, roles, subscriptions, health. FCAPS model.
REFReference DataAuthoritative datasets: items, suppliers, organizations, contacts.
RESResourcesAvailability, allocation, and consumption tracking: facilities, kanban cards, loops.
PROProcurementCommercial acquisition of materials: order queue, purchase orders, receiving.
FULFulfillmentCommercial delivery to customers: demand queue, demand orders, shipping.
OPSOperationsInternal manufacturing and business process orchestration.
SACShop AccessPhysical shop floor and device interfaces: scanners, printers, IoT feeds.
WFIWorkflows and IntegrationsCross-domain process coordination and external system connectors.
APPApplicationApplication-level concerns: dashboard, navigation, layout, general UX.
GENGeneral BehaviorsCross-cutting interaction patterns: grid behaviors, error handling, diagnostics.
UNCUnclassifiedStories and use cases not yet assigned to a domain. Graduation retires the UNC identifier and creates a successor in the target domain.

All thirty-four areas across the twelve domains:

CodeAreaDescription
CMNCommon ModuleCross-cutting utilities, data types, and abstractions shared across backend services.

OAM — Operation, Administration, and Maintenance

Section titled “OAM — Operation, Administration, and Maintenance”
CodeAreaDescription
FLTFaultDetection, isolation, and correction of system faults.
CFGConfigurationSystem configuration management across tenants and environments. Includes onboarding workflow, implementation guidance, and user/tenant presentation preferences.
ACTAccounting and CostUsage tracking, metering, and cost attribution for tenant operations. Includes subscription and billing.
PRFPerformanceObservation and analysis of system performance metrics.
SECSecuritySecurity policy enforcement, audit logging, and access control infrastructure.
IAMIdentity and Access ManagementUser accounts, tenants, invitations, sessions, and customer acquisition channels.
CodeAreaDescription
ITMItemsCatalog of materials, finished goods, and WIP. Classification, supply info, locators, draft support, printing.
SPLItem SupplyLinks items to supply sources via ItemSupply. Supplier associations, designations, inline creation.
BABusiness AffiliatesLegal entities in business transactions. Roles (Vendor, Customer, Carrier, Operator), contacts, addresses.
ORGOrganizationOrganizational structure and its relationship to business affiliates or department units.
CONContactsContact information as a shared, reusable entity across domains.
CodeAreaDescription
FACFacilitiesPhysical site model: Facility, Location, Node, Station, and specialized inbound/outbound node types.
KCKanban CardsFull lifecycle of physical and digital Kanban cards. Operational states, print states, events, notes.
LOOPLoopKanban route from origin to destination node within a facility.
CodeAreaDescription
E2EEnd-to-EndCross-cutting procurement lifecycle scenarios spanning multiple areas.
OQOrder QueueQueue of procurement demand signals (cards in REQUESTING state) awaiting conversion to purchase orders.
POOrdersPurchase order lifecycle: creation, line management, submission, acceptance, receiving, archiving.
RCVReceivingPhysical inbound material flow: receiving orders, schedules, documents, induction into information system.
CodeAreaDescription
DQDemand QueueExternal demand not yet entered into tenant business processes.
DODemand OrdersDemand order lifecycle until fulfillment.
SHPShippingPhysical outbound material flow: shipping orders, schedules, documents.

No areas defined. Content will emerge as specific manufacturing process types are modeled.

CodeAreaDescription
PDFPDF RenderingPDF generation for labels, kanban cards, breadcrumbs, and other printable artifacts.

No areas defined. Content will emerge as cross-domain choreography and external connectors are designed.

CodeAreaDescription
DSHDashboardDashboard overview, quick actions, recent activity, onboarding guide.
NAVNavigationSidebar navigation, page layout, search, help, notifications.
CodeAreaDescription
ENT-DAEntity Data AuthorityCross-cutting lifecycle contract for main entities: browse, create, edit, delete, duplicate, import/export, history.
ENTSUBEntity SubordinateCross-cutting lifecycle contract for subordinate entities: view, add, edit, remove within parent context.
MEDIAEntity MediaCross-cutting contract for attaching, replacing, and removing media assets (images, files) on entities. Unified input surface with automatic detection of input method.
LSTList ViewsGrid selection, inline editing, column management, state persistence.
ERRError HandlingError pages, diagnostics, debug panels.
INTInteractionsCancel/undo flows and other cross-cutting interaction patterns.
CodeAreaDescription
PHYPhysical WorkflowsPhysical-only workflows with no direct digital counterpart (e.g., card placement, bin organization).
NFRNon-FunctionalNon-functional requirements and cross-cutting quality attributes (e.g., instant persistence, optimistic UI).
TBDTo Be DeterminedCatch-all for stories awaiting initial triage.

Each use case or scenario may carry a status value indicating the relationship between the documented behavior and the current implementation:

StatusMeaning
CoveredThe behavior is fully documented and implemented.
PartialThe behavior is documented; implementation covers some but not all scenarios.
New-extendsA new behavior that extends an existing implemented capability.
New-distinctA new behavior with no current implementation counterpart.
IdentifierReading
PRO::OQ::0001::0001.USProcurement, Order Queue, first use case, first scenario, User Story
PRO::OQ::0001::0002.UCProcurement, Order Queue, first use case, second scenario, Use Case
PRO::PO::0003::0001.FSProcurement, Orders, third use case, first scenario, Functional Scenario
REF::ITM::0002::0001.USReference Data, Items, second use case, first scenario, User Story
OAM::IAM::0001::0003.UCOAM, Identity and Access Management, first use case, third scenario, Use Case
UNC::TBD::0001::0001.USUnclassified, To Be Determined, first use case, first scenario, User Story

A numeric variant suffix may be introduced in the future between the scenario number and the type code:

${domain}::${area}::${use_case}::${scenario}-V${variant}.${type}

Variants represent different system implementations of the same business scenario, such as different interaction channels (web, mobile, voice) or successive system improvements. A missing variant is equivalent to V0. This extension is reserved but not yet active.