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

ABSTRAK_ABSTRACT.pdf
PUBLIC karya

Tesis
PUBLIC karya

Visualisasi untuk pemahaman kode semakin penting seiring meningkatnya ukuran dan kompleksitas kode. Berbagai teknik dan metafora digunakan untuk memvisualisasi kode. Secara umum, penelitian sebelumnya tentang visualisasi kode memvisualisasi elemen kode, hubungan antar elemen kode dan metrik untuk mengindikasikan code smell. Namun, tidak pernah ada alasan yang mendasar tentang mengapa sebuah properti spesifik dipilih untuk disertakan dalam visualisasi kode. Selain itu, mengamati metrik untuk menemukan code smell adalah pekerjaan yang sulit. Metafora kebun jamur 3D adalah metafora baru yang memvisualisasi ide-ide kunci paradigma berorientasi objek, sebagai properti yang penting untuk memahami kode. Kebun jamur 3D adalah lingkungan natural yang familier dalam kehidupan sehari-hari. Kebun yang harus dikelola dengan baik merepresentasikan kode yang juga harus dikelola dengan baik. Jamur dipilih karena strukturnya yang sederhana, dapat memberikan visualisasi yang jelas. Properti kode dipetakan ke properti visual dengan memperhatikan karakteristik visualisasi yang baik. Berbeda dengan metafora lainnya, metafora kebun jamur menunjukkan code smell secara langsung melalui strategi deteksi. Selain itu, kustomisasi strategi deteksi dimungkinkan bagi pengguna karena adanya masalah konseptualisasi manusia tentang code smell. Untuk menggambarkan kualitas kode secara keseluruhan, persentase kode ‘bebas-smell’ ditampilkan dalam nilai angka. Rancangan visualisasi yang diusulkan diterapkan dalam prototype untuk memudahkan evaluasi. Evaluasi dilakukan untuk menguji fungsionalitas, efektivitas, usability, dan usefulness visualisasi. Secara garis besar, partisipan memahami tujuan visualisasi dan setuju bahwa visualisasi kode dengan metafora kebun jamur intuitif dan mampu merepresentasikan properti kode dengan tepat. Partisipan juga berhasil mengidentifikasi semua elemen yang terkena code smell. Hasil penelitian menyarankan identifikasi code smell melalui strategi deteksi.