SOFTWARE REFACTORING USING PATTERN RECOGNITION TECHNIQUES

(2009) SOFTWARE REFACTORING USING PATTERN RECOGNITION TECHNIQUES. Masters thesis, King Fahd University of Petroleum and Minerals.

[img]
Preview
PDF (SOFTWARE REFACTORING USING PATTERN RECOGNITION TECHNIQUES)
Alkhalid_Thesis.pdf

Download (1MB) | Preview

Arabic Abstract

عندما يتم تحسين، تعديل أو تكييف البرمجيات لملائمة المتطلبات الجديدة، يزداد تعقيد الكود البرمجي أكثر فأكثر. وهكذا فإن جودة البرمجيات تتناقص. إن إعادة الهيكلة تعيد تشكيل الكود البرمجي بصورة أكثر تبسيطاً أو فعاليةً و بأسلوب منهجي لتحسين بنيته الداخلية وبدون تغير وظيفته الخارجية. لقد استقصينا إعادة الهيكلة باستخدام تقنيات تمييز النموذج لموازنة التماسك والتجميع. إن إسهام هذه الرسالة هو تطبيق تقينات العنقدة على مستوى التابع و الصف والحزمة. بإلاضافة لما سبق، قدمت هذه الرسالة خوارزمية عنقدة تدعى Adaptive K-Nearest Neighbor (A-KNN) .لقد تم اختبار هذه الخوارزمية على المستويات الثلاثة وتمت مقارنتها مع الخوارزميات Single Linkage، Complete Linkage و Weighted Pair-Group Method using Arithmetic averages . لقد أظهرت A-KNN تفوقها على تقنيات العنقدة التقليدية من حيث الأداء و تعقيد الحسابات. لقد قيمت النتائج بالمقارنة مع الأعمال المنشورة (عند توفرها) أو بالتفحص عند عدم توفر عمل منشور.

English Abstract

As the software is enhanced, modified and adapted to new requirements, the code becomes more and more complex. Thus, the quality of the software decreases. Refactoring restructures the code into a more simplified or efficient form in a disciplined way to improve its internal structure without changing external functionality. We investigated refactoring using pattern recognition techniques to balance between cohesion and coupling. The contribution of this thesis is the application of clustering techniques at the function, class, and package levels. In addition, this thesis presents an Adaptive K-Nearest Neighbor (A-KNN) clustering algorithm which was tested at the three levels and compared with Single Linkage, Complete Linkage and Weighted Pair-Group Method using Arithmetic averages algorithms. A-KNN showed its superiority over traditional clustering algorithms in terms of performance and computation complexity. The results were evaluated by comparing them to published work (if available) or by inspection when no published work was available.

Item Type: Thesis (Masters)
Subjects: Engineering
Computer
Department: College of Computing and Mathematics > Information and Computer Science
Committee Advisor: Mahomoud, Sabri
Committee Members: Alshayeb, Mohammad and Elish, Mahmoud
Depositing User: Mr. Admin Admin
Date Deposited: 17 May 2009 05:45
Last Modified: 01 Nov 2019 14:10
URI: http://eprints.kfupm.edu.sa/id/eprint/136048