Sistem Deteksi Cacat Perangkat Lunak Berbasis Aturan Menggunakan Decision Tree

Penjaminan kualitas perangkat lunak dapat dilakukan di setiap langkah dalam proses pengembangan perangkat lunak. Cacat adalah hal yang harus dihindari dalam pengembangan perangkat lunak. Pendeteksian cacat sedini mungkin merupakan sebuah langkah penjaminan kualitas perangkat lunak. Indikator cacat pada perangkat lunak dapat diketahui dari kompleksitas kode program yang dikembangkan. Dalam penelitian ini digunakan tiga metode pengukuran kompleksitas kode antara lain yaitu, Lines of Code (LOC), McCabe’s Cyclomatic Complexity dan Halstead’s Volume. Tujuan penelitian ini adalah otomatisasi proses pendeteksian cacat pada perangkat lunak berdasarkan nilai kompleksitas kode program dengan menggunakan metode klasifikasi berbasis aturan. Aturan-aturan pada metode klasifikasi dibangkitkan menggunakan algoritma Decision Tree. Aturan-aturan tersebut diterjemahkan menjadi Semantic Web Rule Language (SWRL) untuk diimplementasikan pada sebuah ontologi. Ontologi dan SWRL disimulasikan pada aplikasi Protege sehingga proses deteksi dapat dilakukan dengan cara otomatis. Sistem pendeteksi cacat berbasis aturan dengan pembangkit aturan decision tree menghasilkan tingkat keakuratan sebesar 0,933, yang berarti bahwa sebanyak 93% dari data dapat diprediksi dengan benar. Kata Kunci Aturan, Decision Tree, Deteksi Cacat, Kualitas Perangkat Lunak, Perangkat Lunak.

[1]  Yen-Liang Chen,et al.  Using decision trees to summarize associative classification rules , 2009, Expert Syst. Appl..

[2]  Hongyu Zhang,et al.  An investigation of the relationships between lines of code and defects , 2009, 2009 IEEE International Conference on Software Maintenance.

[3]  Giuliano Antoniol,et al.  A novel composite model approach to improve software quality prediction , 2010, Inf. Softw. Technol..

[4]  Abraham Bernstein,et al.  Semantic Web Enabled Software Analysis , 2014, Semantic Web Enabled Software Engineering.

[5]  Michel R. V. Chaudron,et al.  Automated prediction of defect severity based on codifying design knowledge using ontologies , 2012, 2012 First International Workshop on Realizing AI Synergies in Software Engineering (RAISE).

[6]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

[7]  Cagatay Catal,et al.  Software fault prediction: A literature review and current trends , 2011, Expert Syst. Appl..

[8]  H. Lan,et al.  SWRL : A semantic Web rule language combining OWL and ruleML , 2004 .

[9]  Taghi M. Khoshgoftaar,et al.  Software Quality Classification Modeling Using the SPRINT Decision Tree Algorithm , 2003, Int. J. Artif. Intell. Tools.