Skip to main content
← Back to Insights

A System of Record Needs a System of Communication

A System of Record Needs a System of Communication

The question is why “single source of truth” so often becomes “single source of confusion.” Most operators have lived the moment: you’re moving fast, referencing the master spreadsheet, the project plan, the ERP export, and then you discover the ground shifted. Someone updated the “master” without telling anyone who depends on it.

What’s at stake is not just accuracy. It’s momentum. Silent changes create two operating realities: the one in the shared file, and the one in everyone’s head (or local download). Teams don’t fail because the work is hard; they fail because they’re working from different assumptions and don’t realize it until something breaks.

From first principles, a system of record is not a document or a database. It’s a promise: this is the state of the world. And a promise only holds if the people relying on it are kept in sync. That means communication is not separate from the record—it’s part of the record.

The hidden failure mode: the “master” becomes a fork

Most operational systems have an implicit pattern:

  • One place is designated “master.”
  • Multiple people read it.
  • Some people edit it.
  • Many people export or download it to do work elsewhere.

This works until edits become silent. The moment someone makes a change without a corresponding notification, the master file stops being authoritative in practice. It remains authoritative in theory, but day-to-day execution happens on copies, cached views, and last week’s attachments.

The result is a forked reality: two correct interpretations at the same time. The shared file is correct. The downstream work is also rational—based on what was known when it started. Operators then spend time reconciling deltas they didn’t know existed.

Record integrity is a human protocol, not a file property

A Google Sheet, a NetSuite saved search export, a database table—these are containers. They don’t enforce authority. They can support authority (with permissions, audit trails, history), but they cannot create shared understanding on their own.

In practice, “system of record” is a governance agreement:

  • Who can change the record
  • What changes are allowed
  • How changes are reviewed
  • How changes are communicated
  • When downstream users must refresh their working sets

Without the communication elements, the governance agreement is incomplete. The system can be technically correct and operationally misleading at the same time.

Make updates and notifications one transaction

The most reliable design principle here is simple: the act of updating the system of record and the act of notifying stakeholders must be treated as a single, indivisible transaction. One is not “done” without the other.

This is the operational equivalent of an atomic commit. If the change is made but the team isn’t informed, the change hasn’t landed. It exists, but it hasn’t propagated into execution.

To make this real, you need two things:

  • A defined notification path (where the update is announced)
  • A defined “receipt” expectation (how you know it was seen)

Receipt does not have to mean everyone responds. It can mean the right people are tagged, the update is logged in a channel, and there is a consistent habit that downstream users check before starting work.

Example: item master cleanup in an ERP implementation

Consider a practical scenario many NetSuite teams will recognize. The project team maintains a master spreadsheet: thousands of items, legacy codes, new ERP codes, units of measure, and import-ready fields. An analyst cleans data and discovers 50 items have incorrect legacy codes. They correct them directly in the shared file.

On paper, the task is complete. In reality, the impact depends on whether the rest of the system—people and workflow—was updated too.

A week later, an implementation consultant downloads the sheet to configure an import. They work from a local copy saved earlier, unaware those 50 codes were corrected. The import fails for those items. The consultant burns hours troubleshooting mapping and formatting. The analyst assumes their corrections were already incorporated. The team escalates a “data quality” issue that is actually a communication issue.

In a better design, the update cannot occur silently. The protocol could be as minimal as:

  • Any edit that changes meaning (codes, UOM, status, mapping) requires an announcement in a dedicated channel
  • The announcement includes scope: “Items X–Y updated” and what changed
  • Downstream owners acknowledge with a simple “received” or refresh their working copy before continuing

This is not bureaucracy. It is preserving the “single reality” the system of record is supposed to provide.

Operational patterns that reduce silent divergence

1) Change log as a first-class object

Maintain a lightweight change log that is easier to read than the record itself. It can be a tab in the spreadsheet, a ticket queue, or a running thread in a channel. The requirement is consistency: every meaningful change produces an entry.

Minimum fields that work in practice:

  • Date/time
  • Owner
  • What changed (plain language)
  • Scope (rows/items/records)
  • Who must refresh or re-run work

2) Named owners and explicit edit rights

“Everyone can edit” is convenient early and costly later. As the record becomes operationally critical, narrow edit rights and assign ownership by domain (items, customers, chart of accounts, pricing). Ownership does not slow teams down; it reduces conflicting edits and forces updates through a known path.

3) Communication channel designed for retrieval, not chatter

Many teams announce changes in places that are hard to search and easy to miss. Use a dedicated channel (or ticket category) where announcements are short, standardized, and easy to scan. The goal is not discussion; it’s traceability.

4) “Start work” checklist includes a freshness check

Downstream users should have one habit: before running an import, building a mapping, or finalizing a configuration step, check the change log and confirm you’re using the current version. This is a procedural guardrail that prevents hours of rework.

5) Batch windows for high-churn records

If a record is changing constantly, require batch windows: changes accumulate and are released at set times with a single announcement. This reduces interruption and makes it easier for downstream users to plan refresh points.

Data governance is coordination work

The deeper implication is that governance is less about data and more about human alignment. Many “data quality” problems are actually stale assumptions. The technology did what it was supposed to do: it stored the latest value. The breakdown is that the team never converged on the latest meaning.

This is why buying better tools rarely solves the core issue. Tools help, but they don’t replace a protocol that forces alignment. The operative unit is not the spreadsheet cell or the ERP field—it’s the shared understanding of what that value means right now.

Ultimately, information doesn’t become truth when it is updated. It becomes truth when it is successfully received and incorporated into execution. What this means is that your system of record is only as reliable as the system that propagates its changes.

The takeaway is straightforward: treat communication as part of the record, not an afterthought. If the update and the notification aren’t linked, you don’t have a single source of truth—you have a single source of entropy.