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 example.
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)Short summary of the decouple example.
Contents
Table of Contents | ||
---|---|---|
|
Context
Context descriptionFor the user permission example the following categories are important.
Type | Description |
---|
Knowledge | Implicit 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 description
Solution
Description of solution.
Issues and considerations
Issues and considerations.
Decouple Category
Properties
Property | Description |
---|---|
Decouple category | Application function (5) |
Complexity | Low |
Related patterns/Solutions |
|