A Web-Service for Automated Software Refactoring Using Artificial Bee Colony Optimization

  • Ekin Koc
  • Nur Ersoy
  • Zelal Seda Camlidere
  • Hurevren Kilic
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7331)


Automated software refactoring is one of the hard combinatorial optimization problems of search-based software engineering domain. The idea is to enhance the quality of the existing software under the guidance of software quality metrics through applicable refactoring actions. In this study, we designed and implemented a web-service that uses discrete version of Artificial Bee Colony (ABC) optimization approach in order to enhance bytecode compiled Java programming language codes, automatically. The introduced service supports 20 different refactoring actions that realize intelligent ABC searches on design landscape defined by an adhoc quality model being an aggregation of 24 object-oriented software metrics.


Discrete Artificial Bee Colony Optimization Search-Based Software Engineering Software Quality Web-Services 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Karaboga, D.: An idea based on honey bee swarm for numerical optimization, Technical Report, TR-06, Erciyes University, Kayseri, Turkey (2005)Google Scholar
  2. 2.
    Karaboga, D., Basturk, B.: A powerful and efficient algorithm for numerical function optimization: artificial bee colony algorithm. Journal of Global Optimization 39, 459–471 (2007)MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Bouktif, S., Antoniol, G., Merlo, E., Neteler, M.: A novel approach to optimize clone refactoring activity. In: Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, GECCO 2006, vol. 2, pp. 1885–1892. ACM Press, WA (2006)CrossRefGoogle Scholar
  4. 4.
    Seng, O., Stammel, J., Burkhart, D.: Search-based determination of refactorings for improving the class structure of object-oriented systems. In: Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, GECCO 2006, vol. 2, pp. 1909–1916. ACM Press, WA (2006)CrossRefGoogle Scholar
  5. 5.
    Harman, M., Tratt, L.: Pareto optimal search based refactoring at the design level. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation, GECCO 2007, pp. 1106–1113. ACM Press, NY (2007)CrossRefGoogle Scholar
  6. 6.
    O’Keeffe, M., Cinneide, M.O.: Search based refactoring: an empirical study. Journal of Software Maintenance and Evolution: Research and Practice (2), 345–364 (2008)Google Scholar
  7. 7.
    Moghadam, I.H.: Multi-level Automated Refactoring Using Design Exploration. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 70–75. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Koc, E., Ersoy, N., Camlidere, Z.S., Andac, A., Cereci, I., Kilic, H.: An empirical study about search-based refactoring using alternative multiple and population-based search techniques. In: Computer and Information Sciences II - Proceedings of 26th International Symposium on Computer and Information Sciences, ISCIS 2011, London, UK, pp. 59–66. Springer (2011)Google Scholar
  9. 9.
    Kilic, H., Koc, E., Cereci, I.: Search-Based Parallel Refactoring Using Population-Based Direct Approaches. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 271–272. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  10. 10.
    Harman, M.: The current state and future of search based software engineering. In: Proceedings of Future of Software Engineering, FOSE 2007, pp. 342–357. IEEE Press, WA (2007)CrossRefGoogle Scholar
  11. 11.
    Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing. Communications of the ACM 46, 25–28 (2003)CrossRefGoogle Scholar
  12. 12.
    XML Basics. XML News, (last accessed on February 2012)
  13. 13.
    OW2 Consortium, ASM,, (last accessed on February 2012)
  14. 14.
    Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. on Soft. Eng. 20, 476–493 (1994)CrossRefGoogle Scholar
  15. 15.
    SDMETRICS tool, (last accessed on February 2012)
  16. 16.
    Pan, Q., Tasgetiren, M.F., Suganthan, P.N., Chua, T.J.: A discrete artificial bee colony algorithm for the lot-streaming flow shop scheduling problem. Information Sciences 181(12), 2455–2468 (2011)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Ekin Koc
    • 1
  • Nur Ersoy
    • 2
  • Zelal Seda Camlidere
    • 3
  • Hurevren Kilic
    • 4
  1. 1.GolbasiAnkaraTurkey
  2. 2.InnovaMiddle East Technical University, TeknokentAnkaraTurkey
  3. 3.Locksmith Software Technologies: LST YazilimAnkaraTurkey
  4. 4.Computer Engineering DepartmentGediz UniversityIzmirTurkey

Personalised recommendations