Oban enterprise solutions
Application architecture

A separate plane for every product owner

Each product owner, a fund or provider, has its own database, Engines and Interface Manager. Control holds the rules, releases and routing table.

One plane per product owner, each with its own Interface Manager, Engines and database, beside a shared control plane
What this gives a fund

Each owner stands alone

Its own plane

An owner's people, money and ledger stay in its own plane. One owner's busy night is no delay for another.

Checked in the database

Every member-data write is checked against the owner's products. A row for any other owner is refused.

People kept to their owner

Each person's access is limited to their own owner, and the Engine enforces it.

Several Engines for each owner

An owner can run several copies of the same Engine, in separate roles for screens and big jobs. People keep working through End of Day and Periodic Reviews, and a lease hands a big job to another copy if one stops.

Rules in sealed releases

Rules are written in Control and sealed into a numbered release, approved by a named person.

Another owner, another plane

A new owner is added as another plane. Messages reach it by fund identifier, through the routing table.

Design decisions

What we chose, and why

A database per owner

Rather than one database with a tenant column, so each owner's data is kept apart and capacity is added by owner.

Money records are added

Holdings and journals are added, not updated in place, which keeps a full audit trail and correct balances on any past date.

Prepared balances

Balances and stored totals are prepared ahead, and are proved against the journals rather than trusted.

Exceptions go to a person

A bad record raises an exception and a task, and the rest of the file carries on.

Talk to our architects

Walk through the design with the people who built it: the planes, the Engine and the release model.

Book a session