The Business Rules Manifesto and Ampersand
Ampersand lets you use business rules as intended in the Business Rules Manifesto (by the Business Rules Group, 2003). This chapter quotes each article from the manifesto verbatim. Besides, it describes how Ampersand implements it,
Primary Requirements, Not Secondary
Rules are a first-class citizen of the requirements world.
Ampersand says:
Agreed! First-class means that every requirement is a rule and every rule is a requirement. An Ampersand-engineer makes a requirement concrete by specifying a constraint. At design time, these constraints must be consistent and Ampersand's type system helps out by signalling those inconsistencies. At runtime violations of constraints are signalled the moment they occur.
Rules are essential for, and a discrete part of, business models and technology models.
Ampersand says:
Agreed! Business models and technical models in Ampersand consist of rules.
Separate From Processes, Not Contained In Them
Rules are explicit constraints on behavior and/or provide support to behavior.
Ampersand says:
Agreed! Each rule in Ampersand is a constraint, the violations of which are computed (in real time) and signalled to the appropriate stakeholder. The signal triggers behavior of the individual who is assignd to make that violation go away. Support is provided by different types of enforcement.
Rules are not process and not procedure. They should not be contained in either of these.
Ampersand says:
Agreed! An Ampersand-engineer defines rules, not processes and not procedures.
Rules apply across processes and procedures. There should be one cohesive body of rules, enforced consistently across all relevant areas of business activity.
Ampersand says:
Agreed! A rule applies throughout its context. If several processes and procedures are valid in a particular context, all rules of that context apply to all of them.
Deliberate Knowledge, Not A By-Product
Rules build on facts, and facts build on concepts as expressed by terms.
Ampersand says:
Agreed! Facts are true statements. Assuming that the data entered in an information system represent facts, Ampersand preserves their truth with mathematical rigor. If false data (i.e. non-facts) are entered into an information system built by Ampersand, the software will detect every inconsistency caused by that falsehood. Facts in Ampersand constitute the population of relations. Relations exist between concepts. Rules are expressed by terms in which operators link relations into meaningful terms.
Terms express business concepts; facts make assertions about these concepts; rules constrain and support these facts.
Ampersand says:
Agreed! If the Ampersand-engineer works on a business problem, she uses the concepts of the business as concepts in Ampersand.
Rules must be explicit. No rule is ever assumed about any concept or fact.
Ampersand says:
Agreed! Every rule in Ampersand is explicit and has a well defined meaning that a computer can calculate. An Ampersand-engineer can formulate that rule explicitly in natural language too.
Rules are basic to what the business knows about itself — that is, to basic business knowledge.
Export as PDF
Copy link