Different kind of rules are used within an application. Business rules do have high business value. Different kinds of business rules exists in every layer within the clean architecture.
| Example |
---|
Input validation (Interface Layer) | - Format validation (e.g. correct phone number, IBAN, postcode)
- Type validation (e.g. only string is allowed)
- Input required
- Value validation (e.g. age >= 0)
- Can we process this value? (e.g. amount > 0)
- Is the value plausible? (e.g. a non-blocking validation rule, are you sure you want to apply for a 10 million Euro mortgage?)
|
Authorization/authenticatie rules (Application Layer) | - Can this user (role) see/modify this?
- Can they overrule these warnings?
|
Process rules (Application Layer and Domain Layer) | - What is the next step?
- Which activity is not allowed?
|
Deduction/integrity/calculation rules (Domain Layer) | - Are the various choices compatible?
- Is this application acceptable?
- Calculation
- Decision based on policy rule
|