Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Stardust/Knowledge Base/Modeling/Pattern/Maker Checker"

(New page: == Introduction<br> == The Maker-Checker principle states that important decisions are not to be made by a single person but by two people. The aim therefore is to reduce the risk of err...)
 
(No difference)

Revision as of 03:05, 19 March 2012

Introduction

The Maker-Checker principle states that important decisions are not to be made by a single person but by two people. The aim therefore is to reduce the risk of errors or misuse. In a Stardust model, this principle in general is implemented as follows: suppose there are two sequenced manual activities, A1 and A2. Further, suppose the user userX completes the first activity A1. Thus, according to the Maker-Checker principle, userX is not allowed to complete the second activity A2.

Note: The process model discussed below is available for download from here.

Model

To illustrate the Maker-Checker pattern, the following model is implemented:

Stardust Modelling Patterns Maker Checker Model.jpg

In the first manual activity of the process Input Data, the user in the role Clerk (e.g., userX) is required to input some customer data (here: first name and last name) stored in the Structured Data Customer. Within the same activity the OID of the user that completed the activity is stored in the Primitive Data of Type java.lang.Long. The corresponding OUT Data Mapping is defined on the engine level:

Stardust Modelling Patterns Maker Checker Outdata.jpg

The corresponding access point is defined on Activity Instance method getPerformedByOID():

Stardust Modelling Patterns Maker Checker AccessPoint.jpg

According to the Maker-Checker principle, the next activity Approve Data cannot be completed by the userX. This restriction is modeled as follows:

  1. Open the properties of the activity Approve Data
  2. On the left hand side, select On Assignment
  3. On the right hand side, click Add and right afterwards Add Event
  4. In the dialog window that appears, select Exclude User in Action Type dropdown list
  5. In Data dropdown list, select LastUserOID
  6. Save the settings by clicking OK.

Thus, these settings ensure that the activity Approve Data cannot be assigned to the user with the OID equal to the value of LastUserOID (i.e. the OID of the user that completed Insert Data-activity).

When (after the model is deployed) the user completes the Insert Data activity and tries to execute the Approve Data activity, following message is displayed in Process Portal:

Stardust Modelling Patterns Maker Checker ErrorMessage.jpg

Back to the top