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

A genetic algorithm for goal-conflict identification

Published: 03 September 2018 Publication History

Abstract

Goal-conflict analysis has been widely used as an abstraction for risk analysis in goal-oriented requirements engineering approaches. In this context, where the expected behaviour of the system-to-be is captured in terms of domain properties and goals, identifying combinations of circumstances that may make the goals diverge, i.e., not to be satisfied as a whole, is of most importance.
Various approaches have been proposed in order to automatically identify boundary conditions, i.e., formulas capturing goal-divergent situations, but they either apply only to some specific goal expressions, or are affected by scalability issues that make them applicable only to relatively small specifications. In this paper, we present a novel approach to automatically identify boundary conditions, using evolutionary computation. More precisely, we develop a genetic algorithm that, given the LTL formulation of the domain properties and the goals, it searches for formulas that capture divergences in the specification. We exploit a modern LTL satisfiability checker to successfully guide our genetic algorithm to the solutions. We assess our technique on a set of case studies, and show that our genetic algorithm is able to find boundary conditions that cannot be generated by related approaches, and is able to efficiently scale to LTL specifications that other approaches are unable to deal with.

References

[1]
Java genetic algorithms package (jgap). http://jgap.sourceforge.net.
[2]
The reactive synthesis competition. www.syntcomp.org.
[3]
Synthesis competition repository. https://bitbucket.org/swenjacobs/syntcomp/.
[4]
Dalal Alrajeh, Jeff Kramer, Axel van Lamsweerde, Alessandra Russo, and Sebastián Uchitel. Generating obstacle conditions for requirements completeness. In 34th International Conference on Software Engineering, ICSE 2012, June 2-9, 2012, Zurich, Switzerland, pages 705–715, 2012.
[5]
Rajeev Alur, Salar Moarref, and Ufuk Topcu. Counter-strategy guided refinement of GR(1) temporal logic specifications. CoRR, abs/1308.4113, 2013.
[6]
Adrian Beer, Stephan Heidinger, Uwe Kühne, Florian Leitner-Fischer, and Stefan Leue. Symbolic causality checking using bounded model checking. In Proc. of the 22nd Intl. Sym. on Model Checking Software, pages 203–221, 2015.
[7]
Roderick Bloem, Alessandro Cimatti, Karin Greimel, Georg Hofferek, Robert Könighofer, Marco Roveri, Viktor Schuppan, and Richard Seeber. RATSY - A new requirements analysis tool with synthesis. In CAV, volume 6174 of Lecture Notes in Computer Science, pages 425–429. Springer, 2010.
[8]
Antoine Cailliau and Axel van Lamsweerde. A probabilistic framework for goaloriented risk analysis. In 2012 20th IEEE International Requirements Engineering Conference (RE), Chicago, IL, USA, September 24-28, 2012, pages 201–210, 2012.
[9]
Antoine Cailliau and Axel van Lamsweerde. Integrating exception handling in goal models. In IEEE 22nd International Requirements Engineering Conference, RE 2014, Karlskrona, Sweden, August 25-29, 2014, pages 43–52, 2014.
[10]
Antoine Cailliau and Axel van Lamsweerde. Handling knowledge uncertainty in risk-based requirements engineering. In 23rd IEEE International Requirements Engineering Conference, RE 2015, Ottawa, ON, Canada, August 24-28, 2015, pages 106–115, 2015.
[11]
A. Cimatti, M. Roveri, V. Schuppan, and A. Tchaltsev. Diagnostic information for realizability. In Proc. of the 9th Intl. Conf. on Verification, Model Checking, and Abstract Interpretation, pages 52–67, 2008.
[12]
Renzo Degiovanni, Pablo F. Castro, Marcelo Arroyo, Marcelo Ruiz, Nazareno Aguirre, and Marcelo F. Frias. Goal-conflict likelihood assessment based on model counting. In Proceedings of the 40th International Conference on Software Engineering, ICSE 2018, Gothenburg, Sweden, May 27 - June 03, 2018, pages 1125– 1135, 2018.
[13]
Renzo Degiovanni, Nicolás Ricci, Dalal Alrajeh, Pablo F. Castro, and Nazareno Aguirre. Goal-conflict detection based on temporal satisfiability checking. In Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, ASE 2016, Singapore, September 3-7, 2016, pages 507–518, 2016.
[14]
Nicolás Roque D’Ippolito, Victor Braberman, Nir Piterman, and Sebastián Uchitel. Synthesis of live behaviour models. In Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE ’10, pages 77–86, New York, NY, USA, 2010. ACM.
[15]
Matthew B. Dwyer, George S. Avrunin, and James C. Corbett. Patterns in property specifications for finite-state verification. In ICSE, pages 411–420, 1999.
[16]
Christian Ellen, Sven Sieverding, and Hardi Hungar. Detecting consistencies and inconsistencies of pattern-based functional requirements. In Proc. of the 19th Intl. Conf. on Formal Methods for Industrial Critical Systems, pages 155–169, 2014.
[17]
Neil A. Ernst, Alexander Borgida, John Mylopoulos, and Ivan J. Jureta. Agile requirements evolution via paraconsistent reasoning. In Proc. of the 24th Intl. Conf. on Advanced Information Systems Engineering, pages 382–397, 2012.
[18]
Amy P. Felty and Kedar S. Namjoshi. Feature specification and automated conflict detection. ACM TOSEM, 12(1):3–27, 2003.
[19]
A. Finkelstein and J. Dowell. A comedy of errors: The london ambulance service case study. In Proceedings of the 8th International Workshop on Software Specification and Design, IWSSD ’96, pages 2–, Washington, DC, USA, 1996. IEEE Computer Society.
[20]
Carlo Ghezzi, Mehdi Jazayeri, and Dino Mandrioli. Fundamentals of Software Engineering. Prentice Hall PTR, Upper Saddle River, NJ, USA, 2nd edition, 2002.
[21]
Dimitra Giannakopoulou and Flavio Lerda. From states to transitions: Improving translation of LTL formulae to büchi automata. In Formal Techniques for Networked and Distributed Systems - FORTE 2002, 22nd IFIP WG 6.1 International Conference Houston, Texas, USA, November 11-14, 2002, Proceedings, pages 308–326, 2002.
[22]
Paolo Giorgini, John Mylopoulos, and Roberto Sebastiani. Goal-oriented requirements analysis and reasoning in the tropos methodology. Engineering Applications of Artificial Intelligence, 18(2):159 – 171, 2005.
[23]
D. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley, 1989.
[24]
David Harel, Hillel Kugler, and Amir Pnueli. Synthesis revisited: Generating statechart models from scenario-based requirements. In Formal Methods in Software and Systems Modeling: Essays Dedicated to Hartmut Ehrig on the Occasion of His 60th Birthday, pages 309–324, 2005.
[25]
J.H. Hausmann, R. Heckel, and G. Taentzer. Detection of conflicting functional requirements in a use case-driven approach. In ICSE, pages 105–115, 2002.
[26]
Sebastian J.I. Herzig and Christiaan J.J. Paredis. A conceptual basis for inconsistency management in model-based systems engineering. Procedia CIRP, 21:52 – 57, 2014.
[27]
Pankaj Jalote. An Integrated Approach to Software Engineering. Texts in Computer Science. Springer, 2005.
[28]
I. J. Jureta, A. Borgida, N. A. Ernst, and J. Mylopoulos. Techne: Towards a new generation of requirements modeling languages with goals, preferences, and inconsistency handling. In Proc. of the 18th IEEE International Requirements Engineering Conference, pages 115–124, 2010.
[29]
M. Kamalrudin. Automated software tool support for checking the inconsistency of requirements. In ASE, pages 693–697, 2009.
[30]
Massila Kamalrudin, John Hosking, and John Grundy. Improving requirements quality using essential use case interaction patterns. In ICSE, pages 531–540, 2011.
[31]
Uri Klein, Nir Piterman, and Amir Pnueli. Effective synthesis of asynchronous systems from GR(1) specifications. In Verification, Model Checking, and Abstract Interpretation - 13th International Conference, VMCAI 2012, Philadelphia, PA, USA, January 22-24, 2012. Proceedings, pages 283–298, 2012.
[32]
J. Kramer, J. Magee, M. Sloman, and A. Lister. CONIC: an integrated approach to distributed computer control systems. Computers and Digital Techniques, IEE Proceedings E, 130(1):1+, 1983.
[33]
Emmanuel Letier. Reasoning about agents in goal-oriented requirements engineering, 2001.
[34]
Jianwen Li, Shufang Zhu, Geguang Pu, and Moshe Y. Vardi. Sat-based explicit LTL reasoning. CoRR, abs/1507.02519, 2015.
[35]
C. L. Liu. Ontology-based conflict analysis method in non-functional requirements. In Proc. of the 9th IEEE/ACIS Intl. Conf. on Computer and Information Science, pages 491–496, 2010.
[36]
Dewi Mairiza and Didar Zowghi. Constructing a catalogue of conflicts among nonfunctional requirements. In Proc. of the Intl. Conf. Evaluation of Novel Approaches to Software Engineering, pages 31–44, 2011.
[37]
Zohar Manna and Amir Pnueli. The Temporal Logic of Reactive and Concurrent Systems. Springer-Verlag New York, Inc., New York, NY, USA, 1992.
[38]
Zohar Manna and Amir Pnueli. Temporal verification of reactive systems: safety. Springer-Verlag New York, Inc., New York, NY, USA, 1995.
[39]
Zohar Manna and Pierre Wolper. Synthesis of communicating processes from temporal logic specifications. In Dexter Kozen, editor, Logics of Programs, pages 253–281, Berlin, Heidelberg, 1982. Springer Berlin Heidelberg.
[40]
Z. Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs. Springer, 1996.
[41]
P.K. Murukannaiah, A.K. Kalia, P.R. Telangy, and M.P. Singh. Resolving goal conflicts via argumentation-based analysis of competing hypotheses. In Proc. 23rd IEEE Int. Requirements Engineering Conf., pages 156–165, 2015.
[42]
J. Mylopoulos, L. Chung, and B. Nixon. Representing and using nonfunctional requirements: A process-oriented approach. IEEE Trans. Softw. Eng., 18(6):483– 497, June 1992.
[43]
Tuong Huan Nguyen, Bao Quoc Vo, Markus Lumpe, and John Grundy. KBRE: a framework for knowledge-based requirements engineering. Software Quality Journal, 22(1):87–119, 2013.
[44]
Bashar Nuseibeh and Alessandra Russo. Using abduction to evolve inconsistent requirements specification. Australasian Journal of Information Systems, 6(2), 1999.
[45]
Suchismita Roy, Sayantan Das, Prasenjit Basu, Pallab Dasgupta, and P. P. Chakrabarti. Sat based solutions for consistency problems in formal property specifications for open systems. In CAD, pages 885–888, 2005.
[46]
Kristin Y. Rozier and Moshe Y. Vardi. LTL satisfiability checking. STTT, 12(2):123– 137, 2010.
[47]
Viktor Schuppan. Towards a notion of unsatisfiable and unrealizable cores for ltl. Sci. Comput. Program., 77(7-8):908–939, July 2012.
[48]
Ilya Shlyakhter, Robert Seater, Daniel Jackson, Manu Sridharan, and Mana Taghdiri. Debugging overconstrained declarative models using unsatisfiable cores. In ASE, pages 94–105, 2003.
[49]
Monique Snoeck, Cindy Michiels, and Guido Dedene. Consistency by construction: The case of merode. In Proc. of the ER Workshop on Conceptual Modeling for Novel Application Domains, pages 105–117, 2003.
[50]
Allison Sullivan, Kaiyuan Wang, Razieh Nokhbeh Zaeem, and Sarfraz Khurshid. Automated test generation and mutation testing for alloy. In 2017 IEEE International Conference on Software Testing, Verification and Validation, ICST 2017, Tokyo, Japan, March 13-17, 2017, pages 264–275, 2017.
[51]
Sebastián Uchitel, Jeff Kramer, and Jeff Magee. Synthesis of behavioral models from scenarios. IEEE Trans. Software Eng., 29(2):99–115, 2003.
[52]
Axel van Lamsweerde. Requirements Engineering - From System Goals to UML Models to Software Specifications. Wiley, 2009.
[53]
Axel van Lamsweerde, Robert Darimont, and Emmanuel Letier. Managing conflicts in goal-driven requirements engineering. IEEE Trans. Software Eng., 24(11):908–926, 1998.
[54]
Axel van Lamsweerde and Emmanuel Letier. Integrating obstacles in goal-driven requirements engineering. In Proceedings of the 20th International Conference on Software Engineering, ICSE ’98, pages 53–62, Washington, DC, USA, 1998. IEEE Computer Society.
[55]
ASE ’18, September 3–7, 2018, Montpellier, France R. Degiovanni, F. Molina, G. Regis, and N. Aguirre
[56]
Axel van Lamsweerde and Emmanuel Letier. Handling obstacles in goal-oriented requirements engineering. IEEE Trans. Softw. Eng., 26(10):978–1005, October 2000.

