Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Summary

In a complex application decisions have to be made whether a person is allowed to perform a certain action. For example in a DCM application for mortgage applications. Based on the current application the system has to decide whether the Junior Mid-Office employee is allowed to make the approval decision, or if a more senior role is needed. The stakeholders may decide that any property with a value under half a million can be done by junior employees, while anything above has to be done by a senior employee. This logic can be much more complex as in this exampleThis is frequently encountered in Dynamic Case Management applications where a user is only allowed to perform a subset of tasks. You may also encounter it in applications without process engine, where the end user is not allowed to see certain information based on some criteria.

As the user permission example does not concern the core business rules of a company, but a way of structuring the work of its employees, is the Application Layer the appropriate location for this scenario (arrow 5). External systems may use the same logic for deriving user permissions (arrow 4).

Contents

Table of Contents
maxLevel2

Context

For the user permission example the following categories are important.

 Type
Description
KnowledgeImplicit vs. Explicit call
 
User set vs. System set

 

Input and Output parameters vs. complex model
 
Simple input vs complex input
 

Maintainability

It should be possible to quickly make changes to business rules independent of other functionality.

  
Complexity of the Decoupling pattern vs Gain
 
Internals invisible vs visible (encapsulation)
 
Testable
 
Autonomy/decoupling
 
Reusability
 
Out of the box vs. Custom Code.
 

 

Problem

Problem descriptionA good example can be found in a DCM application for mortgage applications. Based on the current application the system has to decide whether the Junior Mid-Office employee is allowed to make the approval decision, or if a more senior role is needed. The stakeholders may decide that any property with a value under half a million can be done by junior employees, while anything above has to be done by a senior employee. Furthermore the user should not have performed previous tasks for the application, to adhere to the four-eyes principle.

Solution

Description of solution.

Issues and considerations

Issues and considerations.

 

Decouple Category

Properties

PropertyDescription
Decouple categoryApplication function (5)
ComplexityLow
Related patterns/Solutions