Versions Compared

Key

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

...


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

...