Writing Natural Language Rule Statements — a Systematic Approach Part 15: Activity Restriction Rules
About this series of articlesWhile my first series of articles on writing natural language rule statements[1] explored a wide variety of issues in a rather organic and hence random manner, this series takes a more holistic and systematic approach and draws on insights gained while writing my recently-published book on the same topic.[2] Rule statements recommended in these articles are intended to comply with the Object Management Group's Semantics of Business Vocabulary and Business Rules (SBVR) version 1.0.[3]
The story so far
In previous articles in this series (see the "Language Archives" sidebar) we have looked at standardised rule statements for various types of data rule,[4] as well as an overview of activity rules.[5] Each specific type of rule statement has a common formulation, which we have discussed in both a relatively informal way and by way of rule statement patterns.
For the next few articles, we will be looking at specific types of activity rule.
Erratum
In Part 14 of this series, I wrongly categorised rule statement RS173 (reproduced here) as an activity time limit rule; it is, in fact, an activity obligation rule.
RS173. | Acknowledgment of an order must occur during the 24 hours after the receipt of that order. |
Types of activity rule
Recall that the rules that govern activities can be categorized as follows:
- activity restriction rules, which restrict the situations in which the activity can occur, i.e., prohibit that activity in certain situations
- activity obligation rules, which place an obligation on the activity to occur in specific situations
- process decision rules, which determine what action a business process is to take in specific situations
Activity restriction rules
As we saw in the previous article, activity restriction rules are of various types:
- An activity time limit rule restricts a business process or other activity to within a particular time period, e.g.,
RS182. | Bag drop for a flight may occur only during the 4 hours before the departure time of that flight. |
RS183. | Bags may be accepted for a flight only during the 4 hours before the departure time of that flight.[6] |
RS184. | A daily ticket may be used only until 2am on the day after the day on which the ticket is validated. |
- An activity exclusion period rule achieves a similar effect by prohibiting a business process or other activity during a particular time period, e.g.,
RS185. | Check-in for a flight must not occur later than 30 minutes before the departure time of that flight. |
RS186. | Construction machinery must not be operated in a residential area before 7:30am or after 7:30pm on a weekday or before 8am or after 8pm on a Saturday or Sunday. |
- An activity pre-condition rule prohibits a business process or other activity unless some other activity or event has previously occurred or some pre-requisite condition exists, e.g.,
RS187. | A passenger may board an international flight only after that passenger undergoes departure control. |
RS188. | A laptop computer may undergo security screening only if that laptop computer is not in a bag. |
RS189. | Security screening of a laptop computer may occur only if that laptop computer is not in a bag.[7] |
- An activity prohibition rule prohibits a business process or other activity if some event or activity has previously occurred or some dangerous or illegal condition exists, e.g.,
RS190. | A vehicle must not be operated if a defect notice is current for that vehicle. |
- An activity conflict rule restricts the simultaneous occurrence of multiple business processes or other activities, e.g.,
RS191. | A file must not be renamed while that file is open for editing. |
- An information retention rule defines the minimum period for which a particular type of information is retained,[8] e.g.,
RS192. | An order must not be deleted until 6 months after the payment for that order. |
Referring to the activity governed by the rule
Each activity rule statement should make clear what activity is governed by the rule. How do we refer to activities?
A common convention in business process modelling is to give each business process a name of the form "<verb> <object term>", e.g., "Accept flight booking", "Process seat selection", "Check in passengers", "Accept bags", "Board passengers". Note that these process names are from the perspective of the business rather than the customer, for whom "Book flight", "Select seats", "Check in for flight", "Drop bags", and "Board flight" would be more appropriate ways of referring to the activities they undertake.
An activity rule statement can refer to a business process in a number of ways. A common method is to use the term from the business process name along with the verb from that name in the passive voice,[9] as in the following:
- RS183: "Bags may be accepted" (business process is "Accept bags")
- RS186: "Construction machinery must not be operated" (business process is "Operate construction machinery")
- RS190: "A vehicle must not be operated" (business process is "Operate vehicle")
- RS191: "A file must not be
renamed" (business process is "Rename file") or
- RS192: "An order must not be deleted" (business process is "Delete order")
Another method is to use a different verb or term, typically one that might be used by the customer rather than the business (since many rule statements should be expressed in a way that is easily understandable by the business's customers). For example, in RS184 the verb phrase is "A daily ticket may be used"; here "Use ticket" is from the customer's perspective rather than that of the business, which might refer to the corresponding business process as "Validate ticket".
Where a rule governs customer behaviour, a customer-perspective verb may alternatively be used in the active voice, with customer (or some appropriate synonym) as the subject of that verb, as in RS187 ("A passenger may board an international flight").
Yet another method is to use a verbal noun,[10] such as "check-in", "security screening", or "bag drop":
- In RS185, "Check-in for a flight" has an obvious correspondence to the activity which a customer might call "Check in for flight".
- In RS188 and RS189, "A laptop computer may undergo security screening" and "Security screening of a laptop computer" both derive from the business process name "(Security) screen laptop computer".
- In RS182, "Bag drop" is a customer-perspective verbal noun used in airports to refer to what, from the airline's perspective, is acceptance of bags.
Indeed, the verbs in RS190 – RS192 could be replaced by the verbal nouns "operation", "renaming", and "deletion" respectively.
Note that, if a verbal noun is used, a verb is still required. If the verbal noun is the subject of the rule statement, 'occur' is the most appropriate verb, whereas if the subject of the rule statement is the object of the corresponding process verb (e.g., laptop computer in RS188), 'undergo' is the most appropriate verb.
Whichever verb is used, it must be preceded by
- 'must not' in an activity exclusion period rule statement, activity prohibition rule statement, activity conflict rule, or information retention rule statement.
- 'may' in an activity time limit rule statement or activity pre-condition rule statement.
In addition, if 'may' is used, 'only' must appear after the reference to the governed activity and before the restrictions that apply to that activity, as in RS182, RS183, RS184, RS187, RS188, and RS189.
Describing the restrictions that apply to the governed activity
An activity pre-condition rule only allows the governed activity to occur if some other activity or event has previously occurred or some condition exists. By contrast, an activity prohibition rule prevents the governed activity from occurring if some event or other process has previously occurred or some condition exists. Similarly, an activity conflict rule prevents the governed activity from occurring at the same time as some other activity.
A rule statement for any of these types of rule therefore needs to describe what it is that either allows or precludes the governed activity, namely some other activity, some event or some condition. This is done by using a complete clause (with a subject and verb phrase), such as that passenger checks in for that flight, preceded by
- 'after' in an activity pre-condition rule statement or activity prohibition rule statement referring to a previous activity or event.
- 'if' in an activity pre-condition rule statement or activity prohibition rule statement referring to a pre-requisite or precluding condition.
- 'while' in an activity conflict rule statement.
For example, in the rule statements we have encountered in this and the previous article we have seen the following:
- after that passenger checks in for that flight
- after that passenger undergoes departure control
- if that driver is intoxicated
- if a defect notice is current for that vehicle
- while any file within that folder is open for editing
- while that file is open for editing
By contrast, an activity time limit rule, activity exclusion period rule, or information retention rule places a time restriction on the governed activity. This is done by
- constraining the governed activity to be before, after, during, or other than during some time period before or after some other activity, event, or time period, e.g.,
- during the 24 hours before the departure time of that flight
- during the 24 hours after the receipt of that order
- earlier than 24 hours before the departure time of that flight
- during the 7 years after the end of that financial year
- during the 4 hours before the departure time of that flight
- later than 30 minutes before the departure time of that flight
- until 6 months after the payment for that order
- constraining the governed activity to be before or after some time point during some other activity, event, or time period, e.g.,
- until 2am on the day after the day on which the ticket is validated
- constraining the governed activity to be before or after some event defined using a term, e.g.,
- after pushback[11]
-
constraining the governed activity to be before, after, during, or other than during some other activity or event expressed using a complete clause (with a subject and verb phrase), e.g.,
- until a cabin crew member advises that electronic devices may be operated safely
- as a combination of two such time restrictions, e.g.,
- at any time after pushback
until a cabin crew member advises that electronic devices may be operated safely
- before 7:30am or after 7:30pm on a weekday
or before 8am or after 8pm on a Saturday or Sunday
Note that the word 'until' may be used as
- a conjunction before a complete clause, in which case SBVR conventions require that it be rendered 'until', or
- a preposition before a term (e.g., pushback) or literal (e.g., 2am), in which case it is rendered as 'until'.
This is also true of 'before'/'before' and 'after'/'after'. Other words and phrases operate only as one or the other, e.g., 'while' operates only as a conjunction, while 'during', 'earlier than', and 'later than' operate only as prepositions.
Note also that the phrase 'at any time' may be used at the start of any time restriction, but particularly to emphasise the extent of the exclusion period in an activity exclusion period rule, such as RS175:
RS175. | An electronic device must not be operated on an aircraft at any time after pushback of that aircraft until a cabin crew member advises that electronic devices may be operated safely. |
To be continued...
The next article in this series will continue our discussion of activity rules.
References
[1] The first of which is: Graham Witt, "A Practical Method of Developing Natural Language Rule Statements (Part 1)," Business Rules Journal, Vol. 10, No. 2 (Feb. 2009), URL: http://www.BRCommunity.com/a2009/b461.html
[2] Graham Witt, Writing Effective Business Rules. Morgan Kaufmann (2012).
[3] Semantics of Business Vocabulary and Business Rules (SBVR), v1.0. Object Management Group (Jan. 2008). Available at http://www.omg.org/spec/SBVR/1.0/
The font and colour conventions used in these rule statements reflect those in the SBVR, namely underlined teal for terms, italic blue for verb phrases, orange for keywords, and double-underlined green for names and other literals. Note that, for clarity, these conventions are not used for rule statements that exhibit one or more non-recommended characteristics.
[4] A rule that constrains the data included in a transaction (a form or message) or a persistent data set (e.g., a database record).
[5] A rule that constrains the operation of one or more business processes or other activities.
[6] Note that this rule statement is an alternative way of expressing the same rule as RS182.
[7] Note that this rule statement is an alternative way of expressing the same rule as RS188.
[8] It may not be obvious that this is an activity restriction rule, but it is a prohibition of any process that results in the deletion or destruction of the information in question.
[9] The use of a verb phrase such that the subject of that verb phrase is the person or thing on which the action is performed (the patient or target), as in "a boarding pass is presented by the passenger". By contrast, the subject of a verb phrase in active voice (as in "the passenger presents a boarding pass") is the person or thing performing the action signified by that verb phrase (i.e., the actor or agent).
[10] A noun formed from or otherwise corresponding to a verb phrase.
[11] 'Pushback' is the reversal of an aircraft from the gate before taxying and takeoff.
# # #
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.