COVER Sigit Widodo
PUBLIC Alice Diniarti
BAB 1 Sigit Widodo
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
BAB 2 Sigit Widodo
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
BAB 3 Sigit Widodo
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
BAB 4 Sigit Widodo
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
BAB 5 Sigit Widodo
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
Terbatas  Alice Diniarti
» Gedung UPT Perpustakaan
PUSTAKA Sigit Widodo
PUBLIC Alice Diniarti
Kualitas perangkat lunak adalah salah satu masalah terpenting dalam rekayasa
perangkat lunak yang menarik perhatian baik dari praktisi maupun peneliti. Upaya
dalam menjamin kualitas perangkat lunak yang baik perlu dilakukan dari awal
siklus pengembangan, salah satu yang memiliki pengaruh besar pada kualitas
tersebut adalah bagaimana pengembang melakukan perancangan atau desain
terhadap perangkat lunak. Namun kecerobohan dan kurangnya pengalaman dapat
membuat desain menjadi kurang baik. Desain yang kurang baik tersebut dapat
diartikan sebagai design smell. Design smell dapat berdampak negatif terhadap
kualitas perangkat lunak. Kakas bantu yang tersedia dalam mendeteksi design smell
umumnya terdapat pada kode program. Sedangkan mendeteksi design smell sedini
mungkin adalah hal yang perlu dilakukan, deteksi biasanya terjadi sangat terlambat,
dan kemudian solusinya sangat kompleks. Oleh sebab itu diperlukan kakas yang
dapat mendeteksi design smell pada tahap perancangan. Artefak UML class
diagram pada tahap perancangan dapat dimanfaatkan untuk mendeteksi design
smell karena memiliki informasi class dan hubungan antara class pada sistem.
Dalam pengembangan kakas, diperlukan identifikasi karakteristik design smell
berdasarkan UML class diagram. Identifikasi dilakukan berdasarkan definisi yang
telah dikemukakan oleh para peneliti sebelumnya yang kemudian dilakukan
analisis sesuai informasi yang tersedia pada UML class diagram. Hasil analisis
tersebut kemudian divalidasi oleh ahli perangkat lunak yang terdiri dari para
praktisi dan akademisi. Hasilnya design smell dapat diidentifikasi dengan
memanfaatkan metrik perangkat lunak yang tersedia, aturan dan ambang batas yang
ditentukan berdasarkan karakteristik setiap jenis design smell. Dari 25 jenis design
smell, deteksi pada UML class diagram dapat digolongkan menjadi tiga, yaitu 12
smell yang dapat dideteksi secara otomatis, 7 smell dideteksi otomatis sebagian dari
manifestasinya, dan 6 smell yang perlu dideteksi dengan tinjauan langsung atau
memerlukan informasi kode program. Hasil deteksi design smell pada UML class
diagram masih bersifat terduga, sehingga masih perlu untuk dilakukan pemeriksaan
kembali apakah memang smell tersebut harus dihindari atau tidak pada keadaan
tertentu.
Kakas bantu deteksi design smell dengan class diagram (DECLAD) dikembangkan
dengan memanfaatkan berkas XML dari UML class diagram sebagai input pada
kakas, untuk kemudian diproses lebih lanjut sesuai karakteristik yang didapatkan.
DECLAD mampu melakukan deteksi terhadap 19 design smell yang tergolong
dapat dideteksi otomatis dan dideteksi otomatis sebagian dari manifestasinya, yaitu
missing abstraction, imperative abstraction, multifaceted abstraction, unnecessary
abstraction, unutilized abstraction, duplicate abstraction, deficient encapsulation,
leaky encapsulation, broken modularization, insufficient modularization,
cyclically-dependent modularization, hub-like modularization, unnecessary
hierarchy, unfactored hierarchy, wide hierarchy, speculative hierarchy, deep
hierarchy, multipath hierarchy dan cyclic hierarchy. DECLAD dapat mempercepat
proses deteksi yang dilakukan oleh pengembang perangkat lunak pada tahap
perancangan berdasarkan UML class diagram dan dapat mendeteksi design smell
lebih dini.