Advertisement

Multi-objective Module Clustering for Kate

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

Abstract

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.

Keywords

Software module clustering Multi-objective optimization Search based software engineering 

References

  1. 1.
    Kate (2015). http://kate-editor.org/. 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). http://www.stack.nl/~dimitri/doxygen/index.html. 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