scholarly journals A multiple hill climbing approach to software module clustering

Author(s):  
K. Mahdavi ◽  
M. Harman ◽  
R.M. Hierons
Author(s):  
Kawal Jeet ◽  
Renu Dhir

Nature has always been a source of inspiration for human beings. Large numbers of complex optimization problems have been solved by the techniques inspired by nature. Software modularization is one of such complex problems that have been encountered by software engineers. It is the process of organizing modules of a software system into optimal clusters. In this chapter, some bio-inspired algorithms such as bat, artificial bee colony, black hole and firefly algorithm have been proposed for the cause of software modularization. The hybrid of these algorithms with crossover and mutation operators of the genetic algorithm has also been proposed. All the algorithms along with their hybrids are tested on seven benchmark open source software systems. It has been evaluated from the results thus obtained that the hybrid of these algorithms proved to optimize better than the existing genetic and hill-climbing approaches.


Author(s):  
Kawal Jeet ◽  
Renu Dhir

Nature has always been a source of inspiration for human beings. Large numbers of complex optimization problems have been solved by the techniques inspired by nature. Software modularization is one of such complex problems that have been encountered by software engineers. It is the process of organizing modules of a software system into optimal clusters. In this chapter, some bio-inspired algorithms such as bat, artificial bee colony, black hole and firefly algorithm have been proposed for the cause of software modularization. The hybrid of these algorithms with crossover and mutation operators of the genetic algorithm has also been proposed. All the algorithms along with their hybrids are tested on seven benchmark open source software systems. It has been evaluated from the results thus obtained that the hybrid of these algorithms proved to optimize better than the existing genetic and hill-climbing approaches.


2018 ◽  
Vol 1 (1) ◽  
pp. 87-112 ◽  
Author(s):  
Kamal Z. Zamli ◽  
◽  
Abdulrahman Alsewari ◽  
Bestoun S. Ahmed ◽  
◽  
...  

Author(s):  
Jimin Hwa ◽  
Shin Yoo ◽  
Yeong-Seok Seo ◽  
Doo-Hwan Bae

Software remodularization seeks to cluster software modules with high cohesion and low coupling: such a structure can help the comprehension and maintenance of complex systems. The modularization quality is usually captured using either structural, semantic, or history-based factors. All existing techniques apply a single factor to the entire system, which raises the following issues. First, a single factor may fail to capture the quality across the entire project: some modules may form semantic bondings, while others may form more structural ones. Second, the user of the technique has to choose a factor without knowing which one would perform the best. To resolve these issues, we propose a multi-factor module clustering, in which module clusters can be formed based on different factors. Our technique not only allows module clusters of different natures, but also relieve users from having to select a single factor. The paper introduces two different search-based formulations of multi-factor remodularization, and compares these against single-factor remodularization using four heterogeneous factors and six open source projects. The evaluation results show that the multi-factor remodularization can produce solutions that are 10.69% closer to the actual modularization adopted by the developers as compared with those produced by single-factor remodularization on average.


Author(s):  
Qusay Alsarhan ◽  
Bestoun S. Ahmed ◽  
Miroslav Bures ◽  
Kamal Zuhairi Zamli

Sign in / Sign up

Export Citation Format

Share Document