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

ABSTRAK Robby Setiawan
PUBLIC Open In Flipbook Esha Mustika Dewi

Perangkat lunak yang berkembang dapat memiliki kode yang semakin kompleks seiring bertambahnya jumlah kelas dan ketergantungan antarkelas. Kondisi tersebut menyulitkan pemahaman kode, terutama bagi pengembang perangkat lunak. Kedua aspek tersebut dikenal sebagai kohesi, yaitu keterkaitan metode dan atribut dalam kelas, dan kopling, yaitu ketergantungan antarkelas. Nilai metrik kohesi dan kopling memberikan gambaran tingkat kohesi dan kopling pada setiap kelas, tetapi masih sulit dipahami karena belum menggambarkan keterkaitan metode dan atribut dalam kelas serta ketergantungan antarkelas yang menyebabkan nilai tersebut. Penelitian ini membangun kakas yang menerima kode sumber dalam bahasa Python, kemudian menghitung LCOM4 sebagai metrik kohesi dan CBO sebagai metrik kopling, serta memvisualisasikan keduanya. Kakas menggunakan parser berbasis ANTLR4 untuk mengekstrak informasi terkait kelas, metode, atribut, dan ketergantungan antarkelas. Hasil ekstraksi digunakan untuk menghitung nilai LCOM4 dan CBO. Selanjutnya, kakas akan menampilkan nilai metrik dan memvisualisasikan keterkaitan metode dan atribut dalam kelas serta ketergantungan antarkelas dalam bentuk node-link. Pengujian dilakukan pada proyek open-source dengan kode sumber Python. Evaluasi dilakukan dengan membandingkan hasil penghitungan metrik oleh kakas dengan nilai metrik yang dihitung manual pada kasus uji terkontrol dan kakas sejenis lain yang menjadi referensi. Selanjutnya, kualitas penyajian visual pada kakas diuji dengan menggunakan M.E.D.V.I.S. Hasil pengujian menunjukkan kesesuaian hasil penghitungan metrik oleh kakas dengan nilai metrik yang dihitung manual pada kasus uji terkontrol dan kakas sejenis lain yang menjadi referensi, serta kualitas penyajian visual yang sudah memenuhi parameter M.E.D.V.I.S. pada proyek kecil hingga menengah dengan ukuran hingga sekitar 46.000 LOC.