How Do Practitioners Interpret Conditionals in Requirements?

09/05/2021
by   Jannik Fischbach, et al.
0

Context: Conditional statements like "If A and B then C" are core elements for describing software requirements. However, there are many ways to express such conditionals in natural language and also many ways how they can be interpreted. We hypothesize that conditional statements in requirements are a source of ambiguity, potentially affecting downstream activities such as test case generation negatively. Objective: Our goal is to understand how specific conditionals are interpreted by readers who work with requirements. Method: We conduct a descriptive survey with 104 RE practitioners and ask how they interpret 12 different conditional clauses. We map their interpretations to logical formulas written in Propositional (Temporal) Logic and discuss the implications. Results: The conditionals in our tested requirements were interpreted ambiguously. We found that practitioners disagree on whether an antecedent is only sufficient or also necessary for the consequent. Interestingly, the disagreement persists even when the system behavior is known to the practitioners. We also found that certain cue phrases are associated with specific interpretations. Conclusion: Conditionals in requirements are a source of ambiguity and there is not just one way to interpret them formally. This affects any analysis that builds upon formalized requirements (e.g., inconsistency checking, test-case generation). Our results may also influence guidelines for writing requirements.

READ FULL TEXT
research
02/07/2020

Views on Quality Requirements in Academia and Practice: Commonalities, Differences, and Context-Dependent Grey Areas

Context: Quality requirements (QRs) are a topic of constant discussions ...
research
11/25/2014

Some Reflections on the Set-based and the Conditional-based Interpretations of Statements in Syllogistic Reasoning

Two interpretations about syllogistic statements are described in this p...
research
02/23/2021

The State-of-Practice in Requirements Elicitation: An Extended Interview Study at 12 Companies

Context. Requirements engineering remains a discipline that is faced wit...
research
05/04/2020

On Systematically Building a Controlled Natural Language for Functional Requirements

[Context] Natural language (NL) is pervasive in software requirements sp...
research
05/13/2022

Deconstructing NLG Evaluation: Evaluation Practices, Assumptions, and Their Implications

There are many ways to express similar things in text, which makes evalu...
research
07/15/2013

Probability Distinguishes Different Types of Conditional Statements

The language of probability is used to define several different types of...

Please sign up or login with your details

Forgot password? Click here to reset