A Concept for an Interactive Search-Based Software Testing System

  • Bogdan Marculescu
  • Robert Feldt
  • Richard Torkar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7515)


Software is an increasingly important part of various products, although not always the dominant component. For these software-intensive systems it is common that the software is assembled, and sometimes even developed, by domain specialists rather than by software engineers. To leverage the domain specialists’ knowledge while maintaining quality we need testing tools that require only limited knowledge of software testing.

Since each domain has unique quality criteria and trade-offs and there is a large variation in both software modeling and implementation syntax as well as semantics it is not easy to envisage general software engineering support for testing tasks. Particularly not since such support must allow interaction between the domain specialists and the testing system for iterative development.

In this paper we argue that search-based software testing can provide this type of general and interactive testing support and describe a proof of concept system to support this argument. The system separates the software engineering concerns from the domain concerns and allows domain specialists to interact with the system in order to select the quality criteria being used to determine the fitness of potential solutions.


search-based software testing interactive search-based software engineering user centered 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Afzal, W., Torkar, R., Feldt, R.: A systematic review of search-based testing for non-functional system properties. Information and Software Technology (2009)Google Scholar
  2. 2.
    Arcuri, A., Yao, X.: Search based software testing of object-oriented containers. Information Sciences 178(15), 3075–3095 (2008)CrossRefGoogle Scholar
  3. 3.
    Farrington, J.: Seven plus or minus two. Performance Improvement Quarterly 24(4), 113–116 (2011)CrossRefGoogle Scholar
  4. 4.
    Feldt, R.: Generating multiple diverse software versions with genetic programming - an experimental study. IEE Proceedings - Software 145(6), 228–236 (1998)CrossRefGoogle Scholar
  5. 5.
    Feldt, R.: Genetic programming as an explorative tool in early software development phases. In: Proceedings of the 1st International Workshop on Soft Computing Applied to Software Engineering (SCASE 1999), April 12-14, pp. 11–20. Limerick University Press, University of Limerick (1999)Google Scholar
  6. 6.
    Feldt, R.: An interactive software development workbench based on biomimetic algorithms. Tech. Rep. 02-16, Gothenburg, Sweden (November 2002)Google Scholar
  7. 7.
    Harman, M.: The current state and future of search based software engineering. In: Future of Software Engineering (FOSE 2007) (2007)Google Scholar
  8. 8.
    Harman, M., Jones, B.F.: Search based software engineering. Information and Software Technology (43), 833–839 (2001)Google Scholar
  9. 9.
    Harman, M., Mansouri, S.A., Zhang, Y.: Search based software engineering: A comprehensive analysis and review of trends techniques and applications. Tech. Rep. TR-09-03 (April 2009)Google Scholar
  10. 10.
    Kamalian, R., Yeh, E., Zhang, Y., Agogino, A., Takagi, H.: Reducing human fatigue in interactive evolutionary computation through fuzzy systems and machine learning systems. In: 2006 IEEE International Conference on Fuzzy Systems, pp. 678–684 (2006)Google Scholar
  11. 11.
    Maguire, M.: Methods to support human-centred design. International Journal of Human-Computer Studies 55(4), 587–634 (2001)zbMATHCrossRefGoogle Scholar
  12. 12.
    Mairhofer, S., Feldt, R., Torkar, R.: Search-based software testing and test data generation for a dynamic programming language. In: Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation, GECCO 2011, pp. 1859–1866. ACM, New York (2011)CrossRefGoogle Scholar
  13. 13.
    McMinn, P.: Search-based software testing: Past, present and future. In: Fourth International Conference on Software Testing, Verification and Validation Workshops, pp. 153–163 (2011)Google Scholar
  14. 14.
    Metzger, U., Parasuraman, R.: Automation in future air traffic management: Effects of decision aid reliability on controller performance and mental workload. Human Factors: The Journal of the Human Factors and Ergonomics Society 47(1), 35–49 (2005)CrossRefGoogle Scholar
  15. 15.
    Simons, C.L., Parmee, I.C., Gwynllyw, R.: Interactive, evolutionary search in upstream object-oriented class design. IEEE Transactions on Software Engineering 36(6), 798–816 (2010)CrossRefGoogle Scholar
  16. 16.
    Simons, C., Parmee, I.: User-centered, evolutionary search in conceptual software design. In: IEEE World Congress on Computational Intelligence. IEEE Congress on Evolutionary Computation, CEC 2008, pp. 869 –876 (June 2008)Google Scholar
  17. 17.
    Takagi, H.: Interactive evolutionary computation: fusion of the capabilities of ec optimization and human evaluation. Proceedings of the IEEE 89(9), 1275–1296 (2001)CrossRefGoogle Scholar
  18. 18.
    Tarnow, E.: There is no capacity limited buffer in the murdock (1962) free recall data. Cognitive Neurodynamics 4, 395–397 (2010), doi:10.1007/s11571-010-9108-yGoogle Scholar
  19. 19.
    Xanthakis, S., Ellis, C., Skourlas, C., Gall, A.L., Katsikas, S., Karapoulios, K.: Application of genetic algorithms to software testing. In: Proceedings of the 5th International Conference on Software Engineering and Applications, Toulouse, France, December 7-11, pp. 625–636 (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Bogdan Marculescu
    • 1
  • Robert Feldt
    • 1
  • Richard Torkar
    • 1
  1. 1.School of ComputingBlekinge Institute of TechnologyKarlskronaSweden

Personalised recommendations