skip to main content
research-article

Agile requirements engineering via paraconsistent reasoning

Published: 01 July 2014 Publication History

Abstract

Innovative companies need an agile approach towards product and service requirements, to rapidly respond to and exploit changing conditions. The agile approach to requirements must nonetheless be systematic, especially with respect to accommodating legal and non-functional requirements. This paper examines how to support lightweight, agile requirements processes which can still be systematically modeled, analyzed and changed. We propose a framework, RE-KOMBINE, which is based on a propositional language for requirements modeling called Techne. We define operations on Techne models which tolerate the presence of inconsistencies. This paraconsistent reasoning is vital for supporting delayed commitment to particular design solutions. We evaluate these operations with an industry case study using two well-known formal analysis tools. Our evaluations show that the proposed framework scales to industry-sized requirements model, while still retaining (via propositional logic) the informality that is so useful during early requirements analysis.

Abstract

Highlights

Motivates importance of managing software variability via paraconsistent reasoning.
Introduces RE-KOMBINE for solving inconsistent requirements problems.
Creates language T1 for expressing inconsistent requirements problems.
Specifies and implements operators for querying requirements problems.
Evaluates the RE-KOMBINE framework with a retrospective industrial case study.

References

[1]
N.A. Ernst, A. Borgida, J. Mylopoulos, I. Jureta, Agile requirements evolution via paraconsistent reasoning, in: International Conference on Advanced Information Systems Engineering, Gdansk, Poland, 2012.
[2]
M. Jarke, P. Loucopoulos, K. Lyytinen, J. Mylopoulos, W.N. Robinson, The brave new world of design requirements: four key principles, in: International Conference Advanced Informations Systems Engineering, Hammaret, Tunisia, 2010, pp. 470–482. URL https://doi.org/10.1007/978-3-642-13094-6http://dblp.uni-trier.de/db/conf/caise/caise2010.html#JarkeLLMR10 〉.
[3]
S. Mcgee, D. Greer, Software requirements change taxonomy: evaluation by case study, in: International Conference on Requirements Engineering, Trento, Italy, 2011.
[4]
B. Ramesh, L. Cao, R. Baskerville, Agile requirements engineering practices and challenges, Information Systems Journal 20 (5) (2010) 449–480,.
[5]
IEEE Software Engineering Standards Committee, IEEE Recommended Practice for Software Requirements Specifications, Technical Report, IEEE, 1998.
[6]
A. van Lamsweerde, E. Letier, R. Darimont, Managing conflicts in goal-driven requirements engineering, Transactions on Software Engineering 24 (11) (1998) 908–926,.
[7]
R. Sebastiani, P. Giorgini, J. Mylopoulos, Simple and minimum-cost satisfiability for goal models, in: International Conference on Advanced Informations Systems Engineering, Riga, Latvia, 2004, pp. 20–35. URL 〈 https://doi.org/10.1007/b98058 〉.
[8]
K. Sullivan, P. Chalasani, S. Jha, Software design as an investment activity: a real options perspective, in: Real Options and Business Strategy: Applications to Decision Making, 1999, pp. 215–262.
[9]
N.A. Ernst, A. Borgida, I. Jureta, Finding incremental solutions for evolving requirements, in: International Conference on Requirements Engineering, Trento, Italy, 2011.
[10]
R. Wieringa, N. Maiden, N. Mead, C. Rolland, Requirements engineering paper classification and evaluation criteria, Requirements Engineering Journal 11 (1) (2006) 102–107.
[11]
W.N. Robinson, S.D. Pawlowski, V. Volkov, Requirements interaction management, ACM Computing Surveys 35 (2) (2003) 132. URL 〈 http://portal.acm.org/citation.cfm?id=857079 〉.
[12]
S.M. Easterbrook, B. Nuseibeh, Managing inconsistencies in an evolving specification, in: International Conference on Requirements Engineering, York, England, 1995, pp. 48–55. URL 〈 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=512545 〉.
[13]
D. Zowghi, V. Gervasi, On the interplay between consistency, completeness, and correctness in requirements evolution, Information and Software Technology 45 (14) (2003) 993–1009,. URL 〈 http://www.sciencedirect.com/science/article/B6V0B-492W03S-2/2/e78a8f88512c8927d98a3cb042b4eebb 〉.
[14]
B. Nuseibeh, S.M. Easterbrook, A. Russo, Making inconsistency respectable in software development, Journal of Systems and Software 58 (2) (2001) 171–180,. URL 〈 http://www.sciencedirect.com/science/article/B6V0N-43RHW98-9/2/c3ddc41fdcf7e06032699f48ba18ad70 〉.
[15]
H. Thimbleby, Delaying commitment, IEEE Software 5 (3) (1988) 78–86,. URL 〈 http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=2027 〉.
[16]
P. Zave, M. Jackson, Four dark corners of requirements engineering, ACM Transactions on Software Engineering and Methodology 6 (1997) 1–30. URL 〈 http://www.cs.toronto.edu/~nernst/papers/zave97req.pdf 〉.
[17]
N. Rescher, R. Manor, On inference from inconsistent premisses, Theory and Decision 1 (2) (1970) 179–217,. URL 〈 http://www.springerlink.com/content/g3069245573x45u6/ 〉.
[18]
R. Fagin, J. Ullman, M. Vardi, On the semantics of updates in databases (preliminary report), in: International Symposium on Principles of Database Systems (PODS), Atlanta, 1983, pp. 352–365.
[19]
D. Lembo, M. Lenzerini, R. Rosati, M. Ruzzi, D. Savo, Inconsistency-tolerant semantics for description logics, in: Web Reasoning and Rule Systems, 2010, pp. 103–117.
[20]
N.D. Belnap, A Useful Four-Valued Logic, D. Reidel Publishing Co., 1977, pp. 7–37.
[21]
L. Chung, J. Mylopoulos, B.A. Nixon, Representing and using nonfunctional requirements, Transactions on Software Engineering 18 (1992) 483–497. 〈 https://doi.org/10.1109/32.142871 〉.
[22]
D. Zowghi, R. Offen, A logical framework for modeling and reasoning about the evolution of requirements, in: International Conference on Requirements Engineering, 1997, pp. 247–257. URL 〈 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=566875 〉.
[23]
A. Ghose, Formal tools for managing inconsistency and change in RE, in: International Workshop on Software Specification and Design, 2000, pp. 171–181. https://doi.org/10.1109/IWSSD.2000.891138. URL 〈 http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=891138 〉.
[24]
P. Besnard, A. Hunter, Quasi-classical logic, in: C. Froideveaux, J. Kohlas (Eds.), Symbolic and Quantitative Approaches to Uncertainty, Springer, 1995.
[25]
A. Hunter, B. Nuseibeh, Managing inconsistent specifications: reasoning, analysis, and action, ACM Transactions on Software Engineering and Methodology 7 (4) (1998). URL 〈 http://portal.acm.org/citation.cfm?id=292182.292187 〉.
[26]
D. Gabbay, Labelled deductive systems: a position paper, in: Proceedings of the Logic Colloquium, 1993.
[27]
I.J. Jureta, A. Borgida, N.A. Ernst, J. Mylopoulos, Techne: towards a new generation of requirements modeling languages with goals, preferences, and inconsistency handling, in: International Conference on Requirements Engineering, Sydney, Australia, 2010.
[28]
R. Darimont, A. van Lamsweerde, Formal refinement patterns for goal-driven requirements elaboration, in: SIGSOFT FSE, 1996.
[29]
E.S.K. Yu, J. Mylopoulos, Understanding “Why” in software process modelling, analysis, and design, in: Proceedings of the 16th International Conference on Software Engineering, 1994, pp. 159–168.
[30]
A. Dardenne, A. van Lamsweerde, S. Fickas, Goal-directed requirements acquisition, Science of Computer Programming 20 (1–2) (1993) 3–50,.
[31]
A. Hunter, B. Nuseibeh, Analysing inconsistent specifications, in: International Conference on Requirements Engineering, Annapolis, MD, 1997, pp. 78–86. https://doi.org/10.1109/ISRE.1997.566844 URL 〈 http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=566844 〉.
[32]
A.R. Anderson, N. Belnap, Entailment, Princeton University Press, 1975.
[33]
J. de Kleer, An assumption-based TMS, Artificial Intelligence 28 (2) (1986) 127–162,.
[34]
PCI Security Standards Council, PCI DSS Requirements and Security Assessment Procedures, Version 2.0, Technical Report, PCI, Boston, October 2010. URL 〈 https://www.pcisecuritystandards.org/security_standards/documents.php?document=pci_dss_v2-0#pci_dss_v2-0 〉.
[35]
R. O'Callaghan, Fixing the payment system at Alvalade XXI, Journal of Information Technology 22 (4) (2007) 399–409,. URL 〈 http://www.palgrave-journals.com/jit/journal/v22/n4/full/2000116a.html 〉.
[36]
S. Liaskos, A. Lapouchnian, Y. Yu, E.S. Yu, J. Mylopoulos, On Goal-based Variability Acquisition and Analysis, in: International Conference on Requirements Engineering, Minneapolis, MN, 2006. URL 〈 http://www.cs.toronto.edu/~jaranda/draftpapers/VarInt.pdf 〉.
[37]
A. van Lamsweerde, Goal-oriented requirements engineering: a roundtrip from research to practice, in: International Conference on Requirements Engineering, 2004, pp. 4–7. URL 〈 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1335648 〉.
[38]
R.K. Yin, Case Study Research: Design and Methods, Applied Social Research Methods Series, vol. 5, 4th edition, Sage Publications, Inc, Beverly Hills, CA, 2009.
[39]
P. Giorgini, J. Mylopoulos, E. Nicchiarelli, R. Sebastiani, Formal reasoning techniques for goal models, Journal on Data Semantics 2800 (2003) 1–20. URL 〈 http://www.springerlink.com/content/nfe4tm8u9vt5j12d 〉.
[40]
M. Poppleton, L. Groves, Software evolution with refinement and retrenchment, in: International Workshop on Refinement of Critical Systems: Methods, Tools and Developments, Turku, Finland, 2003.

Cited By

View all

Index Terms

  1. Agile requirements engineering via paraconsistent reasoning
          Index terms have been assigned to the content through auto-classification.

          Recommendations

          Comments

          Information & Contributors

          Information

          Published In

          cover image Information Systems
          Information Systems  Volume 43, Issue C
          Jul 2014
          134 pages

          Publisher

          Elsevier Science Ltd.

          United Kingdom

          Publication History

          Published: 01 July 2014

          Author Tags

          1. Paraconsistency
          2. Agile methods
          3. Software requirements
          4. Requirements evolution

          Qualifiers

          • Research-article

          Contributors

          Other Metrics

          Bibliometrics & Citations

          Bibliometrics

          Article Metrics

          • Downloads (Last 12 months)0
          • Downloads (Last 6 weeks)0
          Reflects downloads up to 18 Jan 2025

          Other Metrics

          Citations

          Cited By

          View all

          View Options

          View options

          Media

          Figures

          Other

          Tables

          Share

          Share

          Share this Publication link

          Share on social media