Talha Azfar
working note

What a Business Record Actually Represents

A working note on why a single business record and the workflows related to it needed to be modelled as separate concerns, and why current status and history aren't the same thing.

TA

Talha Azfar

CTO at Aetarix

Published 2026-08-272 min
Software ArchitectureSystem Modelling

I started this platform with what felt like a reasonable assumption: one operational event creates one record, and that record’s lifecycle is basically linear — it moves through a sequence of statuses until it’s done.

That assumption broke almost immediately. In practice, one initial record could lead to more than one downstream application or workflow, running in parallel rather than in sequence. Modelling it as a single flat record with a single status field meant the model couldn’t actually represent what was happening in the business.

The fix wasn’t a bigger table or more status values. It was separating two things that had been collapsed into one: the record itself, and the applications or workflows that relate to it. The record holds identity and the relationships around it; each related workflow carries its own state, its own history, and its own responsibility trail.

That split also forced a second distinction I hadn’t made explicit yet: current status versus history. Status tells you where something is right now. History tells you how it got there, and who was responsible at each step — which turns out to matter for accountability in ways a single ‘current state’ field can’t capture.

None of this is exotic. But it’s the kind of decision that’s easy to skip past early on, and expensive to unwind later. Choosing the database or the framework was never the hard part — deciding what a record actually represents was.

This model is still evolving as the platform develops further.

Talha Azfar, CTO at Aetarix

Written by

Talha Azfar

CTO at Aetarix

Software architecture, AI-enabled business systems, and the engineering judgment that connects them.

Disagree, or working through the same problem? I'm glad to talk it through.

Get in touch