Journal of Intelligent Systems | 卷:29 |
Optimizing Software Modularity with Minimum Possible Variations | |
Chhabra Jitender Kumar1  Prajapati Amarjeet2  | |
[1] Department of Computer Engineering, NIT Kurukshetra, Haryana 136119,India; | |
[2] Department of Computer Science and Engineering, JIIT, Noida 201309, Uttar Pradesh,India; | |
关键词: modularization; restructuring; optimization; genetic algorithm; refactoring; | |
DOI : 10.1515/jisys-2018-0231 | |
来源: DOAJ |
【 摘 要 】
Poor design choices at the early stages of software development and unprincipled maintenance practices usually deteriorate software modularity and subsequently increase system complexity. In object-oriented software, improper distribution of classes among packages is a key factor, responsible for modularity degradation. Many optimization techniques to improve the software modularity have been proposed in the literature. The focus of these optimization techniques is to produce modularization solutions by optimizing different design quality criteria. Such modularization solutions are good from the different aspect of quality; however, they require huge modifications in the existing modular structure to realize the suggested solution. Thus these techniques are costly and time consuming if applied at early stages of software maintenance. This paper proposes a search-based optimization technique to improve the modularity of the software system with minimum possible variation between the existing and produced modularization solution. To this contribution, a penalized fitness function, namely, penalized modularization quality, is designed in terms of modularization quality and the Move or Join Effectiveness Measure metric. Furthermore, this fitness function is used in both single-objective genetic algorithm (SGA) and multi-objective genetic algorithm (MGA) to generate the modularization. The effectiveness of the proposed remodularization approach is evaluated over five open-source and three random generated software systems. The experimentation results show that the proposed approach is able to generate modularization solutions with improved quality along with lesser perturbation compared to their non-penalty counterpart and at the same time it performs better with the MGA compared to the SGA. The proposed approach can be very useful, especially when total remodularization is not feasible/desirable due to lack of time or high cost.
【 授权许可】
Unknown