Identifikasi Peluang Refaktorisasi Pada Kasus God Class Berdasarkan Kesamaan Konsep
Abstract: Sebuah kelas dalam
Pemrograman Berbasis Objek (PBO) harus memiliki desain yang spesifik untuk
menangani dan mengimplementasikan sebuah konsep. Kelas harus memiliki
tanggungjawab spesifik terhadap sebuah konsep yang diimplementasikan dalam
operasi. Pada pengembangannya, seringkali pengembang perangkat lunak tidak
memperhatikan desain konsep kelas sehingga kelas menjadi berkembang dan
memiliki implementasi yang kompleks atau biasa disebut dengan “God Class”.
Dalam hal ini diperlukan metode untuk mengidentifikasi peluang refaktorisasi
God Class menjadi beberapa kelas baru yang nantinya akan direfaktorisasi
menggunakan metode refaktorisasi kelas seperti ExtractClass. Pada penelitian
sebelumnya, telah diusulkan metode identifikasi peluang refaktorisasi kelas menggunakan
tiga pembobotan yaitu SSM (Structural Similariy between Methods), CDM (Call
based Dependency between Methods) dan CSM (Conceptual Similarity between
Methods). Penelitian ini mengajukan metode dalam mengidentifikasi peluang
refaktorisasi kelas dengan menghitung tingkat kedekatan konsep pada operasi.
Operasi pada kelas diekstrak menjadi corpus dan dihitung nilai kedekatannya
dengan operasi yang lain menggunakan SSM, CDM, dan CSM. Pada perhitungan CSM
dilakukan penilaian kesamaan konsep secara semantik menggunakan kedekatan
konsep term-term penyusun korpus menggunakan library Standford Dependency.
Dimana untuk menghitung kedekatan konsep antar operasi diusulkan menggunakan
pendekatan vector space models dengan memodifikasi pembobotan TF- IDF dengan word
distance dan word dependency. Kemudian nilai kedekatan antar operasi tersebut
direpresentasikan dalam bentuk graf dan dilakukan pemotongan graf menggunakan
metode Max-Flow Min-Cut untuk mendapatkan identifikasi operasi yang harus
dipisahkan dari kelas God Class. Dengan mekanisme yang diusulkan maka pemrogram
mendapatkan rekomendasi peluang refaktorisasi kelas dengan mudah. Hasil
penelitian ini mencapai hasil dengan tingkat precision 0,708% dan recall
0,936%.
Penulis: Widhy Hayuhardhika
Nugraha Putra
Kode Jurnal: jptlisetrodd170174
