Skip to main content

A Refinement Calculus for Requirements Engineering Based on Argumentation Theory

  • Conference paper
  • First Online:
Conceptual Modeling (ER 2020)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 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. 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. 3.

    When clear from the context, we will henceforth drop the subscript \(\mathrm {RG}\).

  4. 4.

    This is available in a technical report providing further details on the application of CaRE  [19].

References

  1. Ross, D.T.: Structured analysis (SA): a language for communicating ideas. IEEE TSE 1, 16–34 (1977)

    Google Scholar 

  2. Bubenko Jr, J.A.: Validation and verification aspects of information modeling. In: Proceedings of the VLDB, pp. 556–566 (1977)

    Google Scholar 

  3. Dardenne, A., van Lamsweerde, A., Fickas, S.: Goal-directed requirements acquisition. Sci. Comput. Program. 20(1–2), 3–50 (1993)

    Article  Google Scholar 

  4. 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)

    Google Scholar 

  5. Elrakaiby, Y., Ferrari, A., Mylopoulos, J.: Care: a refinement calculus for requirements engineering based on argumentation semantics. In: RE 2008, pp. 364–369 (2018)

    Google Scholar 

  6. IEEE Recommended Practice for Software Requirements Specifications. IEEE Std 830-1998, pp. 1–40 (1998)

    Google Scholar 

  7. ISO/IEC/IEEE international standard - systems and software engineering - life cycle processes - requirements engineering. ISO/IEC/IEEE 29148:2011(E) (2011)

    Google Scholar 

  8. Hunter, A., Nuseibeh, B.: Managing inconsistent specifications: reasoning, analysis, and action. ACM Trans. Softw. Eng. Methodol. 7(4), 335–367 (1998)

    Article  Google Scholar 

  9. van Lamsweerde, A.: Handling obstacles in goal-oriented requirements engineering. IEEE TSE 26(10), 978–1005 (2000)

    Google Scholar 

  10. Jackson, M., Zave, P.: Deriving specifications from requirements: an example. In: ICSE 1995, p. 15. IEEE (1995)

    Google Scholar 

  11. Hegel, G.W.F.: Ph’anomenologie des Geistes (1807)

    Google Scholar 

  12. Potts, C., Takahashi, K., Anton, A.I.: Inquiry-based requirements analysis. IEEE Softw. 11(2), 21–32 (1994)

    Article  Google Scholar 

  13. 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)

    MathSciNet  MATH  Google Scholar 

  14. 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

    Chapter  Google Scholar 

  15. 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

    Chapter  Google Scholar 

  16. 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

    Chapter  MATH  Google Scholar 

  17. Modgil, S., Prakken, H.: The ASPIC+ framework for structured argumentation: a tutorial. Argum. Comput. 5, 31–62 (2014)

    Article  Google Scholar 

  18. Caminada, M., Amgoud, L.: On the evaluation of argumentation formalisms. Artif. Intell. 171(5–6), 286–310 (2007)

    Article  MathSciNet  Google Scholar 

  19. 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

  20. 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)

    Google Scholar 

  21. 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)

    Google Scholar 

  22. 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)

    Google Scholar 

  23. Jureta, I.J., Mylopoulos, J., Faulkner, S.: Analysis of multi-party agreement in requirements validation. In: RE 2009, pp. 57–66 (2009)

    Google Scholar 

  24. Ingolfo, S., Siena, A., Mylopoulos, J., Susi, A., Perini, A.: Arguing regulatory compliance of software requirements. DKE 87, 279–296 (2013)

    Article  Google Scholar 

  25. Bagheri, E., Ensan, F.: Consolidating multiple requirement specifications through argumentation. In: ACM SAC, pp. 659–666 (2011)

    Google Scholar 

  26. 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)

    Google Scholar 

  27. 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

    Article  Google Scholar 

  28. 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)

    Google Scholar 

  29. 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

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yehia ElRakaiby .

Editor information

Editors and Affiliations

1 Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (pdf 222 KB)

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics