21st Workshop on Requirements Engineering
05-06 September, 2018
Rio de Janeiro, Brazil


A Refinement Calculus for Requirements Engineering

John Mylopoulos

University of Ottawa

The requirements problem consists of transforming stakeholder requirements - however informal, ambiguous, conflicting, unattainable, imprecise and incomplete – into a consistent, complete and realizable specification through a systematic process. We propose a refinement calculus for requirements engineering (CaRE) for solving this problem, which takes into account the typically dialectical nature of requirements analysis. The calculus casts the requirements problem as an iterative argument between stakeholders (including requirements engineers), where posited requirements are attacked for being ambiguous, incomplete, etc. and refined into new requirements that address the defect pointed out by the attack. Refinements are carried out by operators provided by CaRE that refine (e.g., strengthen, weaken, decompose) existing requirements, to build a refinement graph. The semantics of the operators is provided by means of argumentation theory. This is joint work with Yehia ElRakaiby and Alessio Ferrari.

WER 2018 - 21st Workshop on Requirements Engineering