← Back to principles

Data

Data you can trust

Statement

Data must maintain accuracy, integrity, and consistency with traceable lineage throughout its lifecycle

What this means in practice

Data is protected from loss, corruption, and unauthorised change at every stage. In transactional, multi-user environments, operations maintain atomicity, consistency, isolation, and durability. The origin of every data item is recorded, its transformations are tracked, and an audit trail of access and modification is available. Across systems, transactions, and contexts, data presents a coherent, non-contradictory view.

Three distinct qualities are at work here:

  • Accuracy -- data correctly represents the real-world facts it models and is kept current as those facts change.

  • Integrity -- data remains protected from corruption or unauthorised change, with relationships, rules, and lineage preserved throughout its lifecycle.

  • Consistency -- data presents a coherent and non-contradictory view across systems, transactions, and contexts.

Why this matters

Inaccurate or inconsistent data erodes trust in systems and leads to flawed decisions. Without traceable lineage, teams cannot diagnose issues, satisfy audit requirements, or demonstrate compliance. Protecting these qualities is foundational; every other data principle depends on the underlying data being trustworthy.

Practices that meet this principle

  • Enforce referential integrity and validation rules at the domain layer, not solely through database constraints

  • Maintain full audit trails recording who accessed or modified data and when. Clear logging in the domain layer, on data access.

  • Track data lineage from source through transformation to consumption

  • Apply transactional guarantees appropriate to the use case

  • Implement automated data validation checks within CI/CD pipelines

  • Regularly reconcile data across systems to detect and resolve drift

  • Logging should show who accessed and modified specific data. Some systems provide an audit trail of changes, and for sensitive data, an access log. Doing this for every data item would be overkill. For example, tracking who accessed the list of countries.

Validation

A project meets this principle when:

  • Data lineage is documented and traceable from source to destination

  • Audit trails exist for all data access and modification events

  • Automated integrity and consistency checks run as part of the delivery pipeline

  • OR:

  • No unprotected pathways exist for data modification outside defined processes