Abstract
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. We propose a novel RE process in the form of a calculus 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, which we call CaRE, 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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
In this paper, we adapt a version of , by simplifying and specializing it to support reasoning in our calculus. Our version is partially inspired by [18].
- 2.
Henceforth, we will use Req, Defect and Ref as predicates in Prolog: variables (in italics) match possible values, and underscores \(\_\) are wildcards. In logical formulas, wildcards are existentially quantified anonymous variables.
- 3.
When clear from the context, we will henceforth drop the subscript \(\mathrm {RG}\).
- 4.
This is available in a technical report providing further details on the application of CaRE [19].
References
Ross, D.T.: Structured analysis (SA): a language for communicating ideas. IEEE TSE 1, 16–34 (1977)
Bubenko Jr, J.A.: Validation and verification aspects of information modeling. In: Proceedings of the VLDB, pp. 556–566 (1977)
Dardenne, A., van Lamsweerde, A., Fickas, S.: Goal-directed requirements acquisition. Sci. Comput. Program. 20(1–2), 3–50 (1993)
Yu, E.S.: An organization modeling framework for information system requirements engineering. In: Proceedings of the Workshop Information Technologies and Systems, WITS 1993, p. 9 (1993)
Elrakaiby, Y., Ferrari, A., Mylopoulos, J.: Care: a refinement calculus for requirements engineering based on argumentation semantics. In: RE 2008, pp. 364–369 (2018)
IEEE Recommended Practice for Software Requirements Specifications. IEEE Std 830-1998, pp. 1–40 (1998)
ISO/IEC/IEEE international standard - systems and software engineering - life cycle processes - requirements engineering. ISO/IEC/IEEE 29148:2011(E) (2011)
Hunter, A., Nuseibeh, B.: Managing inconsistent specifications: reasoning, analysis, and action. ACM Trans. Softw. Eng. Methodol. 7(4), 335–367 (1998)
van Lamsweerde, A.: Handling obstacles in goal-oriented requirements engineering. IEEE TSE 26(10), 978–1005 (2000)
Jackson, M., Zave, P.: Deriving specifications from requirements: an example. In: ICSE 1995, p. 15. IEEE (1995)
Hegel, G.W.F.: Ph’anomenologie des Geistes (1807)
Potts, C., Takahashi, K., Anton, A.I.: Inquiry-based requirements analysis. IEEE Softw. 11(2), 21–32 (1994)
Dung, P.M.: On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming and n-person games. AI J. 77(2), 321–357 (1995)
Li, F.-L., Horkoff, J., Borgida, A., Guizzardi, G., Liu, L., Mylopoulos, J.: From stakeholder requirements to formal specifications through refinement. In: Fricker, S.A., Schneider, K. (eds.) REFSQ 2015. LNCS, vol. 9013, pp. 164–180. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-16101-3_11
Mirbel, I., Villata, S.: Enhancing goal-based requirements consistency: an argumentation-based approach. In: Fisher, M., van der Torre, L., Dastani, M., Governatori, G. (eds.) CLIMA 2012. LNCS (LNAI), vol. 7486, pp. 110–127. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32897-8_9
Caminada, M.: On the issue of reinstatement in argumentation. In: Fisher, M., van der Hoek, W., Konev, B., Lisitsa, A. (eds.) JELIA 2006. LNCS (LNAI), vol. 4160, pp. 111–123. Springer, Heidelberg (2006). https://doi.org/10.1007/11853886_11
Modgil, S., Prakken, H.: The ASPIC+ framework for structured argumentation: a tutorial. Argum. Comput. 5, 31–62 (2014)
Caminada, M., Amgoud, L.: On the evaluation of argumentation formalisms. Artif. Intell. 171(5–6), 286–310 (2007)
ElRakaiby, Y., Borgida, A., Ferrari, A., Mylopoulos, J.: A Refinement Calculus for Requirements Engineering Based on Argumentation Theory: Tool and Additional Material (2020). https://doi.org/10.5281/zenodo.3958960
Elrakaiby, Y., Ferrari, A., Spoletini, P., Gnesi, S., Nuseibeh, B.: Using argumentation to explain ambiguity in requirements elicitation interviews. In: RE 2017, pp. 51–60. IEEE (2017)
Haley, C.B., Laney, R., Moffett, J.D., Nuseibeh, B.: Security requirements engineering: a framework for representation and analysis. TSE 34(1), 133–153 (2008)
Franqueira, V.N.L., Tun, T.T., Yu, Y., Wieringa, R., Nuseibeh, B.: Risk and argument: a risk-based argumentation method for practical security. RE 2011, 239–248 (2011)
Jureta, I.J., Mylopoulos, J., Faulkner, S.: Analysis of multi-party agreement in requirements validation. In: RE 2009, pp. 57–66 (2009)
Ingolfo, S., Siena, A., Mylopoulos, J., Susi, A., Perini, A.: Arguing regulatory compliance of software requirements. DKE 87, 279–296 (2013)
Bagheri, E., Ensan, F.: Consolidating multiple requirement specifications through argumentation. In: ACM SAC, pp. 659–666 (2011)
Murukannaiah, P.K., Kalia, A.K., Telangy, P.R., Singh, M.P.: Resolving goal conflicts via argumentation-based analysis of competing hypotheses. In: Proceedings of the RE 2015, pp. 156–165 (2015)
Jureta, I.J., Faulkner, S., Schobbens, P.Y.: Clear justification of modeling decisions for goal-oriented requirements engineering. Requir. Eng. 13(2), 87–115 (2008). https://doi.org/10.1007/s00766-007-0056-y
van Zee, M., Bex, F., Ghanavati, S.: Rationalization of goal models in GRL using formal argumentation. In: Proceedings of the RE 2015, pp. 220–225. IEEE Computer Society (2015)
van Zee, M., Marosin, D., Bex, F., Ghanavati, S.: RationalGRL: a framework for rationalizing goal models using argument diagrams. In: Comyn-Wattiau, I., Tanaka, K., Song, I.-Y., Yamamoto, S., Saeki, M. (eds.) ER 2016. LNCS, vol. 9974, pp. 553–560. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46397-1_43
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
1 Electronic supplementary material
Below is the link to the electronic supplementary material.
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
ElRakaiby, Y., Borgida, A., Ferrari, A., Mylopoulos, J. (2020). A Refinement Calculus for Requirements Engineering Based on Argumentation Theory. In: Dobbie, G., Frank, U., Kappel, G., Liddle, S.W., Mayr, H.C. (eds) Conceptual Modeling. ER 2020. Lecture Notes in Computer Science(), vol 12400. Springer, Cham. https://doi.org/10.1007/978-3-030-62522-1_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-62522-1_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-62521-4
Online ISBN: 978-3-030-62522-1
eBook Packages: Computer ScienceComputer Science (R0)