On Business Rules
Slides from a talk I gave to colleagues at Metasite on 10 March 2020. It follows the same line as the earlier talk on business requirements, one step further down: to the rules that get written underneath them.
I opened with a survey of the team. Most were confident they could write a rule; far fewer were confident they could explain one to a stakeholder, and almost nobody thought the topic was a waste of time. We had some conventions, but how a rule actually ends up phrased was left to each analyst.
The rest is what the OMG’s SBVR standard has to say about it — where it came from, how it defines a rule, an advice, and the statements that express them, and what SBVR Structured English looks like.
The research was about a third of the way through when I gave the talk, so this is a report on a direction rather than a finished method.
Where a slide left out something I said out loud, my speaker note is printed underneath it.


























































Specification documents are the initial artefacts when it comes to implementing business logic in IT systems. Specification documents are usually created in cooperation with domain experts and requirements engineers, whereas the technical background of these groups differs tremendously. Requirements engineers fulfil cross-cutting concerns and are negotiators between the business and technical worlds. Therefore, communication is the key between all stakeholders involved. Thus, the most appropriate means to communicate is common natural language. [98] However, natural language specifications cannot be processed by computers to a satisfactory extent per se. Early attempts to transform natural language to formal representations had to tackle the inherent problems in natural language
In logic, temporal logic is any system of rules and symbolism for representing, and reasoning about, propositions qualified in terms of time (for example, "I am always hungry", "I will eventually be hungry", or "I will be hungry until I eat something")
In alethic logic, a proposition that is possible but not necessary is termed ‘contingent’. If people in a business were to treat it as a definitional rule, they would miscategorize things in the real world. This typically leads to refusal of activity (that should be permitted) because unnecessary preconditions are not met, e.g., refusing to accept a rental booking because the person wishing to rent is under 21.