Skip to main content
Erschienen in: Empirical Software Engineering 6/2016

27.06.2015

Improving the performance of OCL constraint solving with novel heuristics for logical operations: a search-based approach

verfasst von: Shaukat Ali, Muhammad Zohaib Iqbal, Maham Khalid, Andrea Arcuri

Erschienen in: Empirical Software Engineering | Ausgabe 6/2016

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

A common practice to specify constraints on the Unified Modeling Language (UML) models is using the Object Constraint Language (OCL). Such constraints serve various purposes, ranging from simply providing precise meaning to the models to supporting complex verification and validation activities. In many applications, these constraints have to be solved to obtain values satisfying the constraints, for example, in the case of model-based testing (MBT) to generate test data for the purpose of generating executable test cases. In our previous work, we proposed novel heuristics for various OCL constructs to efficiently solve them using search algorithms. These heuristics are enhanced in this paper to further improve the performance of OCL constraint solving. We performed an empirical evaluation comprising of three case studies using three search algorithms: Alternating Variable Method (AVM), (1 + 1) Evolutionary Algorithm (EA), and a Genetic Algorithm (GA) and in addition Random Search (RS) was used as a comparison baseline. In the first case study, we evaluated each heuristics using carefully designed artificial problems. In the second case study, we evaluated the heuristics on various constraints of Cisco’s Video Conferencing Systems defined to support MBT. Finally, the third case study is about EU-Rent Car Rental specification and is obtained from the literature. The results of the empirical evaluation showed that (1 + 1) EA and AVM with the improved heuristics significantly outperform the rest of the algorithms.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Anhänge
Nur mit Berechtigung zugänglich
Literatur
Zurück zum Zitat Aertryck Lv, Jensen T (2003) UML-Casting: test synthesis from UML models using constraint resolution. Paper presented at the Approches Formelles dans l’Assistance au Développement de Logiciels (AFADL’2003) Aertryck Lv, Jensen T (2003) UML-Casting: test synthesis from UML models using constraint resolution. Paper presented at the Approches Formelles dans l’Assistance au Développement de Logiciels (AFADL’2003)
Zurück zum Zitat Afzal W, Torkar R, Feldt R (2009) A systematic review of search-based testing for non-functional system properties. Inf Softw Technol 51:957–976CrossRef Afzal W, Torkar R, Feldt R (2009) A systematic review of search-based testing for non-functional system properties. Inf Softw Technol 51:957–976CrossRef
Zurück zum Zitat Ali S et al., Briand LC, Hemmati H, Panesar-Walawege RK (2009) A systematic review of the application and empirical investigation of search-based test case generation IEEE transactions on software engineering 99 Ali S et al., Briand LC, Hemmati H, Panesar-Walawege RK (2009) A systematic review of the application and empirical investigation of search-based test case generation IEEE transactions on software engineering 99
Zurück zum Zitat Ali S, Briand L, Arcuri A, Walawege S (2011a) an industrial application of robustness testing using aspect-oriented modeling, UML/MARTE, and search algorithms. Paper presented at the ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (Models 2011) Ali S, Briand L, Arcuri A, Walawege S (2011a) an industrial application of robustness testing using aspect-oriented modeling, UML/MARTE, and search algorithms. Paper presented at the ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (Models 2011)
Zurück zum Zitat Ali S, Iqbal MZ, Arcuri A, Briand L (2011b) A Search-based OCL constraint solver for model-based test data generation. Paper presented at the Proceedings of the 11th International Conference On Quality Software (QSIC 2011) Ali S, Iqbal MZ, Arcuri A, Briand L (2011b) A Search-based OCL constraint solver for model-based test data generation. Paper presented at the Proceedings of the 11th International Conference On Quality Software (QSIC 2011)
Zurück zum Zitat Ali S, Briand L, Arcuri A, Walawege S (2011c) An industrial application of robustness testing using aspect-oriented modeling, UML/MARTE, and search algorithms. Paper presented at the ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (Models 2011) Ali S, Briand L, Arcuri A, Walawege S (2011c) An industrial application of robustness testing using aspect-oriented modeling, UML/MARTE, and search algorithms. Paper presented at the ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (Models 2011)
Zurück zum Zitat Ali S, Briand LC, Hemmati H (2012) Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Softw Syst Model 11:633–670CrossRef Ali S, Briand LC, Hemmati H (2012) Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems. Softw Syst Model 11:633–670CrossRef
Zurück zum Zitat Ali S, Iqbal MZ, Arcuri A (2014) Improved heuristics for solving OCL constraints using search algorithms. Paper presented at the Proceedings of the 2014 conference on Genetic and evolutionary computation, Vancouver, BC, Canada Ali S, Iqbal MZ, Arcuri A (2014) Improved heuristics for solving OCL constraints using search algorithms. Paper presented at the Proceedings of the 2014 conference on Genetic and evolutionary computation, Vancouver, BC, Canada
Zurück zum Zitat Arcuri A (2010) It does matter how you normalise the branch distance in search based software testing. Paper presented at the Proceedings of the 2010 Third International Conference on Software Testing, Verification and Validation Arcuri A (2010) It does matter how you normalise the branch distance in search based software testing. Paper presented at the Proceedings of the 2010 Third International Conference on Software Testing, Verification and Validation
Zurück zum Zitat Arcuri A (2011) It really does matter how you normalize the branch distance in search-based software testing software testing. Verification Reliab. doi:10.1002/stvr.457 Arcuri A (2011) It really does matter how you normalize the branch distance in search-based software testing software testing. Verification Reliab. doi:10.​1002/​stvr.​457
Zurück zum Zitat Arcuri A, Briand. L (2011) A practical guide for using statistical tests to assess randomized algorithms in software engineering. Paper presented at the International Conference on Software Engineering (ICSE) Arcuri A, Briand. L (2011) A practical guide for using statistical tests to assess randomized algorithms in software engineering. Paper presented at the International Conference on Software Engineering (ICSE)
Zurück zum Zitat Arcuri A, Fraser G (2011) On parameter tuning in search based software engineering. Paper presented at the International Symposium on Search Based Software Engineering (SSBSE) Arcuri A, Fraser G (2011) On parameter tuning in search based software engineering. Paper presented at the International Symposium on Search Based Software Engineering (SSBSE)
Zurück zum Zitat Arcuri A, Iqbal MZ, Briand L (2012) Random testing: theoretical results and practical implications. IEEE Trans Softw Eng 38:258–277CrossRef Arcuri A, Iqbal MZ, Briand L (2012) Random testing: theoretical results and practical implications. IEEE Trans Softw Eng 38:258–277CrossRef
Zurück zum Zitat Bao-Lin L, Zhi-shu L, Qing L, Hong CY (2007) Test case automate generation from uml sequence diagram and ocl expression. Paper presented at the International Conference on cimputational Intelligence and Security Bao-Lin L, Zhi-shu L, Qing L, Hong CY (2007) Test case automate generation from uml sequence diagram and ocl expression. Paper presented at the International Conference on cimputational Intelligence and Security
Zurück zum Zitat Bertolino A (2007) Software testing research: achievements, challenges, dreams. Paper presented at the 2007 Future of Software Engineering Bertolino A (2007) Software testing research: achievements, challenges, dreams. Paper presented at the 2007 Future of Software Engineering
Zurück zum Zitat Binder RV (1999) Testing object-oriented systems: models, patterns, and tools. Addison-Wesley Longman Publishing Co., Inc, Amsterdam Binder RV (1999) Testing object-oriented systems: models, patterns, and tools. Addison-Wesley Longman Publishing Co., Inc, Amsterdam
Zurück zum Zitat Bordbar B, Anastasakis K (2005) UML2Alloy: a tool for lightweight modelling of Discrete Event Systems. Paper presented at the IADIS International Conference in Applied Computing Bordbar B, Anastasakis K (2005) UML2Alloy: a tool for lightweight modelling of Discrete Event Systems. Paper presented at the IADIS International Conference in Applied Computing
Zurück zum Zitat Brucker AD, Krieger MP, Longuet D, Wolff B (2010) A specification-based test case generation method for UML/OCL. Paper presented at the Worksshop on OCL and Textual Modelling, MoDELS Brucker AD, Krieger MP, Longuet D, Wolff B (2010) A specification-based test case generation method for UML/OCL. Paper presented at the Worksshop on OCL and Textual Modelling, MoDELS
Zurück zum Zitat Burke EK, Kendall G (2006) Search methodologies: introductory tutorials in optimization and decision support techniques. Springer Burke EK, Kendall G (2006) Search methodologies: introductory tutorials in optimization and decision support techniques. Springer
Zurück zum Zitat Cabot J, Gogolla M (2012) Object Constraint Language (OCL): A Definitive Guide. In: Bernardo M, Cortellessa V, Pierantonio A (eds) Formal methods for model-driven engineering, vol 7320. Lecture notes in computer science. Springer, Berlin, pp 58–90. doi:10.1007/978-3-642-30982-3_3 Cabot J, Gogolla M (2012) Object Constraint Language (OCL): A Definitive Guide. In: Bernardo M, Cortellessa V, Pierantonio A (eds) Formal methods for model-driven engineering, vol 7320. Lecture notes in computer science. Springer, Berlin, pp 58–90. doi:10.​1007/​978-3-642-30982-3_​3
Zurück zum Zitat Cabot J, Claris R, Riera D (2008) Verification of UML/OCL class diagrams using constraint programming. Paper presented at the Proceedings of the 2008 I.E. International Conference on Software Testing Verification and Validation Workshop Cabot J, Claris R, Riera D (2008) Verification of UML/OCL class diagrams using constraint programming. Paper presented at the Proceedings of the 2008 I.E. International Conference on Software Testing Verification and Validation Workshop
Zurück zum Zitat Clarke J et al. (2003) Reformulating software engineering as a search problem IEE Software 150:161–175 Clarke J et al. (2003) Reformulating software engineering as a search problem IEE Software 150:161–175
Zurück zum Zitat Clavel M, Dios MAGd (2009) Checking unsatisfiability for OCL constraints. Paper presented at the In the proceedings of the 9th OCL 2009 Workshop at the UML/MoDELS Conferences Clavel M, Dios MAGd (2009) Checking unsatisfiability for OCL constraints. Paper presented at the In the proceedings of the 9th OCL 2009 Workshop at the UML/MoDELS Conferences
Zurück zum Zitat Coley DA (1997) An introduction to genetic algorithms for scientists and engineers. World Scientific Publishing Company Coley DA (1997) An introduction to genetic algorithms for scientists and engineers. World Scientific Publishing Company
Zurück zum Zitat Distefano D, Katoen J-P, Rensink A (2000) Towards model checking OCL. Paper presented at the ECOOP-Workshop on Defining Precise Semantics for UML Distefano D, Katoen J-P, Rensink A (2000) Towards model checking OCL. Paper presented at the ECOOP-Workshop on Defining Precise Semantics for UML
Zurück zum Zitat Drechsler R, Drechsler N (2002) Evolutionary algorithms for embedded system design. Kluwer Academic Publishers, DordrechtMATH Drechsler R, Drechsler N (2002) Evolutionary algorithms for embedded system design. Kluwer Academic Publishers, DordrechtMATH
Zurück zum Zitat Fraser G, Arcuri A (2011) EvoSuite: Automatic Test Suite Generation for Object-Oriented Software. In: Zeller A (ed) ACM Symposium on the Foundations of Software Engineering (FSE), 2011. ACM, pp 416–419 Fraser G, Arcuri A (2011) EvoSuite: Automatic Test Suite Generation for Object-Oriented Software. In: Zeller A (ed) ACM Symposium on the Foundations of Software Engineering (FSE), 2011. ACM, pp 416–419
Zurück zum Zitat Frias L, Queralt A, Ramon AO (2003) U-Rent car rentals specification Frias L, Queralt A, Ramon AO (2003) U-Rent car rentals specification
Zurück zum Zitat Harman M, Jones BF (2001) Search-based software engineering. Inf Softw Technol 43:833–839CrossRef Harman M, Jones BF (2001) Search-based software engineering. Inf Softw Technol 43:833–839CrossRef
Zurück zum Zitat Harman M, A.Mansouri S, Zhang Y (2009) Search based software engineering: A comprehensive analysis and review of trends techniques and applications. King’s College,Technical Report TR-09-03 Harman M, A.Mansouri S, Zhang Y (2009) Search based software engineering: A comprehensive analysis and review of trends techniques and applications. King’s College,Technical Report TR-09-03
Zurück zum Zitat Harman M, Mansouri A, Zhang Y (2012) Search based software engineering: Trends, techniques and applications to appear in ACM computing surveys Harman M, Mansouri A, Zhang Y (2012) Search based software engineering: Trends, techniques and applications to appear in ACM computing surveys
Zurück zum Zitat Hong L, Tao Y, Ali S, Kunming N, Li Z Zen-CC: an automated and incremental conformance checking solution to support interactive product configuration. In: Software Reliability Engineering (ISSRE), 2014 I.E. 25th International Symposium on, 3–6 Nov. 2014 2014. pp 13–22. doi:10.1109/ISSRE.2014.13 Hong L, Tao Y, Ali S, Kunming N, Li Z Zen-CC: an automated and incremental conformance checking solution to support interactive product configuration. In: Software Reliability Engineering (ISSRE), 2014 I.E. 25th International Symposium on, 3–6 Nov. 2014 2014. pp 13–22. doi:10.​1109/​ISSRE.​2014.​13
Zurück zum Zitat Iqbal MZ, Ali S, Yue T, Briand L (2012a) Experiences of Applying UML/MARTE on Three Industrial Projects. Paper presented at the ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS) Iqbal MZ, Ali S, Yue T, Briand L (2012a) Experiences of Applying UML/MARTE on Three Industrial Projects. Paper presented at the ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS)
Zurück zum Zitat Iqbal MZ, Arcuri A, Briand L (2012b) Empirical investigation of search algorithms for environment model-based testing of real-time embedded software In: International Symposium on Software Testing and Analysis (ISSTA), ACM Iqbal MZ, Arcuri A, Briand L (2012b) Empirical investigation of search algorithms for environment model-based testing of real-time embedded software In: International Symposium on Software Testing and Analysis (ISSTA), ACM
Zurück zum Zitat Iqbal M, Arcuri A, Briand L (2012c) Combining search-based and adaptive random testing strategies for environment model-based testing of real-time embedded systems. In: Fraser G, Teixeira de Souza J (eds) Search Based Software Engineering, vol 7515. Lecture Notes in Computer Science. Springer Berlin Heidelberg, pp 136–151. doi:10.1007/978-3-642-33119-0_11 Iqbal M, Arcuri A, Briand L (2012c) Combining search-based and adaptive random testing strategies for environment model-based testing of real-time embedded systems. In: Fraser G, Teixeira de Souza J (eds) Search Based Software Engineering, vol 7515. Lecture Notes in Computer Science. Springer Berlin Heidelberg, pp 136–151. doi:10.​1007/​978-3-642-33119-0_​11
Zurück zum Zitat Iqbal MZ, Ali S, Yue T, Briand L (2012d) Experiences of Applying UML/MARTE on three industrial projects. Paper presented at the ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS) Iqbal MZ, Ali S, Yue T, Briand L (2012d) Experiences of Applying UML/MARTE on three industrial projects. Paper presented at the ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS)
Zurück zum Zitat Jackson D, Schechter I, Shlyahter H (2000) Alcoa: the alloy constraint analyzer. Paper presented at the Proceedings of the 22nd international conference on Software engineering, Limerick, Ireland Jackson D, Schechter I, Shlyahter H (2000) Alcoa: the alloy constraint analyzer. Paper presented at the Proceedings of the 22nd international conference on Software engineering, Limerick, Ireland
Zurück zum Zitat Krieger M, Knapp A (2008) Executing underspecified OCL operation contracts with a SAT Solver. Paper presented at the 8th International Workshop on OCL Concepts and Tools Krieger M, Knapp A (2008) Executing underspecified OCL operation contracts with a SAT Solver. Paper presented at the 8th International Workshop on OCL Concepts and Tools
Zurück zum Zitat Mantere T, Alander JT (2005) Evolutionary software engineering, a review. Appl Soft Comput 5:315–331CrossRef Mantere T, Alander JT (2005) Evolutionary software engineering, a review. Appl Soft Comput 5:315–331CrossRef
Zurück zum Zitat Mathur AP (2008) Foundations of software testing. Pearson Education Mathur AP (2008) Foundations of software testing. Pearson Education
Zurück zum Zitat McMinn P (2004a) Search-based software test data generation: a survey. Softw Test Verification Reliab 14:52 McMinn P (2004a) Search-based software test data generation: a survey. Softw Test Verification Reliab 14:52
Zurück zum Zitat Sheskin DJ (2007) Handbook of parametric and nonparametric statistical procedures. Chapman and Hall/CRC Sheskin DJ (2007) Handbook of parametric and nonparametric statistical procedures. Chapman and Hall/CRC
Zurück zum Zitat Souza JTd, Maia CL, Freitas FGd, Coutinho DP (2010) The human competitiveness of search based software engineering. Paper presented at the Proceedings of the 2nd International Symposium on Search Based Software Engineering Souza JTd, Maia CL, Freitas FGd, Coutinho DP (2010) The human competitiveness of search based software engineering. Paper presented at the Proceedings of the 2nd International Symposium on Search Based Software Engineering
Zurück zum Zitat Tairas R, Cabot J (2012) Cloning in DSLs: Experiments with OCL. In: Sloane A, Aßmann U (eds) Software language engineering, vol 6940. Lecture notes in computer science. Springer, Berlin, pp 60–76. doi:10.1007/978-3-642-28830-2_4 Tairas R, Cabot J (2012) Cloning in DSLs: Experiments with OCL. In: Sloane A, Aßmann U (eds) Software language engineering, vol 6940. Lecture notes in computer science. Springer, Berlin, pp 60–76. doi:10.​1007/​978-3-642-28830-2_​4
Zurück zum Zitat Wang C, Pastore F, Goknil A, Briand L, Iqbal. MZ (2015) Automatic generation of system test cases from use case specifications. Paper presented at the International Symposium on Software Testing and Analysis (ISSTA) Wang C, Pastore F, Goknil A, Briand L, Iqbal. MZ (2015) Automatic generation of system test cases from use case specifications. Paper presented at the International Symposium on Software Testing and Analysis (ISSTA)
Zurück zum Zitat Wilson B (1994) EU-Rent car rentals case study. Model Systems & Brian Wilson Associates Wilson B (1994) EU-Rent car rentals case study. Model Systems & Brian Wilson Associates
Zurück zum Zitat Wohlin C, Runeson P, Höst M (1999) Experimentation in software engineering: an introduction. Springer, HeidelbergMATH Wohlin C, Runeson P, Höst M (1999) Experimentation in software engineering: an introduction. Springer, HeidelbergMATH
Metadaten
Titel
Improving the performance of OCL constraint solving with novel heuristics for logical operations: a search-based approach
verfasst von
Shaukat Ali
Muhammad Zohaib Iqbal
Maham Khalid
Andrea Arcuri
Publikationsdatum
27.06.2015
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 6/2016
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-015-9392-6

Weitere Artikel der Ausgabe 6/2016

Empirical Software Engineering 6/2016 Zur Ausgabe