Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

db2-state-model

Overview

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.

Rationale

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

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

Status

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.

Setup

See Installation instructions.

Examples

About

An enterprise solution for managing object states as a service

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages