Laporkan Masalah

Rekomendasi Perubahan Perangkat Lunak Pada Repositori Github Menggunakan Algoritma TARMAQ Bergranularitas Kecil

KASUMA YUDA, Drs. Edi Winarko, M.Sc., Ph.D

2019 | Tesis | MAGISTER ILMU KOMPUTER

Perubahan kode perangkat lunak merupakan suatu hal yang tidak dapat dihindari pada tahap software maintenance. Perubahan tersebut terjadi dikarenakan tuntutan penyesuaian bisnis proses terbaru. Perubahan tersebut bisa dilakukan oleh orang lain yang belum memahami tentang area mana saja yang harus dimodifikasi, sehingga hasil perubahannya menyebabkan cacat pada perangkat lunak. Pada penelitian ini, data mining digunakan untuk merekomendasikan method yang terdampak agar bisa mendapatkan informasi mengenai pola perubahan kode program dengan menganalisis kebiasaan perubahan yang terjadi. Identifikasi perubahan perangkat lunak dengan pendekatan association rule mining dengan algoritma TARMAQ sudah dilakukan sebelumnya untuk coarse-granularity. Pendekatan tersebut merekomendasikan file yang terdampak oleh suatu perubahan. Pada penelitian ini, mengembangkan sistem rekomendasi yang bersifat fine-granularity agar dapat membantu pengembang untuk mengetahui area yang lebih spesifik, seperti method yang terdampak dari suatu perubahan ketika mengubah suatu file yang berisikan banyak method. Penelitian ini menggunakan data perangkat lunak yang tersimpan pada repositori Github dengan rentang waktu, jumlah commit, dan bahasa pemrograman yang bervariasi. Hasil penelitian menunjukan granularity dapat diubah menjadi fine dengan penyesuaian pada prapemrosesan dikombinasikan dengan framework Pydriller untuk mendeteksi perubahan pada method. Untuk kualitas rekomendasi yang lebih optimal didapatkan pada jumlah perubahan paling sedikit yaitu satu dan dengan potongan histori tertinggi yaitu 90%.

Code changes on software is inevitable at software maintenance, the changes could happen because new business process, regulation or competition. Changes can be done by others who do not have understanding of the impacted area that could cause a defect in the software. In this research, data mining is used to provide impacted method recommendation. The purpose is to get the code changes pattern by analysing the changes habit. Previous research on software changes identification using association rule mining approach with TARMAQ as the algorithm focussing on coarse-granularity will give the recommendation containing the impacted files. This research will be focusing on developing recommendation system that is fine-granularity in order to help developers to find out specific areas, such as the affected method when changing a file that contains many methods. This research uses software stored in Github repository with various time ranges, number of commits, and programming languages. The results show granularity can be changed to fine by adjusting the preprocessing steps combined with the Pydriller framework. The optimal recommendation quality achievable by providing 90% as largest history cut data and with least changes which is one.

Kata Kunci : association rule mining, TARMAQ, software changes

  1. S2-2019-403692-abstract.pdf  
  2. S2-2019-403692-bibliography.pdf  
  3. S2-2019-403692-tableofcontent.pdf  
  4. S2-2019-403692-title.pdf