PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

Software Systems Clustering Using Estimation of Distribution Approach

Treść / Zawartość
Identyfikatory
Warianty tytułu
Języki publikacji
EN
Abstrakty
EN
Software clustering is usually used for program understanding. Since the software clustering is a NP-complete problem, a number of Genetic Algorithms (GAs) are proposed for solving this problem. In literature, there are two wellknown GAs for software clustering, namely, Bunch and DAGC, that use the genetic operators such as crossover and mutation to better search the solution space and generating better solutions during genetic algorithm evolutionary process. The major drawbacks of these operators are (1) the difficulty of defining operators, (2) the difficulty of determining the probability rate of these operators, and (3) do not guarantee to maintain building blocks. Estimation of Distribution (EDA) based approaches, by removing crossover and mutation operators and maintaining building blocks, can be used to solve the problems of genetic algorithms. This approach creates the probabilistic models from individuals to generate new population during evolutionary process, aiming to achieve more success in solving the problems. The aim of this paper is to recast EDA for software clustering problems, which can overcome the existing genetic operators’ limitations. For achieving this aim, we propose a new distribution probability function and a new EDA based algorithm for software clustering. To the best knowledge of the authors, EDA has not been investigated to solve the software clustering problem. The proposed EDA has been compared with two well-known genetic algorithms on twelve benchmarks. Experimental results show that the proposed approach provides more accurate results, improves the speed of convergence and provides better stability when compared against existing genetic algorithms such as Bunch and DAGC.
Rocznik
Strony
99--113
Opis fizyczny
Bibliogr. 17 poz., rys., tab.
Twórcy
autor
  • Department of Computer Science, Faculty of Mathematical Science, University of Tabriz, Tabriz, Iran
autor
  • Department of Computer Science, Faculty of Mathematical Science, University of Tabriz, Tabriz, Iran
autor
  • Department of Computer Science, Faculty of Mathematical Science, University of Tabriz, Tabriz, Iran
Bibliografia
  • 1. Zhang Q., Qiu D., Tian Q., Sun L., 2010, Object-oriented software architecture recovery using a new hybrid clustering algorithm. Fuzzy Systems and Knowledge Discovery (FSKD), Seventh International Conference on. Vol. 6. IEEE, 2010.
  • 2. Bittencourt R. A., and Dalton D. G., 2009, Comparison of graph clustering algorithms for recovering software architecture module views. Software Maintenance and Reengineering, CSMR'09. 13th European Conference on. IEEE, 2009.
  • 3. Poshyvanyk D., Marcus A., Ferenc R., Using information retrieval based coupling measures for impact analysis. Empirical software engineering 14.1: 5- 32, 2009
  • 4. Izadkhah H., Elgedawy I., and Isazadeh A., E-CDGM: An Evolutionary CallDependency Graph Modularization Approach for Software Systems. Cybernetics and Information Technologies 16.3: 70-90, 2016.
  • 5. Larranaga P., and Lozano J., Estimation of distribution algorithms: A new tool for evolutionary computation. Vol. 2. Springer Science & Business Media, 2002.
  • 6. Parsa S., and Bushehrian O., A new encoding scheme and a framework to investigate genetic clustering algorithms. Journal of Research and Practice in Information Technology 37.1: 127, 2005.
  • 7. Lindig C., and Snelting G., Assessing Modular Structure of Legacy Code based on Mathematical Concept Analysis. Proceedings of the International Conference on Software Engineering, 1997.
  • 8. Lindig C., and Snelting G., Assessing Modular Structure of Legacy Code based on Mathematical Concept Analysis. Proceedings of the International Conference on Software Engineering, 1997.
  • 9. Cui J. F., and Chae H. S., Applying Agglomerative Hierarchical Clustering Algorithms to Component Identification for Legacy Systems. Information and Software Technology, Volume 53, Issue 6, Pages 601-614, 2011.
  • 10. Maqbool O., and Babri H., Hierarchical clustering for software architecture recovery. IEEE Transactions on Software Engineering 33.11: 759-780, 2007.
  • 11. Andritsos P., and Tzerpos V., Information-theoretic software clustering. IEEE Transactions on Software Engineering 31.2: 150-165, 2005.
  • 12. Mitchell Brian S., A heuristic search approach to solving the software clustering problem. Diss. Drexel University, 2002.
  • 13. Mitchell, Brian S., and Mancoridis S., On the automatic modularization of software systems using the bunch tool. IEEE Transactions on Software Engineering 32.3: 193-208, 2006.
  • 14. Mahdavi K., Harman M., and Hierons R. M., A multiple hill climbing approach to software module clustering. Software Maintenance, ICSM 2003. Proceedings. International Conference on. IEEE, 2003.
  • 15. Praditwong K., Harman M., and Yao X., Software module clustering as a multiobjective search problem. IEEE Transactions on Software Engineering 37.2: 264-282, 2011.
  • 16. Tzerpos V., and Holt R. C., MoJo: A distance metric for software clusterings. Reverse Engineering, Proceedings. Sixth Working Conference on. IEEE, 1999.
  • 17. Wen Z., and Tzerpos V., An effectiveness measure for software clustering algorithms. Program Comprehension, Proceedings. 12th IEEE International Workshop on. IEEE, 2004.
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-6f8e2986-7492-46f2-b6e8-cd2d06b34c07
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.