Data Management & Ownership Requirements

Purpose

To establish clear data ownership, enable autonomous operation, support data-driven decision making via Data Products, and prevent tight coupling through shared database dependencies.

Scope

Data ownership boundaries, cross-product data access patterns, data replication strategies, schema versioning, data product design, and data protection.

Requirements

IDNameDescription
REQ-DATA-1Data OwnershipEach product MUST have clearly defined ownership of the data it needs to fulfil its responsibilities, including authoritative sources and write boundaries.
REQ-DATA-2No Direct DB AccessProducts MUST NOT depend on direct database access to other products’ data; all cross-product data MUST be accessed via contracts such as APIs, events, or data products.
REQ-DATA-3Autonomous ExecutionProducts MUST be able to perform core functions without synchronous access to external data sources, utilizing replication or eventual-consistency patterns.
REQ-DATA-4Data as a ProductEach product MUST expose its data via well-defined “data products” treated as APIs, with clear documentation and access control for operational and analytical use cases.
REQ-DATA-5Schema VersioningShared data formats and schemas MUST be versioned and evolved in a backward-compatible manner to ensure system consistency.
REQ-DATA-6Data ClassificationSecurity requirements (confidential, internal, public) MUST be defined per data set and enforced across storage, transport, and exposure.

Reference Template

Illustrative, non-normative — shows the expected shape for the requirements above.

# Data product contract — exposed like an API (REQ-DATA-4), versioned (REQ-DATA-5)
dataProduct: orders
owner: orders-team                      # clear, authoritative ownership (REQ-DATA-1)
version: 2.1.0                          # backward-compatible evolution (REQ-DATA-5)
classification: confidential            # enforced in storage/transport (REQ-DATA-6)
access:
  - role: analytics-reader
    scope: read
ports:
  output:
    - type: event-stream                # no direct DB coupling (REQ-DATA-2)
      topic: orders.v2
      schema: schemas/order-v2.avsc
    - type: api
      endpoint: https://api.example.com/v1/data/orders

Up to Architecture Principles