Cited By

View all
  • (2024)Translation Titans, Reasoning Challenges: Satisfiability-Aided Language Models for Detecting Conflicting RequirementsProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695302(2294-2298)Online publication date: 27-Oct-2024
  • (2024)Learning to Check LTL Satisfiability and to Generate Traces via Differentiable Trace CheckingProceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3650212.3680337(996-1008)Online publication date: 11-Sep-2024
  • (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
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '18: Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering
September 2018
955 pages
ISBN:9781450359375
DOI:10.1145/3238147
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 the author(s) 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

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 03 September 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Genetic Algorithms
  2. Goal Conflicts
  3. LTL Satisfiability

Qualifiers

  • Research-article

Conference

ASE '18
Sponsor:

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)1
Reflects downloads up to 17 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Translation Titans, Reasoning Challenges: Satisfiability-Aided Language Models for Detecting Conflicting RequirementsProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695302(2294-2298)Online publication date: 27-Oct-2024
  • (2024)Learning to Check LTL Satisfiability and to Generate Traces via Differentiable Trace CheckingProceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis10.1145/3650212.3680337(996-1008)Online publication date: 11-Sep-2024
  • (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)SpecBCFuzz: Fuzzing LTL Solvers with Boundary ConditionsProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639087(1-13)Online publication date: 20-May-2024
  • (2024)A Scalable Approach to Detecting Safety Requirements Inconsistencies for Railway SystemsIEEE Transactions on Intelligent Transportation Systems10.1109/TITS.2024.341886425:8(8375-8386)Online publication date: Aug-2024
  • (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)Checking LTL Satisfiability via End-to-end Learning37th IEEE/ACM International Conference on Automated Software Engineering10.1145/3551349.3561163(1-13)Online publication date: 5-Jan-2023
  • (2023)SAT-Verifiable LTL Satisfiability Checking via Graph Representation Learning2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00173(1761-1765)Online publication date: 11-Sep-2023
  • (2023)Computing minimal unsatisfiable core for LTL over finite tracesJournal of Logic and Computation10.1093/logcom/exad049Online publication date: 4-Aug-2023
  • (2023)Goal model convergence and conflict detection for crossover servicesJournal of Systems and Software10.1016/j.jss.2023.111625199(111625)Online publication date: May-2023
  • Show More Cited By

View Options

Get Access

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