Business Process Unit Architecture (BPUA)
Modern business applications rarely suffer from missing features. Instead, they become fragile when state becomes inconsistent, context leaks across screens, and business rules are enforced implicitly rather than explicitly. These problems usually appear when the architecture does not clearly define how business processes evolve, how state changes over time, and where authoritative context resides. These architectural weaknesses make it difficult to maintain correctness as systems evolve.
Enterprise systems must operate reliably over long periods of time. To achieve this, their architecture must make business process state explicit, bounded, and authoritative, so that process evolution, state transitions, and decision context remain consistent as the system grows.
Business Process Unit Architecture (BPUA) provides this foundation. Rather than organizing applications around pages, services, or CRUD operations, BPUA organizes them around Business Process Units — self-contained execution contexts that own their data, lifecycle, and transitions between business states.
This structure gives enterprise applications explicit business processes, clear boundaries, and authoritative context, allowing systems to evolve without losing correctness.
Most application architectures evolve around technical layers:
In such systems:
These problems are not accidental — they are the result of implicit context.
A "Business Process Unit" (BPU) is a bounded execution context that represents a single business process or sub-process. It:
A BPU is not a page, a controller, or a service.
A Business Process Unit is the authoritative execution context for a bounded segment of a business process.
Each Business Process Unit is the authoritative owner of its business process state.
The context required to execute a transition is always passed explicitly.
State changes occur only through well-defined transitions.
For a given business state, transition, and context, the resulting state is deterministic.
Business logic mutates state. UI observes state changes.
When a business process transition is executed, the components involved in the execution must exchange the information required to perform that transition. This information includes business data, request metadata, routing identifiers, and other details describing the situation in which the transition must run.
In BPUA-based systems, this collection of information is referred to as the Transition Context.
A practical implementation requires a structured container capable of holding multiple related tables of data together with metadata describing the request. The container must allow different components of the system to exchange this information without repeatedly transforming it into incompatible formats.
Such a container typically provides:
Later sections of this site describe POCO DataSet, a structured data container that can be used to represent the Transition Context exchanged between BPUA components during transition execution.
BPUA distinguishes between:
This separation keeps business logic deterministic while enabling reactive user interfaces.
Business Process Unit Architecture is not a framework or a library.
Business Process Unit Architecture structures business applications around explicit process states and transitions.
By combining explicit context, deterministic transitions, and clear ownership of business process state, BPUA provides a foundation for complex, long-lived business processes — independent of UI technology, persistence strategy, or specific data container implementations.
Table of Content
Business Process Programming in .Net
© 2004–2026 Laskarzhevsky Software Inc.
Unless otherwise noted, the content of this website is licensed under the
Creative Commons Attribution 4.0 International License (CC BY 4.0).
Code examples are provided under the MIT License.
You are free to share and adapt the material provided that appropriate
credit is given and any modifications are clearly indicated.
The information provided on this website is for educational purposes only.
The author and publisher make no warranties regarding the completeness
or suitability of the information and are not responsible for any damages
resulting from its use.