Requirements Loops: Decomposing an Example
An exercise I used to do with students in my Decision Analysis & Requirements Engineering lecture was to ask them to identify a problem that they have at university, and to describe it. My goal was to have them work in that lecture on problems that affected them. One group of students, in the 2019-2020 edition of the lecture, came back with the observation that many (themselves included) receive irrelevant email messages from the university. They even did an analysis of how much waste this was, having estimated the wasted electricity consumption; there was also the time wasted for students to browse through and delete such emails after they receive them.
Once they have a rough problem to work on, I ask them for three explanations:
- How observed events in an environment have led or are leading to the creation and persistence of those requirements,
- How to change the environment in order to satisfy the requirements in the future, and
- How to measure the change in the environment, in order to evaluate the extent to which requirements are satisfied.
Together, I call these explanations a Requirements Loop. The paragraph below, labeled RL1, is what they came back with.
RL1: Students informally complain that they receive irrelevant mass email messages from the university. Through a workshop with 10 randomly selected students, an email message was defined as irrelevant when it does not concern the faculty where the student is enrolled and her current year of study. The same 10 students all said that they do not want to receive irrelevant email messages. In response, all email messages that are sent from the university will be placed in categories, staff who are sending email messages will select applicable categories for each message when or prior to sending, and each student will be allowed to select (and subsequently change, as needed) the categories to which she is subscribed. In the 7th week of every semester, for the two years following the implementation of the changes above, all students will receive an optional online survey to evaluate the relevance of mass email messages from the university.
Let’s rewrite this paragraph, to split the three explanations, and show evidence they provided; this will also let us show where evidence is missing. Each part is labeled RL1.1 to RL1.3 below.
RL1.1: How did observed events in the environment lead to requirements?
- Student receives an email message from the university.
- Student decides if the email is relevant or not.
- If the student decides that the email message is irrelevant, then, at least for some such email messages, the student complains to other students and staff.
- Staff decides that complaints should be addressed, and therefore, there is a requirement to do so.
To provide evidence for the events that produce the requirement:
Through a workshop with 10 randomly selected students, an email message was defined as irrelevant when it does not concern the faculty where the student is enrolled and her current year of study. The same 10 students all said that they do not want to receive irrelevant email messages.
This results in evidence for the following propositions:
- Proposition 2: Student decides if the email is relevant or not.
- Proposition 3: If the student decides that the email message is irrelevant, then, at least for some such email messages, the student complains to other students and staff.
- Proposition 4: Staff judges that complaints should be addressed, and therefore, there is a requirement to do so.
RL1.2: How to change the environment in order to satisfy the requirements in the future
- Administrative staff of the university define distribution groups; some distribution groups are such that the students can enroll in them by themselves, while others require the administrative staff to enroll the student.
- At any time, administrative staff can enroll a student to one or more distribution lists, and students can enroll themselves into distribution lists for which they are authorized to do so.
- When sending an email to students, they do so by selecting one or more of the distribution lists.
RL1.3: How to measure the change in the environment, in order to evaluate the extent to which requirements are satisfied
- At the same week of every semester, for the two years following the implementation of the changes above, all students will receive an optional online survey to evaluate the relevance of mass email messages from the university.
- Data will be summarized and presented to administrative staff that manages distribution groups and produces email messages sent to them.
An alternative or complementary solution, for example, is to include a single question in each email message, asking if the email was useful.
The Requirements Loop is an interesting concept when working with students, as described above, because firstly, it asks them for explanations, and secondly, they need to provide evidence for these explanations. There is a lot to say about the quality of these explanations, but the concept already sets the bar much higher than what they needed to provide if I simply asked them to provide requirements and a solution – the only explanation to provide in that case, is how the solution addresses requirements, nothing more.