Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3377811.3380927acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Adapting requirements models to varying environments

Published: 01 October 2020 Publication History

Abstract

The engineering of high-quality software requirements generally relies on properties and assumptions about the environment in which the software-to-be has to operate. Such properties and assumptions, referred to as environment conditions in this paper, are highly subject to change over time or from one software variant to another. As a consequence, the requirements engineered for a specific set of environment conditions may no longer be adequate, complete and consistent for another set.
The paper addresses this problem through a tool-supported requirements adaptation technique. A goal-oriented requirements modelling framework is considered to make requirements' refinements and dependencies on environment conditions explicit. When environment conditions change, an adapted goal model is computed that is correct with respect to the new environment conditions. The space of possible adaptations is not fixed a priori; the required changes are expected to meet one or more environment-independent goal(s) to be satisfied in any version of the system. The adapted goal model is generated using a new counterexample-guided learning procedure that ensures the correctness of the updated goal model, and prefers more local adaptations and more similar goal models.

References

[1]
[n. d.]. ([n. d.]). http://formal.cs.utah.edu:8080/pbl/PBL.php.
[2]
European Environment Agency. 2019. Low Emission Zones. (2019). http://urbanaccessregulations.eu/low-emission-zones-main/.
[3]
Germán H Alférez and Vicente Pelechano. 2012. Dynamic Evolution of Context-Aware Systems with Models at Runtime. In MoDELS. Springer, 70--86.
[4]
Raian Ali, Fabiano Dalpiaz, and Paolo Giorgini. 2010. A goal-based framework for contextual requirements modeling and analysis. Requirements Engineering 15, 4 (2010), 439--458.
[5]
Raian Ali, Fabiano Dalpiaz, Paolo Giorgini, and Vítor E. Silva Souza. 2011. Requirements Evolution: From Assumptions to Reality. In Proceedings of the 12th International Conference Enterprise, Business-Process and Information Systems Modeling. 372--382.
[6]
Dalal Alrajeh, Jeff Kramer, Alessandra Russo, and Sebastián Uchitel. 2009. Learning operational requirements from goal models. In Proceedings of the 31st International Conference on Software Engineering, ICSE 2009, May 16--24, 2009, Vancouver, Canada, Proceedings. 265--275.
[7]
Dalal Alrajeh, Jeff Kramer, Axel Van Lamsweerde, Alessandra Russo, and Sebastián Uchitel. 2012. Generating obstacle conditions for requirements completeness. In Software Engineering (ICSE), 2012 34th International Conference on. IEEE, 705--715.
[8]
Dalal Alrajeh, Axel van Lamsweerde, Jeff Kramer, Alessandra Russo, and Sebastián Uchitel. 2016. Risk-driven revision of requirements models. In Proceedings of the 38th International Conference on Software Engineering. 855--865.
[9]
Konstantinos Angelopoulos, Vítor E. Silva Souza, and John Mylopoulos. 2015. Capturing Variability in Adaptation Spaces: A Three-Peaks Approach. In Proceedings of the 34th International Conference Conceptual Modeling. 384--398.
[10]
Duangtida Athakravi, Dalal Alrajeh, Krysia Broda, Alessandra Russo, and Ken Satoh. 2014. Inductive Learning Using Constraint-Driven Bias. In Inductive Logic Programming - 24th International Conference, ILP 2014, Nancy, France, September 14--16, 2014, Revised Selected Papers. 16--32.
[11]
Duangtida Athakravi, Domenico Corapi, Krysia Broda, and Alessandra Russo. 2013. Learning Through Hypothesis Refinement Using Answer Set Programming. In Inductive Logic Programming - 23rd International Conference (ILP). 31--46.
[12]
Armin Biere, Alessandro Cimatti, Edmund Clarke, and Yunshan Zhu. 1999. Symbolic Model Checking without BDDs. In Tools and Algorithms for the Construction and Analysis of Systems, W. Rance Cleaveland (Ed.). Springer Berlin Heidelberg, 193--207.
[13]
Jim Buckley, Tom Mens, Matthias Zenger, Awais Rashid, and Günter Kniesel. 2005. Towards a Taxonomy of Software Change. Journal of Software Maintenance and Evolution: Research and Practice 17, 5 (2005), 309--332.
[14]
Antoine Cailliau and Axel Van Lamsweerde. 2019. Runtime Monitoring and Resolution of Probabilistic Obstacles to System Goals. ACM Trans. Auton. Adapt. Syst. 14, 1 (2019), 3:1--3:40.
[15]
Antoine Cailliau and Axel van Lamsweerde. 2014. Integrating exception handling in goal models. In Requirements Engineering Conference (RE), 2014 IEEE 22nd International. IEEE, 43--52.
[16]
Alessandro Cimatti, Edmund M. Clarke, Enrico Giunchiglia, Fausto Giunchiglia, Marco Pistore, Marco Roveri, Roberto Sebastiani, and Armando Tacchella. 2002. NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In Proceedings of the 14th International Conference on Computer Aided Verification (CAV '02). Springer-Verlag, 359--364.
[17]
Paul Clements and Linda Northrop. 2001. Software Product Lines: Practices and Patterns. Addison-Wesley Professional.
[18]
Domenico Corapi. 2011. Nonmonotonic Inductive Logic Programming as Abductive Search. Ph.D. Dissertation. Imperial College London.
[19]
Robert Darimont. 2014. GORE/KAOS in the industry: Lessons learnt. (2014). https://refsq.org/2014/2014/files/Robert-Darimont-GORE.pdf.
[20]
Neil A. Ernst, Alexander Borgida, and Ivan Jureta. 2011. Finding incremental solutions for evolving requirements. In Proceedings of the IEEE 19th International Requirements Engineering Conference. 15--24.
[21]
Pranav Garg, Christof Löding, P. Madhusudan, and Daniel Neider. 2014. ICE: A Robust Framework for Learning Invariants. In Proceedings of the 26th International Conference on Computer Aided Verification. 69--87.
[22]
Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub. 2014. Clingo = ASP + Control: Preliminary Report. CoRR abs/1405.3694 (2014).
[23]
Martin Gebser, Benjamin Kaufmann, Roland Kaminski, Max Ostrowski, Torsten Schaub, and Marius Schneider. 2011. Potassco: The Potsdam Answer Set Solving Collection. AI Commun. 24, 2 (2011), 107--124.
[24]
Carlo Ghezzi and Amir Molzam Sharifloo. 2013. Dealing with non-functional requirements for adaptive systems via dynamic software product-lines. In Software Engineering for Self-Adaptive Systems II. Springer, 191--213.
[25]
Joel Greenyer, Daniel Gritzner, David Harel, and Assaf Marron. 2018. Towards Automated Defect Analysis Using Execution Traces of Scenario-Based Models. In Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development MODELSWARD. 335--354.
[26]
Jilles Van Gurp, Jan Bosch, and Mikael Svahnberg. 2001. On the Notion of Variability in Software Product Lines. In Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA '01). IEEE Computer Society, Washington, DC, USA, 45--.
[27]
Mike Hinchey, Sooyong Park, and Klaus Schmid. 2012. Building Dynamic Software Product Lines. Computer 45, 10 (Oct. 2012), 22--26.
[28]
Paola Inverardi and Marco Mori. 2011. Requirements models at run-time to support consistent system evolutions. In Requirements@ Run. Time (RE@ RunTime), 2011 2nd International Workshop on. IEEE, 1--8.
[29]
Michael Jackson. 1995. Software Requirements and Specifications: A Lexicon of Practice, Principles and Prejudices. ACM Press/Addison-Wesley Publishing Co., New York, NY, USA.
[30]
Shalinka Jayatilleke and Richard Lai. 2018. A systematic review of requirements change management. Information and Software Technology 93 (2018), 163 -- 185.
[31]
Ivan J. Jureta, Alexander Borgida, Neil A. Ernst, and John Mylopoulos. 2014. The Requirements Problem for Adaptive Systems. ACM Trans. Manage. Inf. Syst. 5, 3 (2014), 17:1--17:33.
[32]
Ron Koymans. 1990. Specifying Real-time Properties with Metric Temporal Logic. Real-Time Syst. 2, 4 (1990), 255--299.
[33]
Ron Koymans. 1992. Specifying message passing and time-critical systems with temporal logic. Vol. 651. Springer Science & Business Media.
[34]
Alexei Lapouchnian and John Mylopoulos. 2009. Modeling Domain Variability in Requirements Engineering with Contexts. In Proceedings of the 28th International Conference on Conceptual Modeling. 115--130.
[35]
John W. Lloyd. 1987. Foundations of Logic Programming. Springer-Verlag.
[36]
James Lockerbie, Neil Arthur Maiden, Jorgen Engmann, Debbie Randall, Sean Jones, and David Bush. 2012. Exploring the Impact of Software Requirements on System-wide Goals: A Method Using Satisfaction Arguments and I* Goal Modelling. Requir. Eng. 17, 3 (Sept. 2012), 227--254.
[37]
Zohar Manna and Amir Pnueli. 1992. The Temporal Logic of Reactive and Concurrent Systems. Springer-Verlag.
[38]
Stephen H. Muggleton and Christopher H. Bryant. 2000. Theory Completion Using Inverse Entailment. In Proceedings of 10th International Conference on Inductive Logic Programming. LNCS, Vol. 1866. 130--146.
[39]
Chi Mai Nguyen, Roberto Sebastiani, Paolo Giorgini, and John Mylopoulos. 2016. Requirements evolution and evolution requirements with constrained goal models. In Proceedings of the 35th International Conference Conceptual Modeling. Springer, 544--552.
[40]
Bashar Nuseibeh and Steve Easterbrook. 2000. Requirements Engineering: A Roadmap. In Proceedings of the Conference on The Future of Software Engineering (ICSE '00). ACM, New York, NY, USA, 35--46.
[41]
Christophe Ponsard and Robert Darimont. 2017. Improving Requirements Engineering through Goal-oriented Models and Tools: Feedback from a Large Industrial Deployment. In Proceedings of the 12th International Conference on Software Technologies, ICSOFT. 372--381.
[42]
SPF Santé Publique. 2013. Manuel belge de la régulation médicale. (2013). https://www.health.belgium.be/fr/manuel-belge-de-la-regulation-medicale
[43]
RESPIRE. [n. d.]. ([n. d.]). https://www.dropbox.com/sh/wdew1sbcoqhhfe0/AACBqCRj7epEyRX9teKYZ3bpa?dl=0.
[44]
Siemens Products & Services. 2018. Low Emission Zones - Reducing air pollution where it matters. (2018). https://new.siemens.com/global/en/products/mobility/road-solutions/enforcement-and-tolling-solutions/low-emission-zone.html.
[45]
Lightfoot Solutions, Lis Nixon Associates, and Baker Tilly. 2009. Efficiency review of the Welsh Ambulance Services NHS Trust. Technical Report. http://www.wales.nhs.uk/document/171903.
[46]
Daniel Sykes, Domenico Corapi, Jeff Magee, Jeff Kramer, Alessandra Russo, and Katsumi Inoue. 2013. Learning Revised Models for Planning in Adaptive Systems. In Proceedings of the 2013 International Conference on Software Engineering. IEEE Press, 63--71.
[47]
Amos Tversky. 1977. Features of similarity. Psychological Review 84, 4 (1977), 327--35.
[48]
Axel van Lamsweerde. 2009. Requirements Engineering: From System Goals to UML Models to Software Specifications (1st ed.). Wiley Publishing.
[49]
Pamela Zave and Michael Jackson. 1997. Four Dark Corners of Requirements Engineering. ACM Transactions on Software Engineering and Methodology 6, 1 (Jan. 1997), 1--30.

Cited By

View all
  • (2024)Resolving Goal-Conflicts and Scaling Synthesis through Mode-Based DecompositionProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings10.1145/3639478.3639801(207-211)Online publication date: 14-Apr-2024
  • (2024)Sustainable Adaptive SecurityProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings10.1145/3639478.3639790(228-230)Online publication date: 14-Apr-2024
  • (2024)Using Genetic Programming to Build Self-Adaptivity into Software-Defined NetworksACM Transactions on Autonomous and Adaptive Systems10.1145/361649619:1(1-35)Online publication date: 14-Feb-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '20: Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering
June 2020
1640 pages
ISBN:9781450371216
DOI:10.1145/3377811
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

  • KIISE: Korean Institute of Information Scientists and Engineers
  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. context-dependent requirements
  2. formal verification
  3. logic-based learning
  4. requirements adaptation
  5. requirements evolution

Qualifiers

  • Research-article

Conference

ICSE '20
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)56
  • Downloads (Last 6 weeks)5
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Resolving Goal-Conflicts and Scaling Synthesis through Mode-Based DecompositionProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings10.1145/3639478.3639801(207-211)Online publication date: 14-Apr-2024
  • (2024)Sustainable Adaptive SecurityProceedings of the 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings10.1145/3639478.3639790(228-230)Online publication date: 14-Apr-2024
  • (2024)Using Genetic Programming to Build Self-Adaptivity into Software-Defined NetworksACM Transactions on Autonomous and Adaptive Systems10.1145/361649619:1(1-35)Online publication date: 14-Feb-2024
  • (2024)Automatic Deduction of the Impact of Context Variability on System Safety Goals2024 19th European Dependable Computing Conference (EDCC)10.1109/EDCC61798.2024.00015(1-8)Online publication date: 8-Apr-2024
  • (2024)Optimized Realization of Operational Requirements: A Goal-Oriented ApproachIEEE Access10.1109/ACCESS.2024.341891112(88506-88533)Online publication date: 2024
  • (2023)Efficient Difference Analysis of Guaranteeable Requirements for Fault-tolerant Self-adaptationJournal of Information Processing10.2197/ipsjjip.31.18631(186-195)Online publication date: 2023
  • (2023)Automated Repair of Unrealisable LTL Specifications Guided by Model CountingProceedings of the Genetic and Evolutionary Computation Conference10.1145/3583131.3590454(1499-1507)Online publication date: 15-Jul-2023
  • (2023)Adapting Specifications for Reactive Controllers2023 IEEE/ACM 18th Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS)10.1109/SEAMS59076.2023.00012(1-12)Online publication date: May-2023
  • (2023)Robustification of Behavioral Designs against Environmental DeviationsProceedings of the 45th International Conference on Software Engineering10.1109/ICSE48619.2023.00046(423-434)Online publication date: 14-May-2023
  • (2023)Goal Controller Synthesis for Self-Adaptive Systems2023 IEEE/ACM 11th International Conference on Formal Methods in Software Engineering (FormaliSE)10.1109/FormaliSE58978.2023.00008(1-6)Online publication date: May-2023
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media