A solution for managing object (aka entity) states as a service. Objects are associated with one or more state models, and state transitions managed in a controlled manner.
The solution is built with a Db2 for LUW schema. Its tables hold state model metadata, object states and transition history. SQL modules enable permitted user manipulation of this data.
There is a need to manage object states in enterprise systems. With service-orientated architectures, different services can be responsible for different state transitions. It is desirable that controls are in place.
Example use cases:
- You need to set up a new authorisation workflow.
- You wish to ensure that only authorised users or services can perform specific transitions.
- You wish to block transitions that do not comply with state models. These might otherwise occur, for example due to inadequate controls in complex environments.
- You wish to capture and publish object lifecycle changes.
Features of the release 1.0 include:
- Interlinking of state models - object state transitions can depend on the state of more than one model, and can change the state of more than one model
- Modular approach, supporting separation of duties
- Ability to separate ownership and access control of data belonging to different applications
- Ability to limit specific transitions to specific user roles, and which roles can view which data
- Quorum feature supporting authorisation workflows
- SQL API
Future planned features:
- Subscriptions for object state transition listeners (early beta included in this release)
- Java API
Release 1.0 is the initial release. Testing of the core features (see Insurance Policy Example) is complete.
Subscriptions functionality is included as an early beta and is not fully tested.
