Multi-objective Module Clustering for Kate

  • Matheus PaixaoEmail author
  • Mark Harman
  • Yuanyuan Zhang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9275)


This paper applies multi-objective search based software remodularization to the program Kate, showing how this can improve cohesion and coupling, and investigating differences between weighted and unweighted approaches and between equal-size and maximising clusters approaches. We also investigate the effects of considering omnipresent modules. Overall, we provide evidence that search based modularization can benefit Kate developers.


Software module clustering Multi-objective optimization Search based software engineering 


  1. 1.
    Kate (2015). Accessed in April, 2015
  2. 2.
    Mancoridis, S., Mitchell, B.S., Rorres, C., Chen, Y.F., Gansner, E.R.: Using automatic clustering to produce high-level system organizations of source code. In: IWPC, vol. 98, pp. 45–52. Citeseer (1998)Google Scholar
  3. 3.
    Praditwong, K., Harman, M., Yao, X.: Software module clustering as a multi-objective search problem. IEEE Trans. Softw. Eng. 37(2), 264–282 (2011)CrossRefzbMATHGoogle Scholar
  4. 4.
    Mahdavi, K., Harman, M., Hierons, R.M.: A multiple hill climbing approach to software module clustering. In: Proceedings of the International Conference on Software Maintenance, ICSM 2003, pp. 315–324. IEEE (2003)Google Scholar
  5. 5.
    Doxygen (2015). Accessed in April, 2015
  6. 6.
    Praditwong, K., Yao, X.: A new multi-objective evolutionary optimisation algorithm: the two-archive algorithm. In: 2006 International Conference on Computational Intelligence and Security, vol. 1, pp. 286–291. IEEE (2006)Google Scholar
  7. 7.
    Arcuri, A., Briand, L.: A hitchhiker’s guide to statistical tests for assessing randomized algorithms in software engineering. Softw. Test. Verif. Reliab. 24(3), 219–250 (2014)CrossRefGoogle Scholar
  8. 8.
    Harman, M., McMinn, P., de Souza, J.T., Yoo, S.: Search based software engineering: techniques, taxonomy, tutorial. In: Meyer, B., Nordio, M. (eds.) Empirical Software Engineering and Verification. LNCS, vol. 7007, pp. 1–59. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  9. 9.
    Neumann, G., Swan, J., Harman, M., Clark, J.A.: The executable experimental template pattern for the systematic comparison of metaheuristics. In: Proceedings of the 2014 Conference Companion on Genetic and Evolutionary Computation Companion, pp. 1427–1430. ACM (2014)Google Scholar
  10. 10.
    Paixao, M., Harman, M., Zhang, Y.: Improving the module clustering of a c/c++ editor using a multi-objective genetic algorithm. RN 15(02), 01 (2015)Google Scholar
  11. 11.
    Mancoridis, S., Mitchell, B.S., Chen, Y., Gansner, E.R.: Bunch: a clustering tool for the recovery and maintenance of software system structures. In: Proceedings of the IEEE International Conference on Software Maintenance, (ICSM 1999), pp. 50–59. IEEE (1999)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.CREST CentreUniversity College LondonLondonUK

Personalised recommendations