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

Dokumen Asli
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan

Aktivitas pemahaman perangkat lunak merupakan aktivitas yang krusial dalam pengembangan perangkat lunak. Seiring bertambahnya ukuran perangkat lunak, dibutuhkan strategi untuk dapat memahami perangkat lunak secara lebih efisien. Tugas Akhir ini bertujuan untuk membangun modul analisis struktural dan semantik pada aplikasi penunjang pemahaman program melalui visualisasi program dalam representasi graf. Modul ini bertujuan untuk memberikan peningkatan keterbacaan pada hasil visualisasi representasi graf dan memberikan konteks yang relevan untuk membantu pemahaman interpretasi pada visualisasi graf. Modul analisis struktural meliputi pengelompokan graf dan perubahan granularitas graf. Pengelompokan graf membantu aktivitas identifikasi atau investigasi struktur sistem perangkat lunak serta mengidentifikasi subkomponen-subkomponen yang membangun sistem perangkat lunak. Perubahan granularitas graf mendukung visualisasi graf sehingga lebih mudah untuk dipahami melalui proses pemahaman secara top-down. Adapun modul analisis semantik meliputi pembangkitan ringkasan pada komponen fungsi/prosedur dan pembangkitan ringkasan pada graf, keduanya memberikan dukungan berupa wawasan terkait gambaran umum konten dari hasil visual, baik dari visual graf maupun komponen graf. Melalui serangkaian pengujian, visualisasi graf untuk merepresentasikan perangkat lunak memudahkan aktivitas pemahaman perangkat lunak. Hasil evaluasi menunjukkan bahwa aplikasi penunjang pemahaman perangkat lunak berbasis graf meningkatkan efisiensi aktivitas pemahaman dibandingkan inspeksi kode sumber secara manual. Hasil pengujian pengguna juga menunjukkan bahwa modul analisis struktural dan semantik mendukung pemahaman perangkat lunak melalui representasi graf. Hasil analisis evaluasi perangkat lunak menunjukkan bahwa dengan analisis struktural, visualisasi graf lebih mudah ditelusuri dan dipahami representasinya. Selain itu, analisis semantik juga memberikan dukungan interpretasi yang dapat mengurangi beban kognitif pengembang dalam aktivitas pemahaman perangkat lunak.