Architecture overview

../_images/architecture-1.png
  • CaseManagement (CM) Website : the website is developed with angular. It is used by case workers or business analysts to manage the lifecycle of cases for example : manually activate a task or edit the definition of case plans.
  • Identity server : OPENID server used by the solution to authenticate the end-user and limit the access to certain API operations based on the claims of the end user, for example : only a user with the role businessanalyst can update a case plan.
  • CaseManagement (CM) API : REST.API service which exposes operations to interact with the engine for example : update the case plan or launch a case plan instance.
  • CaseManagement Engine : Execute a case plan instance.

Domain model

The DDD aggregate pattern has been used to identify the different domain models present in the CaseManagement API.

../_images/architecture-2.png

Clustering model

The case engine can be distributed to different nodes in a cluster. Each case engine must then connect to a shared database.