Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Sistem Pendukung Keputusan untuk Jalan Menggunakan Metode ID3 (Studi Kasus BAPPEDA Kota Salatiga) T1 672007005 BAB IV
67
Bab 4
Hasil dan Pembahasan
Bab 4 Hasil dan Pembahasan
Setelah melakukan tahap perancangan yang ada pada bab 3, langkah selanjutnya adalah mengimplementasinya. Dari hasil tahap implementasi dihasilkan sebuah aplikasi dengan nama “SPK JALAN - BAPPEDA SALATIGA”
4.1
Implementasi Aplikasi
4.1.1 Implementasi Database
Sesuai pada perancangan tabel maka tabel-tabel yang terdapat pada database MySQL juga sama seperti pada perancangannya.
Gambar 4.1. Struktur Tabel tb_id3_data
Gambar 4.1 merupakan penerapan tabel tb_id3_data pada MySQL Server. Tabel tb_id3_data terdiri dari field id, fungsi, pengaju, kondisi_jalan dan result.
(2)
Gambar 4.2. Struktur Tabel tb_id3_result
Gambar 4.2 merupakan penerapan tabel tb_id3_result pada MySQL Server. Tabel tb_id3_result memiliki field id, atribut,
value dan level.
Gambar 4.3. Struktur Tabel tb_jalan
Gambar 4.3 merupakan penerapan tabel tb_jalan pada MySQL Server. Tabel tb_jalan memiliki field id_jalan, nama_jalan, pangkal_simpul, ujung_simpul, status_otonomi, jalur_lajur, panjang, lebar_damija, lebar_perkerasan, jenis_perkerasan, fungsi_jalan, kondisi_jalan, last_update, titik_pangkal dan titik_ujung.
(3)
Gambar 4.4. Struktur Tabel tb_pengajuan
Gambar 4.4 merupakan penerapan tabel tb_pengajuan pada MySQL Server. Tabel tb_pengajuan memiliki field id_pengajuan,
userid, id_jalan, kondisi_jalan, status_ID3, waktu dan alasan.
Gambar 4.5. Struktur Tabel tb_user
Gambar 4.5 merupakan penerapan tabel tb_user pada MySQL Server. Tabel tb_user memiliki field userid, password, nama, tipe_user, banned, last_active dan alamat.
4.1.2 Implementasi Aplikasi Sistem Pendukung Keputusan Jalan
Dalam aplikasi Sistem Pendukung Keputusan Jalan, digunakan sistem login dengan 3 macam hak akses yaitu
(4)
pengolahan data pada aplikasi ini dan satu hak akses yang dapat digunakan ketika koneksi database atau status database
bermasalah. Jika login valid, maka aplikasi akan menampilkan menu-menu yang sesuai dengan hak akses pada saat login.
Gambar 4.6. Tampilan Awal Aplikasi
Gambar 4.6 merupakan tampilan awal sebelum login. Untuk dapat masuk ke dalam aplikasi diperlukan username dan
password. Data username dan password disimpan dalam tabel
tb_user.
(5)
Gambar 4.7 merupakan tampilan dari aplikasi ketika user administrator telah login. Untuk hak akses administrator terdapat menu yang dapat diakses adalah Data yang meliputi Data Jalan Salatiga, Data Pengguna, Data ID3 dan Data Pengajuan Perbaikan. Selain itu, menu User Control dapat diakses Lihat Peta Salatiga dan Ganti Password. Menu Pengaturan juga dapat diakses oleh administrator yang meliputi Backup Database,
RestoreDatabase dan Ganti Koneksi Database.
Gambar 4.8. Tampilan Menu User Biasa
Gambar 4.8 merupakan tampilan menu untuk user biasa. Fungsi dengan adanya menu User Control adalah user biasa dapat mengakses submenu Lihat Peta Salatiga, Tambah Pengajuan Perbaikan Jalan, Lihat Data Pengajuan dan Ganti
Password.
4.2
Pembahasan Aplikasi
Dalam pembahasan aplikasi Sistem Pendukung Keputusan Jalan akan dibahas mengenai metode ID3 dan form-form yang digunakan.
(6)
4.2.1 Implementasi Metode ID3
ID3 merupakan sebuah metode yang menghasilkan pohon keputusan dimana berguna dalam mencapai keputusan tertentu.
Kode Program 4.1. Perhitungan Gain
Kode Program 4.1 digunakan untuk perhitungan nilai gain
dari suatu atribut. Untuk memulai menggunakan perhitungan
gain, maka method gain dipanggil. Method gain mempunyai dua
parameter yaitu samples dan attribute. Parameter samples
bertipe DataTable yang digunakan untuk mem-parsing data
sample yang digunakan oleh method gain. Sedangkan attribute
bertipe data Attribute yang merupakan tipe data turunan digunakan untuk menyimpan data atribut. Pada baris 4 merupakan deklarasi dan inisialisasi variabel sum yang digunakan untuk menyimpan nilai entropy dari tiap value pada attribute. Baris 5 sampai 12 merupakan proses looping untuk value dari atribut yang di-parsing-kan. Baris 7 sampai 8 merupakan tahap deklarasi dengan tipe data integer dan inisialisasi dengan nilai 0
1. private double gain(DataTable samples, Attribute attribute)
2. {
3. string[] values = attribute.values; 4. double sum = 0.0;
5. for (int i = 0; i < values.Length; i++) 6. {
7. int positives, negatives; 8. positives = negatives = 0;
9. getValuesToAttribute(samples,attribute, values[i], out positives, out negatives);
10. double entropy = calcEntropy(positives, negatives); 11. sum += -(double)(positives + negatives) / mTotal *
entropy; 12. }
13. return mEntropySet + sum;
(7)
pada variabel positives dan variabel negatives. Pada baris 9 dilakukan pemanggilan method getValueToAttribute dengan data yang di-parsing adalah data samples, attribute, nilai pada
attribute saat looping (value[i]), dan parse by reference untuk variabel positives dan negatives. Method getValueToAttribute
digunakan untuk mendapatkan jumlah nilai negatif dan positif dari data sample untuk tiap nilai dari attribute. Baris 10 dilakukan untuk menghitung nilai entropy dari atribut positives dan
negatives. Baris 11 adalah proses menjumlahkan nilai entropy
dari tiap value pada attribute. Baris 13 merupakan proses akhir dari perhitungan gain. Yaitu entropy(S) dikurangi dengan jumlah
entropy dari tiap value pada attribute.
Kode Program 4.2. Perhitungan Entropy
Kode Program 4.2 merupakan perintah untuk menghitung nilai entropy. Untuk menghitung nilai entropy diperlukan 2
parameter yaitu jumlah nilai negatif dan positif. Nilai total didapat dari menjumlah nilai negatif dan positif. Baris 4 dan 5 digunakan untuk menghitung nilai perbandingan nilai positif dan
1. private double calcEntropy(int positives, int negatives) 2. {
3. int total = positives + negatives;
4. double ratioPositive = (double)positives/ total; 5. double ratioNegative = (double)negatives/ total; 6. if (ratioPositive != 0)
7. ratioPositive = -(ratioPositive) * System.Math.Log(ratioPositive, 2); 8. if (ratioNegative != 0)
9. ratioNegative = -(ratioNegative) * System.Math.Log(ratioNegative, 2);
10. double result = ratioPositive + ratioNegative; 11. }
12. return result;
(8)
negatif dengan nilai total. Baris 6 dan 8 merupakan suatu kondisi dimana untuk menghitung nilai entropy, rasio perbandingan tidak boleh 0. Baris 7 dan 9 adalah langkah untuk menghitung nilai
entropy, dimana nilai entropy didapatkan dari penjumlahan dari 2 variabel yaitu ratiopositives dan rationegatives.
4.2.2 Form Utama
Pada bagian dilakukan pengujian aplikasi yang telah dibuat menggunakan Microsoft Visual Studio 2008 dan MySQL 5.0. Pengujian dilakukan dengan menggunakan data yang disimulasikan tetapi dikondisikan sebagaimana data asli.
Pada saat aplikasi pertama kali dijalankan, secara default
aplikasi akan membuat sesi koneksi terhadap database. Koneksi
database yang digunakan pertama kali berasal dari file config.cfg. Apabila koneksi masih gagal, maka aplikasi akan mencoba koneksi menggunakan koneksi default setting pada saat aplikasi dibangun. Terdapat tiga macam login yang ada di dalam aplikasi, yaitu administrator lokal apabila terjadi kesalahan dalam koneksi terhadap database, administrator untuk proses administratif dan
user biasa.
Untuk menggunakan aplikasi, diperlukan validasi pengguna. Diasumsikan pengguna berhasil melewati proses validasi, maka menu yang dapat diakses adalah sesuai dengan hak akses pada saat validasi login. Gambar 4.7 merupakan tampilan menu yang dapat diakses oleh hak akses administrator. Menu yang dapat diakses adalah Data yang meliputi Data Jalan
(9)
Salatiga, Data Pengguna, Data ID3 dan Data Pengajuan Perbaikan. Selain itu, menu User Control dapat diakses Lihat Peta Salatiga dan Ganti Password. Menu Pengaturan juga dapat diakses oleh administrator yang meliputi Backup Database,
RestoreDatabase dan Ganti Koneksi Database.
4.2.3 Form Data Jalan
Form Data Jalan berfungsi untuk melihat data jalan yang ada. Administrator juga dapat mengolah data jalan berupa insert
data jalan, update data jalan, delete data jalan maupun membuat
report data jalan. Data jalan yang digunakan untuk pengolahan antara lain id jalan, nama jalan, pangkal simpul jalan, ujung simpul jalan, status otonomi jalan, jalur dan lajur jalan, panjang jalan, lebar damija jalan, lebar perkerasan jalan, jenis perkerasan jalan, fungsi jalan, kondisi jalan, titik pangkal jalan dan titik ujung jalan. Tampilan form Data Jalan dapat dilihat pada Gambar 4.9.
(10)
(11)
Gambar 4.10.Tampilan Report Data Jalan
Gambar 4.10 merupakan tampilan report data jalan hasil dari pemilihan pada form Data Jalan.
4.2.4 Form Data Pengajuan
Form Data Pengajuan adalah form yang digunakan untuk melihat data pengajuan yang telah diterima Bappeda dan melakukan proses pengolahan data yaitu proses pemilihan keputusan dengan menggunakan ID3. Dalam form Data Pengajuan juga terdapat fungsi menampilkan report yang dapat dijadikan menjadi file DOC, RTF, PDF, XLS dan RPT. Apabila data telah diproses maka akan ada konfirmasi apakah ingin menghitung ulang. Setelah proses penghitungan, pengguna akan dikonfirmasikan untuk mensetujui perhitungan atau tidak. Apabila setuju maka data akan langsung di-update dalam
database dan apabila pengguna tidak setuju, maka hasil akan diubah dengan kebalikan dari hasil proses perhitungan kemudian baru disimpan ke dalam database. Tampilan form Data Pengajuan dapat dilihat pada Gambar 4.11.
(12)
Gambar 4.11.Tampilan Form Data Pengajuan
Gambar 4.12.Tampilan Report Data Pengajuan
4.2.5 Form Ganti Database
Form Ganti Database dapat digunakan apabila database server akan maintanance atau terjadi kesalahan dalam tabel
(13)
berkoneksi dengan database server, aplikasi ini menggunakan dua macam connection string yaitu koneksi dari konfigurasi standar yang tersimpan dalam aplikasi dan koneksi dari file config.cfg. Tampilan untuk form Ganti Database dapat dilihat pada Gambar 4.13.
Gambar 4.13.Tampilan Form Ganti Database
Untuk mengganti koneksi database, maka administrator
harus mengisi host server, username, password dan port yang digunakan untuk koneksi terhadap database baru. Kemudian pilih tombol Menghubungkan. Fungsi dari tombol Menghubungkan adalah untuk memeriksa koneksi terhadap server database baru. Apabila dapat terkoneksi maka list database akan ditambahkan pada combo box. Langkah selanjutnya adalah memilih database
(14)
mengganti file config.cfg baru dengan koneksi ke databaseserver
baru.
4.2.6 Form ID3 Data
Form ID3 Data digunakan untuk melihat data yang digunakan untuk proses perhitungan ID3 dan membuat pohon keputusan. Fungsi dari form ini adalah data yang digunakan dalam perhitungan ID3 dapat ditambahkan. Pada form ID3 Data juga terdapat fungsi untuk menghitung data ID3 dan membuat pohon keputusan. Hasil dari perhitungan ID3 dapat disimpan dengan fungsi Simpan ke DB. Tampilan form ID3 Data dapat dilihat pada Gambar 4.14.
Gambar 4.14.Tampilan Form ID3 Data
Perintah untuk menghitung ID3 dan menampilkan pohon keputusan dapat dilihat pada Kode Program 4.3.
(15)
Kode Program 4.3. Perintah Menghitung ID3
Kode Program 4.3 dapat dijelaskan sebagai berikut. Baris 3 sampai 5 merupakan langkah untuk menyusun atribut yang digunakan. Baris 6 sampai 7 digunakan untuk mengambil data
sample ID3 dari database. Baris 9 digunakan untuk memulai proses penghitungan data sample ID3 dan menyimpan hasil perhitungan dalam variabel root. Variabel root merupakan pohon keputusan dari hasil perhitungan ID3. Baris 10 sampai 14 adalah perintah untuk menampilkan hasil perhitungan ID3 menjadi visualisasi pohon keputusan. Baris 15 sampai 18 adalah pengecekan pohon keputusan apakah terjadi kesalahan atau tidak.
1. private void btnHitungID3_Click(object sender, EventArgs e){
2. Attribute ceu = new Attribute("fungsi", new string[] { "Arteri Primer", "Kolektor Primer", "Kolektor Sekunder", "Lokal Primer", "Lokal Sekunder", "Lingkungan" });
3. Attribute temperatura = new Attribute("pengaju", new string[] { "Perorangan", "Masyarakat", "Dewan" });
4. Attribute humidade = new Attribute("kondisi_jalan", new string[] { "Rusak Ringan", "Rusak Berat", "Baik" }); 5. Attribute[] attributes = new Attribute[] { ceu,
temperatura, humidade };
6. ID3_Data dataID3 = new ID3_Data(dbCon.con); 7. DataTable samples = dataID3.getDataTable(); 8. ID3 id3 = new ID3();
9. TreeNode root=id3.mountTree(samples,"result", attributes); 10.treeView1.BeginUpdate();
11.treeView1.Nodes.Clear();
12.treeView1.Nodes.Add(this.BuatPohon(root)); 13.treeView1.EndUpdate();
14.treeView1.ExpandAll(); 15.if (!checkTree(root)){ 16.this.ROOT = root;
17.if (this.ROOT != null) this.btnSaveDB.Enabled = true; 18.}
19.else{
20.searchErrorTree(root);
21.MessageBox.Show(this, "Terjadi kesalahan pada '" + this.ErrorTree + "'\nSample Data tidak mencukupi.", "Kesalahan", MessageBoxButtons.OK, MessageBoxIcon.Error); 22.}
23. this.ErrorTree = "";
(16)
Jika tidak ada kesalahan maka pemberian nilai pada variabel
ROOT dan jika variabel ROOT bukan null, maka tombol Simpan ke DB akan aktif. Baris 19, jika terjadi kesalahan pada pohon keputusan maka akan memberikan pesan kesalahan dan me-reset
variabel ErrorTree.
4.2.7 Form Map
Form Map digunakan untuk melihat data spasial Salatiga yang telah diubah menjadi peta. Tampilan formMap dapat dilihat pada Gambar 4.15.
Gambar 4.15.Tampilan FormMap
Dalam implementasi peta dengan menggunakan library
yang disertakan dalam MapServer yaitu library mapscript_csharp.dll dan beberapa file yang berada pada MapServer pada folderms4w\Apache\cgi-bin.
(17)
Perintah untuk menampilkan peta dapat dilihat pada Kode Program 4.4.
Kode Program 4.4. Perintah Untuk Menampilkan Peta
Kode Program 4.4 dapat dijelaskan sebagai berikut. Baris 2 digunakan untuk mengubah data peta menjadi data image. Baris 3 sampai 7 digunakan untuk menampilkan image peta seperti pada Gambar 4.13. Baris 8 sampai 9 digunakan untuk menampilkan data layer dan image legenda dari peta.
4.2.8 Form Pengguna
Form Pengguna digunakan untuk pengolahan data pengguna. Administrator dapat mengubah data pribadi termasuk
password terhadap pengguna lain yang terdaftar. Tampilan form
Pengguna dapat dilihat pada Gambar 4.16. 1. public void reloadMap() {
2. imageObj img = map.draw(); 3. byte[] imgByte = img.getBytes();
4. using (MemoryStream ms = new MemoryStream(imgByte)) 5. {
6. picMap.Image = System.Drawing.Image.FromStream(ms); 7. }
8. reloadMapLayer(); 9. reloadMapLegend(); 10.}
(18)
Gambar 4.16.Tampilan Form Pengguna 4.2.9 Form Tambah Pengajuan
Form Tambah Pengajuan digunakan untuk melihat data jalan dan menambahkan data pengajuan perbaikan jalan yang diakses oleh user biasa. Tampilan form Tambah Pengajuan dapat dilihat pada Gambar 4.17.
(19)
Gambar 4.17.Tampilan Form Tambah Pengajuan
Pada Gambar 4.17 merupakan form Tambah Pengajuan. Pengguna aplikasi dapat menambahkan data pengajuan perbaikan jalan dengan menyertakan alasan yang logis dan hanya dapat mengajukan satu jalan untuk tiap pengajuan dan jalan yang sudah diajukan pengguna tertentu, maka pengguna tertentu tersebut tidak dapat mengajukan jalan yang sama. Untuk menambahkan pengajuan langkah pertama adalah memilih jalan yang akan diajukan kemudian mengisi form. Dilanjutkan memilih tombol Laporkan.
4.3
Pengujian Sistem dengan
Blackbox Testing
Pengujian Blackbox Testing pada sistem dilakukan pada proses login , pencarian data, tambah data, hapus data dan ubah
(20)
data. Hasil pengujian Blackbox Testing dapat dilihat pada Tabel 4.1.
Tabel 4.1. Tabel Blackbox Testing
Aktivitas dan
Event Input Output
Status Penguji an
Login dengan memilih tombol Login
Username dan
Password
- Jika berhasil Login maka bisa mengakses menu-menu yang terdapat dalam aplikasi.
- Jika username atau
password salah maka muncul peringatan
username atau password
anda salah.
Valid
Input data kemudian memilih tombol Simpan
Memasukkan data baik itu data jalan, pengguna, ID3, maupun
pengajuan perbaikan jalan.
-Jika belum memasukkan data sesuai prosedur (field yang tersedia) maka akan muncul peringatan bahwa kurang lengkap.
Valid
Mengubah data kemudian memilih tombol Edit
Mengubah data yang ada.
- Jika masih ada data yang masih kurang (tidak sesuai prosedur) maka proses edit
gagal dan akan muncul peringatan bahwa kurang lengkap.
Valid
Mencari data kemudian memilih tombol Cari
Memasukkan data yang ingin dicari
Jika data yang akan dicari tidak ada maka data tidak akan muncul.
Valid
Memilih data kemudian memilih
Delete
Konfirmasi Ya atau Tidak
-Jika konfirmasi Ya maka data akan terhapus
-Jika konfirmasi Tidak maka data tidak akan terhapus
Valid
Pada Tabel 4.1 menjelaskan bahwa ketika user melakukan
Login harus memasukkan username dan password terlebih dahulu. Jika password maupun username salah maka akan
(21)
muncul peringatan bahwa password atau username salah. Namun jika berhasil maka menu akan terbuka sesuai dengan tipe pengguna yang login. Selain itu, ketika user ingin edit maupun tambah data, data yang dimasukkan harus sesuai dengan prosedur (tidak boleh kosong).
4.4
Pengujian ID3
Uji coba yang dilakukan untuk pengujian algoritma ID3 dilakukan dengan memasukkan data sample terhadap aplikasi. Jumlah data sample adalah 50 data sample. Hasil pengujian didapatkan 16% dari 50 data sample tidak sesuai dengan keputusan. Kombinasi dalam pembuatan pohon keputusan menjadi faktor dalam penentuan hasil.
(1)
Jika tidak ada kesalahan maka pemberian nilai pada variabel ROOT dan jika variabel ROOT bukan null, maka tombol Simpan ke DB akan aktif. Baris 19, jika terjadi kesalahan pada pohon keputusan maka akan memberikan pesan kesalahan dan me-reset variabel ErrorTree.
4.2.7 Form Map
Form Map digunakan untuk melihat data spasial Salatiga yang telah diubah menjadi peta. Tampilan form Map dapat dilihat pada Gambar 4.15.
Gambar 4.15.Tampilan FormMap
Dalam implementasi peta dengan menggunakan library yang disertakan dalam MapServer yaitu library mapscript_csharp.dll dan beberapa file yang berada pada MapServer pada folder ms4w\Apache\cgi-bin.
(2)
Perintah untuk menampilkan peta dapat dilihat pada Kode Program 4.4.
Kode Program 4.4. Perintah Untuk Menampilkan Peta
Kode Program 4.4 dapat dijelaskan sebagai berikut. Baris 2 digunakan untuk mengubah data peta menjadi data image. Baris 3 sampai 7 digunakan untuk menampilkan image peta seperti pada Gambar 4.13. Baris 8 sampai 9 digunakan untuk menampilkan data layer dan image legenda dari peta.
4.2.8 Form Pengguna
Form Pengguna digunakan untuk pengolahan data pengguna. Administrator dapat mengubah data pribadi termasuk password terhadap pengguna lain yang terdaftar. Tampilan form Pengguna dapat dilihat pada Gambar 4.16.
1. public void reloadMap() { 2. imageObj img = map.draw(); 3. byte[] imgByte = img.getBytes();
4. using (MemoryStream ms = new MemoryStream(imgByte)) 5. {
6. picMap.Image = System.Drawing.Image.FromStream(ms); 7. }
8. reloadMapLayer(); 9. reloadMapLegend(); 10.}
(3)
Gambar 4.16.Tampilan Form Pengguna 4.2.9 Form Tambah Pengajuan
Form Tambah Pengajuan digunakan untuk melihat data jalan dan menambahkan data pengajuan perbaikan jalan yang diakses oleh user biasa. Tampilan form Tambah Pengajuan dapat dilihat pada Gambar 4.17.
(4)
Gambar 4.17.Tampilan Form Tambah Pengajuan
Pada Gambar 4.17 merupakan form Tambah Pengajuan. Pengguna aplikasi dapat menambahkan data pengajuan perbaikan jalan dengan menyertakan alasan yang logis dan hanya dapat mengajukan satu jalan untuk tiap pengajuan dan jalan yang sudah diajukan pengguna tertentu, maka pengguna tertentu tersebut tidak dapat mengajukan jalan yang sama. Untuk menambahkan pengajuan langkah pertama adalah memilih jalan yang akan diajukan kemudian mengisi form. Dilanjutkan memilih tombol Laporkan.
4.3
Pengujian Sistem dengan Blackbox Testing
Pengujian Blackbox Testing pada sistem dilakukan pada proses login , pencarian data, tambah data, hapus data dan ubah
(5)
data. Hasil pengujian Blackbox Testing dapat dilihat pada Tabel 4.1.
Tabel 4.1. Tabel Blackbox Testing Aktivitas dan
Event Input Output
Status Penguji an Login dengan
memilih tombol Login
Username dan
Password
- Jika berhasil Login maka bisa mengakses menu-menu yang terdapat dalam aplikasi.
- Jika username atau password salah maka muncul peringatan
username atau password
anda salah.
Valid
Input data kemudian memilih tombol Simpan
Memasukkan data baik itu data jalan, pengguna, ID3, maupun
pengajuan perbaikan jalan.
-Jika belum memasukkan data sesuai prosedur (field yang tersedia) maka akan muncul peringatan bahwa kurang lengkap.
Valid
Mengubah data kemudian memilih tombol Edit
Mengubah data yang ada.
- Jika masih ada data yang masih kurang (tidak sesuai prosedur) maka proses edit gagal dan akan muncul peringatan bahwa kurang lengkap.
Valid
Mencari data kemudian memilih tombol Cari
Memasukkan data yang ingin dicari
Jika data yang akan dicari tidak ada maka data tidak akan muncul.
Valid
Memilih data kemudian memilih Delete
Konfirmasi Ya atau Tidak
- Jika konfirmasi Ya maka
data akan terhapus
- Jika konfirmasi Tidak maka
data tidak akan terhapus
Valid
Pada Tabel 4.1 menjelaskan bahwa ketika user melakukan Login harus memasukkan username dan password terlebih dahulu. Jika password maupun username salah maka akan
(6)
muncul peringatan bahwa password atau username salah. Namun jika berhasil maka menu akan terbuka sesuai dengan tipe pengguna yang login. Selain itu, ketika user ingin edit maupun tambah data, data yang dimasukkan harus sesuai dengan prosedur (tidak boleh kosong).
4.4
Pengujian ID3
Uji coba yang dilakukan untuk pengujian algoritma ID3 dilakukan dengan memasukkan data sample terhadap aplikasi. Jumlah data sample adalah 50 data sample. Hasil pengujian didapatkan 16% dari 50 data sample tidak sesuai dengan keputusan. Kombinasi dalam pembuatan pohon keputusan menjadi faktor dalam penentuan hasil.