- Whether representations must reflect their actual counterparts instantly, or some lapse of time can be accepted.
- Whether there are some dependencies across representations whose consistency has to be enforced at any time.
Acid vs Placid Activities
Broadly speaking, that would translate into two kinds of execution, acid or placid:
Placid systems are weakly coupled as they are not meant to support representations with instant updates.
Acid (aka real-time) systems are strongly coupled as they must support representations whose updates are to be performed instantly
It has to be noted that such a definition of “real-time” doesn’t depend on any specific measure of time. Whatever the time unit, millisecond or weeks, “instant” update means that nothing is meant to happen before representations are updated. Moreover, “nothing” has to be understood as “nothing relevant” for the business under consideration and its associated time frame.
Events and States
As far as modelling is concerned, and whatever the doctrine, events and states are introduced to describe system behaviors and eventually specify controls. That clearly pertains to the processing of symbolic representations, but it may also specify synchronization constraints with their actual counterparts:
- Symbolic synchronization uses object and control flows between symbolic activities to define the constraints on sequencing. Logical clocks can be introduced to that effect.
- Physical synchronization uses events and physical clocks to define the transitions between states.
They must be crossed with events and consolidated to describe system behaviors in terms of states and events:
- Events associated with significant changes in the state of objects and their representation.
- Events associated with significant changes in the execution state of business processes.
- Events associated with significant changes in agents or systems expectations.