digilib@itb.ac.id +62 812 2508 8800

Dokumen Asli
PUBLIC Dessy Rondang Monaomi

Kualitas perangkat lunak merupakan salah satu tantangan utama yang dihadapi oleh para pengembang dalam proses pembangunan perangkat lunak. Selain itu tim juga dituntut untuk selalu produktif selama masa pembangunan. Dalam praktik manajemen pengembangan perangkat lunak, penyediaan wawasan menjadi penting untuk mengetahui bagaimana tim bekerja dalam menghasilkan perangkat lunak yang berkualitas. Kerangka kerja SPACE juga memberikan pemahaman bahwa pengukuran kualitas produksi kode dapat dijadikan pengukuran kuantitatif yang baik di dalam beberapa dimensi. Pengukuran kualitas kode telah banyak dilakukan oleh para peneliti sebelumnya, yang kebanyakan hanya berfokus pada kualitas aset perangkat lunak itu sendiri, sedangkan kualitas produksi kode dari sudut pandang pemrogram juga penting untuk diukur dalam menunjang produktivitas. Metrik pengukuran kualitas produksi kode telah diusulkan oleh peneliti sebelumnya dengan membagi jumlah kode cacat dengan jumlah kode yang diproduksi. Permasalahannya adalah pengukuran tersebut tidak mendefinisikan secara detail tentang karakteristik kualitas perangkat lunak seperti apa yang termanifestasi di dalam kode. Penelitian sebelumnya juga belum mengategorikan temuan kode cacat berdasarkan dampaknya terhadap perangkat lunak. Perlu adanya pengukuran kualitas penulisan kode yang lebih spesifik dalam kemunculan kode cacat, dengan mempertimbangkan kemungkinan dampaknya pada operasional perangkat lunak. Modifikasi metrik pengukuran kualitas penulisan kode dilakukan dalam penelitian ini untuk menghasilkan nilai yang disebut dengan indeks kode buruk. Kode buruk dalam penelitian ini berfokus pada temuan bug dan code smell yang dikategorikan berdasarkan tingkat keparahannya. Kategori tersebut akan diberikan bobot yang kemudian menjadi salah satu variabel pengukuran. Nilai tersebut akan melekat pada setiap aktivitas pemrogram dalam menulis kode untuk memberikan wawasan terkait kinerja para tim pengembang. Rancangan sistem dengan mengintegrasikan repositori github, alat deteksi kode buruk, pengukuran metrik, dan visualisasi juga diusulkan pada penelitian ini. Rancangan kemudian diimplementasikan menjadi sebuah kakas yang disebut dengan sistem indeks kode buruk. Indeks kode buruk dalam penelitian ini akan memiliki skala 0 sampai dengan 1, dengan melakukan invers pada hasil kali jumlah temuan kode buruk per kategori, dengan bobot nilai masing – masing, kemudian dibagi dengan jumlah baris kode dikali dengan nilai ii bobot tertinggi. Dengan begitu nilai indeks akan selalu berskala tetap. Visualisasi diterapkan pada beberapa properti, diantaranya penulis kode, jumlah aktivitas penulisan kode, dan juga nilai indeks kode buruk. Visualisasi data disajikan dalam bentuk circular chart dengan menggunakan library d3.js yang memudahkan penyesuaian ukuran dan warna lingkaran. Dalam mendeteksi kode buruk penelitian ini menggunakan SonarQube sebagai alat deteksi otomatis, alat ini telah mendefinisikan setidaknya 154 aturan untuk deteksi bug dan 403 aturan untuk deteksi code smell. Kakas kemudian diuji pada sejumlah repositori github dalam menghasilkan visualisasi indeks kode buruk pada setiap aktivitas penulisan kode. Kakas juga diuji ketepatannya dengan menambahkan kode buruk pada repositori yang sudah diuji sebelumnya. Pengujian menghasilkan ketepatan kakas dalam mendeteksi kode buruk dan waktu eksekusi yang bergantung pada ukuran proyek pengembangan perangkat lunak.