Published May 26, 2020 | Version 2.0
Software Open

A Refinement Calculus for Requirements Engineering based on Argumentation Theory: Tool and Additional Material

  • 1. Universite ́ du Luxembourg, Luxembourg
  • 2. Rutgers University, New Brunswick NJ, USA
  • 3. CNR-ISTI
  • 4. University of Toronto and University of Trento

Description

The Requirements Engineering (RE) process starts with initial requirements elicited from stakeholders – however conflicting, unattainable, incomplete and ambiguous – and iteratively refines them into a specification that is consistent, complete, valid and unambiguous. That specification consists of functions, quality constraints and assumptions on the environment of the system- to-be. We propose a novel RE process in the form of a calculus called CaRE (Calculus for Requirements Engineering) where the process is envisioned as an iterative application of refinement operators, with each operator removing a defect from the current requirements. Our proposal is motivated by the dialectic and incremental nature of RE activities. The calculus casts the RE problem as an iterative argument between stakeholders, who point out defects (ambiguity, incompleteness, etc.) of existing requirements, and then propose refinements to address those defects, thus leading to the construction of a refinement graph. This graph is then a conceptual model of an RE process enactment. The semantics of these models is provided by Argumentation Theory, where a requirement may be attacked for having a defect, which in turn may be eliminated by a refinement.

This package includes additional material associated with the paper that proposes CaRE titled "A Refinement Calculus for Requirements Engineering based on Argumentation Theory", accepted to the 39th International Conference on Conceptual Modeling (ER 2020).

The package includes the following files:

1. TechRepCaRE.pdf: a technical report with the description of a sample application of CaRE

2. tool.jar: jar file of the tool that implements CaRE. Requires Java SE Development Kit 9 to run

2. Instructions: textual instructions on how to run the tool that implements CaRE

3. Syntax Instructions: textual instructions about the syntax accepted by the tool

4. exampleApplicationScenario.pl: scenario input file for the case described in TechRepCaRE.pdf

5. exampleCalculus.pl: example input file for the case described in the submitted paper

6. erpaper.pdf: preprint of the ER 2020 Paper titled "A Refinement Calculus for Requirements Engineering based on Argumentation Theory" that refers to the current technical report.

Files

erpaper.pdf

Files (722.7 kB)

Name Size Download all
md5:9e7d4789624a3b50184eb28b575d3413
417.4 kB Preview Download
md5:84fe235397fa4b33e03d782de2067276
4.3 kB Download
md5:7c5dd9cd2fd6ddc334e64b377e60e0a5
724 Bytes Download
md5:299e772a4a75da8738ebbf56ea347286
761 Bytes Download
md5:d29f53550d3cc427eb0131b701c38bf4
2.1 kB Download
md5:6308388a4d68b5729f440d4a8750dcfc
227.3 kB Preview Download
md5:5636ad47cac90a8f73ed4c6b8f790ed6
70.1 kB Download

Additional details

Funding

ASTRail – SAtellite-based Signalling and Automation SysTems on Railways along with Formal Method and Moving Block validation 777561
European Commission