IMPACT OF CODE CLONING ON FUNCTIONAL CORRECTNESS OF OBJECT-ORIENTED CLASSES. Masters thesis, King Fahd University of Petroleum and Minerals.
|
PDF
Thesis-Eprint-Version.pdf - Published Version Download (2MB) | Preview |
Arabic Abstract
العديد من مطوري البرمجيات معتادون على نسخ ولصق رموز البرمجة من وقت لآخر اثناء دورة تطوير البرامج. هناك العديد من وجهات النظر المختلفة في كون استخدام النسخ للرموز البرمجية هل هو ضار أم نافع, وكان سبب هذه الاختلافات هي النتائج المغايرة للعديد من الابحاث والدراسات في هذا المجال. من المهم جدا تحديد تأثير استخدام الرموز البرمجية اثناء تطوير البرامج لتلافي الأخطار المحتملة ان وجدت, وايضا للتركيز على الجوانب الايجابية ايضا في حال تواجدها. الهدف الرئيسي من هذه الرسالة البحثية هو دراسة تأثير نسخ الرموز البرمجية على الدقة الوظيفية للبرامج كائنية التوجه. في نهاية هذا البحث واعتمادا على النتائج وجهنا بعض النصائح العملية لمطوري البرامج للاستخدام الامثل عند نسخ رموز البرمجة.
English Abstract
Many software developers are incorporating code clones in source code as a natural habit while software is evolving. Several arguments about the code clones if they are harmful or beneficial, several studies in the literature discussed code clones impact on the software from different perspectives on different levels. However, the important question of the impact of code clones on software quality is in need of further studies to identify positive or negative impacts on quality aspects of the software. An important aspect of software quality is functional correctness which is a sub-characteristic of software functional suitability. Exploring code clone metrics to assess functional correctness might discover the impact of code clones on the product quality. The main objective of this research is to study empirically the relationships between software clones and functional correctness in object-oriented classes. This research contains two empirical studies, the first one is to study clones and fault-proneness, and the second is to study code clones and fault-density. The results indicate that there are relationships between code clones and functional correctness. In addition, there are relationships between clone location and fault-proneness. Similarly, we proved the relationships between types of code clones and fault-proneness in addition to fault-density as well. This research revealed 3 clone metrics that are good indicators of fault-proneness, in addition to one clone metric that is a good indicator of fault-density. Our study showed that when combine C&K metrics with clone metrics they perform better in fault-proneness and fault-density prediction. Finally, some recommendations for software developers are presented in this research towards incorporating code clones in the development of the software product.
Item Type: | Thesis (Masters) |
---|---|
Subjects: | Computer |
Department: | College of Computing and Mathematics > Information and Computer Science |
Committee Advisor: | Elish, Mahmoud |
Committee Members: | El-Attar, Mohamed and Mahmood, Sajjad |
Depositing User: | AL-GHAMDI SAAD (g199934620) |
Date Deposited: | 30 Jun 2014 12:10 |
Last Modified: | 01 Nov 2019 15:43 |
URI: | http://eprints.kfupm.edu.sa/id/eprint/139315 |