Hermawan, Altriska Izzati Khairunnisa (2025) Pengukuran Kualitas Analysability dan Testability pada Refaktorisasi Kode Program Berorientasi Objek. Other thesis, Institut Teknologi Sepuluh Nopember.
|
Text
5025211187-Undergraduate_Thesis.pdf - Accepted Version Restricted to Repository staff only Download (7MB) | Request a copy |
Abstract
Kualitas perangkat lunak, khususnya karakteristik Maintainability dalam ISO 25010, penting untuk memastikan aplikasi dapat beradaptasi terhadap perubahan kebutuhan. Keberadaan code smell menjadi indikator penurunan kualitas struktural meskipun fungsionalitas program tetap berjalan sehingga menghambat pemeliharaan, terutama dalam analisis dampak perubahan (Analysability) dan perancangan pengujian (Testability). Tugas akhir ini bertujuan mengukur dampak refaktorisasi code smell terhadap Analysability dan Testability pada kode program berorientasi objek. Penelitian menggunakan tiga program Java open-source sebagai dataset, yaitu JPetStore, FBS, dan BlueMap. Deteksi code smell dilakukan menggunakan SonarQube dan diklasifikasikan berdasarkan taksonomi Fowler, dengan sepuluh code smell dipilih untuk direfaktorisasi secara manual. Pengukuran kualitas dilakukan sebelum dan sesudah refaktorisasi menggunakan metrik Cyclomatic Complexity dan Halstead Effort untuk Analysability, serta Coupling Between Objects dan Response For Class untuk Testability. Metrik dinormalisasi menggunakan metode Min-Max dan Invers untuk memperoleh skor kualitas dalam rentang [0,1]. Validasi oleh tiga ahli Java menunjukkan bahwa seluruh fungsionalitas program tetap terjaga dan refaktorisasi berhasil mengatasi code smell target. Hasil pengukuran menunjukkan peningkatan rata-rata Analysability sebesar 10,11% dan Testability sebesar 24,11%. Meskipun terdapat penurunan Testability pada salah satu program akibat peningkatan kompleksitas struktural, secara keseluruhan refaktorisasi memberikan dampak positif terhadap kualitas Analysability dan Testability perangkat lunak.
===================================================================================================================================
Software quality, particularly the Maintainability characteristic defined in ISO 25010, is essential to ensure that applications can adapt to changing requirements. The presence of code smells indicates structural quality degradation that can hinder maintenance, especially in terms of Analysability and Testability, even when program functionality remains correct. This study aims to measure the impact of code smell refactoring on Analysability and Testability in object-oriented program code. Three open-source Java programs, namely JPetStore, FBS, and BlueMap, were used as research datasets. Code smell detection was performed using SonarQube and subsequently classified based on Fowler’s taxonomy, with ten target code smells selected for manual refactoring. Quality measurements were conducted before and after refactoring using Cyclomatic Complexity and Halstead Effort metrics for Analysability, as well as Coupling Between Objects and Response For Class metrics for Testability. Metric values were normalized using Min–Max and Inverse methods to obtain final quality scores in the range [0,1]. Validation by three Java experts confirmed that all program functionality was preserved and that the refactoring effectively addressed the targeted code smells. The results indicate an average improvement in Analysability quality of 10.11% (from 0.446 to 0.491) and Testability quality of 24.11% (from 0.319 to 0.396). Although a decrease in Testability was observed in one program due to increased structural complexity caused by method decomposition, overall, this study concludes that refactoring has a positive impact on software Analysability and Testability quality.
| Item Type: | Thesis (Other) |
|---|---|
| Uncontrolled Keywords: | Analysability, Code smell, Maintainability, Pengukuran Kualitas Perangkat Lunak, Refaktorisasi, Testability, Analysability, Code smell, Maintainability, Software Quality Measurement, Refactoring, Testability. |
| Subjects: | T Technology > T Technology (General) T Technology > T Technology (General) > T58.8 Productivity. Efficiency |
| Divisions: | Faculty of Architecture, Design, and Planning |
| Depositing User: | Altriska Izzati Khairunnisa Hermawan |
| Date Deposited: | 29 Jan 2026 06:17 |
| Last Modified: | 29 Jan 2026 06:17 |
| URI: | http://repository.its.ac.id/id/eprint/131097 |
Actions (login required)
![]() |
View Item |
