ارسل ملاحظاتك

ارسل ملاحظاتك لنا







Improving Package Structure Of Object Oriented Software Using Multi Objective Optimization And Weighted Class Connections

المصدر: مجلة جامعة الملك سعود - علوم الحاسب والمعلومات
الناشر: جامعة الملك سعود
المؤلف الرئيسي: Amarjeet (Author)
مؤلفين آخرين: Chhabra, Jitender Kumar (Co-Author)
المجلد/العدد: مج29, ع3
محكمة: نعم
الدولة: السعودية
التاريخ الميلادي: 2017
الصفحات: 349 - 364
DOI: 10.33948/0584-029-003-010
ISSN: 1319-1578
رقم MD: 974210
نوع المحتوى: بحوث ومقالات
اللغة: الإنجليزية
قواعد المعلومات: science
مواضيع:
كلمات المؤلف المفتاحية:
Multi Objective Optimization | Package Restructuring | Modularization | Weighting Scheme | Maintenance
رابط المحتوى:
صورة الغلاف QR قانون
حفظ في:
المستخلص: The software maintenance activities performed without following the original design decisions about the package structure usually deteriorate the quality of software modularization, leading to decay of the quality of the system. One of the main reasons for such structural deterioration is inappropriate grouping of source code classes in software packages. To improve such grouping/modular-structure, previous researchers formulated the software remodularization problem as an optimization problem and solved it using search-based meta-heuristic techniques. These optimization approaches aimed at improving the quality metrics values of the structure without considering the original package design decisions, often resulting into a totally new software modularization. The entirely changed software modularization becomes costly to realize as well as difficult to understand for the developers/maintainers. To alleviate this issue, we propose a multiobjective optimization approach to improve the modularization quality of an object-oriented system with minimum possible movement of classes between existing packages of original software modularization. The optimization is performed using NSGA-II, a widely-accepted multiobjective evolutionary algorithm. In order to ensure minimum modification of original package structure, a new approach of computing class relations using weighted strengths has been proposed here. The weights of relations among different classes are computed on the basis of the original package structure. A new objective function has been formulated using these weighted class relations. This objective function drives the optimization process toward better modularization quality simultaneously ensuring preservation of original structure. To evaluate the results of the proposed approach, a series of experiments are conducted over four real-worlds and two random software applications. The experimental results clearly indicate the effectiveness of our approach in improving the modularization quality of existing package structure by doing very small movement of classes between packages of original software modularization.

ISSN: 1319-1578