BRManifesto FAQ: Article 4 - Declarative, Not Procedural
FAQ re: Principle 4.1
Question: Does principle 4.1 of the Manifesto prohibit use of if-then syntax to express rules?
Rules should be expressed declaratively in natural-language sentences for the business audience.
Syntax of the form "If [condition] then [derived fact]" is acceptable. (So is syntax of the form "[Derived fact] if [condition]".) Syntax of the form "If [condition] then [action]" is not acceptable; it is not declarative. (Also not acceptable is "[Action] if [condition]".)
FAQ re: Principle 4.2
Question: What is the sense of "cannot be expressed" in Manifesto principle 4.2?
If something cannot be expressed, then it is not a rule.
The intended sense is "can't be put into words" or "there's no way to say it". If you can't communicate it, it simply doesn't count.
FAQ re: Principle 4.3
Question: What kind of 'statements' is the Manifesto referring to in principle 4.3?
A set of statements is declarative only if the set has no implicit sequencing.
The Manifesto means any kind of expression, starting with, but not limited to, the statements found in application programs coded in procedural languages.
FAQ re: Principle 4.3
Question: Under principle 4.3 of the Manifesto, when is a set of statements not declarative?
A set of statements is declarative only if the set has no implicit sequencing.
Any set of statements whose evaluation produces a different result when the statements are listed in a different sequence is not a set of declarative rules.
FAQ re: Principle 4.4
Question: Why does Manifesto principle 4.4 maintain that "constructs other than terms and facts imply assumptions about a system implementation"?
Any statements of rules that require constructs other than terms and facts imply assumptions about a system implementation.
Rules expressed purely on the basis of terms and facts (predicates) can be evaluated using formal logic, which assumes no particular kind of system implementation. Any other construct implies bias toward some class of platform or implementation scheme. If rules are shaped by any system concern whatsoever, they are less able to be understood or validated in their right, and less easily redeployed.
FAQ re: Principle 4.5
Question: What is the sense of "enforcement" in Manifesto principle 4.5?
A rule is distinct from any enforcement defined for it. A rule and its enforcement are separate concerns.
The intended sense is "means of ..." or "method of ..." or "approach to ..." enforcement.
References:
[1] The Manifesto is free, only 2 pages long, translated into 15 languages. Have a quick look (or re-look!). No sign up required. Well worth your time.
About our Contributor:
Online Interactive Training Series
In response to a great many requests, Business Rule Solutions now offers at-a-distance learning options. No travel, no backlogs, no hassles. Same great instructors, but with schedules, content and pricing designed to meet the special needs of busy professionals.