PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK...

137
SKRIPSI PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA Diajukan Untuk Melengkapi Syarat Mencapai Gelar Sarjana Strata Satu (S1) Disusun Oleh : JUNARTO 2008230026 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS DARMA PERSADA JAKARTA 2015

Transcript of PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK...

Page 1: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

SKRIPSI

PERANCANGAN DAN PEMBUATAN APLIKASI

DATAMINING BERBASIS WEB MENGGUNAKAN

ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN

MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

Diajukan Untuk Melengkapi Syarat Mencapai Gelar Sarjana Strata Satu (S1)

Disusun Oleh :

JUNARTO

2008230026

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS DARMA PERSADA

JAKARTA

2015

Page 2: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

ii

LEMBAR PENGESAHAN

PERANCANGAN DAN PEMBUATAN APLIKASI

DATAMINING BERBASIS WEB MENGGUNAKAN

ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN

MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

Disusun oleh :

Nama : Junarto

NIM : 2008230026

Timor Setiyaningsih, S.T., M.T.I.

Dosen Pembimbing

Adam Arif Budiman, S.T., M. Kom.

Kepala Jurusan Teknik Informatika

Page 3: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

iii

LEMBAR PENGUJI TUGAS AKHIR

Laporan Tugas Akhir dengan judul :

PERANCANGAN DAN PEMBUATAN APLIKASI

DATAMINING BERBASIS WEB MENGGUNAKAN

ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN

MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

telah disidangkan dan dinyatakan LULUS pada tanggal 14 Agustus 2015

Penguji I

Herianto, S.Pd., M.T.

Penguji 2

Suzuki Syofian, M.Kom.

Penguji 3

Aji Setiawan, M.M.S.I.

Page 4: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

iv

LEMBAR PERNYATAAN

Saya yang bertanda tangan dibawah ini :

Nama : Junarto

NIM : 2008230026

Fakultas : Teknik

Jurusan : Teknik Informatika

Menyatakan bahwa Laporan Tugas Akhir ini saya susun sendiri berdasarkan hasil

peninjauan, observasi serta memadukannya dengan buku-buku, literatur atau

bahan-bahan referensi lain yang terkait dan relevan di dalam penyelesaian

Laporan Tugas Akhir ini.

Demikian pernyataan ini penulis buat dengan sesungguhnya

Jakarta, 21 Agustus 2015

Junarto

Page 5: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

v

LEMBAR BIMBINGAN

LAPORAN TUGAS AKHIR

TEKNIK INFORMATIKA – DARMA

PERSADA

NIM : 2008230026

NAMA LENGKAP : Junarto

DOSEN PEMBIMBING : Timor Setiyaningsih, S.T., M.T.I.

JUDUL TUGAS AKHIR : PERANCANGAN DAN PEMBUATAN

APLIKASI DATAMINING BERBASIS WEB

MENGGUNAKAN ALGORITMA C4.5 UNTUK

MEMPREDIKSI KELULUSAN MAHASISWA S-

1 PADA UNIVERSITAS DARMA PERSADA

No. Tanggal Materi Paraf

Dosen Pembimbing

1 8 Agus 2014 Konsultasi Konsep Judul

2 15 Agus 2014 Konsultasi Proposal Skripsi (Bab I)

3 22 Agus 2014 Revisi Proposal Skripsi (Bab I)

4 7 Mei 2015 Penyerahan Bab II

5 12 Mei 2015 Revisi Bab II

6 26 Mei 2015 Penyerahan Bab III

7 3 Juni 2015 Revisi Bab III

8 10 Juni 2015 Demo Aplikasi

9 12 Juni 2015 Penyerahan Bab IV dan Bab V

10 19 Juni 2015 Revisi Bab IV dan Bab V

11 25 Juni 2015 Penyerahan Bab IV dan Bab V

12 3 Juli 2015 Konsultasi Persiapan Sidang Isi

Jakarta, 14 Agustus 2015

Dosen Pembimbing

Timor Setiyaningsih, S.T., M.T.I.

Page 6: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

vi

ABSTRAKSI

Berdasarkan data kelulusan Universitas Darma Persada, banyak mahasiswa

yang dinyatakan lulus tidak tepat waktu. Sementara itu sistem informasi yang ada

saat ini belum mampu menggali lebih jauh informasi dari banyaknya data yang

tersimpan untuk dijadikan sebuah pengetahuan. Oleh karena itu penulis

melakukan penelitian dengan membuat aplikasi penerapan data mining dengan

metode klasifikasi menggunakan algoritma C4.5. Algoritma C4.5 ini merupakan

algoritma decision tree terbaik menurut IEEE. Algoritma C4.5 bekerja secara

iteratif dengan menghitung nilai Gain tertinggi yang diperoleh berdasarkan

penghitungan Entropy masing-masing atribut. Atribut yang digunakan dalam

penelitian ini diantaranya: Jenis Kelamin, Jurusan, Nilai Indeks Prestasi Semester

1 hingga Indeks Prestasi Semester 4. Aplikasi ini menghasilkan informasi berupa

pohon keputusan dan aturan-atturan (rules) yang berguna saat melakukan prediksi

kelulusan. Setiap keputusan yang muncul merupakan hasil pencocokan nilai

masukan dengan aturan-aturan hasil pembelajaran data kasus.

Kata kunci : Data Mining, Algoritma C4.5, Aplikasi Web.

Page 7: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

vii

KATA PENGANTAR

Bismillahirrahmaanirrahim,

Puji syukur saya panjatkan kehadirat Allah swt, atas segala rahmat

dan karunia-Nya akhirnya saya dapat juga menyelesaikan laporan tugas akhir ini

dengan judul “PERANCANGAN DAN PEMBUATAN APLIKASI DATA

MINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK

MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS

DARMA PERSADA”. Tugas Akhir ini disusun sebagai persyaratan kelulusan

pada Program Studi Teknik Informatika Universitas Darma Persada.

Dalam kesempatan ini, saya ingin menyampaikan rasa hormat dan

terima kasih kepada semua pihak yang telah memberikan bimbingan dan bantuan

yang sangat berharga dalam menyelesaikan laporan tugas akhir ini :

1. Bapak Ir. Agus Sun Sugiharto, MT, selaku Dekan Fakultas Teknik Universitas

Darma Persada.

2. Bapak Adam arif Budiman, S.T, M.Kom, selaku Ketua Jurusan Teknik

Informatika Universitas Darma Persada.

3. Ibu Timor Setiyaningsih, S.T,M.T.I, selaku pembimbing saya yang telah

meluangkan waktu, tenaga dan pikirannya untuk memberikan bimbingan dan

pengarahan serta sarannya bagi saya dalam menyelesaikan laporan ini.

4. Keluarga tercinta khususnya ibu dan ayah (alm.) yang selalu memberikan

semangat, dukungan-dukungan baik moril maupun materil, juga doa yang tak

ada habisnya.

Page 8: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

viii

5. Pihak civitas kampus yang bersedia memberikan data yang dibutuhkan pada

penelitian ini sehingga pembuatan laporan tugas akhir dapat berjalan.

6. Seluruh anggota tim KapanLulus.com yang telah mendukung dan

mengizinkan saya untuk menumpang meletakkan aplikasi skripsi saya.

7. Pimpinan serta seluruh staf Digital Presence Strategy yang banyak membantu

memberi masukan dan dukungannya.

8. Semua pihak yang tidak dapat saya sebutkan satu persatu, yang telah

memberikan bantuan dan dukungannya dalam menyelesaikan penulisan

laporan tugas akhir ini.

Akhir kata saya berharap semoga laporan tugas akhir ini dapat bermanfaat

bagi kita semua. Sekian dan terima kasih.

Jakarta, Agustus 2015

(Penulis)

Page 9: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

ix

DAFTAR ISI

LEMBAR PENGESAHAN .............................................................................. ii

PENGUJIAN LAPORAN TUGAS AKHIR .................................................... iii

LEMBAR PERNYATAAN ............................................................................. iv

LEMBAR BIMBINGAN ................................................................................. v

Abstraksi .......................................................................................................... vi

Kata Pengantar ................................................................................................ vii

Daftar Isi........................................................................................................... ix

Daftar Gambar ................................................................................................ xiv

Daftar Tabel .................................................................................................. xvii

BAB I PENDAHULUAN ................................................................................ 1

1.1 Latar Belakang .................................................................................. 1

1.2 Maksud dan Tujuan ........................................................................... 3

1.3 Perumusan Masalah .......................................................................... 3

1.4 Batasan Masalah................................................................................ 3

1.5 Metodologi Penellitian ...................................................................... 4

1.6 Sistematika Penulisan Laporan ......................................................... 6

BAB II LANDASAN TEORI ......................................................................... 8

2.1 Data Mining ...................................................................................... 8

Page 10: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

x

2.1.1 Teknik Data Mining Klasifikasi ..................................................... 9

2.1.2 Pohon Keputusan ........................................................................... 9

2.1.3 Algoritma C4.5 ............................................................................. 10

2.2 Definisi Sistem ................................................................................ 16

2.3 Perangkat Lunak.............................................................................. 17

2.4 Internet ............................................................................................ 17

2.4.1 Sejarah Internet ..................................................................... 17

2.4.2 Web ....................................................................................... 18

2.4.3 HTML ................................................................................... 19

2.4.4 CSS ....................................................................................... 20

2.4.5 PHP ....................................................................................... 20

2.5 Basis Data MySQL ......................................................................... 21

2.6 UML ................................................................................................ 23

2.6.1 Use Case ............................................................................... 25

2.6.2 Activity Diagram .................................................................. 26

2.6.3 Sequence Diagram ................................................................ 28

BAB III ANALISIS DAN PERANCANGAN ............................................. 29

3.1 Analisis Sistem ................................................................................ 29

3.1.1 Analisis Masalah .................................................................. 29

Page 11: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xi

3.1.2 Analisis Sistem Yang Berjalan ............................................. 29

3.1.3 Analisis Kebutuhan Data ...................................................... 30

3.2 Rancangan Sistem ........................................................................... 30

3.2.1 Use Case Diagram ................................................................ 31

3.2.2 Activity Diagram .................................................................. 31

3.2.2.1 Proses Melihat Data Kasus...................................... 32

3.2.2.2 Proses Mining ......................................................... 33

3.2.2.3 Proses Melihat Aturan ............................................. 33

3.2.2.4 Proses Melihat Hasil Mining ................................... 34

3.2.2.5 Proses Prediksi Kelulusan ....................................... 35

3.2.3 Sequence Diagram ................................................................ 36

3.2.3.1 Sequence Diagram Melihat Data Kasus .................. 37

3.2.3.2 Sequence Diagram Proses Mining .......................... 37

3.2.3.3 Sequence Diagram Melihat Aturan ......................... 38

3.2.3.4 Sequence Diagram Melihat Hasil............................ 38

3.2.3.5 Sequence Diagram Prediksi Kelulusan ................... 39

3.3 Rancangan Database ....................................................................... 39

3. 3.1 Rancangan Tabel User ......................................................... 42

3.3.2 Rancangan Tabel Data_Mahasiswa ...................................... 42

Page 12: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xii

3.3.3 Rancangan Tabel Atribut ...................................................... 43

3..3.4 Rancangan Tabel Mining_C45 ............................................ 43

3..3.5 Rancangan Tabel Iterasi_C45 .............................................. 44

3..3.6 Perancangan Tabel Pohon_Keputusan_C45 ........................ 44

3..3.7 Perancangan Tabel Rule_C45 ............................................. 45

3..3.8 Persancangan Tabel_Rule_Penentu_Keputusan .................. 45

3..3.9 Perancangan Tabel Data_Penentu_Keputusan .................... 45

3..3.10 Perancangan Tabel Data_Keputusan_Kinerja ................... 46

3..3.11 Perancangan Tabel Data_Keputusan ................................. 46

3.4 RancanganTampilan Aplikasi ......................................................... 47

3.4.1 Tampilan Home .................................................................... 47

3.4.2 Halaman Data Kasus ............................................................ 48

3.4.3 Tampilan Proses Hasil Mining ............................................. 48

3.4.4 Halaman Aturan .................................................................... 49

3.4.5 Halaman Prediksi Kelulusan ................................................ 50

BAB IVIMPLEMENTASI & EVALUASI ................................................. 51

4.1 Implementasi ................................................................................... 51

4.1.1 Implementasi Perangkat Keras ............................................. 51

4.1.2 Implementasi Perangkat Lunak ............................................ 51

Page 13: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xiii

4.1.3 Implementasi Basis Data ...................................................... 52

4.1.4 Implementasi Algoritma C4.5 .............................................. 52

4.2 Pembahasan Tampilan Aplikasi ...................................................... 65

4.2.1 Tampilan Halaman Login ..................................................... 65

4.2.2 Tampilan Home Admin ........................................................ 66

4.2.3 Tampilan Form Data Mahasiswa .......................................... 66

4.2.4 Tampillan Data Mahasiswa .................................................. 67

4.2.5 Tampilan Perhitungan C4.5 .................................................. 67

4.2.7 Tampilan Pohon Keputusan C4.5 ......................................... 67

4.2.8 Tampilan Rule C4.5 .............................................................. 68

4.2.9 Tampilan Perbandingan Keputusan ...................................... 69

4.2.10 Tampilan Form Penentu Keputusan ................................... 69

4.3 Evaluasi ........................................................................................... 70

BAB V KESIMPULAN DAN SARAN ........................................................ 72

5.1 Kesimpulan ..................................................................................... 72

5.2 Saran ................................................................................................ 72

DAFTAR PUSTAKA .................................................................................... 73

LAMPIRAN

Page 14: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xiv

DAFTAR GAMBAR

Gambar 2.1 Pohon Keputusan Hasil Perhitungan Node 1 ............................. 13

Gambar 2.2 Pohon Keputusan Hasil Perhitungan Node 1.1 .......................... 14

Gambar 2.3 Pohon Keputusan Hasil Perhitungan Node 1.1.2 ....................... 16

Gambar 2.4 Use Case Model ......................................................................... 26

Gambar 2.5 Activity Diagram ........................................................................ 27

Gambar 2.6 Contoh Sequence Diagram ......................................................... 28

Gambar 3.1 Use Case Diagram Sistem Yang Diusulkan ............................... 31

Gambar 3.2 Activity Diagram Mengelola Data Mahasiswa .......................... 32

Gambar 3.3 Activity Diagram Proses Mining................................................ 33

Gambar 3.4 Activity Diagram Proses Melihat Aturan ................................... 34

Gambar 3.5 Activity Diagram Proses Melihat Hasil ..................................... 35

Gambar 3.6 Activity Diagram Proses Prediksi Kelulusan ............................. 36

Gambar 3.7 Sequence Diagram Melihat Kasus ............................................. 37

Gambar 3.8 Sequence Diagram Proses Mining ............................................. 37

Gambar 3.9 Sequence Diagram Melihat Aturan ............................................ 38

Gambar 3.10 Sequence Diagram Melihat Hasil ............................................. 38

Gambar 3.11 Sequence Diagram Prediksi Kelulusan .................................... 39

Gambar 3.12 Rancangan Tabel Relational..................................................... 41

Page 15: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xv

Gambar 3.13 Rancangan Tampilan Tata Letak Dasar ................................... 47

Gambar 3.14 Rancangan Tampilan Home ..................................................... 47

Gambar 3.15 Rancangan Tampilan Halaman Kasus...................................... 48

Gambar 3.16 Rancangan Tampilan Halaman Hasil Mining .......................... 49

Gambar 3.17 Rancangan Tampilan Halaman Melihat Aturan ...................... 49

Gambar 3.18 Rancangan Tampilan Halaman Prediksi .................................. 50

Gambar 4.1 Hasil Pembuatan Database dengan PHPMyAdmin ................... 52

Gambar 4.2 Pohon Keputusan Node Root ..................................................... 56

Gambar 4.3 Pohon Keputusan Node 1.1 ........................................................ 59

Gambar 4.4 Pohon Keputusan Node 1.2 ........................................................ 60

Gambar 4.5 Pohon Keputusan Node 1.2.1 ..................................................... 62

Gambar 4.6 Pohon Keputusan Node 1.3 ........................................................ 63

Gambar 4.7 Pohon Keputusan Node 1.3.1 ..................................................... 65

Gambar 4.8 Tampilan Halaman Login .......................................................... 65

Gambar 4.9 Tampilan Halaman Home .......................................................... 66

Gambar 4.10 Tampilan Form Data Mahasiswa ............................................. 66

Gambar 4.11 Tampilan Tabel Data Mahasiswa ............................................. 67

Gambar 4.12 Tampilan Perhitungan C4.5...................................................... 67

Gambar 4.13 Tampilan Pohon Keputusan C4.5 ............................................. 68

Page 16: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xvi

Gambar 4.14 Tampilan Rule Hasil Proses Mining ......................................... 68

Gambar 4.15 Tampilan Perbandingan Keputusan .......................................... 69

Gambar 4.16 Tampilan Form Penentu Keputusan ......................................... 69

Gambar 4.17 Tampilan Tabel Rekap Penentu Keputusan.............................. 70

Gambar 4.18 Tabel Kinerja : perbandingan keputusan .................................. 70

Page 17: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xvii

DAFTAR TABEL

Tabel 2.1 KeputusanBermain Tenis ............................................................... 11

Tabel 2.2 PerhitunganNode 1 ......................................................................... 12

Tabel 2.3 Perhitungan Node 1.1 ..................................................................... 13

Tabel 2.4 Perhitungan Node 1.1.2 .................................................................. 15

Tabel 2.5 Simbol Activity Diagram ............................................................... 26

Tabel 3.1 Tabel Klasifikasi Nilai IPS ............................................................ 40

Tabel 3.2 Tabel Klasifikasi Kelulusan .......................................................... 41

Tabel 3.3 Rancangan Tabel User .................................................................. 42

Tabel 3.4 Rancangan TabelData_Mahasiswa ................................................ 42

Tabel 3.5 Rancangan Tabel Atribut ............................................................... 43

Tabel 3.6 Rancangan Tabel Mining_C45 ...................................................... 43

Tabel 3.7 Rancangan Tabel Iterasi_C45 ........................................................ 44

Tabel 3.8 Rancangan Tabel Pohon_Keputusan_C45 ..................................... 44

Tabel 3.9 Rancangan Tabel Rule_C45........................................................... 45

Tabel 3.10 Rancangan Tabel Rule_Penentu_Keputusan ............................... 45

Tabel 3.11 Rancangan Tabel Data_Penentu_Keputusan ............................... 45

Tabel 3.12 Rancangan Tabel Data_Keputusan_Kinerja ................................ 46

Tabel 3.13 Rancangan Tabel Data_Keputusan .............................................. 46

Page 18: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

xviii

Tabel 4.1 Penghitungan Node 1 ..................................................................... 54

Tabel 4.2 Penghitungan Node 1.1 .................................................................. 58

Tabel 4.3 Penghitungan Node 1.2 .................................................................. 59

Tabel 4.4 Penghitungan Node 1.2.1 ............................................................... 61

Tabel 4.5 Penghitungan Node 1.3 .................................................................. 62

Tabel 4.6 Penghitungan Node 1.3.1 ............................................................... 64

Tabel 4.7 Tabel Penilaian ............................................................................... 71

Page 19: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Dengan kemajuan teknologi informasi dewasa ini, kebutuhan akan

informasi yang akurat sangat dibutuhkan dalam kehidupan sehari-hari, sehingga

informasi akan menjadi suatu elemen penting dalam perkembangan masyarakat

saat ini dan waktu mendatang. Namun kebutuhan informasi yang tinggi kadang

tidak diimbangi dengan penyajian informasi yang memadai, sering kali informasi

tersebut masih harus digali ulang dari data yang jumlahnya sangat besar.

Kemampuan teknologi informasi untuk mengumpulkan dan menyimpan berbagai

tipe data jauh meninggalkan kemampuan untuk menganalisis, meringkas dan

mengekstrak pengetahuan dari data. Metode tradisional untuk menganalisis data

yang ada, tidak dapat menangani data dalam jumlah besar.

Pemanfaatan data yang ada di dalam sistem informasi untuk menunjang

kegiatan pengambilan keputusan, tidak cukup hanya mengandalkan data

operasional saja, diperlukan suatu analisis data untuk menggali potensi-potensi

informasi yang ada. Para pengambil keputusan berusaha untuk memanfaatkan

gudang data yang sudah dimiliki untuk menggali informasi yang berguna

membantu mengambil keputusan, hal ini mendorong munculnya cabang ilmu baru

untuk mengatasi masalah penggalian informasi atau pola yang penting atau

menarikdari data dalam jumlah besar, yang disebut dengan data mining.

Penggunaan teknik data mining diharapkan dapat memberikan pengetahuan-

pengetahuan yang sebelumnya tersembunyi di dalam database sehingga menjadi

Page 20: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

2

informasi yang berharga.

Perguruan tinggi saat ini dituntut untuk memiliki keunggulan bersaing

dengan memanfaatkan semua sumber daya yang dimiliki. Selain sumber daya

sarana, prasarana, dan manusia, sistem informasi adalah salah satu sumber daya

yang dapat digunakan untuk meningkatkan keunggulan bersaing. Dilihat dari data

kelulusan mahasiswa Universitas Darma Persada pada angkatan tahun 2008,

sebagianlulusan Program Sarjana (S1) reguler di Universitas Darma Persada

menempuh masa studi lebih dari 8 semester dari yang dijadwalkan yaitu 8

semester. Oleh karena itu, dengan memanfaatkan data induk mahasiswa dan data

akademik mahasiswa, dapat diketahui pola kelulusan berdasarkan nilai mata

kuliah pada empat semester pertama.

Untuk dapat mengetahui pola tersebut, dibutuhkan algoritma metode data

mining yang sesuai dengan kasus tersebut. Berdasarkan Paper yang

dipresentasikan pada International Conference on Data Mining (ICDM), IEEE

mengidentifikasi 10 algoritma data mining terbaik. Dengan memperhatikan

kelebihan suatu algoritma dalam mempelajari data, terpilihlah Algoritma C4.5

sebagai algoritma terbaik diantara 10 nominasi algoritma data mining.

Berdasarkan permasalahan yang dipaparkan di atas, peneliti mencoba

untuk menerapkan teknik klasifikasi menggunakan algoritma c4.5 sebagai metode

penyelesaian masalah yang ada. Sehingga penulis menjadikannya sebagai topik

Tugas Akhir dengan judul “PERANCANGAN DAN PEMBUATAN APLIKASI

DATAMININGBERBASIS WEBMENGGUNAKAN ALGORITMA C4.5

UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA

UNIVERSITAS DARMA PERSADA”.

Page 21: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

3

1.2 Maksud Dan Tujuan

Penelitian ini dimaksudkan untuk mendapatkan prediksi hasil kelulusan

mahasiswa dengan menerapkan algoritma C4.5, sehingga pembimbing akademik

bisa mengetahui mahasiswa yang lulusnya tepat waktu dan mahasiswa yang

lulusnya terlambat.

Tujuan yang ingin dicapai dalam penelitian ini adalah membantu

pembimbing akademik setiap jurusan dalam memprediksi kelulusan mahasiswa

dan hasil dari prediksi tersebut bisa digunakan sebagai bahan rekomendasi kepada

mahasiswa untuk meningkatkan prestasi akademiknya.

1.3 Perumusan Masalah

Berdasarkan latar belakang tersebut maka perumusan masalah yang dapat

diambil dalam penelitian ini adalah ”Bagaimana menerapkan Algorima C4.5

untuk memprediksi kelulusan mahasiswa berdasarkan data mahasiswa dan

akademik”.

1.4 Batasan Masalah

Pada penulisan tugas akhir ini, penulis membatasi permasalahan dalam

aplikasi data mining untuk memprediksi kelulusan mahasiswa pada Universitas

Darma Persada yang meliputi :

1. Tidak membahas pada sistem pendukung keputusan maupun sistem informasi

akademik.

2. Metode data mining yang digunakan adalah metode klasifikasi dengan

algoritma C4.5.

3. Data mahasiswa yang digunakan adalah data yang tersimpan di database dan

tidak pula membahas data warehouse. Dalam kasus ini data yang diambil

Page 22: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

4

sebagai atribut penentu meliputi NIM, Nama Mahasiswa, Jenis Kelamin,

Jurusan, Nilai IPS 1 hingga IPS 4, dan Tanggal Kelulusan untuk mendapatkan

status kelulusan.

4. Untuk jurusan yang digunakan sebagai variable penentu, hanya jurusan-jurusan

program studi S1.

1.5 Metodologi Penelitian

Dalam melakukan penelitian ini penulis mengunakan beberapa metode

dalam membuat penelitian ini antara lain :

1. Metode Pengumpulan data

Pengumpulan data terbagi menjadi 2 yaitu :

a. Kepustakaan, suatu metode dimana sumber data berdasarkan teori-teori

dan literatur yang berhubungan dengan pembahasan. Bisa diperoleh

melalui browsing atau membaca buku literatur yang ada.

b. Observasi, suatu metode untuk memperoleh data dengan jalan melakukan

pengamatan langsung untuk mendapatkan data yang diperlukan. Penulis

mendapat langsung data mahasiswa dan akademik berupa SQL File dari

bagian UPT-TIK setelah menemui bagian BAAK Universitas Darma

Persada.

2. Jenis dan Sumber Data

a. Data Primer, suatu data yang diperoleh langsung dari pihak institusi yang

bersangkutan, yakni dari bagian akademik di Universitas Darma Persada

yaitu data mahasiswa dan data akademik.

Page 23: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

5

b. Data Sekunder, suatu data yang diperoleh dari buku-buku penunjang, dan

dari berbagai pihak maupun keterangan-keterangan. Yang menjadi data

sekunder adalah materi dari web dan buku-buku literatur.

3. Metode Pengembangan Prangkat Lunak

Pada penelitian ini penulis menggunakan System Development Life

Cycle (SDLC) Model Waterfall yang terbagi dalam 4 tahap yaitu :

a. Analisis Sistem

Dalam melakukan proses analisis sistem, penulis langsung menerapkan

langkah-langkah Knowledge Discovery in Database (KDD).

b. Perancangan Sistem

Penulis menggunakan Unified Modelling Language (UML) sebagai

permodelan rancangan sistem yang meliputi use case, activity duagram,

dan sequence diagram.

c. Pengodean

Dalam membuat aplikasi ini penulis menggunakan PHP sebagai bahasa

pemrograman. Kode program disusun berdasarkan prosedur algoritma

yang digunakan. Dalam hal ini langkah-langkah pemrograman

menyesuaikan algoritma C4.5.

d. Pengujian

Untuk menguji hasil dari proses data mining ini dengan membandingkan

hasil pembelajaran data training dangan data testing.

Page 24: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

6

1.6. Sistematika Penulisan Laporan

Penulisan terdiri dari 5 (lima) bab berikut garis besar dari masing- masing

bab tersebut, yaitu :

BAB I PENDAHULUAN

Dalam bab ini menjelaskan tentang latar belakang masalah, maksud dan

tujuan, perumusan masalah, batasan masalah, metodologi penelitian serta

sistematika penulisan dari laporan penelitian ini.

BAB II LANDASAN TEORI

Pada bab ini berisikan tentang dasar-dasar teori yang digunakan untuk

melakukan penulisan laporan skripsi. berisikan tentang konsep data mining, dan

teknologi yang menunjuang pembuatan aplikasi.

BAB III ANALISIS DAN PERANCANGAN

Pada bab ini berisikan kebutuhan sistem aplikasi data mining

menggunakan algoritma C4.5 untuk memprediksi tingkat kelulusan mahasiswa

pada Universitas Darma Persada, baik berupa analisis kebutuhan data, desain,

rancangan UML dan form-form yang ada pada aplikasi yang akan dibuat.

BAB IV IMPLEMENTASI HASIL

Pada bab ini menguraikan apa yang telah dibuat mengenai aplikasi data

mining menggunakan algoritma C4.5 untuk memprediksi tingkat kelulusan

mahasiswa pada universitas darma persada. Bab ini berisikan tampilan aplikasi

yang dibuat serta penjelasannya.

Page 25: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

7

BAB V KESIMPULAN DAN SARAN

Pada bab ini membahas tentang kesimpulan yang diperoleh dari hasil

penelitian, dan juga beberapa saran yang dapat diberikan untuk Universitas Darma

Persada.

Page 26: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

8

BAB II

LANDASAN TEORI

2.1 Data Mining

Data Mining adalah suatu istilah yang digunakan untuk menguraikan

penemuan pengetahuan di dalam basis data. Data Mining adalah proses yang

menggunakan teknik statistik, matematika, kecerdasan buatan, machine learning

untuk mengekstraksi dan mengidentifikasi informasi yang bermanfaat dan

pengetahuan yang terkait dari berbagai basis data besar (Kusrini & Emha Taufiq

Luthfi, 2009:25).

Data Mining adalah salah satu bidang yang berkembang pesat

karenabesarnya kebutuhan akan nilai tambah dari database skala besar yang

makin banyak terakumulasi sejalan dengan pertumbuhan teknologi informasi. (Iko

Pramudiono, 2003:1).Data mining, sering juga disebut Knowledge Discovery in

Database (KDD),adalah kegiatan yang meliputi pengumpulan, pemakaian data

historis untuk menemukan keteraturan, pola atau hubungan dalam set data

berukuran besar. Keluaran dari data mining ini bisa dipakai untuk memperbaiki

pengambilan keputusan di masa depan. Sehingga istilah pattern recognition jarang

digunakan karena termasuk bagian dari data mining (Azevedo, A. Santos &

Manuel F,2008:30).

Menurut Gartner Group, data mining adalah suatu proses menemukan

hubungan yang berarti, pola, dan kecenderungan dengan memeriksa dalam

sekumpulan besar data yang tersimpan dalam penyimpanan dengan menggunakan

teknik pengenalan pola seperti teknik statistik dan matematika (Larose, 2005).

Page 27: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

9

2.1.1 Teknik Data Mining Klasifikasi

Teknik Klasifikasi dalam data mining dikelompokkan ke dalam Teknik

Pohon Keputusan, Bayesian (Naïve Bayesian dan Bayesian Belief Networks),

Jaringan Saraf Tiruan (Backpropagation), Teknik yang berbasis konsep dari

penambangan aturan-aturan asosiasi, dan teknik lain (K-Nearest Neighboor,

algoritma genetik, teknik dengan pendekatan himpunan rough dan fuzzy)

Setiap teknik memiliki kelebihan dan kekurangannya sendiri. Data dengan

profil tertentu mungkin paling optimal jika diklasifikasi dengan teknik tertentu,

atau dengan kata lain, profil data tertentu dapat mendukung termanfaatkannya

kelebihan dari teknik ini.

Secara umum, Proses Klasifikasi dapat dilakukan dalam dua tahap, yaitu

proses belajar dari data training dan klasifikasi kasus. Pada proses belajar,

Algoritma Klasifikasi mengolah data training untuk menghasilkan sebuah model.

Setelah model diuji dan dapat diterima, pada tahap klasifikasi, model tersebut

digunakan untuk memprediksi kelas dari kasus baru untuk membantu proses

pengambilan keputusan (Han dkk.,2012).

2.1.2 Pohon Keputusan

Pohon Keputusan atau Decision Tree merupakan representasi sederhana

dari teknik klasifikasi untuk sejumlah kelas berhingga, dimana simpul internal

maupun simpul akar ditandai dengan nama atribut, rusuk-rusuknnya diberi label

nilai atribut yang mungkin dan simpul daun ditandai dengan kelas-kelas yang

berbeda.(Fajar Astuti, 2013).

Page 28: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

10

2.1.3 Algoritma C4.5

Secara umum algorima C4.5 untuk membangun pohon keputusan adalah

sebagai berikut :

1. Pilih atribut sebagai node akar.

2. Buat cabang untuk tiap-tiap nilai.

3. Bagi kasus dalam cabang.

4. Ulangi proses untuk setiap cabang sampai semua kasus pada cabang

memiliki kelas yang sama (Kusrini & Luthfi, 2011)

Untuk memilih atribut sebagai node akar, didasarkan pada nilai Gain

tertinggi dari atribut-atribut yang ada. Untuk menghitung Gain digunakan rumus

seperti tertera dalam persamaan berikut :

Setelah mendapatkan nilai Gain, ada satu hal lagi yang perlu kita lakukan

perhitungan, yaitu mencari nilai Entropy. Entropy digunakan untuk menentukan

seberapa informatif sebuah masukan atribut untuk menghasilkan keluaran atribut.

Rumus dasar dari Entropy tersebut adalah sebagai berikut :

Page 29: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

11

Untuk memudahkan penjelasan mengenai algoritma C4.5, berikut ini

disertakan contoh kasus yang dituangkan dalam Tabel 2.1.

Tabel 2.1 Keputusan Bermain Tenis (Kusrini & Luthfi, 2011)

NO OUTLOOK TEMPERATUR HUMIDITY WINDY PLAY

1. Sunny Hot High False No

2. Sunny Hot High True No

3. Cloudy Hot High False Yes

4. Rainy Mid High False Yes

5. Rainy Cool Normal False Yes

6. Rainy Cool Normal True Yes

7. Cloudy Cool Normal True Yes

8. Sunny Mild High False Yes

9. Sunny Cool Normal False Yes

10. Rainy Mild Normal False Yes

11. Sunny Mild Normal True No

12. Cloudy Mild High True Yes

13. Cloudy Hot Normal False Yes

14. Rainy Mild High True No

Dalam kasus yang tertera pada Tabel 2.1 akan dibuat pohon keputusan

untuk menentukan main tenis atau tidak dengan melihat keadaan cuaca,

temparatur, kelembaban dan keadaan angin.

Page 30: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

12

Selanjutnya data tersebut akan diproses sesuai langkah-langkah

membentuk pohon keputusan. Berikut ini adalah penjelasan lebih terperinci:

Hitung jumlah kasus, yakni jumlah kasus untuk keputusan Yes dan jumlah

keputusan No, dan Entropy dari semua kasus dan kasus yang dibagi berdasarkan

atribut-atribut yang digunakan. Setelah itu lakukan perhitungan Gain untuk setiap

atribut. Hasil perhitungan dapat dilihat pada Tabel 2.2.

Tabel 2.2 Perhitungan Node 1 (Kusrini & Luthfi, 2011)

Node Jumlah Kasus No Yes Entropy Gain

1 Total 14 4 10 0.863

Outlook 0.258

Cloudy 4 0 4 0

Rainy 5 1 4 0.721

Sunny 5 3 2 0.97

Temperature 0.183

Cool 4 0 4 0

Hot 4 2 2 1

Mild 6 2 4 0.918

0.370

Humidity

High 7 4 3 0.985

Normal 7 0 7 0

Windy 0.005

False 8 2 6 0.811

True 6 4 2 0.918

Dari hasil pada Tabel 2.2 dapat diketahui bahwa atribut dengan Gain

tertinggi adalah Humidity yaitu sebesar 0.37. Dengan demikian Humidity dapat

menjadi node akar. Ada dua nilai atribut dari Huminity yaitu High dan Normal.

Dari kedua nilai atribut tersebut, nilai atribut Normal sudah mengklasifikasikan

kasus menjadi satu keputusan Yes, sehingga tidak perlu dilakukan perhitungan

lenih lanjut, tetapi untuk nilai atribut High masih perlu dilakukan perhitungan

Page 31: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

13

lagi. Setelah dilakukan perhitungan , maka terbentuklah pohon keputusan

sementara seperti pada Gambar 2.1.

Gambar 2.1 Pohon Keputusan Hasil Perhitungan Node 1(Kusrini &

Luthfi, 2011)

Hitung kembali jumlah kasus, Entropy dari semua kasus yang dibagi

berdasarkan atribut yang dapat menjadi node akar dari nilai atribut Humidity-

High. Setelah itu lakukan perhitungan Gain untuk masing-masing atribut. Hasil

perhitungan ditunjukkan pada Tabel 2.3.

Tabel 2.3 Perhitungan Node 1.1 (Kusrini & Luthfi, 2011)

Node Jumlah Kasus No Yes Entropy Gain

1.1 Humidity-Gain 7 4 3 0.965

Outlook 0.699

Cloudy 2 0 2 0

Rainy 2 2 1 1

Sunny 3 3 0 0

Temperature 0.02

Cool 0 0 0 0

Hot 3 2 1 0.918

Mild 4 2 2 1

Windy 0.02

False 4 2 2 1

True 3 2 1 0.918

Page 32: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

14

Dari Tabel 2.3 dapat diketahui bahwa atribut dengan Gain tertinggi adalah

Outlook yaitu sebesar 0,67. Dengan demikian Outlook dapat menjadi node cabang

dari nilai atribut Humidiy – High . Dari ketiga nilai atribut Outlook, nilai atribut

Cloudy sudah mengklasifikasi kasus 1 yaitu keputusan Yes dan nilai atribut Sunny

sudah mengklasifikasi kasus 1 yaitu keputusan No. Pohon keputusan yang

dihasilkan sampai tahap ini ditunjukkan pada Gambar 2.2.

Gambar 2.2 Pohon Keputusan Hasil Perhitungan Node 1.1 (Kusrini &

Luthfi, 2011)

Gambar 2.2 menunjukkan hasil perhitungan node 1.1 dimana nilai atribut

Outlook yang belum mengklasifikasi kasus menjadi 1 yaitu Rainy. Dengan

demikian nilai atribut Outlook – Rainy menjadi node akar untuk perhitungan

Node 1.1.2. Hitung jumlah kasus, jumlah kasus untuk keputusan Yes, jumlah

kasus untuk keputusan No, dan Entropy dari semua kasus dan kasus yang dibagi

berdasarkan atribut Temperature dan Windy yang dapat menjadi node cabang dari

Page 33: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

15

nilai atribut Outlook, yakni Rainy. Setelah itu hitung nilai Gain untuk masing-

masing atribut. Hasil perhitungan ditunjukkan pada Tabel 2.4.

Tabel 2.4 Perhitungan Node 1.1.2 (Kusrini & Luthfi, 2011)

Node Jumlah

Kasus

No Yes Entropy Gain

1.1.2 Humidity-High DAN

Outlook-Rainy

2 1 1 1

Temperature 0

Cool 0 0 0 0

Hot 0 0 0 0

Mild 2 1 1 1

Windy 1

False 1 0 1 0

True 1 1 0 0

Dari hasil pada Tabel 2.3 dapat diketahui bahwa atribut dengan Gain

tertinggi adalah Windy dengan nilai 1. Dengan demikian Windy dapat menjadi

node cabang dari nilai atribut Rainy. Ada dua nilai atribut dari Windy yaitu True

dan False. Dari kedua nilai atribut tersebut, nilai atribut False sudah

mengklasifikasi kasus menjadi 1 yaitu keputusan Yes dan nilai atribut True sudah

mengklasifikasikan kasus menjadi satu dengan keputusan No, sehingga tidak

perlu lagi perhitungan lebih lanjut untuk nilai atribut ini. Pohon keputusan yang

terbentuk sampai tahap ini ditunjukkan pada Gambar 2.3.

Page 34: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

16

Gambar 2.3 Pohon Keputusan Hasil Perhitugan Node 1.1.2 (Kusrini & Luthfi,

2011)

Dengan memperhatikan pohon keputusan pada Gambar 2.3, diketahui

bahwa semua kasus sudah masuk dalam kelas. Dengan demikian, pohon

keputusan pada Gambar 2.3 merupakan pohon keputusan terakhir yang terbentuk.

2.2 Definisi Sistem

Menurut Bambang Hariyanto (2008) Sistem adalah kumpulan elemen

yang saling berinteraksi untuk mencapai satu tujuan tertentu.

Beberapa prinsip umum sistem adalah sebgai berikut :

1. Sistem selalu merupakan bagian sistem lebih besar. Sistem dapat dipartisi

menjadi subsistem-subsistem yang lebih kecil.

2. Sistem lebih terspesialisasi akan kurang dapat beradaptasi untuk menghadapi

keadaan-keadaan berbeda.

Page 35: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

17

3. Lebih besar ukuran sistem maka akan memerlukan lebih banyak sumber daya

untuk operasi dan pemeliharaan.

4. Sistem senantiasa mengalami perubahan, tumbuh dan berkembang.

2.3 Perangkat Lunak

Menurut Rosa dan Salahuddin (2011), Perangkat lunak adalah program

komputer yang terasosiasi dengan dokumentasi perangkat lunak seperti

dokumentasi kebutuhan model desain, dan cara penggunaan. Sebuah program

komputer tanpa terasosiasi dengan dokumentasinya maka belum dapat disebut

perangkat lunak. Sebuah perangkat lunak juga sering disebut dengan sistem

perangkat lunak, sehingga dapat diartikan sebuah sistem yang memiliki hubungan

satu sama lain untuk memenuhi program pelanggan. Pelanggan adalah orang atau

organisasi yang membeli atau memesan perangkat lunak dari pengembang

perangkat lunak. Sedangkan user atau pengguna perangkat lunak adalah orang

yang memiliki kepentingan utuk memakai atau menggunakan perangkat lunak

untuk memudahkan pekerjaannya.

2.4 Internet

2.4.1 Sejarah Internet

Asal usul internet berasal dari jaringan komputer yang dibentuk pada

tahun 1970-an. Jaringan komputer tersebut disebut dengan ARPAnet, (US Defense

Advanced Research Projects Agency). yaitu jaringan komputer yang dibentuk oleh

departement pertahanan Amerika Serikat. ARPAnet dibangun dengan sasaran

untuk membuat suatu jaringan komputer yang tersebar untuk menghindari

pemusatan informasi di satu titik yang dipandang rawan untuk dihancurkan

apabila terjadi peperangan. Dengan cara ini diharapkan apabila satu bagian dari

Page 36: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

18

jaringan terputus, maka jalur yang melalui jaringan tersebut dapat secara otomatis

dipindahkan ke saluran lainnya. Selanjutnya, jaringan komputer tersebut

diperbarui dan dikembangkan, dan sekarang penerusnya menjadi tulang punggung

global untuk sumber daya informasi yang disebut dengan internet. (Irwansyah

Edy, 2014).

2.4.2 Web

Perkembangan dunia internet telah melahirkan suatu fasilitas layan baru,

yaitu web, yang merupaka layanan terpenting internet. Dewasa ini, fasilitas web

mengizinkan pengakses untul mengakses dan berinteraksi dengan teks, grafik,

animasi, foto, suara dan video. Web secara fisik adalah kumpulan komputer

pribadi, web browser, koneksi ke ISP, komputer server, router, dan switch yang

digunakan untuk mengalirkan informasi dan menjadi wahana pertama sebagai

pihak terkait. Web dibagi menjadi beberapa jenis, yaitu:

a. Web Search Engine: adalah web yang memiliki kemampuan untuk

melakukan pencarian dokumen berdasarkankata kunci tertentu. Contoh: Google

dan Yahoo

b. Web Portal: adalah web yang berisi kumpulan link, search engine, dan

informasi. Contoh: Yahoo dan AOL.

c. Web Perusahaan: adalah web yang mendeskripsikan suatu perusahaan,

layanan fasilitas, dan segal sesuatu tentang perusahaan. Contoh: indosat.

d. Web Pribadi: adalah web yang memberikan profil pemilik web.

Web dikenal dengan sistem client-server. Komputer pengguna disebut

komputer client, sedangka komputer yang di akses disebut server. Web

menggunakan protokol yang disebut HTTP (HyperText Transfer Protocol) yang

Page 37: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

19

berjalan pada TCP/IP. Perekat antar halaman web disebut Hyperlink dan

Hypertext. Agar dapat menjelajahi web, kita membutuhkan perangkat lunak yang

disebut web browser. Kemudian, membangun sebuah web ditulis pada bahasa

komputer yang dikenal Hypertext Markup Languange (HTML).

Pada prakteknya, bahasa komputer berbasis web tidak hanya HTML,

melainkan juga melibatkan bahasa pemrograman lain seperti PHP atau Perl.

Tujuannya adalah untuk membentuk halaman yang bersifat dinamis. Perlu

diketahui, aplikasi web itu sendiri dibagi menjadi Web statis dan Web Dinamis.

Web statis dibentuk dengan menggunakan HTML saja. Kekurangan

aplikasi seperti ini terletak pada keharusan untuk memelihara program secara

terus-menerus untuk mengikuti setiap perubahan yang terjadi. Kelemahan ini

diatasi dengan model aplikasi web dinamis.

Dengan memperluas kemampuan HTML, yakni dengan menggunakan

perangkat lunak tambahan, perubahan informasi dalam halaman-halaman web

dapat ditangani melalui perubahan data, bukan melalui perubahan program.

Sebagai implementasinya, aplikasi dapat dikoneksikan ke basis data. Dengan

demikian, perubahan informasi dapat dilakukan olehoperator atau yang

bertanggung jawab terhadap kemuktakiran data, dan tidak menjadi tanggung

jawab pemrograman atau Webmaster. Pemrograman aplikasi web terdiri dari :

2.4.3 HTML

HTML kependekan dari Hyper Text Markup Languange. Dokumen HTML

adalah file teks murni yang dapat di buat dengan editor teks sembarang. Dokumen

Page 38: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

20

ini dikenal sebagai web page. Dokumen HTML merupakan dokumen yang

disajikan dalam browser web surfer. Dokumen ini umumnya berisi informasi atau

interface aplikasi di dalam internet. Ada dua cara untuk membuat sebuah web

page: dengan HTML editor atau dengan editor teks biasa (misalnya notepad).

Dokumen HTML disusun oleh elemen-elemen. “Elemen” merupakan

istilah bagi komponen-komponen dasar pembentuk dokumen HTML. Beberapa

contoh elemen adalah: head, body, table, paragraf, dan list. Elemen dapat berupa

teks murni, atau bukan teks, atau keduanya.(Abdul Kadir, 2008)

2.4.4 CSS

CSS merupakan singkatan dari Cascading Style Sheet, merupakan fitur

baru dari HTML 4.0. hal ini diperlukan setelah melihat perkembangan HTML

menjadi kurang praktis karena web pages terlalu banyak dibebani hal-hal yag

berkaitan dengan faktor tampilan seperti font dan lain-lain. Untuk itu jika

kumpulan isi gaya (style) tersebut dikelolah secara terpisah maka manajemen

pages menjadi lebih mudah dan efisien. (Bambang Hariyanto, 2008)

2.4.5 PHP

Menurut Budi Raharjo (2011), PHP merupakan salah satu bahasa

pemrograman berbentuk skrip yang ditempatkan dalam server dan diproses di

server. Hasilnyalah yang dikirm ke klien, tempat pemakai menggunakan browser.

Secara khusus, PHP dirancang untuk membentuk aplikasi web dinamis.

Maksudnya, PHP mampu menghasilkana website yang secara terus-menerus

hasilnya bisa berubah-ubah sesuai dengan pola yang diberikan. Hal tersebut

tergantung pada permintaan client browser-nya (bisa menggunakan browser

Page 39: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

21

Opera, Internet Explorer, Mozzila,, dan lain-lain). Umumnya, pembuatan web

dinamis berhubungan erat dengan Databse sebagai sumber data.

PHP mempunyai fungsi yang sama dengan skrip-skrip seperti ASP (Active

Server Page), Cold Fusion, ataupun Perl. Namu, Perlu diketahui bahwa PHP

sebenarnya bisa dipakai secara Command Line. Artinya, skrip PHP dapat

dijalankan tanpa melibatkan web server maupun browser.

Model kerja HTML diawali dengan permintaan suatu halaman web oleh

browser. Berdasarkan URL (Uniform Resource Locator) atau dikenal dengan

sebutan alamat internet, browser mendaptkan alamat dari web browser,

mengidentifikasi alamat yang dikehendaki, dan menyampaikan segala informasi

yang dibutuhkan oleh web server. Selanjutnya, web server akan mencarikan file

yang diminta dan memberikan isinya ke web browser (atau yang biasa disebut

browser saja). Browser yang mendapatkan isinya segera melakukan proses

penerjemah kode HTML dan menampilkan ke layar pemakai.

Bagaimana halnya yang diminta adalah sebuah halaman PHP? Prinsipnya

serupa dengan kode HTML. Hanya saja, ketika berkas PHP yang diminta

didapatkan oleh web server, isinya segera dikirimkan ke mesin PHP dan

mesininilah yang memproses dan memberikan hasilnya (berupa kode HTML) ke

Web Server. Selanjutnya, web server menyampaikan ke klien.

2.5 Basis Data MySQL

Menutut Bambang Hariyanto (2008), data adalah rekaman mengenai

fenomena/fakta yang ada atau yang terjadi. Data pada pokonya adalah refleksi

fakta yang ada. Data mengenai fakta-fakta penting organisasi harus direkam dan

dikelola secara baik sehingga dapat dipakai/diakses secara efisien sehingga efektif

Page 40: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

22

mendukung operasi dan pengendalian organisasi. Data merupakan sumber daya

penting pada manajemen modern. Untuk itu, organisasi perlu melakukan penataan

dan manajemen data yang baik agara data yang dimiliki organisasi dapat berdaya

guna secara maksimal.

Basisdata adalah kumpulan data (elementer) yang secara logic berkaitan

dalam merepresentasikan fenomena/fakta secara terstruktur dalam domain tertentu

untuk mendukung aplikasi pada sistem tertentu. Basisdata adalah kumpulan data

yang saling berhubungan yang merefleksikan fakta-fakta yang terdapat di

organisasi. Basisdata mendeskripsikan state organisasi/perusahaan/sistem. Saat

satu kejadian muncul si dunia nyata mengubah state organisasi/perusahaan/sistem

maka satu perubahan pun harus dilakukan terhdadap data yang disimpan di

basisdata. Basisdata merupakan komponen utama sistem informasi karena semua

informasi untuk pengambilan keputusan berasal dari data di basisdata.

Pengelolaaan basisdata yang buruk dapat mengakibatkan ketidaktersediaan data

penting yang digunakan untuk menghasilkan informasi yang diperlukan dalam

pengambilan keputusan.

Sistem manajemen basisdata atau DBMS (Database Management System)

adalah perangkat lunak untuk mendefinisikan, menciptakan, mengelola, dan

mengendalikan pengsaksesan basisdata. Fungsi sistem manajemen basisdata saat

ini yang penting adalah menyediakan basis untuk sistem informasi manjemen.

MySQL adalah salah satu jenis database server yang sangat terkenal

kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa dasar

untuk mengakses databasenya. Selain itu ia bersifat open source (tidak perlu

Page 41: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

23

membayar untuk menggunakannya) pada pelbagai platform (kecuali untuk jenis

Enterprise, yang bersifat komersial).

MySQL termasuk jenis RDBMS (Relational Database Management

System). Itulah sebabnya, istilah seperti tabel, baris, dan kolom digunakan pada

MySQL. Pada MySQL, sebuah database mengandung satu atau beberapa kolom.

(Bambang Hariyanto, 2008)

2.6 UML

UML itu singkatan dari Unified Modelling Language. Sesuai dengan kata

terakhir dari kepanjangannya, UML merupakan salah satu bentuk language atau

bahasa. Menurut pencetusnya, UML didefinisikan sebagai bahasa visual untuk

menjelaskan, memberikan spesifikasi, merancang, membuat model, dan

mendokumentasikan aspek-aspek dari sebuah sistem.

Karena tergolong bahasa visual, UML lebih mengedepankan penggunaan

diagram untuk menggambarkan aspek dari sistem yang sedang dimodelkan.

Memahami UML itu sebagai bahasa visual itu penting, karena penekanan tersebut

membedakannya dengan bahasa pemrograman yang lebih dekat ke mesin. Bahasa

visual lebih dekat ke mental model pikiran kita, sehingga pemodelan

menggunakan bahasa visual bisa lebih mudah dan lebih cepat dipahami

dibandingkan apabila dituliskan dalam sebuah bahasa pemrograman.

UML adalah salah satu bentuk notasi atau bahasa yang sama yang

digunakan oleh professional dibidang software untuk menggambarkan atau

memodelkan sebuah system software. Sebelumnya ada banyak notasi atau bahasa

lain untuk mencapai keperluan yang sama misalnya DFD (Data Flow Diagram).

Page 42: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

24

Tetapi sejak matang dan populernya teknologi pemrograman, perancangan, dan

analisis berorientasi objek, UML telah menjadi de facto standard language.

Ada tiga cara dalam memakai UML dalam melakukan pemodelan system:

1. UML sebagai sketsa

UML digambarkan dalam sketsa coretan-coretan dalam kertas atau

whitboard secara tidak formal. Biasanya digunakan dalam sesi diskusi tim untuk

membahas aspek tertentu dalam tahap analisis dan perancangan.

2. UML sebagai blueprint system

Seperti diagram kelistrikan adalah blueprint dari komponen atau produk

yang akan dihasilkan, UML juga bisa menggambarkan blueprint yang identik

untuk sebuah system software.

3. UML sebagai bahasa pemrograman

UML berfungsi sebagai bahasa pemrograman mencoba melakukan

semuanya dengan UML sampai kepada produk jadinya. Analisis dan perancangan

dilakukan dengan diagram-diagram yang ada dalam UML, sementara sebuah tool

atau generator bisa menghasilkan produk akhir dari diagram-diagram ini.

Diagram-diagram yang terdapat dalam UML antara lain:

• use case diagram

• class diagram

• statechart diagram

• activity diagram

• sequence diagram

• collaboration diagram

Page 43: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

25

• component diagram

• deployment diagram ( Munawar, 2005).

2.6.1 Use Case

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan

“bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor

dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke

sistem, meng-create sebuah daftar belanja, dan sebagainya.

Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang

berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.

Use case diagram dapat sangat membantu bila kita sedang menyusun

requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan

merancang test case untuk semua feature yang ada pada sistem.Sebuah use case

dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam

dirinya. Secara umum diasumsikan bahwa use case yang di-include akan

dipanggil setiap kali use case yang meng-include dieksekusi secara normal.

Sebuah use case dapat di-include oleh lebih dari satu use case lain,

sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar

fungsionalitas yang common. Sebuah use case juga dapat meng-extenduse case

lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use

case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang

lain.

Page 44: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

26

Diagram use case menunjukan 3 aspek dari sistem yaitu Actor, use case

dan system/sub system boundary. Actor mewakili peran orang, system yang lain

atau alat ketika berkomunikasi dengan use case.

Actor Actor

Gambar 2.4 Use Case Model (Munawar, 2005)

2.6.2 Activity Diagram

Menurut (Romi Satria Wahono, 2003) Pada dasarnya Diagram aktivitas

adalah Diagram flowchart yang diperluas yang menunjukkan aliran kendali satu

aktivitas ke aktivitas lain. Kegunaan diagram ini adalah untuk memodelkan

workflow atau jalur kerja, memodelkan operasi, bagaimana objek-objek bekerja,

aksi-aksi dan pengaruh terhadap objek. Simbol-simbol yang terdapat dalam

Activity Diagram, diantaranya sebagai berikut :

Tabel 2.5 Simbol Activity Diagram (Romi Satrio Wahono, 2003)

Keterangan Simbol

Titik Awal atau permulaan.

Titik Akhir atau akhir dari

aktivitas.

Aktiviti, atau aktivitas yang

dilakukan oleh aktor.

Decision, atau pilihan untuk

mengambil keputusan.

Arah tanda panah alur proses.

Sistem

Use Case

Page 45: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

27

Activity diagram menunjukkan apa yang terjadi, tetapi tidak menunjukkan

siapa yang melakukan apa. Dalam pemprograman hal tersebut tidak menunjukkan

class mana yang bertanggungjawab atas setiap action. Pada pemodelan bisnis, hal

tersebut tidak bisa menunjukkan organisasi mana yang menjalankan sebuah

action. Swimlane adalah sebuah cara untuk mengelompokan activity berdasarkan

actor (mengelompokkan activity dari sebuah urutan yang sama). Actor bisa ditulis

nama actor ataupun sekaligus dengan lambang actor (stick figure) pada usecase

diagram. Swimlane digambarkan secara vertikal, walaupun terkadang

digambarkan secara horizontal.

Activity diagram merupakan salah satu diagram yang umum digunakan

dalam UML untuk menjabarkan proses atau aktivitas dari aktor. Sebagai contoh,

pelanggan melakukan login (masuk) pada halaman website untuk bergabung, jika

pelanggan belum terdaftar, maka akan ditolak oleh sistem dan dikembalikan.

Proses penjabarannya adalah sebagai berikut :

Gambar 2.5 Activity Diagram (Romi Satrio Wahono, 2003)

Di dalam Activity diagram tersebut dijelaskan bahwa user melakukan proses login

untuk dapat memasuki area sistem, jika proses login dan/atau user belum

Page 46: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

28

teregistrasi, maka user akan ditolak oleh sistem tersebut dan diberi pesan error.

Selain itu, bila user telah teregistrasi dan memasukkan kode login dengan benar

maka akan diberi akses untuk masuk ke sistem, dan diberikan pesan sukses. User

dapat logout (keluar) untuk mengakhiri sesi.

2.6.3 Sequence Diagram

Menurut Sri Dharwiyanti (2003) Sequence Diagram adalah suatu diagram

yang digunakan untuk memodelkan skenario penggunaan. Sekenario penggunaan

adalah barisan kejadian yang terjadi selama satu kesekusi sistem. Sequence

diagram digunakan untuk :

1. Overview perilaku sistem.

2. Menunjukkan objek-objek yang diperlukan.

3. Mendokumentasikan skenario dari suatu use-case

4. Memeriksa jalur-jalur pengaksesan

Gambar 2.6 contoh Sequence Diagram (Sri Dharwiyanti, 2003)

Page 47: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

29

BAB III

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Tahapan analisis system dilakukan setelah tahap perencanaan sistem

(system planning) dan sebelum tahap desain sistem (system design). Tahapan alisis

merupakan tahap yang kritis dan sangat penting, karena kesalahan di tahap

selanjutnya.

3.1.1 Analisis Masalah

Pada data mahasiswa Universitas Darma Persada tahun ajaran 2008/2009

program sarjana terdata banyak mahasiswa yang tidak lulus tepat waktu. Artinya

terjadi ketidakseimbangan antara jumlah mahasiswa aktif dan jumlah kelulusan

pada tahun yang ditargetkan, yaitu tahun 2012.

Berdasarkan masalah tersebut, pihak akademik mensinyalir adanya faktor-

faktor yang dapat mempengaruhi kelulusan yaitu akademik. Dengan

menggunakan data akademik mahasiswa dan data induk mahasiswa yang terekam

pada basis data kampus, data-data tersebut dapat menjadi solusi dalam

memecahkan masalah tersebut dengan mengklasifikannya sehingga menjadi

sebuah pengetahuan berbentuk pohon keputusan. Dengan aturan-aturan yang

dihasilkan oleh pohon keputusan diharapkan digunakan untuk memprediksi

kelulusan mahasiswa yang masih aktif.

3.1.2 Analisis Sistem Yang Berjalan

Sistem pendukung keputusan yang selama ini digunakan untuk

menampilkan statistik data mahasiswa hanya sebatas memberikan informasi saja

Page 48: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

30

seperti grafik jumlah mahasiswa aktif per tahun. Aplikasi yang ada belum bisa

menampilkan knowledge yang dapat digunakan untuk memprediksi kelulusan.

3.1.3 Analisis Kebutuhan Data

Data yang akan digunakan dalam membentuk knowledge berupa pohon

keputusan untuk memprediksi kelulusan mahasiswa aktif yang telah menempuh

minimal 4 semester adalah data mahasiswa dan data akademik yang tersimpan

dalam basis data.

Berdasarkan observasi yang penulis lakukan, beberapa variabel yang dapat

diambil sebagai penentu keputusan dari data-data yang ada di antaranya sebagi

berikut :

a. Nama Mahasiwa

b. NIM

c. Jenis Kelamin

d. Nilai UN

e. Kelas Perkuliahan

f. Nilai Index Prestasi 8 Semester

g. Tahun Lulus

Data kasus akan dibagi menjadi dua jenis data yaitu data latih dan data uji.

Data latih adalah data yang akan dipelajari dalam membetuk pohon keputusan,

sementara data uji adalah data yang akan digunakan untuk pengujian pohon

keputusan yang dihasilkan.

3.2 RancanganSistem

Dalam merancang sistem, penulis menggunakan metodologi perancangan

SDLC (Software Development Life Cycle) jenis waterfall. Perancangan sistem

Page 49: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

31

dibuat menggunakan UML(Unified Modeling Language) Diagram. Diagram yang

digunakan untuk menggambarkan perancangan aplikasi data mining adalahUse

Case Diagram, Activity Diagram, dan Sequence Diagram.

3.2.1 Use Case Diagram

Berikutadalahgambarrancangan use case dari sistem yang diusulkan.

Gambar 3.1 Use Case Diagram Sistem yang diusulkan

Gambar 3.1 di atas menjelaskan bahwa user yang akan menjadi actor

dalam sistem yaitu Kepala Jurusan, Pembimbing Akademik, dan Mahasiswa.

Semua Case dapat dilakukan oleh Kajur, sedangkan PA hanya dapat melihat hasil

dan prediksi saja.

3.2.2 Activity Diagram

Setiap proses yang berjalan pada system digambarkan melalui rancangan

Activity Diagram berikut untuk memberikan penjelasan alur sistem.

Page 50: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

32

3.2.2.1 Proses Melihat Data Mahasiswa

Gambar3.2 Activity Diagram Mengelola Data Mahasiswa

Pada Gambar 3.2 diatas dijelaskan bahwa untuk dapat mengelola data

mahasiswa, user harus melakukan proses login terlebih dahulu dengan

memasukkan username dan password. Pengelolaan data meliputi penambahan

data baru dengan mengisi form atau dengan mengunduh file, menghapus dan

mengubah data pada tabel.

Page 51: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

33

3.2.2.2 Proses Mining

Gambar 3.3 Activity Diagram Proses Mining

Pada Gambar 3.3 diatas dijelaskan bahwa untuk dapat melakukan proses

mininng, user harus melakukan proses login terlebih dahulu dengan memasukkan

username dan password. Selama proses mining sistem bekerja memproses data

mahasiswa yang menjadi data training.

3.2.2.3 Proses Melihat Aturan

Dalam proses melihat aturan, user harus melakukan proses mining karena

aturan terbetuk oleh pohon keputusan hasil proses mining.

Page 52: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

34

Gambar3.4 Activity Diagram Proses Melihat Aturan

Pada Gambar 3.4 diatas dijelaskan bahwa untuk dapat melihat aturan, user

harus melakukan proses login terlebih dahulu dengan memasukkan username dan

password.

3.2.2.4 Proses Melihat Hasil Mining

Pada Gambar 3.5 dibawah, dijelaskan bahwa untuk dapat melihat hasil,

user harus melakukan proses login terlebih dahulu dengan memasukkan username

dan password.

Page 53: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

35

Gambar3.5 Activity Diagram ProsesMelihat Hasil

3.2.2.5 Proses Prediksi Kelulusan

Pada Gambar 3.6 dibawah, dijelaskan bahwa untuk dapat melakukan

prediksi kelulusan, user harus melakukan proses login terlebih dahulu dengan

memasukkan username dan password. Pastikan data yang akan dimasukkan sudah

memenuhi seperti nilai Indeks Prestasi Semester tentunya hanya bias diisi oleh

mahasiswa aktif tahun ke-3 atau lebih. Hasil yang ditampilkan berdasarkan hasil

proses pembelajaran data mahasiswa yang sudah menempuh 8 semester.

Page 54: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

36

Gambar 3.6 Activity Diagram Proses Prediksi Kelulusan

3.2.3 Sequence Diagram

Pada sequence diagram aplikasi ini, keseluruhan diagram

menggunakan user Kajur karena memiliki interaksi terhadap semua case /

state. Berikut adalah gambar rancangan sequence diagram dari aplikasi

yang diusulkan :

Page 55: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

37

3.2.3.1 Sequence Diagram Melihat Data Kasus

Gambar 3.7 Sequence Diagram melihat data kasus

Gambar 3.7 di atas menjelaskan kajur dapat melihat informasi data kasus

yang muncul dalam rancangan aplikasi seperti Nama Mahasiswa, Nilai IPS 1

hingga 8, dan Status Kelulusan.

3.2.3.2 Sequence Diagram Melakukan Proses Mining

Gambar 3.8 Sequence Diagram Proses Mining

: KajurLogin menu utama Pilih Menu Data Mahasiswa

1 : memasukkan username dan password()

2 : masuk()

3 : memilih()

: Kajur Login menu utama form proses mining

1 : masukkan username dan password()

2 : masuk()

3 : memilih()

Page 56: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

38

Gambar 3.8 di atas menjelaskan kajur dapat melakukan proses mining

yang menyebabkan tampilnya hasil, pohon keputusan dan aturan.

3.2.3.3 Sequence Diagram Melihat Aturan

Gambar 3.9 di bawah menjelaskan kajur dapat melihat aturan yang muncul

hasil dari pembelajaran data mahasiswa.

Gambar 3.9 Sequence Diagram melihat aturan

3.2.3.4 Sequence Diagram melihat hasil

Gambar 3.10 Sequence Diagram melihat hasil

: Kajur login menu utama menu C4.5, pohon keputusan lihat rule

1 : masukkan username dan password()

2 : masuk()

3 : memilih()4 : scrooll ke bawah()

: Kajur login menu utama menginput data prediksi melihat hasil prediksi

1 : masukkan username dan password()

2 : masuk()3 : masukkan data prediksi()

4 : melihat()

Page 57: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

39

Gambar 3.10 di atas menjelaskan kajur dapat melihat hasil prediksi setelah

tercipta aturan.

3.2.3.5 Sequence Diagram prediksi kelulusan

Gambar 3.11 di bawah menjelaskan kajur dapat melihat hasil prediksi

siswa berdasarkan hasil dari pembelajaran data mahasiswa.

Gambar 3.11 Sequence Diagram prediksi kelulusan

3.3 Rancangan Database

Dalam merancang aplikasi data mining menggunakan algoritma C4.5

untuk memprediksi tingkat kelulusan mahasiswa pada Universitas Darma Persada

penulis merancang sebuah database dengan menggunakan MySQL.

Sebelum membuat tabel pada basis data, terlebih dahulu data yang didapat

harus dilakukan pra-proses untuk menghasilkan data kasus yang siap dipelajari

atau digali untuk menghasilkan keluaran pengetahuan berupa pohon keputusan.

Berikut ini langkah-langkah pre-proses tersebut :

a. Data Selection

Langkah pertama yang harus dilakukan yaitu data selection, yaitu dengan

menetapkan atribut tahun kelulusan sebagai variabel keputusan. Sedangkan

untuk variabel penentu diantaranya : jenis kelamin, jurusan, nilai UN, kelas

Page 58: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

40

perkuliahan, IPS1, IPS2, IPS3, IPS4, IPS5, IPS6, IPS7, IPS8, dan Tahun

Kelulusan.

b. Data Cleaning

Pada proses ini atribut yang nilainya masih kosong akan dihilangkan.

Berdasarkan data mahasiswa yang akan diteliti yaitu angkatan 2008-2009, atribut

yang akan dihilangkan ialah nilai UN dan kelas perkuliahan. Demikian juga

pada setiap data mahasiwa yang nilai atributnya masih ada yang kosong akan

dihilangkan.

Atribut atau nilai yang kosong dapat disebabkan oleh banyak hal, seperti penon-

aktifan mahasiswa yang terjadi, sehingga tidak semua jumlah IPS yang

seharusnya berjumlah delapan terpenuhi.

c. Data transformation

Setelah melakukan tahap data cleaning, langkah selanjutnya adalah

mentransformasi data menjadi data yang sesuai dengan kebutuhan algoritma. Pada

tahap ini, atribut yang akan ditransformasi ialah kedelapan nilai IPS dan tahun

kelulusan. Untuk transformasi data nilai IPS ialah dengan mengklasifikasikan

nilai IPS menjadi 4 kategori dengan detil sebagai berikut :

Tabel 3.1 Tabel Klasifikasi Nilai IPS

Nilai IPS Klasifikasi

0.00 – 2.00 Kurang Memuaskan

2.00 – 2.76 Memuaskan

2.76 – 3.50 Sangat Memuaskan

3.50 – 4.00 Cumlaude

Page 59: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

41

Sedangkan untuk tranformasi data tahun kelulusan ialah dengan mengklasifikasi

menjadi 2 keputusan yakni tepat waktu dan tidak tepat waktu. Berikut

penjabaran klasifikasi tersebut :

Tabel 3.2 Tabel Klasifikasi Kelulusan

Tahun kelulusan Keputusan

<= 2012 Tepat waktu

>= 2012 Tidak tepat waktu

Hasil akhir rancangan data kasus akan dinamakan dengan

Data_mahasiswa yang akan dibahas pada perancangan tabel data_mahasiswa.

Setelah melalukan pra-proses data kasus, selanjutnya merancang tabel

penunjang lainnya. Berikut tampilan rancangan relasi tabel yang dibuat

berdasarkan kebutuhan :

Gambar 3.12 Rancangan Table Relational

Page 60: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

42

3.3.1 Rancangan Tabel User

Tabel User adalah tabel yang berisikan data-data tentang user yang

bersangkutan dengan aplikasi. Tabel ini juga berguna pada saat memasuki aplikasi

dan aplikasi akan mengidentifikasi user berdasarkan field Level.

Tabel 3.3 Rancangan Tabel User

Field Tipe Data Values Key

Id_user Varchar 25 Primary

Password Varchar 50

Level Varchar 25

3.3.2 Rancangan Tabel Data_Mahasiswa

Tabel Mahasiswa merupakan salah satu tabel master yang mana berperan

sebagai masukan utama aplikasi data mining ini. Tabel ini berisi data-data

mahasiswa yang terdiri dari atribut-atribut yang dibutuhkan dalam proses

pembelajaran pola.

Tabel 3.4 RancanganTabel Data_Mahasiswa

Field Tipe Data Values Key

Id_data_mahasiswa Integer 10 Primary

Nim Varchar 10

Nama Varchar 100

Jenis_kelamin Varchar 5

Jurusan Varchar 25

Nilai_ips1 Varchar 10

Nilai_ips1_kategori Varchar 25

Nilai_ips2 Varchar 10

Nilai_ips2_kategori Varchar 25

Nilai_ips3 Varchar 10

Nilai_ips3_kategori Varchar 25

Nilai_ips4 Varchar 10

Nilai_ips4_kategori Varchar 25

Nilai_ips5 Varchar 10

Nilai_ips5_kategori Varchar 25

Nilai_ips6 Varchar 10

Nilai_ips6_kategori Varchar 25

Nilai_ips7 Varchar 10

Nilai_ips7_kategori Varchar 25

Nilai_ips8 Varchar 10

Page 61: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

43

Field Tipe Data Values Key

Nilai_ips8_kategori Varchar 25

Class Varchar 25

Status_data Varchar 25

3.3.3 Perancangan Tabel Atribut

Tabel Atribut merupakan tabel yang berfungsi menampung nilai-nilai

setiap atribut yang didapat dari tabel data_mahasiswa dimana setiap iterasi akan

ada penghapusan atribut sampai proses perhitungan iterasi selesai pada saat proses

mining.

Tabel 3.5 Rancangan Tabel Atribut

Field Tipe Data Values Key

Id Integer 3 Primary

Atribut Varchar 50

Nilai_atribut Varchar 50

3.3.4 Perancangan Tabel Mining_c45

Tabel Mining_c45 adalah tabel yang berfungsi menyimpan data hasil

kalkulasi sementara selama proses iterasi dilakukan oleh sistem. Tabel ini akan

dikosongkan setiap proses iterasi berjalan.

Tabel 3.6 Rancangan Tabel Mining_c45

Field Tipe Data Values Key

Id Integer 11 Primary

Atribut Varchar 100

Nilai_atribut Varchar 100

Jml_kasus_total Varchar 5

Jml_kasus_tidak_tepat_waktu Varchar 5

Jml_kasus_tepat_waktu Varchar 5

Entropy Varchar 10

Inf_gain Varchar 10

Inf_gain_temp Varchar 10

Split_info Varchar 10

Split_info_temp Varchar 10

Gain_ratio Varchar 10

Page 62: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

44

3.3.5 Perancangan Tabel Iterasi_c45

Tabel Iterasi_c45 berfungsi menyimpan seluruh perhitungan iterasi awal

hingga akhir yang berasal dari tabel mining_c45. Isi dari tabel ini akan

ditampilkan pada taampilan tabel perhitungan guna menjabarkan secara rinci

iterasi-iterasi perhitungan yang terjadi selama proses mining.

Tabel 3.7 Rancangan Tabel Iterasi_c45

Field Tipe_data Values Key

Id Integer 11 Primary

Iterasi Varchar 3

Atribut_gain_ratio_max Varchar 50

Atribut Varchar 50

Nilai_atribut Varchar 50

Jml_kasus_total Varchar 5

Jml_kasus_tidak_tepat_waktu Varchar 5

Jml_kasus_tepat_waktu Varchar 5

Entropy Varchar 10

Inf_gain Varchar 10

Split_info Varchar 10

Gain_ratio Varchar 10

3.3.6 Perancangan Tabel Pohon_keputusan_c45

Tabel pohon_keputusan_c45 memiliki fungsi untuk menyimpan atribut

root dan subtree yang diperoleh dari proses mining. Isi dari tabel ini akan

ditampilkan secara hierarki pada menu pohon keputusan.

Tabel 3.8 Rancangan Tabel Pohon_keputusan_c45

Field Tipe Data Values Key

Id Integer 4 Primary

Atribut Varchar 100

Nilai_atribut Varchar 100

Id_parent Char 3

Inf_kasus_tidak_tepat_waktu Varchar 5

Inf_kasus_tepat_waktu Varchar 5

Keputrusan Varchar 100

Diproses Varchar 10

Kondisi_atribut Varchar 255

Looping_konsdisi Varchar 15

Page 63: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

45

3.3.7 Perancangan Tabel Rule_c45

Tabel Rule_c45 berfungsi menyimpan data-data aturan yang dihasilkan

dari proses generasi pohon_keputusan_c45.

Tabel 3.9 Rancangan Tabel Rule_c45

Field Tipe Data Values Key

Id Integer 4 Primary

Id_parent Integer 4

Rule Varchar 255

Keputusan Varchar 25

3.3.8 Perancangan Tabel Rule_penentu_keputusan

Tabel Rule_penentu_keputusan berfungsi menampung data-data Aturan

hasil proses kinerja. Tabel ini berguna saat proses penentu keputusan kelulusan.

Tabel 3.10 Rancangan Tabel Rule_penentu_keputusan

Field Tipe Data Values Key

Id Integer 5 Primary

Id_rule Integer 5

Atribut Varchar 255

Nilai_atribut Varchar 255

Keputusan Varchar 25

Cocok Varchar 15

Pohon Varchar 15

3.3.9 Perancangan TabelData_penentu_keputusan

Tabel Data_penentu_keputusan pada rancangan database ini berfungsi

sebagai penyimpan sementara atribut dan nilai atribut yang akan digunakan untuk

proses kinerja.

Tabel 3.11 Rancangan Tabel Data_penentu_keputusan

Field Tipe Data Values Key

Id Integer 5 Primary

Atribut Varchar 255

Nilai_atribut Varchar 255

Page 64: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

46

3.3.10 Perancangan Tabel Data_Keputusan_kinerja

Tabel Data_keputusan_kinerja berfungsi menampung data mahasiswa

yang berstatus Data Training. Bertujuan untuk menampilkan perbandingan

keputusan asli dengan keputusan C4.5.

Tabel 3.12 Rancangan Tabel Data_keputusan_kinerja

Field Tipe Data Values Key

Id Integer 10 Primary

Id_data_mahasiswa Integer 10

Keputusan_asli Varchar 100

Keputusan_c45 Varchar 100

Id_rule_c45 Integer 5

3.3.11 PerancanganTabelData_keputusan

Tabel data_keputusan adalah tabel yang berfungsi menampung setiap

masukan data mahasiswa yang ingin diprediksi oleh system beserta hasil

keputusannya.

Tabel 3.13 RancanganTabel Data_keputusan

Field Tipe Data Values Key

Id_data_mahasiswa Integer 10 Primary

Nim Varchar 10

Nama Varchar 100

Jenis_kelamin Varchar 5

Jurusan Varchar 50

Nilai_ips1 Varchar 10

Nilai_ips1_kategori Varchar 25

Nilai_ips2 Varchar 10

Nilai_ips2_kategori Varchar 25

Nilai_ips3 Varchar 10

Nilai_ips3_kategori Varchar 25

Nilai_ips4 Varchar 10

Nilai_ips4_kategori Varchar 25

Keputusan_c45 Varchar 100

Id_rule Integer 5

Page 65: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

47

3.4 Rancangan Tampilan Aplikasi

Tampilan aplikasi ini mengusung desain standar dengan 3 area yang terdiri

dari menu navigasi , header, dan konten.

Gambar 3.13 RancanganTampilan Tata Letak Dasar

3.4.1 Tampilan Home

Pada Halaman ini hanya menampilkan menu-menu saja yang terletak si

sisi kiri halaman.

Gambar 3.14 Rancangan Tampilan Home

header

menu konten

Page 66: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

48

3.4.2 Halaman Data Mahasiswa

Pada halaman ini akan ditampilkan seluruh data training maupun data

testing dari data mahasiswa yang akan digunakan untuk proses mining. Selain

menampilkan data mahasiswa, pada halaman ini juga disertakan beberapa form

untuk menambahkan data baru. Tak hanya dengan mengisi form, data juga bias

ditambahkan dengan cara mengunduh file .csv yang berisi data mahasiswa yang

disusun sesuai format yang sesuai denga sistem. Rancangan ditunjukkan pada

Gambar 3.15.

Gambar 3.15 Rancangan Tampilan Halaman Kasus

3.4.3 Tampilan Proses Hasil Mining

Pada halaman ini akan di tampilkan hasil proses mining berupa table

perhitungan. Di dalamnya terdapat rincian setiap iterasi setiap pembentukan node.

Rancangan tampilan ditunjukkan pada Gambar 3.16.

Page 67: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

49

Gambar 3.16 Rancangan Tampilan Halaman Hasil Mining

3.4.4 HalamanAturan

Halaman Aturan merupakan halaman yang akan menjabarkan presentasi

pohon keputusan ke dalam bentuk aturan-aturan atau dikenal dengan istilah Rule.

Dari aturan-aturan yang ditampilkan, diharapkan user dapat memprediksi

kelulusan mahasiswa.

Gambar 3.17 Rancancangan Tampilan Halaman Aturan

Page 68: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

50

3.4.5 Halaman Prediksi Kelulusan

Halaman Prediksi Kelulusan merupakan halaman yang menampilkan hasil

prediksi sesuai proses mining yang sudah terjadi. Untuk dapat mengetahui hasil

prediksi, form data harus diisi terlebih dahulu. Jika sudah di-submit akan muncul

hasilnya berupa tabel di bawah form. Data pada table dapat diubah maupun

dihapus tanpa mengubah aturan yang sudah ada. Berikut rancangannya :

Gambar 3.18 Rancangan Tampilan Halaman Prediksi

Page 69: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

51

BAB IV

IMPLEMENTASI DAN EVALUASI

4.1. Implementasi

Implementasi dari perancangan sistem usulan yang terdiri dari

implementasi perangkat keras, implementasi perangkat lunak, implementasi basis

data, dan implementasi tampilan.

4.1.1 Imlementasi Perangkat Keras

Implementasi dan uji coba ini dilakukan dengan menggunakan sebuah

computer dengan spesifikasi berikut :

1. Notebook COMPAQ Presario CQ40-324TU

2. Memory 2GB DDR2

3. Prosesor Intel Core 2 Duo 2,2 Ghz

4. LCD Display 14”

4.1.2 Implementasi Perangkat Lunak

Dalam penerapan aplikasi ini, perangkat lunak yang digunakan untuk mendukung

pembuatan aplikasi sebagai berikut :

1. SistemOperasiWindows 7 Ultimate 32 bit

2. Apache Web Server

3. PHP Scripting Language

4. PHPMyAdmin

Page 70: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

52

5. DBMS MySQL

6. Mozilla Firefox Web Browser

4.1.3 Implementasi Basis Data

Mengawali pembuatan aplikasi ini, penulis terlebih dahulu membuat

database sesuai rancangan dengan menggunakan bagian dari paket XAMPP yaitu

PHPMyAdmin yang dijalankan melalui Web Browser.

Gambar 4.1 Hasil Pembuatan Database dengan PHPMyAdmin

4.1.4 Implementasi Algoritma C4.5

Berdasarkan prosedur algoritma C4.5 dalam melakukan proses mining

untuk membangun pohon keputusan, adalah sebagai berikut :

1. Pilih atribut sebagai node akar.

2. Buat cabang untuk tiap-tiap nilai.

3. Bagi kasus dalam cabang

4. Ulangi proses untuk setiap cabang sampai semua kasus pada cabang memiliki

kelas yang sama.

Page 71: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

53

Untuk memilih atribut sebagai node akar, didasarkan pada nilai Gain

tertinggi dari atribut-atribut yang ada. Berikut penerapannya dengan mengambil

data dari tabel mahasiswa :

Setelah mendapatkan nilai Gain, ada satu hal lagi yang perlu kita lakukan

perhitungan, yaitu mencari nilai Entropy.Entropy digunakan untuk menentukan

seberapa informatif sebuah masukan atribut untuk menghasilkan keluaran atribut.

Rumus dasar dari Entropy tersebut adalah sebagai berikut :

Page 72: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

54

Untuk memudahkan penjelasan mengenai algoritma C4.5, berikut

penjabarannya penghitungan detilnya:

Tabel 4.1 Penghitungan Node 1

Node Atribut Nilai

Atribut

Jumlah

Kasus

Total

Jumlah Kasus

Tidak Tepat

Waktu

Jumlah

Kasus

TepatWa

ktu

Entropy Gain

1 Total Total 80 22 58 0.8485

Jenis kelamin

0.0042

L 21 7 14 0.9183

P 59 15 44 0.8179

jurusan

0.0237

Sastra

Cina 10 5

5 1

Sastra

Inggris 16 4

12 0.8113

Sastra

Jepang 54 13

41 0.7963

Nilai

ips1kategori

0.1428

Cumlaude 20 1 19 0.2864

Kurang

Memuask

an

3 2

1 0.9183

Memuask

an 26 13

13 1

Sangat

Memuask

an

31 6

25 0.7088

Nilaiips2

kategori

0.2392

Cumlaude 21 1 20 0.2762

Kurang

Memuask

an

9 7

2 0.7642

Memuask

an 31 13

18 0.9812

Sangat

Memuask

an

19 1

18 0.2975

Nilai ips3

kategori

0.2405

Cumlaude 11 1 10 0.4395

Kurang

Memuask

an

7 6

1 0.5917

Memuask

an 29 13

16 0.9923

Sangat

Memuaskan 33 2 31 0.3298

Page 73: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

55

Node Atribut Nilai

Atribut

Jumla

h

Kasus

Total

Jumlah

Kasus Tidak

Tepat

Waktu

Jumlah

Kasus

TepatW

aktu

Entropy Gain

Nilai

ips4kategori

0.3154

Cumlaude 20 1 19 0.2864

Kurang

Memuask

an

12 11

1 0.4138

Memuask

an 19 7

12 0.9495

Sangat

Memuask

an

29 3

26 0.4798

Pada Tabel 4.1 diatas telah dipaparkan rincian hitungan Entropi tiap nilai

atribut dan Gain untuk suatu atribut. Berikut ini contoh penerapan hitungan rumus

Entropi node awal yang dilakukan pada atribut Jenis Kelamin:

Nilai entropi total node 1:

� � � = (− ( ) × log ) + (− ( ) × log ) = .

Nilai entropi atribut Laki-laki :

� � � = (− ( ) × log ) + (− ( ) × log ) = .

Nilai entropi atribut Perempuan :

� � � = (− ( ) × log ) + (− ( ) × log ) = .

Setelah mendapatkan entropi dari keseluruhan nilai atribut yaitu Laki-laki

dan Perempuan, langkah selanjutnya adalah mencari gain atribut Jenis Kelamin

dengan penjelasan sebagi berikut :

��� � � � � � = . − (( ) × . + ( ) × . ) = .

Page 74: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

56

Adapun dalam bentuk pengodingan skrip PHP sebagai berikut :

Perhitungan tersebut akan terus berjalan pada setiap node hingga seluruh

atribut diketahui nilai gain nya. Apabila sudah diketahui, langkah selanjutnya

adalah menentukan atribut yang akan menjadi node akar. Pada node 1 ini atribut

dengan nilai gain terbesar adalah kategori nilai ips4. Karena nilai atribut tersebut

belum mengklasifikasikan nilai ( Ya atau Tidak), maka nilai atribut tersebut akan

menjadi node pada level selanjutnya.

Dengan demikian berdasarkan perhitungan Node 1 sudah dapat

menggambarkan pohon keputusan seperti gambar di bawah ini :

Gambar 4.2 Pohon keputusan node root

Sementara implementasi pada skrip PHP untuk membuat pohon keputusan

adalah sebagai berikut :

Node1

Node 1.1 ? ? ?

cumlaude Kurang

memuaskan Memuaskan Sangat

memuaskan

Kategori nilai IPS4

<?php $getJumlahKasusTotalEntropy=70; $getJumlahKasusTepatWaktuEntropy=50; $getJumlahKasusTidakTepatWaktuEntropy=20; $perbandingan_tepat_waktu = $getJumlahKasusTepatWaktuEntropy / $getJumlahKasusTotalEntropy; $perbandingantidak_tepat_waktu = $getJumlahKasusTidakTepatWaktuEntropy / $getJumlahKasusTotalEntropy; $rumusEntropy = (-($perbandingan_tepat_waktu) * log($perbandingan_tepat_waktu,2)) + (-($perbandingantidak_tepat_waktu) * log($perbandingantidak_tepat_waktu,2)); $getEntropy = round($rumusEntropy,4); echo $getEntropy; $perbandinganTotal1=11/70; $perbandinganTotal2=16/70; $perbandinganTotal3=43/70; $gain=$getEntropy-(($perbandinganTotal1*0.994)+($perbandinganTotal2*0.8113)+($perbandinganTotal3*0.8204)); echo "<br><br>"; echo $gain; ?>

Page 75: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

57

Berdasarkan pembentukan node 1, maka node yang akan dibahas

selanjutnya adalah node 1.1. Data node 1.1 adalah data yang memiliki Kategori

Nilai IPS4 bernilai Cumlaude seperti pada tabel berikut :

Tabel 4.2 Penghitungan Node 1.1

echo "<h2>C45 &#187; Pohon Keputusan</h2>"; echo " <p>Opsi: <a href=./aksi.php?module=c45&act=hapus_pohon_keputusan>Hapus Semua Data</a></p>"; echo "<font face='Courier New' size='2'>"; echo "<h3><b>Pohon Keputusan: <br></b></h3>"; function get_subfolder($idparent, $spasi){ if ($_SESSION[leveluser]=='admin'){ $result = mysql_query("select * from pohon_keputusan_c45 where id_parent= '$idparent'"); } while($row=mysql_fetch_row($result)){ for($i=1;$i<=$spasi;$i++){ echo "|&nbsp;&nbsp;"; } if ($row[6] === 'Tepat Waktu') { $keputusan = "<font color=green>$row[6]</font>"; } elseif ($row[6] === 'Tidak Tepat Waktu') { $keputusan = "<font color=red>$row[6]</font>"; } elseif ($row[6] === '?') { $keputusan = "<font color=blue>$row[6]</font>"; } else { $keputusan = "<b>$row[6]</b>"; } echo "<font color=red>$row[1]</font> = $row[2] : <b>$keputusan</b><br>"; /*panggil dirinya sendiri*/ get_subfolder($row[0], $spasi + 1); } } get_subfolder('0', 0); echo "<hr>"; echo "<h3><b>Rule: <br></b></h3>"; $no = 1; if ($_SESSION[leveluser]=='admin'){ $sqlLihatRule = mysql_query("select * from rule_c45 order by id" ); } while($rowLihatRule=mysql_fetch_array($sqlLihatRule)){ if ($rowLihatRule['keputusan'] === 'Tepat Waktu') { $keputusan = "<font color=green>$rowLihatRule[keputusan]</font>"; } elseif ($rowLihatRule['keputusan'] === 'Tidak Tepat Waktu') { $keputusan = "<font color=red>$rowLihatRule[keputusan]</font>"; } elseif ($rowLihatRule['keputusan'] === '?') { $keputusan = "<font color=blue>$rowLihatRule[keputusan]</font>"; } else { $keputusan = "<b>$rowLihatRule[keputusan]</b>"; } echo "<b>R$no.</b> JIKA <b>(</b>$rowLihatRule[rule]<b>)</b> MAKA <b>$keputusan</b><font color=blue>(id = $rowLihatRule[id])</font><br>"; $no++; } echo "</font>";

Page 76: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

58

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus

Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWa

ktu

Entropy Gain

1.1 Total Total 20 1 19 0.2864

Jenis kelamin

0.0166

L 4 0 4 0

P 16 1 15 0.3373

jurusan

0.2864

Sastra Cina 0 0 0 0

Sastra Inggris 1 1 0 0

Sastra Jepang 19 0 19 0

Kategori nilai

IPS1 0.0214

Cumlaude 15 1 14 0.3534

Kurang

Memuaskan 0 0 0 0

Memuaskan 0 0 0 0

Sangat

Memuaskan 5 0 5 0

Kategori Nilai

IPS2 0.0038

Cumlaude 19 1 18 0.2975

Kurang

Memuaskan 0 0 0 0

Memuaskan 0 0 0 0

Sangat

Memuaskan 1 0 1 0

Kategori Nilai

IPS3 0.0447

Cumlaude 11 1 10 0.4395

Kurang

Memuaskan 0 0 0 0

Memuaskan 0 0 0 0

Sangat

Memuaskan 9 0 9 0

Pada node 1.1 ini atribut dengan nilai gain terbesar adalah Jurusan. Karena

nilai atribut tersebut sudah mengklasifikasikan hasil pada ketiga nilai, maka nilai

atribut tersebut menjadi leaf dari node 1.1, sehingga tidak perlu lagi diproses lebih

lanjut.

Berikut tampilan pohon keputusan untuk Node 1.1:

Page 77: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

59

Gambar 4.3 Pohon Keputusan Node 1.1

Berlanjut pada pembuatan node 1.2 yaitu node yang berisi data yang

terklasifikasi kategori nilai IPS4 nya Kurang Memuaskan.

Tabel 4.3 Penghitungan Node 1.2

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus

Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWa

ktu

Entropy Gain

1.2 Total Total 12 11 1 0.4138

Jenis kelamin

0.0514

L 4 4 0 0

P 8 7 1 0.5436

jurusan

0.1434

Sastra Cina 4 3 1 0.8113

Sastra Inggris 1 1 0 0

Sastra Jepang 7 7 0 0

Kategori nilai

IPS1 0.0514

Cumlaude 0 0 0 0

Kurang

Memuaskan 2 2 0 0

Memuaskan 8 7 1 0.5436

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus

Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWa

ktu

Entropy Gain

Sangat

Memuaskan 2 2 0 0

Node1.

1

Tepat

Waktu Tidak Tepat

Waktu Tepat

Waktu

Sastra

Cina Sastra

Inggris

Sastra

Jepang

jurusan

Page 78: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

60

kategori nilai

IPS2 0.0686

Cumlaude 0 0 0 0

Kurang

Memuaskan 5 5 0 0

Memuaskan 7 6 1 0.5917

Sangat

Memuaskan 0 0 0 0

Kategori nilai

IPS3 0.0686

Cumlaude 0 0 0 0

Kurang

Memuaskan 4 4 0 0

Memuaskan 7 6 1 0.5917

Sangat

Memuaskan 1 1 0 0

Pada node 1.2 ini, atribut dengan nilai gain tertinggi adalah Jurusan. Maka

atribut Jurusan menjadi node 1.2.1 yang akan dibahas pada penghitungan

selanjutnya.

Karena nilai atribut dari Jurusan yaitu Sastra Cina dan Sastra Jepang telah

mengklasifikasi tidak tepat waktu, maka nilai atribut Sastra Inggris masih perlu

dihitung.

Berikut tampilan pohon keputusan untuk Node 1.2:

Gambar 4.4 Pohon Keputusan Node 1.2

Node1.

2

Tidak Tepat

Waktu Tidak Tepat

Waktu Node 1.2.1

Sastra

Cina Sastra

Jepang Sastra

Inggris

jurusan

Page 79: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

61

Karena pada node 1.2 masih ada nilai atribut yang belum terklasifikasi,

maka perhitungan berlanjut dengan node 1.2.1 yaitu node yang bernilai IPS4

kurang memuaskan dan jurusannya adalah Sastra Inggris.

Tabel 4.4 Penghitungan Node 1.2.1

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus

Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWaktu

Entropy Gain

Total Total 4 3 1 0.8113

Jeniskelamin

L 1 1 0 0 0.1226

P 3 2 1 0.9183 0.1226

Kategori nilai

IPS1

Cumlaude 0 0 0 0 0

Kurang

Memuaskan 0 0 0 0 0

Memuaskan 4 3 1 0.8113 0

Sangat

Memuaskan 0 0 0 0 0

Kategori nilai

IPS2

Cumlaude 0 0 0 0 0

Kurang

Memuaskan 0 0 0 0 0

Memuaskan 4 3 1 0.8113 0

Sangat

Memuaskan 0 0 0 0 0

Kategori Nilai

IPS3

Cumlaude 0 0 0 0 0

Kurang

Memuaskan 0 0 0 0 0

Memuaskan 4 3 1 0.8113 0

Sangat

Memuaskan 0 0 0 0 0

Pada node 1.2.1 ini atribut dengan nilai gain tertinggi adalah Jenis

Kelamin. Maka jenis kelamin menjadi node selanjutnya. Nilai P dan L menjadi

leaf karena nilai dari atribut jenis kelamin yaitu L dan P telah mengklasifikasi

Page 80: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

62

nilainya masing-masing. Sehingga tidak perlu melanjutkan penghitungan dari

node 1.2.1.

Gambar 4.5 Pohon Keputusan Node 1.2.1

Berlanjut ke node 1.3, node ini adalah node yang kategori nilai IPS4 nya

memuaskan. Berikut rincian penghitungannya :

Tabel 4.5 Penghitungan Node 1.3

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWaktu

Entropy Gain

Total Total 19 7 12 0.9495

Jenis kelamin

L 6 3 3 1 0.0244

P 13 4 9 0.8905 0.0244

jurusan

Sastra Cina 4 2 2 1 0.0207

Sastra

Inggris 4 1 3 0.8113 0.0207

Sastra

Jepang 11 4 7 0.9457 0.0207

Kategori nilai

IPS1

Cumlaude 1 0 1 0 0.0528

Kurang

Memuaskan 0 0 0 0 0.0528

Memuaskan 14 6 8 0.9852 0.0528

Sangat

Memuaskan 4 1 3 0.8113 0.0528

Node1.

2.1

Tidak Tidak

Tepat Waktu Tidak Tepat

Waktu

P L

Jenis Kelamin

Page 81: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

63

Node Atribut Nilai Atribut

Jumlah

Kasus

Total

Jumlah

Kasus Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWaktu

Entropy Gain

Kategori nilai

IPS2

Cumlaude 0 0 0 0 0.1468

Kurang

Memuaskan 3 2 1 0.9183 0.1468

Memuaskan 13 5 8 0.9612 0.1468

Sangat

Memuaskan 3 0 3 0 0.1468

Kategori nilia

IPS3

Cumlaude 0 0 0 0 0.2566

Kurang

Memuaskan 2 2 0 0 0.2566

Memuaskan 14 5 9 0.9403 0.2566

Sangat

Memuaskan 3 0 3 0 0.2566

Pada penghitungan node 1.3 diatas, atribut dengan nilai gain terbesar

adalah IPS3, oleh karena itu kategori nilai IPS3 menjadi node pada perhitungan

selanjutnya. Karena nilai-nilai atribut kategori telah mengklasifikasi nilainya

masing-masing kecuali kategori nilai IPS3 yang bernilai Memuaskan. Maka nilai

atribut Cumlaude, Kurang Memuaskan, dan Sangat Memuaskan menjadi leaf

sehingga tidak perlu lagi dilanjut. Sedangkan nilai Memuaskan akan menjadi node

1.3.1

Gambar 4.6 Pohon Keputusan Node 1.3

Node1.

3

Tepat

Waktu Tidak Tepat

Waktu Node

1.3.1 Tepat

Waktu

cumlaude Kurang

memuaskan Memuaskan Sangat

memuaskan

Kategori nilai IPS3

Page 82: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

64

Node 1.3.1 adalah node yang kategori nilai IPS4 nya memuaskan dan

kategori nilai IPS3 nya memuaskan.

Tabel 4.6 Penghitungan Node 1.3.1

Node Atribut Nilai Atribut Jumlah

Kasus Total

Jumlah

Kasus

Tidak

Tepat

Waktu

Jumlah

Kasus

TepatWaktu

Entropy Gain

Total Total 14 5 9 0.9403

Jenis kelamin

L 5 2 3 0.971 0.0032

P 9 3 6 0.9183 0.0032

jurusan

Sastra Cina 3 1 2 0.9183 0.0014

Sastra Inggris 3 1 2 0.9183 0.0014

Sastra Jepang 8 3 5 0.9544 0.0014

Kategori nilai

IPS1

Cumlaude 0 0 0 0 0.1004

Kurang

Memuaskan 0 0 0 0 0.1004

Memuaskan 12 5 7 0.9799 0.1004

Sangat

Memuaskan 2 0 2 0 0.1004

Kategori nilai

IPS2

Cumlaude 0 0 0 0 0.1532

Kurang

Memuaskan 3 2 1 0.9183 0.1532

Memuaskan 9 3 6 0.9183 0.1532

Sangat

Memuaskan 2 0 2 0 0.1532

Pada node 1.3.1 ini atribut dengan nilai gain terbesar adalah kategori nilai

IPS1, maka nilai IPS1 akan menjadi node selanjutnya. Nilai atribut untuk kategori

IPS2 cumlaude dan memuaskan masing-masing sudah mengklasifikasi tepat

waktu maka kedua nilai atribut tersebut tidak akan diteruskan.

Page 83: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

65

Gambar 4.7 Pohon Keputusan Node 1.3.1

4.2 Pembahasan Tampilan Aplikasi

Setelah algoritma diaplikasikan dengan pendekatan simulasi penghitungan

manual dengan mengambil sampel, kini memasuki pembahasan penerapannya

menjadi sebuah aplikasi.

4.2.1 TampilanHalaman Login

Padahalamaninitersedia 2 form untukmemasukkan username dan password

agar user dapatmenggunakanaplikasi.

Gambar 4.8 Tampilan Halaman Login

Node1.

3.1

Tepat

Waktu Tepat Waktu Node

1.3.1.1 Node

1.3.1.2

cumlaude Sangat

memuaskan Memuaskan Kurang

memuaskan

Kategori nilai IPS1

Page 84: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

66

4.2.2 TampilanHome

Pada halaman ini tampilan yang muncul hanya ucapan selamat datang,

untuk memulai user bisa memilih pada menu yang disediakan.

Gambar 4.9 Tampilan Halaman Home

4.2.3 Tampilan Form Data Mahasiswa

Halaman ini berisi form untuk mengisi data kasus, yang mana setiap data

dapat ditentukan apakah data termasuk data testing atau training.

Gambar 4.10 Tampilan Form Data Mahasiswa

Page 85: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

67

4.2.4 Tampilan Tabel Data Mahasiswa

Halaman ini menampilkan isi dari data mahasiswa yang akan diproses.

Gambar 4.11 Tampilan Tabel Data Mahasiswa

4.2.5 Tampilan Perhitungan C4.5

Halaman ini berisi hasil rekap perhitungan mining dalam bentuk tabel.

Penghitungan yang ditampilkan pada menu ini adalah seluruh perhitungan dari

node paling atas (root) hingga akhir. Langkah-langkah yang sudah dijelaskan pada

saat implementasi manual penghitungan mining ditampilkan pada menu ini.

Gambar 4.12TampilanPerhitungan C4.5

4.2.6 Tampilan Pohon Keputusan C4.5

Halaman ini menampilkan hasil proses mining berupa pohon keputusan.

Page 86: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

68

Gambar 4.13 Tampilan Pohon Keputusan C4.5

4.2.8 Tampilan Rule C4.5

Halaman ini berisi hasil proses mining berupa aturan-aturan (Rules) yang

juga merupakan representasi dari pohon keputusan.

Gambar 4.14 Tampilan Rule Hasil Proses Mining

Page 87: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

69

4.2.9 Tampilan Perbandingan Keputusan

Halaman ini berisi tabel perbandingan hasil mining dengan fakta.

Gambar 4.15 Tampilan Perbandingan Keputusan

4.2.10 Tampilan Form PenentuKeputusan

Halaman ini berisi form bagi mahasiswa yang ingin memprediksi

kelulusannya berdasarkan data nilai IPS 1 hingga 4.

Gambar 4.16 Tampilan Form PenentuKeputusan

Page 88: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

70

Gambar 4.17 Tampilan Tabel Rekap Penentu Keputusan

4.3 Evaluasi

Setelah diimplementasikan baik algoritma nya ataupun penerapan dalam

bentuk aplikasi, penulis mengevaluasi aplikasi ini dengan melakukan

perbandingan keputusan hasil mining C4.5 dengan 369 data mahasiswa yang

keputusan kelulusannya sesuai aslinya, dimana detilnya bias dilihat pada Tabel

4.7.

Untuk melakukan hal tersebut dibuatlah halaman perbadingan sebagai

berikut :

Gambar 4.18 Tabel Kinerja : perbandingan keputusan

Page 89: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

71

Berdasarkan perbandingan tersebut, algoritma ini bisa dikatakan memiliki

keakuratan sekitar 85%. Hal tersebut dapat dibuktikan setelah menghitung

Accuracy dari keseluruhan Data Training yang erjumlah 369 mahasiswa. Berikut

hasil nya :

Tabel 4.7 Tabel Penilaian

Asli Sesuai C4.5 Tidak Sesuai C4.5

Jumlah Mahasiswa

Tidak Tepat Waktu 183 152 31

Jumlah Mahasiswa

Tepat Waktu 186 165 31

Jumlah Mahasiswa

Keseluruhan 369 317 62

Dengan demikian:

�ℎ � � �� � � ���ℎ ��ℎ� � �� � � ℎ� × %

Nilai persentase kelulusan mahasiswa tidak tepat waktu = 9 × % = %

Page 90: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

72

BAB VI

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Aplikasi Data Mining dengan metode klasifikasi algoritma c4.5 ini dapat

memproses data mahasiswa menjadi sebuah aturan-aturan yang berguna sebagai

masukan penentu keputusan walaupun jumlah data dapat mempengaruhi

persentase keakuratannya.

Berdasarkan hasil evaluasi dengan membandingkan keputusan asli dengan

keputusan hasil mining c4.5, maka dapat dihitung persentase keakuratan sehingga

memperoleh nilai sebesar 85%.

5.2 Saran

Adapun saran – saran untuk penelitian selanjutnya yang membahas atau

mengembangkan topik yang sama dengan penelitian ini agar lebih baik lagi antara

lain :

1. Disarankan pada pembuatan aplikasi data mining memprediksi kelulusan

mahasiswa ditambah aspeknya seperti pekerjaan orang tua, penghasilan orang

tua, dan aspek lainnya yang dianggap mempengaruhi.

2. Untuk penelitian lebih lanjut disarankan untuk mencoba algoritma lain atau

meningkatkan jumlah data kasusnya dengan algoritma yang sama.

Page 91: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

73

DAFTAR PUSTAKA

A.S Rosa dan Salahuddin M. 2011. Modul Pembelajaran Rekayasa

Perangkat Lunak (Terstruktur dan Berorientasi Objek). Bandung : Modula.

Astuti H., Fajar. 2013. Data Mining. Yogyakarta : Penerbit Andi.

Dharwiyanti, Sri dan Wahono, Romi, Satria. 2003. Pengantar Unified

Modelling Language (UML):http://ikc.dinus.ac.id/umum/yanti-uml.php

Han, Jiawei. 2012. Data Mining : Concepts and Techniques, USA :

Morgan Kaufmann Publishers.

Hariyanto, BAmbang. 2007. Esensi-esensi Bahasa Pemrograman Java,

Bandung: Penerbit Informatika.

Irwansyah, Edy. 2014. Pengantar Teknologi Informasi. Yogyakarta :

Deepublish.

Kadir, Abdul. 2008. Pengantar Teknologi Informasi. Yogyakarta :

Penerbit Andi.

Kusrini & Luthfi, Emha Taufiq. 2009. Algoritma Data Mining,

Yogyakarta : Penerbit Andi.

Larose, Daniel. 2005. Discovering Knowledge in Data : An Introduction

to Data Mining. Canada : Wiley Publishing.

Munawar. 2005. Pemodelan Visual dengan UML. Yogyakarta : Graha

Ilmu.

Raharjo, Budi. 2011. Panduan Mudah Untuk Pelajar :Mahasiswa dan

Praktis. Bandung : Modula.

Page 92: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

LAMPIRAN

Page 93: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

SOURCE CODE APLIKASI

Index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Login</title> <link href="icon.png" rel="shortcut icon" type="image/png" /> <link href="CSS_login.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="mootools-1.2.1-core.js.php"></script> <link href="icon.png" rel="shortcut icon" type="image/png" /> <script type="text/javascript" src="ardizorro-md5.js.php"></script> <script type="text/javascript" src="login.js"></script> </head> <body> <!-- <div id="info" title="Klik untuk Sembunyikan Informasi"><a id="showinfo" title="Klik untuk Menampilkan Informasi" href="#">Sembunyikan Informasi</a></div> --> <form method="POST" action="cek_login.php"> <table class="tb" cellpadding="2px" cellspacing="2px" > <tr> <td class="header" colspan="2" bgcolor="#2fa1e5" nowrap="nowrap"><span class="light">Klasifikasi Kelulusan Mahasiswa<br> Menggunakan Pohon Keputusan C4.5</span></td> </tr> <tr> <td class="caption" colspan="2" align="center"><span class="th">Login Administrator</span></td> </tr> <tr> <td nowrap="nowrap" >&nbsp;</td> <td><input style="cursor:help" placeholder="Username" title="Contoh: admin" type="text" name="username" id="username" size="25" maxlength="15"/></td> </tr> <tr> <td nowrap="nowrap">&nbsp;</td> <td><input type="password" name="password" id="password" width="130px" placeholder="Password" size="25" maxlength="32"/></td> </tr> <tr> <td height="50">&nbsp;</td>

Page 94: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

<td> <input type="hidden" id="postForm" name="postForm" maxlength="32" value="387bcfe8cb701b58a39196a6abb5f57a"/> <button type="reset" id="btnReset" name="btnReset" ><span class="txt">Reset</span></button> <button type="submit" id="btnLogin" name="btnLogin" value="Login"><span class="txt">Login</span></button> </td> </tr> </table> </form> <br> <!-- <center><b>Username: admin, Password: admin1234</b></center> --> <div id="footer"> <p>Copyright&copy; 2014 by:</p> <p><b>---</b> </p> </div> </body> </html> cek_login.php <?php include "../config/koneksi.php"; $login=mysql_query("SELECT * FROM user WHERE id_user='$_POST[username]' AND password='$_POST[password]'"); $ketemu=mysql_num_rows($login); $r=mysql_fetch_array($login); // Apabila username dan password ditemukan if ($ketemu > 0) { session_start(); $_SESSION[namauser] = $r[id_user]; $_SESSION[passuser] = $r[password]; $_SESSION[leveluser]= $r[level]; // echo $_SESSION['leveluser']; header('location:media.php?module=home'); } else { echo "<script>alert('Login gagal! Username & Password tidak benar!'); document.location.href='index.php';</script>\n"; } media.php <?php error_reporting(0);

Page 95: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

session_start(); if (empty($_SESSION[namauser]) AND empty($_SESSION[passuser])){ echo "<link href='../config/adminstyle.css' rel='stylesheet' type='text/css'> <center>Untuk mengakses modul, Anda harus login <br>"; echo "<a href=index.php><b>LOGIN</b></a></center>"; } else { ?> <html> <head> <title>Prediksi Kelulusan Menggunakan Pohon Keputusan C4.5</title> <link href="icon.png" rel="shortcut icon" type="image/png" /> <link href="../config/adminstyle.css" rel="stylesheet" type="text/css" /> <link href="dropdown.css" rel="stylesheet" type="text/css" /> </head> <body> <div style="background:#fff; width:1200px; position:relative; margin-right: auto; margin-left: auto;"> <div id="header"> <br> <div class='menupic'> <div class='menuhorisontal'> <marquee color='white' width="99%" direction="left" nilai_ips4="scroll" scrolldelay="120" onmouseover=this.stop() onmouseout=this.start()> Selamat Datang di Sistem Pendukung Keputusan - Prediksi Kelulusan Menggunakan Pohon Keputusan C4.5 </marquee> </div> </div> <div id="content"> <?php include "content.php"; ?> </div> <div id="menu"> <br><ul><?php if($_SESSION['leveluser']=="kajur"){ echo "<li><a href=?module=home>.: Home</a></li>

Page 96: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

<li><a href=?module=data_mahasiswa>.: Data Mahasiswa</a></li> <li style=\"background-color:#78e3f0;\"><a href=?module=c45&act=mining onClick=\"return confirm('Anda Yakin? data training pada data Mahasiswa akan diproses menggunakan algoritma C4.5. Proses akan membutuhkan waktu yang cukup lama tergantung spesifikasi perangkat keras pemroses.')\"><i> C.45 &#187; Proses Mining</i></a></li> <li><a href=?module=c45>.: C.45 &#187; Hasil Mining</a></li> <li><a href=?module=c45&act=pohon_keputusan>.: C.45 &#187; Aturan</a></li> <li><a href=?module=penentu_keputusan>.: Prediksi Kelulusan</a></li> <li><a href=?module=kinerja>.: Perbandingan</a></li> <li style=\"background-color:#78e3f0;\"><a href=logout.php onClick=\"return confirm('Apakah Anda Yakin? klik OK jika ingin menyudahi aplikasi')\">.: Logout</a></li>"; } elseif($_SESSION['leveluser']=="akademik"){ echo "<li><a href=?module=home>.: Home</a></li> <li><a href=?module=c45>.: C.45 &#187; Hasil Mining</a></li> <li><a href=?module=c45&act=pohon_keputusan>.: C.45 &#187; Aturan</a></li> <li><a href=?module=penentu_keputusan>.: Prediksi Kelulusan</a></li> <li><a href=?module=kinerja>.: Perbandingan</a></li> <li style=\"background-color:#78e3f0;\"><a href=logout.php onClick=\"return confirm('Apakah Anda Yakin? klik OK jika ingin menyudahi aplikasi')\">.: Logout</a></li>"; } elseif($_SESSION['leveluser']=="mahasiswa"){ echo "<li><a href=?module=home>.: Home</a></li> <li><a href=?module=penentu_keputusan>.: Prediksi Kelulusan</a></li> <li style=\"background-color:#78e3f0;\"><a href=logout.php onClick=\"return confirm('Apakah Anda Yakin? klik OK jika ingin menyudahi aplikasi')\">.: Logout</a></li>"; } else{ echo " <li><a href=?module=home>.: Home</a></li> <li><a href=?module=user>.: Data User</a></li> <li><a href=?module=data_mahasiswa>.: Data Kasus</a></li> <li style=\"background-color:#78e3f0;\"><a href=?module=c45&act=mining onClick=\"return confirm('Anda Yakin? data training pada data Mahasiswa akan diproses menggunakan algoritma C4.5. Proses akan membutuhkan waktu yang cukup lama tergantung spesifikasi perangkat keras pemroses.')\"><i> C.45 &#187; Proses Mining</i></a></li> <li><a href=?module=c45>.: C.45 &#187; Hasil Mining</a></li> <li><a href=?module=c45&act=pohon_keputusan>.: C.45 &#187; Aturan</a></li> <li style=\"background-color:#78e3f0;\"><a href=?module=kinerja&act=lakukan_kinerja onClick=\"return confirm('Anda Yakin? hasil proses mining akan diproses untuk komparasi dengan data testing. Proses akan membutuhkan waktu yang cukup lama tergantung spesifikasi perangkat keras pemroses.')\"><i> Kinerja &#187; Proses Kinerja</i></a></li> <li><a href=?module=kinerja>.: Kinerja &#187; Perbandingan</a></li> <li><a href=?module=kinerja&act=tabel_penilaian>.: Kinerja &#187; Tabel Penilaian</a></li> <li><a href=?module=penentu_keputusan>.: Penentu Keputusan</a></li> <!-- <li><a href=?module=about>.: About</a></li> -->

Page 97: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

<li style=\"background-color:#78e3f0;\"><a href=logout.php onClick=\"return confirm('Apakah Anda Yakin? klik OK jika ingin menyudahi aplikasi')\">.: Logout</a></li> "; } ?> </ul> <p>&nbsp;</p> </div> <div id="footer"> <p>Copyright&copy; 2014 by:<br /> <b>---<b></p> </div> </div> </div> </body> </html> <?php } ?> content.php <?php include "../config/koneksi.php"; include "../config/library.php"; include "../config/fungsi_indotgl.php"; include "../config/hitungWaktu.php"; include "../config/paginate.php"; // Bagian Home if ($_GET[module]=='home'){ echo "<h2>Prediksi Kelulusan Menggunakan Pohon Keputusan C4.5</h2> <table width='100%'> <tr> <td> <h2 align='justify'> Selamat Datang.<br> </h2> </td> </tr> </table>"; }

Page 98: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

// Modul Data Kanker elseif ($_GET[module]=='data_mahasiswa'){ include "modul/data_mahasiswa.php"; } // Modul C4.5 elseif ($_GET[module]=='c45'){ include "modul/c45.php"; } // Modul about elseif ($_GET[module]=='about'){ include "modul/about.php"; } // Modul Penentu Keputusan elseif ($_GET[module]=='penentu_keputusan'){ include "modul/penentu_keputusan.php"; } // Modul Kinerja elseif ($_GET[module]=='kinerja'){ include "modul/kinerja.php"; } // Modul User elseif ($_GET[module]=='user'){ include "modul/mod_users/users.php"; } else{ echo "<p><b>MENU BELUM ADA</b></p>"; } ?> aksi.php <?php error_reporting(0); function deleteAllDb() { mysql_query("TRUNCATE atribut");

Page 99: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

mysql_query("TRUNCATE data_kasus"); mysql_query("TRUNCATE data_keputusan"); mysql_query("TRUNCATE data_keputusan_kinerja"); mysql_query("TRUNCATE iterasi_c45"); mysql_query("TRUNCATE mining_c45"); mysql_query("TRUNCATE pohon_keputusan_c45"); mysql_query("TRUNCATE rule_c45"); mysql_query("TRUNCATE rule_penentu_keputusan"); mysql_query("TRUNCATE data_penentu_keputusan"); } // session_start(); include "../config/koneksi.php"; include "../config/library.php"; $module=$_GET[module]; $act=$_GET[act]; // hapus data Mahasiswa per item if ($module=='data_mahasiswa' AND $act=='hapus_data_mahasiswa'){ mysql_query("DELETE FROM data_kasus WHERE id_data_mahasiswa='$_GET[id]'"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=data_mahasiswa';</script>\n"; } // hapus semua data Mahasiswa elseif ($module=='data_mahasiswa' AND $act=='hapus_semua_data_mahasiswa'){ mysql_query("TRUNCATE `data_kasus`"); deleteAllDb(); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=data_mahasiswa';</script>\n"; } // Input Data Mahasiswa elseif ($module=='data_mahasiswa' AND $act=='input'){ if ($_POST['nilai_ips1'] >=0 AND $_POST['nilai_ips1'] <= 2.00) { $ips1_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips1'] >=2.00 AND $_POST['nilai_ips1'] <= 2.76) { $ips1_kategori = "Memuaskan";

Page 100: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} else if ($_POST['nilai_ips1'] >=2.76 AND $_POST['nilai_ips1'] <= 3.50) { $ips1_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips1'] >=3.51 AND $_POST['nilai_ips1'] <= 4.00) { $ips1_kategori = "Cumlaude"; } if ($_POST['nilai_ips2'] >=0 AND $_POST['nilai_ips2'] <= 2.00) { $ips2_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.00 AND $_POST['nilai_ips2'] <= 2.76) { $ips2_kategori = "Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.76 AND $_POST['nilai_ips2'] <= 3.50) { $ips2_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips2'] >=3.51 AND $_POST['nilai_ips2'] <= 4.00) { $ips2_kategori = "Cumlaude"; } if ($_POST['nilai_ips3'] >=0 AND $_POST['nilai_ips3'] <= 2.00) { $ips3_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.00 AND $_POST['nilai_ips3'] <= 2.76) { $ips3_kategori = "Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.76 AND $_POST['nilai_ips3'] <= 3.50) { $ips3_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips3'] >=3.51 AND $_POST['nilai_ips3'] <= 4.00) { $ips3_kategori = "Cumlaude"; } if ($_POST['nilai_ips4'] >=0 AND $_POST['nilai_ips4'] <= 2.00) { $ips4_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.00 AND $_POST['nilai_ips4'] <= 2.76) { $ips4_kategori = "Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.76 AND $_POST['nilai_ips4'] <= 3.50) { $ips4_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips4'] >=3.51 AND $_POST['nilai_ips4'] <= 4.00) { $ips4_kategori = "Cumlaude"; } if ($_POST['nilai_ips5'] >=0 AND $_POST['nilai_ips5'] <= 2.00) { $ips5_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips5'] >=2.00 AND $_POST['nilai_ips5'] <= 2.76) { $ips5_kategori = "Memuaskan";

Page 101: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} else if ($_POST['nilai_ips5'] >=2.76 AND $_POST['nilai_ips5'] <= 3.50) { $ips5_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips5'] >=3.51 AND $_POST['nilai_ips5'] <= 4.00) { $ips5_kategori = "Cumlaude"; } if ($_POST['nilai_ips6'] >=0 AND $_POST['nilai_ips6'] <= 2.00) { $ips6_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips6'] >=2.00 AND $_POST['nilai_ips6'] <= 2.76) { $ips6_kategori = "Memuaskan"; } else if ($_POST['nilai_ips6'] >=2.76 AND $_POST['nilai_ips6'] <= 3.50) { $ips6_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips6'] >=3.51 AND $_POST['nilai_ips6'] <= 4.00) { $ips6_kategori = "Cumlaude"; } if ($_POST['nilai_ips7'] >=0 AND $_POST['nilai_ips7'] <= 2.00) { $ips7_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips7'] >=2.00 AND $_POST['nilai_ips7'] <= 2.76) { $ips7_kategori = "Memuaskan"; } else if ($_POST['nilai_ips7'] >=2.76 AND $_POST['nilai_ips7'] <= 3.50) { $ips7_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips7'] >=3.51 AND $_POST['nilai_ips7'] <= 4.00) { $ips7_kategori = "Cumlaude"; } if ($_POST['nilai_ips8'] >=0 AND $_POST['nilai_ips8'] <= 2.00) { $ips8_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips8'] >=2.00 AND $_POST['nilai_ips8'] <= 2.76) { $ips8_kategori = "Memuaskan"; } else if ($_POST['nilai_ips8'] >=2.76 AND $_POST['nilai_ips8'] <= 3.50) { $ips8_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips8'] >=3.51 AND $_POST['nilai_ips8'] <= 4.00) { $ips8_kategori = "Cumlaude"; } mysql_query("INSERT INTO data_kasus VALUES('', '$_POST[nim]', '$_POST[nama]', '$_POST[jenis_kelamin]',

Page 102: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

'$_POST[jurusan]', '$_POST[nilai_ips1]', '$nilai_ips1_kategori', '$_POST[nilai_ips2]', '$nilai_ips2_kategori', '$_POST[nilai_ips3]', '$nilai_ips3_kategori', '$_POST[nilai_ips4]', '$nilai_ips4_kategori', '$_POST[nilai_ips5]', '$nilai_ips5_kategori', '$_POST[nilai_ips6]', '$nilai_ips6_kategori', '$_POST[nilai_ips7]', '$nilai_ips7_kategori', '$_POST[nilai_ips8]', '$nilai_ips8_kategori', '$_POST[class]', '$_POST[status_data]' )"); echo "<script>alert('Data berhasil diinput!'); document.location.href='media.php?module=data_mahasiswa';</script>\n"; } // Update Data Mahasiswa elseif ($module=='data_mahasiswa' AND $act=='update_data_mahasiswa'){ if ($_POST['nilai_ips1'] >=0 AND $_POST['nilai_ips1'] <= 2.00) { $ips1_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips1'] >=2.00 AND $_POST['nilai_ips1'] <= 2.76) { $ips1_kategori = "Memuaskan"; } else if ($_POST['nilai_ips1'] >=2.76 AND $_POST['nilai_ips1'] <= 3.50) { $ips1_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips1'] >=3.51 AND $_POST['nilai_ips1'] <= 4.00) { $ips1_kategori = "Cumlaude"; } if ($_POST['nilai_ips2'] >=0 AND $_POST['nilai_ips2'] <= 2.00) { $ips2_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.00 AND $_POST['nilai_ips2'] <= 2.76) { $ips2_kategori = "Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.76 AND $_POST['nilai_ips2'] <= 3.50) {

Page 103: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$ips2_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips2'] >=3.51 AND $_POST['nilai_ips2'] <= 4.00) { $ips2_kategori = "Cumlaude"; } if ($_POST['nilai_ips3'] >=0 AND $_POST['nilai_ips3'] <= 2.00) { $ips3_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.00 AND $_POST['nilai_ips3'] <= 2.76) { $ips3_kategori = "Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.76 AND $_POST['nilai_ips3'] <= 3.50) { $ips3_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips3'] >=3.51 AND $_POST['nilai_ips3'] <= 4.00) { $ips3_kategori = "Cumlaude"; } if ($_POST['nilai_ips4'] >=0 AND $_POST['nilai_ips4'] <= 2.00) { $ips4_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.00 AND $_POST['nilai_ips4'] <= 2.76) { $ips4_kategori = "Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.76 AND $_POST['nilai_ips4'] <= 3.50) { $ips4_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips4'] >=3.51 AND $_POST['nilai_ips4'] <= 4.00) { $ips4_kategori = "Cumlaude"; } if ($_POST['nilai_ips5'] >=0 AND $_POST['nilai_ips5'] <= 2.00) { $ips5_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips5'] >=2.00 AND $_POST['nilai_ips5'] <= 2.76) { $ips5_kategori = "Memuaskan"; } else if ($_POST['nilai_ips5'] >=2.76 AND $_POST['nilai_ips5'] <= 3.50) { $ips5_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips5'] >=3.51 AND $_POST['nilai_ips5'] <= 4.00) { $ips5_kategori = "Cumlaude"; } if ($_POST['nilai_ips6'] >=0 AND $_POST['nilai_ips6'] <= 2.00) { $ips6_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips6'] >=2.00 AND $_POST['nilai_ips6'] <= 2.76) { $ips6_kategori = "Memuaskan"; } else if ($_POST['nilai_ips6'] >=2.76 AND $_POST['nilai_ips6'] <= 3.50) {

Page 104: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$ips6_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips6'] >=3.51 AND $_POST['nilai_ips6'] <= 4.00) { $ips6_kategori = "Cumlaude"; } if ($_POST['nilai_ips7'] >=0 AND $_POST['nilai_ips7'] <= 2.00) { $ips7_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips7'] >=2.00 AND $_POST['nilai_ips7'] <= 2.76) { $ips7_kategori = "Memuaskan"; } else if ($_POST['nilai_ips7'] >=2.76 AND $_POST['nilai_ips7'] <= 3.50) { $ips7_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips7'] >=3.51 AND $_POST['nilai_ips7'] <= 4.00) { $ips7_kategori = "Cumlaude"; } if ($_POST['nilai_ips8'] >=0 AND $_POST['nilai_ips8'] <= 2.00) { $ips8_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips8'] >=2.00 AND $_POST['nilai_ips8'] <= 2.76) { $ips8_kategori = "Memuaskan"; } else if ($_POST['nilai_ips8'] >=2.76 AND $_POST['nilai_ips8'] <= 3.50) { $ips8_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips8'] >=3.51 AND $_POST['nilai_ips8'] <= 4.00) { $ips8_kategori = "Cumlaude"; } mysql_query("UPDATE data_kasus SET nim = '$_POST[nim]', nama = '$_POST[nama]', jenis_kelamin = '$_POST[jenis_kelamin]', jurusan = '$_POST[jurusan]', nilai_ips1 = '$_POST[nilai_ips1]', nilai_ips1_kategori = '$ips1_kategori', nilai_ips2 = '$_POST[nilai_ips2]', nilai_ips2_kategori = '$ips2_kategori', nilai_ips3 = '$_POST[nilai_ips3]', nilai_ips3_kategori = '$ips3_kategori', nilai_ips4 = '$_POST[nilai_ips4]', nilai_ips4_kategori = '$ips4_kategori', nilai_ips5 = '$_POST[nilai_ips5]', nilai_ips5_kategori = '$ips5_kategori',

Page 105: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

nilai_ips6 = '$_POST[nilai_ips6]', nilai_ips6_kategori = '$ips6_kategori', nilai_ips7 = '$_POST[nilai_ips7]', nilai_ips7_kategori = '$ips7_kategori', nilai_ips8 = '$_POST[nilai_ips8]', nilai_ips8_kategori = '$ips8_kategori', class = '$_POST[class]', status_data = '$_POST[status_data]' WHERE id_data_mahasiswa = '$_POST[id]'"); echo "<script>alert('Data berhasil diupdate!'); document.location.href='media.php?module=data_mahasiswa';</script>\n"; } // Hapus Semua Data Perhitungan C45 elseif ($module=='c45' AND $act=='hapus_data_iterasi'){ mysql_query("TRUNCATE `iterasi_c45`"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=c45';</script>\n"; } // Hapus Semua Data Pohon Keputusan C45 elseif ($module=='c45' AND $act=='hapus_pohon_keputusan'){ mysql_query("TRUNCATE `pohon_keputusan_c45`"); mysql_query("TRUNCATE `rule_c45`"); mysql_query("DELETE FROM rule_penentu_keputusan where pohon = 'C45'"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=c45&act=pohon_keputusan';</script>\n"; } // Hapus Semua Data Penentu Keputusan elseif ($module=='penentu_keputusan' AND $act=='delete_data_penentu_keputusan'){ mysql_query("TRUNCATE `data_keputusan`"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=penentu_keputusan';</script>\n"; } // Hapus Semua Data Penentu Keputusan per Item if ($module=='penentu_keputusan' AND $act=='hapus'){ mysql_query("DELETE FROM data_keputusan WHERE id='$_GET[id]'"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=penentu_keputusan';</script>\n"; }

Page 106: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

// Hapus Semua Data Kinerja elseif ($module=='kinerja' AND $act=='hapus_data_kinerja'){ mysql_query("TRUNCATE `data_keputusan_kinerja`"); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=kinerja';</script>\n"; } // Hapus Seluruh Database elseif ($module=='lain-lain' AND $act=='delete_all_db'){ deleteAllDb(); echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=lain-lain';</script>\n"; } modul/data_mahasiswa.php <?php switch($_GET[act]){ default: echo "<h2>Data Mahasiswa</h2>"; include "menu_data_mahasiswa.php"; //include "form_data_mahasiswa.php"; echo "<p>Opsi: <a href=?module=data_mahasiswa&act=sinkronisasi_data_mahasiswa>Sinkronisasi Data</a> | <a href=./aksi.php?module=data_mahasiswa&act=hapus_semua_data_mahasiswa>Hapus Semua Data</a></p>"; //include "upload_csv.php"; $per_page = 30; // number of results to show per page if ($_SESSION[leveluser]=='admin' OR $_SESSION[leveluser]=='kajur'){ $result=mysql_query("SELECT * FROM data_kasus"); } $total_results = mysql_num_rows($result); $total_pages = ceil($total_results / $per_page);//total pages we going to have $warna1 = '#FFFFFF'; $warna2 = '#CCFFFF'; $warna = $warna1; //-------------if page is setcheck------------------// if (isset($_GET['page'])) { $show_page = $_GET['page']; //it will telles the current page if ($show_page > 0 && $show_page <= $total_pages) { $start = ($show_page - 1) * $per_page; $end = $start + $per_page;

Page 107: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} else { // error - show first set of results $start = 0; $end = $per_page; } } else { // if page isn't set, show first set of results $start = 0; $end = $per_page; } // display pagination $page = intval($_GET['page']); $tpages=$total_pages; if ($page <= 0) $page = 1; $reload = $_SERVER['PHP_SELF'] . "?module=data_mahasiswa&act=data_mahasiswa&tpages=" . $tpages; if ($total_pages > 1) { echo paginate($reload, $show_page, $total_pages); } echo "<table bgcolor='#00CCFF' border='1' cellspacing='0' cellspading='0'> <tr> <th>No</th> <th>nim</th> <th>nama</th> <th>jenis kelamin</th> <th>jurusan</th> <th>nilai ips1</th> <th>nilai ips2</th> <th>nilai ips3</th> <th>nilai ips4</th> <th>nilai ips5</th> <th>nilai ips6</th> <th>nilai ips7</th> <th>nilai ips8</th> <th>Class</th> <th>Status Data</th>

Page 108: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

<th>Opsi</th> </tr>"; for ($i = $start; $i < $end; $i++) { // make sure that PHP doesn't try to show results that don't exist if ($i == $total_results) { break; } $num = $i +1; echo '<tr bgcolor=' . $warna . '> <td>'.$num.'</td> <td>' . mysql_result($result, $i, 'nim') . '</td> <td>' . mysql_result($result, $i, 'nama') . '</td> <td>' . mysql_result($result, $i, 'jenis_kelamin') . '</td> <td>' . mysql_result($result, $i, 'jurusan') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips1') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips2') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips3') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips4') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips5') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips6') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips7') . '</td> <td>' . mysql_result($result, $i, 'nilai_ips8') . '</td> <td>' . mysql_result($result, $i, 'class') . '</td> <td>' . mysql_result($result, $i, 'status_data') . '</td> <td><a href=?module=data_mahasiswa&act=edit_data_mahasiswa&id=' . mysql_result($result, $i, 'id_data_mahasiswa').'>Edit</a> | <a href=./aksi.php?module=data_mahasiswa&act=hapus_data_mahasiswa&id=' . mysql_result($result, $i, 'id_data_mahasiswa').'>Hapus</a> </td> </tr>'; $no++; } echo"</table>"; break; case "edit_data_mahasiswa"; echo "<h2>Data Mahasiswa &#187; Edit Data Mahasiswa</h2>"; // include "menu_data_mahasiswa.php"; include "form_edit_data_mahasiswa.php"; break;

Page 109: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

case "partisi_data"; include "partisi_data.php"; break; case "sinkronisasi_data_mahasiswa"; include "sinkronisasi_data_mahasiswa_ekonomi.php"; echo "<script>alert('Data berhasil dihapus!'); document.location.href='media.php?module=data_mahasiswa';</script>\n"; break; } modul/c45.php <?php switch($_GET[act]){ default: echo "<h2>C45 &#187; Perhitungan C4.5</h2>"; // include "menu_c45.php"; echo " <p>Opsi: <a href=./aksi.php?module=c45&act=hapus_data_iterasi>Hapus Semua Data</a></p> <table bgcolor='#00CCFF' border='1' cellspacing='0' cellspading='0'> <tr> <th>No</th> <th>Atribut Gain Ratio Max</th> <th>Atribut</th> <th>Nilai Atribut</th> <th>Jumlah Kasus Total</th> <th>Jumlah Kasus Tidak Tepat Waktu</th> <th>Jumlah Kasus TepatWaktu</th> <th>Entropy</th> <th>Information Gain</th> </tr>"; if ($_SESSION[leveluser]=='admin' OR $_SESSION[leveluser]=='kajur' OR $_SESSION[leveluser]=='akademik'){ $sql=mysql_query('SELECT * FROM iterasi_c45 ORDER BY id'); } $warna1 = '#FFFFFF'; $warna2 = '#CCFFFF'; $warna = $warna1; while ($data=mysql_fetch_array($sql)){ if($warna == $warna1){

Page 110: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$warna = $warna2; } else { $warna = $warna1; } /* echo " <tr bgcolor='$warna'> <td>$data[iterasi]</td> <td>$data[atribut_gain_ratio_max]</td> <td>$data[atribut]</td> <td>$data[nilai_atribut]</td> <td>$data[jml_kasus_total]</td> <td>$data[jml_kasus_tidak_tepat_waktu]</td> <td>$data[jml_kasus_tepat_waktu]</td> <td>$data[entropy]</td> <td>$data[inf_gain]</td> <td>$data[split_info]</td> <td>$data[gain_ratio]</td> </tr>"; */ echo " <tr bgcolor='$warna'> <td>$data[iterasi]</td> <td>$data[atribut_gain_ratio_max]</td> <td>$data[atribut]</td> <td>$data[nilai_atribut]</td> <td>$data[jml_kasus_total]</td> <td>$data[jml_kasus_tidak_tepat_waktu]</td> <td>$data[jml_kasus_tepat_waktu]</td> <td>$data[entropy]</td> <td>$data[inf_gain]</td> </tr>"; } echo"</table>"; break; case "mining"; echo "<h2>C45 &#187; Mining C4.5</h2>"; // include "menu_c45.php"; $sql=mysql_query("SELECT COUNT(*) FROM data_kasus WHERE status_data = 'Data Training'"); $data=mysql_fetch_array($sql); if (empty($data)) { echo "<script>alert('Data Training Kosong, Harap Input Data Training!'); document.location.href='media.php?module=c45';</script>\n";

Page 111: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} else { timer_start(); echo "mohon sabar...."; //include "function/miningPrePruningC45___pruning.php"; include "function/miningPrePruningC45.php"; //include "function/algoritma.php"; $waktu = timer_stop(3); echo "<p>Proses Mining Selesai! Waktu yang dibutuhkan $waktu detik</p>"; } break; case "pohon_keputusan"; include "pohon_keputusan_c45.php"; break; } modul/penentu_keputusan.php <?php echo "<h2>Penentu Keputusan</h2>"; include "form_penentu_keputusan.php"; echo "<p>Opsi: <a href=./aksi.php?module=penentu_keputusan&act=delete_data_penentu_keputusan>Hapus Semua Data</a> </p>"; echo "<table bgcolor='#00CCFF' border='1' cellspacing='0' cellspading='0'> <tr> <th>No</th> <th>nim</th> <th>nama</th> <th>jenis kelamin</th> <th>jurusan</th> <th>nilai ips1</th> <th>nilai ips2</th> <th>nilai ips3</th> <th>nilai ips4</th> <th>Keputusan C4.5 </th> <th>ID Rule</th> <th>Opsi</th> </tr>"; if ($_SESSION[leveluser]=='admin'OR $_SESSION[leveluser]=='kajur'OR

Page 112: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$_SESSION[leveluser]=='akademik'OR $_SESSION[leveluser]=='mahasiswa'){ $sql=mysql_query('SELECT * FROM data_keputusan ORDER BY id'); } $warna1 = '#FFFFFF'; $warna2 = '#CCFFFF'; $warna = $warna1; $no = 1; while ($data=mysql_fetch_array($sql)){ if($warna == $warna1){ $warna = $warna2; } else { $warna = $warna1; } echo "<tr bgcolor='$warna'> <td>$no</td> <td>$data[nim]</td> <td>$data[nama]</td> <td>$data[jenis_kelamin]</td> <td>$data[jurusan]</td> <td>$data[nilai_ips1]</td> <td>$data[nilai_ips2]</td> <td>$data[nilai_ips3]</td> <td>$data[nilai_ips4]</td> <td> "; if ($data['keputusan_c45'] == 'Tepat Waktu') { echo "<font color=green><b>$data[keputusan_c45]</b></font>"; } elseif ($data['keputusan_c45'] == 'Tidak Tepat Waktu') { echo "<font color=red><b>$data[keputusan_c45]</b></font>"; } else { echo "<b>$data[keputusan_c45]</b>"; } echo "</td><td><b>$data[id_rule_c45]</b></td> <td> <a href=./aksi.php?module=penentu_keputusan&act=hapus&id=$data[id]>Hapus</a> </td> </tr>"; $no++; }

Page 113: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

echo"</table>"; ?> </html> modul/kinerja.php <?php function countKeputusan($atribut, $nilai_atribut) { $sql = mysql_query("SELECT count(id_data_mahasiswa) as id FROM data_keputusan_kinerja where $atribut = '$nilai_atribut'"); while($row = mysql_fetch_array($sql)) { $count = "$row[id]"; } return $count; } function countKeputusankinerja($atribut1, $nilai_atribut1, $atribut2, $nilai_atribut2) { $sql = mysql_query("SELECT count(id_data_mahasiswa) as id FROM data_keputusan_kinerja where $atribut1 = '$nilai_atribut1' AND $atribut2 = '$nilai_atribut2'"); while($row = mysql_fetch_array($sql)) { $count = "$row[id]"; } return $count; } switch($_GET[act]){ default: echo "<h2>Kinerja &#187; Tabel Perbandingan Keputusan</h2>"; // include "menu_kinerja.php"; echo "<table bgcolor='#00CCFF' border='1' cellspacing='0' cellspading='0'> <tr> <th>No</th> <th>nim</th> <th>nama</th> <th>jenis kelamin</th> <th>jurusan</th> <th>nilai ips1</th> <th>nilai ips2</th> <th>nilai ips3</th> <th>nilai ips4</th> <th>nilai ips5</th>

Page 114: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

<th>nilai ips6</th> <th>nilai ips7</th> <th>nilai ips8</th> <th>Keputusan Asli</th> <th>Keputusan C4.5</th> <th>ID Rule C4.5</th> </tr>"; $warna1 = '#FFFFFF'; $warna2 = '#CCFFFF'; $warna = $warna1; $no = 1; $sqlDataKeputusanKinerja=mysql_query("SELECT * FROM data_keputusan_kinerja"); while ($rowDataKeputusanKinerja = mysql_fetch_array($sqlDataKeputusanKinerja)) { $sqlDataMahasiswa = mysql_query("SELECT * FROM data_kasus WHERE id_data_mahasiswa = '$rowDataKeputusanKinerja[id_data_mahasiswa]'"); $rowDataMahasiswa = mysql_fetch_array($sqlDataMahasiswa); if($warna == $warna1){ $warna = $warna2; } else { $warna = $warna1; } echo "<tr bgcolor='$warna'> <td>$no</td> <td>$rowDataMahasiswa[nim]</td> <td>$rowDataMahasiswa[nama]</td> <td>$rowDataMahasiswa[jenis_kelamin]</td> <td>$rowDataMahasiswa[jurusan]</td> <td>$rowDataMahasiswa[nilai_ips1]</td> <td>$rowDataMahasiswa[nilai_ips2]</td> <td>$rowDataMahasiswa[nilai_ips3]</td> <td>$rowDataMahasiswa[nilai_ips4]</td> <td>$rowDataMahasiswa[nilai_ips5]</td> <td>$rowDataMahasiswa[nilai_ips6]</td> <td>$rowDataMahasiswa[nilai_ips7]</td> <td>$rowDataMahasiswa[nilai_ips8]</td> <td><b>$rowDataKeputusanKinerja[keputusan_asli]</b></td> <td>"; if ($rowDataKeputusanKinerja['keputusan_asli'] == $rowDataKeputusanKinerja['keputusan_c45']) {

Page 115: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

echo "<font color=green><b>$rowDataKeputusanKinerja[keputusan_c45]</b></font>"; } else { echo "<font color=red><b>$rowDataKeputusanKinerja[keputusan_c45]</b></font>"; } echo "</td><td>$rowDataKeputusanKinerja[id_rule_c45] </td></tr>"; $no++; } echo"</table>"; break; case "tabel_penilaian"; echo "<h2>Kinerja &#187; Tabel Penilaian</h2>"; // include "menu_kinerja.php"; $sqlEmpty = mysql_query("SELECT id FROM data_keputusan_kinerja"); $rowEmpty = mysql_fetch_array($sqlEmpty); if (empty($rowEmpty)) { echo "Tabel Penilaian Kosong ! <br>Lakukan kinerja Dulu !"; } else { $TepatWaktu = countKeputusan($atribut = 'keputusan_asli', $nilai_atribut = 'Tepat Waktu'); $TidakTepatWaktu = countKeputusan($atribut = 'keputusan_asli', $nilai_atribut = 'Tidak Tepat Waktu'); $TepatWaktuC45IdentifikasiTepatWaktu = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Tepat Waktu'); $TepatWaktuC45IdentifikasiTidakTepatWaktu = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Tidak Tepat Waktu'); $TepatWaktuC45IdentifikasiNull = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Null'); $TidakTepatWaktuC45IdentifikasiTepatWaktu = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tidak Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Tepat Waktu'); $TidakTepatWaktuC45IdentifikasiTidakTepatWaktu = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tidak Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Tidak Tepat Waktu'); $TidakTepatWaktuC45IdentifikasiNull = countKeputusankinerja($atribut1 = 'keputusan_asli', $nilai_atribut1 = 'Tidak Tepat Waktu', $atribut2 = 'keputusan_c45', $nilai_atribut2 = 'Null'); if ($TepatWaktu != ($TepatWaktuC45IdentifikasiTepatWaktu + $TepatWaktuC45IdentifikasiTidakTepatWaktu)) {

Page 116: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$TepatWaktuC45IdentifikasiTidakTepatWaktu += $TepatWaktuC45IdentifikasiNull; } if ($TidakTepatWaktu != ($TidakTepatWaktuC45IdentifikasiTepatWaktu + $TidakTepatWaktuC45IdentifikasiTidakTepatWaktu)) { $TidakTepatWaktuC45IdentifikasiTepatWaktu += $TidakTepatWaktuC45IdentifikasiNull; } $precision = round(($TepatWaktuC45IdentifikasiTepatWaktu / ($TidakTepatWaktuC45IdentifikasiTepatWaktu + $TepatWaktuC45IdentifikasiTepatWaktu) * 100), 2); $recall = round(($TepatWaktuC45IdentifikasiTepatWaktu / ($TepatWaktuC45IdentifikasiTidakTepatWaktu + $TepatWaktuC45IdentifikasiTepatWaktu) * 100), 2); $accuracy = round((($TepatWaktuC45IdentifikasiTepatWaktu + $TidakTepatWaktuC45IdentifikasiTidakTepatWaktu) / ($TepatWaktu + $TidakTepatWaktu) * 100), 2); echo "<p><b>Tabel Penilaian C4.5</b></p> <table> <tr> <td></td> <td><b>Diidentifikasi Tidak Tepat Waktu oleh C4.5</b></td> <td><b>Diidentifikasi Tepat Waktu oleh C4.5</b></td> </tr> <tr> <td><b>Keputusan Asli: Tidak Tepat Waktu = $TidakTepatWaktu</b></td> <td>$TidakTepatWaktuC45IdentifikasiTidakTepatWaktu</td> <td>$TidakTepatWaktuC45IdentifikasiTepatWaktu</td> </tr> <tr> <td><b>Keputusan Asli: Tepat Waktu = $TepatWaktu</b></td> <td>$TepatWaktuC45IdentifikasiTidakTepatWaktu</td> <td>$TepatWaktuC45IdentifikasiTepatWaktu</td> </tr> </table> <p> <a>1. Precision = $TepatWaktuC45IdentifikasiTepatWaktu / ($TidakTepatWaktuC45IdentifikasiTepatWaktu + $TepatWaktuC45IdentifikasiTepatWaktu) * 100% = $precision %</a><br> <a>2. Recall = $TepatWaktuC45IdentifikasiTepatWaktu / ($TepatWaktuC45IdentifikasiTidakTepatWaktu + $TepatWaktuC45IdentifikasiTepatWaktu) * 100% = $recall %</a><br> <a>3. Accuracy = ($TidakTepatWaktuC45IdentifikasiTidakTepatWaktu + $TepatWaktuC45IdentifikasiTepatWaktu) / ($TepatWaktu + $TidakTepatWaktu) * 100% = $accuracy %</a></p> <hr>";

Page 117: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} break; case "lakukan_kinerja"; echo "<h2>Kinerja &#187; Proses Kinerja</h2>"; // include "menu_kinerja.php"; timer_start(); include "function/kinerjaC45.php"; $waktu = timer_stop(3); echo "<p>Proses perhitungan kinerja selesai! Waktu yang dibutuhkan $waktu detik</p>"; break; } ?> modul/pohon_keputusan_c45.php <?php include "../../config/koneksi.php"; echo "<h2>C45 &#187; Pohon Keputusan</h2>"; // include "menu_c45.php"; echo " <p>Opsi: <a href=./aksi.php?module=c45&act=hapus_pohon_keputusan>Hapus Semua Data</a></p>"; echo "<font face='Courier New' size='2'>"; echo "<h3><b>Pohon Keputusan: <br></b></h3>"; function get_subfolder($idparent, $spasi){ if ($_SESSION[leveluser]=='admin' OR $_SESSION[leveluser]=='kajur' OR $_SESSION[leveluser]=='akademik'){ $result = mysql_query("select * from pohon_keputusan_c45 where id_parent= '$idparent'"); } while($row=mysql_fetch_row($result)){ for($i=1;$i<=$spasi;$i++){ echo "|&nbsp;&nbsp;"; } if ($row[6] === 'Tepat Waktu') { $keputusan = "<font color=green>$row[6]</font>"; } elseif ($row[6] === 'Tidak Tepat Waktu') { $keputusan = "<font color=red>$row[6]</font>"; } elseif ($row[6] === '?') { $keputusan = "<font color=blue>$row[6]</font>"; } else { $keputusan = "<b>$row[6]</b>"; } echo "<font color=red>$row[1]</font> = $row[2] : <b>$keputusan</b><br>";

Page 118: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

/*panggil dirinya sendiri*/ get_subfolder($row[0], $spasi + 1); } } get_subfolder('0', 0); echo "<hr>"; echo "<h3><b>Rule: <br></b></h3>"; $no = 1; if ($_SESSION[leveluser]=='admin'){ $sqlLihatRule = mysql_query("select * from rule_c45 order by id" ); } while($rowLihatRule=mysql_fetch_array($sqlLihatRule)){ if ($rowLihatRule['keputusan'] === 'Tepat Waktu') { $keputusan = "<font color=green>$rowLihatRule[keputusan]</font>"; } elseif ($rowLihatRule['keputusan'] === 'Tidak Tepat Waktu') { $keputusan = "<font color=red>$rowLihatRule[keputusan]</font>"; } elseif ($rowLihatRule['keputusan'] === '?') { $keputusan = "<font color=blue>$rowLihatRule[keputusan]</font>"; } else { $keputusan = "<b>$rowLihatRule[keputusan]</b>"; } echo "<b>R$no.</b> JIKA <b>(</b>$rowLihatRule[rule]<b>)</b> MAKA <b>$keputusan</b> <font color=blue>(id = $rowLihatRule[id])</font><br>"; $no++; } echo "</font>"; modul/sinkronisasi_data_mahasiswa_ekonomi.php <?php error_reporting(E_ERROR | E_PARSE); include "koneksi.php"; mysql_query("TRUNCATE data_kasus"); //$sql="SELECT * from ac_mahasiswa where nim like '2008%' AND substr(nim,5,2) not in(14,15,16,21,22,23,24,25,31,32,41,42)"; //$sql="SELECT * from ac_mahasiswa where nim like '2008230026%'"; $sql="SELECT * from ac_mahasiswa where nim like '20084%'"; $query=mysql_query($sql); while($row=mysql_fetch_array($query)){ $nim=$row["nim"];

Page 119: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$nama=$row["nama"]; $jk=$row["jenis_kelamin"]; $userid=$row["pn_uid"]; $tahun_lulus=substr($row["tanggal_lulus"],0,4); if ($tahun_lulus=='2012') { $lulus='Tepat Waktu'; }else $lulus='Tidak Tepat Waktu'; $kode_jurusan=substr($nim,4,2); if ($kode_jurusan=='11'){ $jurusan='Sastra Jepang'; } elseif ($kode_jurusan=='12') { $jurusan='Sastra Inggris'; } elseif ($kode_jurusan=='13') { $jurusan='Sastra Cina'; }elseif ($kode_jurusan=='21') { $jurusan='Teknik Elektro'; }elseif ($kode_jurusan=='22') { $jurusan='Teknik Industri'; }elseif ($kode_jurusan=='23') { $jurusan='Teknik Informatika'; }elseif ($kode_jurusan=='24') { $jurusan='Sistem Informasi'; }elseif ($kode_jurusan=='25') { $jurusan='Teknik Mesin'; }elseif ($kode_jurusan=='31') { $jurusan='Teknologi Kelautan'; }elseif ($kode_jurusan=='32') { $jurusan='Sistem Teknologi Kelautah'; }elseif ($kode_jurusan=='41') { $jurusan='Manajemen'; }elseif ($kode_jurusan=='42') { $jurusan='Akuntansi'; } //if($row["tanggal_lulus"]=="0000-00-00"){$lulus="belum";}else{$lulus=$row["tanggal_lulus"];} $sqlip1="select sum(mutu)/sum(sks) as ips1 from ac_user_students where userid='$userid' and semester_year=2008 and semester=1 group by userid"; $queryip1=mysql_query($sqlip1); $rowip1=mysql_fetch_array($queryip1); $ips1=round($rowip1["ips1"],2);

Page 120: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$sqlip2="select sum(mutu)/sum(sks) as ips2 from ac_user_students where userid='$userid' and semester_year=2008 and semester=2 group by userid"; $queryip2=mysql_query($sqlip2); $rowip2=mysql_fetch_array($queryip2); $ips2=round($rowip2["ips2"],2); $sqlip3="select sum(mutu)/sum(sks) as ips3 from ac_user_students where userid='$userid' and semester_year=2009 and semester=1 group by userid"; $queryip3=mysql_query($sqlip3); $rowip3=mysql_fetch_array($queryip3); $ips3=round($rowip3["ips3"],2); $sqlip4="select sum(mutu)/sum(sks) as ips4 from ac_user_students where userid='$userid' and semester_year=2009 and semester=2 group by userid"; $queryip4=mysql_query($sqlip4); $rowip4=mysql_fetch_array($queryip4); $ips4=round($rowip4["ips4"],2); $sqlip5="select sum(mutu)/sum(sks) as ips5 from ac_user_students where userid='$userid' and semester_year=2010 and semester=1 group by userid"; $queryip5=mysql_query($sqlip5); $rowip5=mysql_fetch_array($queryip5); $ips5=round($rowip5["ips5"],2); $sqlip6="select sum(mutu)/sum(sks) as ips6 from ac_user_students where userid='$userid' and semester_year=2010 and semester=2 group by userid"; $queryip6=mysql_query($sqlip6); $rowip6=mysql_fetch_array($queryip6); $ips6=round($rowip6["ips6"],2); $sqlip7="select sum(mutu)/sum(sks) as ips7 from ac_user_students where userid='$userid' and semester_year=2011 and semester=1 group by userid"; $queryip7=mysql_query($sqlip7); $rowip7=mysql_fetch_array($queryip7); $ips7=round($rowip7["ips7"],2); $sqlip8="select sum(mutu)/sum(sks) as ips8 from ac_user_students where userid='$userid' and semester_year=2011 and semester=2 group by userid"; $queryip8=mysql_query($sqlip8); $rowip8=mysql_fetch_array($queryip8); $ips8=round($rowip8["ips8"],2);

Page 121: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

if ($ips1 >=0 AND $ips1 <= 2.00) { $ips1_kategori = "Kurang Memuaskan"; } else if ($ips1 >=2.00 AND $ips1 <= 2.76) { $ips1_kategori = "Memuaskan"; } else if ($ips1 >=2.76 AND $ips1 <= 3.50) { $ips1_kategori = "Sangat Memuaskan"; } else if ($ips1 >=3.51 AND $ips1 <= 4.00) { $ips1_kategori = "Cumlaude"; } if ($ips2 >=0 AND $ips2 <= 2.00) { $ips2_kategori = "Kurang Memuaskan"; } else if ($ips2 >=2.00 AND $ips2 <= 2.76) { $ips2_kategori = "Memuaskan"; } else if ($ips2 >=2.76 AND $ips2 <= 3.50) { $ips2_kategori = "Sangat Memuaskan"; } else if ($ips2 >=3.51 AND $ips2 <= 4.00) { $ips2_kategori = "Cumlaude"; } if ($ips3 >=0 AND $ips3 <= 2.00) { $ips3_kategori = "Kurang Memuaskan"; } else if ($ips3 >=2.00 AND $ips3 <= 2.76) { $ips3_kategori = "Memuaskan"; } else if ($ips3 >=2.76 AND $ips3 <= 3.50) { $ips3_kategori = "Sangat Memuaskan"; } else if ($ips3 >=3.51 AND $ips3 <= 4.00) { $ips3_kategori = "Cumlaude"; } if ($ips4 >=0 AND $ips4 <= 2.00) { $ips4_kategori = "Kurang Memuaskan"; } else if ($ips4 >=2.00 AND $ips4 <= 2.76) { $ips4_kategori = "Memuaskan"; } else if ($ips4 >=2.76 AND $ips4 <= 3.50) { $ips4_kategori = "Sangat Memuaskan"; } else if ($ips4 >=3.51 AND $ips4 <= 4.00) { $ips4_kategori = "Cumlaude"; }

Page 122: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

if ($ips5 >=0 AND $ips5 <= 2.00) { $ips5_kategori = "Kurang Memuaskan"; } else if ($ips5 >=2.00 AND $ips5 <= 2.76) { $ips5_kategori = "Memuaskan"; } else if ($ips5 >=2.76 AND $ips5 <= 3.50) { $ips5_kategori = "Sangat Memuaskan"; } else if ($ips5 >=3.51 AND $ips5 <= 4.00) { $ips5_kategori = "Cumlaude"; } if ($ips6 >=0 AND $ips6 <= 2.00) { $ips6_kategori = "Kurang Memuaskan"; } else if ($ips6 >=2.00 AND $ips6 <= 2.76) { $ips6_kategori = "Memuaskan"; } else if ($ips6 >=2.76 AND $ips6 <= 3.50) { $ips6_kategori = "Sangat Memuaskan"; } else if ($ips6 >=3.51 AND $ips6 <= 4.00) { $ips6_kategori = "Cumlaude"; } if ($ips7 >=0 AND $ips7 <= 2.00) { $ips7_kategori = "Kurang Memuaskan"; } else if ($ips7 >=2.00 AND $ips7 <= 2.76) { $ips7_kategori = "Memuaskan"; } else if ($ips7 >=2.76 AND $ips7 <= 3.50) { $ips7_kategori = "Sangat Memuaskan"; } else if ($ips7 >=3.51 AND $ips7 <= 4.00) { $ips7_kategori = "Cumlaude"; } if ($ips8 >=0 AND $ips8 <= 2.00) { $ips8_kategori = "Kurang Memuaskan"; } else if ($ips8 >=2.00 AND $ips8 <= 2.76) { $ips8_kategori = "Memuaskan"; } else if ($ips8 >=2.76 AND $ips8 <= 3.50) { $ips8_kategori = "Sangat Memuaskan"; } else if ($ips8 >=3.51 AND $ips8 <= 4.00) { $ips8_kategori = "Cumlaude"; }

Page 123: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$sql1="INSERT INTO data_kasus VALUES ( '', '$nim', '$nama', '$jk', '$jurusan', '$ips1', '$ips1_kategori', '$ips2', '$ips2_kategori', '$ips3', '$ips3_kategori', '$ips4', '$ips4_kategori', '$ips5', '$ips5_kategori', '$ips6', '$ips6_kategori', '$ips7', '$ips7_kategori', '$ips8', '$ips8_kategori', '$lulus', 'Data Training' ) "; $mysql1=mysql_query($sql1); if (!$mysql1) echo mysql_error(); } mysql_query("DELETE from data_kasus where nilai_ips5=0 AND nilai_ips6=0 AND nilai_ips7=0 AND nilai_ips8=0"); ?> function/algoritma.php <?php // ====================== mining tanpa pruning ======================== include "../../../config/koneksi.php";

Page 124: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

function populateAtribut() { mysql_query("TRUNCATE atribut"); mysql_query("insert into `atribut` values ('', 'Total', 'Total') "); //insertAtribut('jenis_kelamin'); insertAtribut('jurusan'); insertAtribut('nilai_ips1_kategori'); insertAtribut('nilai_ips2_kategori'); insertAtribut('nilai_ips3_kategori'); insertAtribut('nilai_ips4_kategori'); } function insertAtribut($atribut) { $sqlAtribut = mysql_query("SELECT distinct `$atribut` FROM data_kasus ORDER by `$atribut`"); while ($rowAtribut = mysql_fetch_array($sqlAtribut)) {! mysql_query("insert into `atribut` values ('', '$atribut', '$rowAtribut[$atribut]')"); } } function populateDb() { //#1# Hapus semua DB dan insert default atribut dan nilai atribut mysql_query("TRUNCATE rule_penentu_keputusan"); mysql_query("TRUNCATE pohon_keputusan_c45"); mysql_query("TRUNCATE rule_c45"); mysql_query("TRUNCATE mining_c45"); mysql_query("TRUNCATE iterasi_c45"); populateAtribut(); } populateDb(); miningC45(null, null); //updateKeputusanUnknown(); //generateRuleFinalPrePruning(); //insertRuleC45PrePruning();

Page 125: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

//---------- KUMPULAN FUNGSI yang AKAN DILAKUKAN DALAM PROSES MINING ---------- function miningC45($atribut, $nilai_atribut) { perhitunganC45($atribut, $nilai_atribut); //insertAtributPohonKeputusan($atribut, $nilai_atribut); //getInfGainMax($atribut, $nilai_atribut); } function perhitunganC45($atribut, $nilai_atribut) { if (empty($atribut) AND empty($nilai_atribut)) { //#2# Jika atribut yg diinputkan kosong, maka lakukan perhitungan awal $kondisiAtribut = ""; // set kondisi atribut kosong } else if (!empty($atribut) AND !empty($nilai_atribut)) { // jika atribut tdk kosong, maka select kondisi atribut dari DB $sqlKondisiAtribut = mysql_query("SELECT kondisi_atribut FROM pohon_keputusan_c45 WHERE atribut = '$atribut' AND nilai_atribut = '$nilai_atribut' order by id DESC LIMIT 1"); $rowKondisiAtribut = mysql_fetch_array($sqlKondisiAtribut); $kondisiAtribut = str_replace("~", "'", $rowKondisiAtribut['kondisi_atribut']); // replace string ~ menjadi ' } // ambil seluruh atribut $sqlAtribut = mysql_query("SELECT distinct atribut FROM atribut"); while($rowGetAtribut = mysql_fetch_array($sqlAtribut)) { $getAtribut=$rowGetAtribut['atribut']; //echo $getAtribut; if($getAtribut == 'Total'){ //#3# Jika atribut = total, maka hitung jumlah kasus total, jumlah kasus Tepat Waktu dan jumlah kasus Tidak Tepat Waktu // hitung jumlah kasus total $sqlJumlahKasusTotal = mysql_query("SELECT COUNT(*) as jumlah_total FROM data_kasus WHERE status_data = 'Data Training' $kondisiAtribut"); $rowJumlahKasusTotal = mysql_fetch_array($sqlJumlahKasusTotal); $getJumlahKasusTotal = $rowJumlahKasusTotal['jumlah_total']; // hitung jumlah kasus TepatWaktu $sqlJumlahKasusTepatWaktu = mysql_query("SELECT COUNT(*) as jumlah_tepat_waktu FROM data_kasus WHERE class = 'Tepat Waktu' AND status_data = 'Data Training' $kondisiAtribut"); $rowJumlahKasusTepatWaktu = mysql_fetch_array($sqlJumlahKasusTepatWaktu); $getJumlahKasusTepatWaktu = $rowJumlahKasusTepatWaktu['jumlah_tepat_waktu']; // hitung jumlah kasus Tidak Tepat Waktu

Page 126: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$sqlJumlahKasusTidakTepatWaktu = mysql_query("SELECT COUNT(*) as jumlah_tidak_tepat_waktu FROM data_kasus WHERE class = 'Tidak Tepat Waktu' AND status_data = 'Data Training' $kondisiAtribut"); $rowJumlahKasusTidakTepatWaktu = mysql_fetch_array($sqlJumlahKasusTidakTepatWaktu); $getJumlahKasusTidakTepatWaktu = $rowJumlahKasusTidakTepatWaktu['jumlah_tidak_tepat_waktu']; //#4# Insert jumlah kasus total, jumlah kasus Tepat Waktu dan jumlah kasus Tidak Tepat Waktu ke DB // insert ke database mining_c45 mysql_query("INSERT INTO mining_c45 VALUES ('', 'Total', 'Total', '$getJumlahKasusTotal', '$getJumlahKasusTidakTepatWaktu', '$getJumlahKasusTepatWaktu', '', '', '', '', '', '')"); }else{ //#5# Jika atribut != total (atribut lainnya), maka hitung jumlah kasus total, jumlah kasus Tepat Waktu dan jumlah kasus Tidak Tepat Waktu masing2 atribut // ambil nilai atribut $sqlNilaiAtribut = mysql_query("SELECT nilai_atribut FROM atribut WHERE atribut = '$getAtribut' ORDER BY id"); while($rowNilaiAtribut = mysql_fetch_array($sqlNilaiAtribut)) { $getNilaiAtribut = $rowNilaiAtribut['nilai_atribut']; // set kondisi dimana nilai_atribut = berdasakan masing2 atribut dan status data = data training $kondisi = "$getAtribut = '$getNilaiAtribut' AND status_data = 'Data Training' $kondisiAtribut"; // hitung jumlah kasus per atribut $sqlJumlahKasusTotalAtribut = mysql_query("SELECT COUNT(*) as jumlah_total FROM data_kasus WHERE $kondisi"); $rowJumlahKasusTotalAtribut = mysql_fetch_array($sqlJumlahKasusTotalAtribut); $getJumlahKasusTotalAtribut = $rowJumlahKasusTotalAtribut['jumlah_total']; // hitung jumlah kasus TepatWaktu $sqlJumlahKasusTepatWaktuAtribut = mysql_query("SELECT COUNT(*) as jumlah_tepat_waktu FROM data_kasus WHERE $kondisi AND class = 'Tepat Waktu'"); $rowJumlahKasusTepatWaktuAtribut = mysql_fetch_array($sqlJumlahKasusTepatWaktuAtribut); $getJumlahKasusTepatWaktuAtribut = $rowJumlahKasusTepatWaktuAtribut['jumlah_tepat_waktu']; // hitung jumlah kasus Tidak Tepat Waktu $sqlJumlahKasusTidakTepatWaktuAtribut = mysql_query("SELECT COUNT(*) as jumlah_tidak_tepat_waktu FROM data_kasus WHERE $kondisi AND class = 'Tidak Tepat Waktu'"); $rowJumlahKasusTidakTepatWaktuAtribut = mysql_fetch_array($sqlJumlahKasusTidakTepatWaktuAtribut); $getJumlahKasusTidakTepatWaktuAtribut = $rowJumlahKasusTidakTepatWaktuAtribut['jumlah_tidak_tepat_waktu'];

Page 127: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

//#6# Insert jumlah kasus total, jumlah kasus Tepat Waktu dan jumlah kasus Tidak Tepat Waktu masing2 atribut ke DB // insert ke database mining_c45 mysql_query("INSERT INTO mining_c45 VALUES ('', '$getAtribut', '$getNilaiAtribut', '$getJumlahKasusTotalAtribut', '$getJumlahKasusTidakTepatWaktuAtribut', '$getJumlahKasusTepatWaktuAtribut', '', '', '', '', '', '')"); //akhir dari pengumpulan data //#7# Lakukan perhitungan entropy // perhitungan entropy $sqlEntropy = mysql_query("SELECT id, jml_kasus_total, jml_kasus_tepat_waktu, jml_kasus_tidak_tepat_waktu FROM mining_c45"); while($rowEntropy = mysql_fetch_array($sqlEntropy)) { $getJumlahKasusTotalEntropy = $rowEntropy['jml_kasus_total']; $getJumlahKasusTepatWaktuEntropy = $rowEntropy['jml_kasus_tepat_waktu']; $getJumlahKasusTidakTepatWaktuEntropy = $rowEntropy['jml_kasus_tidak_tepat_waktu']; $idEntropy = $rowEntropy['id']; // jika jml kasus = 0 maka entropy = 0 if ($getJumlahKasusTotalEntropy == 0 OR $getJumlahKasusTepatWaktuEntropy == 0 OR $getJumlahKasusTidakTepatWaktuEntropy == 0) { $getEntropy = 0; // jika jml kasus Tepat Waktu = jml kasus Tidak Tepat Waktu, maka entropy = 1 } else if ($getJumlahKasusTepatWaktuEntropy == $getJumlahKasusTidakTepatWaktuEntropy) { $getEntropy = 1; } else { // jika jml kasus != 0, maka hitung rumus entropy: $perbandingan_tepat_waktu = $getJumlahKasusTepatWaktuEntropy / $getJumlahKasusTotalEntropy; $perbandingantidak_tepat_waktu = $getJumlahKasusTidakTepatWaktuEntropy / $getJumlahKasusTotalEntropy; $rumusEntropy = (-($perbandingan_tepat_waktu) * log($perbandingan_tepat_waktu,2)) + (-($perbandingantidak_tepat_waktu) * log($perbandingantidak_tepat_waktu,2)); $getEntropy = round($rumusEntropy,4); // 4 angka di belakang koma } //#8# Update nilai entropy // update nilai entropy mysql_query("UPDATE mining_c45 SET entropy = $getEntropy WHERE id = $idEntropy"); }

Page 128: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

//#9# Lakukan perhitungan information gain // perhitungan information gain // ambil nilai entropy dari total (jumlah kasus total) $sqlJumlahKasusTotalInfGain = mysql_query("SELECT jml_kasus_total, entropy FROM mining_c45 WHERE atribut = 'Total'"); $rowJumlahKasusTotalInfGain = mysql_fetch_array($sqlJumlahKasusTotalInfGain); $getJumlahKasusTotalInfGain = $rowJumlahKasusTotalInfGain['jml_kasus_total']; // rumus information gain $getInfGain = (-(($getJumlahKasusTotalEntropy / $getJumlahKasusTotalInfGain) * ($getEntropy))); //#10# Update information gain tiap nilai atribut (temporary) // update inf_gain_temp (utk mencari nilai masing2 atribut) mysql_query("UPDATE mining_c45 SET inf_gain_temp = $getInfGain WHERE id = $idEntropy"); $getEntropy = $rowJumlahKasusTotalInfGain['entropy']; // jumlahkan masing2 inf_gain_temp atribut $sqlAtributInfGain = mysql_query("SELECT SUM(inf_gain_temp) as inf_gain FROM mining_c45 WHERE atribut = '$getAtribut'"); while ($rowAtributInfGain = mysql_fetch_array($sqlAtributInfGain)) { $getAtributInfGain = $rowAtributInfGain['inf_gain']; // hitung inf gain $getInfGainFix = round(($getEntropy + $getAtributInfGain),4); //#11# Looping perhitungan information gain, sehingga mendapatkan information gain tiap atribut. Update information gain // update inf_gain (fix) mysql_query("UPDATE mining_c45 SET inf_gain = $getInfGainFix WHERE atribut = '$getAtribut'"); } //#12# Lakukan perhitungan split info // rumus split info $getSplitInfo = (($getJumlahKasusTotalEntropy / $getJumlahKasusTotalInfGain) * (log(($getJumlahKasusTotalEntropy / $getJumlahKasusTotalInfGain),2))); //#13# Update split info tiap nilai atribut (temporary) // update split_info_temp (utk mencari nilai masing2 atribut) mysql_query("UPDATE mining_c45 SET split_info_temp = $getSplitInfo WHERE id = $idEntropy"); // jumlahkan masing2 split_info_temp dari tiap atribut $sqlAtributSplitInfo = mysql_query("SELECT SUM(split_info_temp) as split_info FROM mining_c45 WHERE atribut = '$getAtribut'");

Page 129: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

while ($rowAtributSplitInfo = mysql_fetch_array($sqlAtributSplitInfo)){ $getAtributSplitInfo = $rowAtributSplitInfo['split_info']; // split info fix (4 angka di belakang koma) $getSplitInfoFix = -(round($getAtributSplitInfo,4)); //#14# Looping perhitungan split info, sehingga mendapatkan information gain tiap atribut. Update information gain // update split info (fix) mysql_query("UPDATE mining_c45 SET split_info = $getSplitInfoFix WHERE atribut = '$getAtribut'"); } } // #15 //#15# Lakukan perhitungan gain ratio $sqlGainRatio = mysql_query("SELECT id, inf_gain, split_info FROM mining_c45"); while($rowGainRatio = mysql_fetch_array($sqlGainRatio)) { $idGainRatio = $rowGainRatio['id']; // jika nilai inf gain == 0 dan split info == 0, maka gain ratio = 0 if ($rowGainRatio['inf_gain'] == 0 AND $rowGainRatio['split_info'] == 0){ $getGainRatio = 0; } else { // rumus gain ratio $getGainRatio = round(($rowGainRatio['inf_gain'] / $rowGainRatio['split_info']),4); } //#16# Update gain ratio dari setiap atribut mysql_query("UPDATE mining_c45 SET gain_ratio = $getGainRatio WHERE id = '$idGainRatio'"); } } } } //#17# Insert atribut dgn information gain max ke DB pohon keputusan function insertAtributPohonKeputusan($atribut, $nilai_atribut) { // ambil nilai inf gain tertinggi dimana hanTepatWaktu 1 atribut saja yg dipilih $sqlInfGainMaxTemp = mysql_query("SELECT distinct atribut, gain_ratio FROM mining_c45 WHERE

Page 130: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

gain_ratio in (SELECT max(gain_ratio) FROM `mining_c45`) LIMIT 1"); $rowInfGainMaxTemp = mysql_fetch_array($sqlInfGainMaxTemp); } ?> function/kinerjac45.php <?php include "../../../config/koneksi.php"; mysql_query("TRUNCATE data_keputusan_kinerja"); $arrayPerbandingan = array(); // buat array baru // ambil data Mahasiswa $sqlDataTesting = mysql_query("SELECT * FROM data_kasus where status_data = 'Data Training'"); while($rowDataTesting = mysql_fetch_array($sqlDataTesting)) { if (!empty($rowDataTesting)) { // masukkan tiap nilai atribut data Mahasiswa pada array $array['id_data_mahasiswa'] = $rowDataTesting['id_data_mahasiswa']; $array['class'] = $rowDataTesting['class']; $arrayPerbandingan[] = $array; } } foreach ($arrayPerbandingan as $atribut) { // ambil atribut dan panggil fungsi penentuKeputusan() penentuKeputusan($atribut); } function penentuKeputusan($atribut) { mysql_query("TRUNCATE data_penentu_keputusan"); // buat variabel baru dan masukkan masing-masing atribut $id_data_mahasiswa = "$atribut[id_data_mahasiswa]"; $sqlDataMahasiswa = mysql_query("SELECT * FROM data_kasus WHERE id_data_mahasiswa = '$id_data_mahasiswa'"); $rowDataMahasiswa = mysql_fetch_array($sqlDataMahasiswa); $nim = $rowDataMahasiswa['nim']; $nama = $rowDataMahasiswa['nama']; //$jenis_kelamin = $rowDataMahasiswa['jenis_kelamin']; $jurusan = $rowDataMahasiswa['jurusan'];

Page 131: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$nilai_ips1 = $rowDataMahasiswa['nilai_ips1']; $nilai_ips1_kategori = $rowDataMahasiswa['nilai_ips1_kategori']; $nilai_ips2 = $rowDataMahasiswa['nilai_ips2']; $nilai_ips2_kategori = $rowDataMahasiswa['nilai_ips2_kategori']; $nilai_ips3 = $rowDataMahasiswa['nilai_ips3']; $nilai_ips3_kategori = $rowDataMahasiswa['nilai_ips3_kategori']; $nilai_ips4 = $rowDataMahasiswa['nilai_ips4']; $nilai_ips4_kategori = $rowDataMahasiswa['nilai_ips4_kategori']; /* $nilai_ips5 = $rowDataMahasiswa['nilai_ips5']; $nilai_ips5_kategori = $rowDataMahasiswa['nilai_ips5_kategori']; $nilai_ips6 = $rowDataMahasiswa['nilai_ips6']; $nilai_ips6_kategori = $rowDataMahasiswa['nilai_ips6_kategori']; $nilai_ips7 = $rowDataMahasiswa['nilai_ips7']; $nilai_ips7_kategori = $rowDataMahasiswa['nilai_ips7_kategori']; $nilai_ips8 = $rowDataMahasiswa['nilai_ips8']; $nilai_ips8_kategori = $rowDataMahasiswa['nilai_ips8_kategori']; */ $class = $atribut['class']; //"jenis_kelamin" => "$jenis_kelamin", // masukkan variabel pada array $array2 = array( "jurusan" => "$jurusan", "nilai_ips1_kategori" => "$nilai_ips1_kategori", "nilai_ips2_kategori" => "$nilai_ips2_kategori", "nilai_ips3_kategori" => "$nilai_ips3_kategori", "nilai_ips4_kategori" => "$nilai_ips4_kategori" /* "nilai_ips5_kategori" => "$nilai_ips5_kategori", "nilai_ips6_kategori" => "$nilai_ips6_kategori", "nilai_ips7_kategori" => "$nilai_ips7_kategori", "nilai_ips8_kategori" => "$nilai_ips8_kategori" */ ); // ambil atribut yang ada di pohon $sqlSelectDistinctAtribut = mysql_query("SELECT distinct atribut FROM pohon_keputusan_c45"); while($rowSelectDistinctAtribut = mysql_fetch_array($sqlSelectDistinctAtribut)) { if (!empty($rowSelectDistinctAtribut)) { foreach ($array2 as $atribut_array => $nilai_atribut_array) { // jika atribut pada pohon sama dgn atribut yg ada di array (atribut yg di post-kan) maka insert atribut dan nilai atribut pada db if ($rowSelectDistinctAtribut['atribut'] == $atribut_array) { mysql_query("INSERT INTO data_penentu_keputusan VALUES('', '$atribut_array', '$nilai_atribut_array')");

Page 132: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} } } } $arrayPenentuKeputusan = array(); // buat array baru // ambil atribut dan nilai atribut pada db data penentu keputusan $sqlDataPenentuKeputusan = mysql_query("SELECT * FROM data_penentu_keputusan"); while($rowDataPenentuKeputusan = mysql_fetch_array($sqlDataPenentuKeputusan)) { $sqlRulePenentuKeputusan = mysql_query("SELECT * FROM rule_penentu_keputusan where pohon = 'C45'"); while($rowRulePenentuKeputusan = mysql_fetch_array($sqlRulePenentuKeputusan)) { if (!empty($rowRulePenentuKeputusan)) { // jika atribut pada db data_penentu_keputusan sama dengan atribut pada db rule_penentu_keputusan if ($rowRulePenentuKeputusan['atribut'] == $rowDataPenentuKeputusan['atribut']) { // jika nilai atribut pada db data_penentu_keputusan sama dengan nilai atribut pada db rule_penentu_keputusan if ($rowRulePenentuKeputusan['nilai_atribut'] == $rowDataPenentuKeputusan['nilai_atribut']) { // set nilai id, cocok dan masukkan pada array $arrayPenentuKeputusanTemp['id'] = $rowRulePenentuKeputusan['id']; $arrayPenentuKeputusanTemp['cocok'] = "Ya"; $arrayPenentuKeputusan[] = $arrayPenentuKeputusanTemp; } elseif ($rowRulePenentuKeputusan['nilai_atribut'] !== $rowDataPenentuKeputusan['nilai_atribut']) { // set nilai id, cocok dan masukkan pada array $arrayPenentuKeputusanTemp['id'] = $rowRulePenentuKeputusan['id']; $arrayPenentuKeputusanTemp['cocok'] = "Tidak"; $arrayPenentuKeputusan[] = $arrayPenentuKeputusanTemp; } } } } } foreach ($arrayPenentuKeputusan as $arrayPenentuKeputusanUpdate) { // update nilai cocok dari array sebelumnya mysql_query("UPDATE rule_penentu_keputusan SET cocok = '$arrayPenentuKeputusanUpdate[cocok]' where id = $arrayPenentuKeputusanUpdate[id]"); }

Page 133: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

// queri utk mengambil keputusan dan id rule berdasarkan nilai atribut yg cocok (nilai atribut rule == nilai atribut yg dipost-kan) $sqlKeputusan = mysql_query("SELECT distinct id_rule, keputusan FROM `rule_penentu_keputusan` WHERE pohon = 'C45' AND cocok = 'Ya' and id_rule not in (select distinct id_rule from `rule_penentu_keputusan` where pohon = 'C45' AND cocok = 'Tidak')"); $rowKeputusan = mysql_fetch_array($sqlKeputusan); if (!empty($rowKeputusan)) { $keputusan = "$rowKeputusan[keputusan]"; $idRule = "$rowKeputusan[id_rule]"; // insert data keputusan pada db mysql_query("INSERT INTO data_keputusan_kinerja VALUES('', '$id_data_mahasiswa', '$class', '$keputusan', '$idRule') "); } } function/penentukeputusan.php <?php include "../../../config/koneksi.php"; mysql_query("TRUNCATE data_penentu_keputusan"); // buat variabel baru yg berisi data yg di post-kan $nim = $_POST['nim']; $nama = $_POST['nama']; $jenis_kelamin = $_POST['jenis_kelamin']; $jurusan = $_POST['jurusan']; $nilai_ips1 = $_POST['nilai_ips1']; $nilai_ips2 = $_POST['nilai_ips2']; $nilai_ips3 = $_POST['nilai_ips3']; $nilai_ips4 = $_POST['nilai_ips4']; if ($_POST['nilai_ips1'] >=0 AND $_POST['nilai_ips1'] <= 2.00) { $nilai_ips1_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips1'] >=2.00 AND $_POST['nilai_ips1'] <= 2.76) { $nilai_ips1_kategori = "Memuaskan"; } else if ($_POST['nilai_ips1'] >=2.76 AND $_POST['nilai_ips1'] <= 3.50) { $nilai_ips1_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips1'] >=3.51 AND $_POST['nilai_ips1'] <= 4.00) {

Page 134: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

$nilai_ips1_kategori = "Cumlaude"; } if ($_POST['nilai_ips2'] >=0 AND $_POST['nilai_ips2'] <= 2.00) { $nilai_ips2_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.00 AND $_POST['nilai_ips2'] <= 2.76) { $nilai_ips2_kategori = "Memuaskan"; } else if ($_POST['nilai_ips2'] >=2.76 AND $_POST['nilai_ips2'] <= 3.50) { $nilai_ips2_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips2'] >=3.51 AND $_POST['nilai_ips2'] <= 4.00) { $nilai_ips2_kategori = "Cumlaude"; } if ($_POST['nilai_ips3'] >=0 AND $_POST['nilai_ips3'] <= 2.00) { $nilai_ips3_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.00 AND $_POST['nilai_ips3'] <= 2.76) { $nilai_ips3_kategori = "Memuaskan"; } else if ($_POST['nilai_ips3'] >=2.76 AND $_POST['nilai_ips3'] <= 3.50) { $nilai_ips3_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips3'] >=3.51 AND $_POST['nilai_ips3'] <= 4.00) { $nilai_ips3_kategori = "Cumlaude"; } if ($_POST['nilai_ips4'] >=0 AND $_POST['nilai_ips4'] <= 2.00) { $nilai_ips4_kategori = "Kurang Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.00 AND $_POST['nilai_ips4'] <= 2.76) { $nilai_ips4_kategori = "Memuaskan"; } else if ($_POST['nilai_ips4'] >=2.76 AND $_POST['nilai_ips4'] <= 3.50) { $nilai_ips4_kategori = "Sangat Memuaskan"; } else if ($_POST['nilai_ips4'] >=3.51 AND $_POST['nilai_ips4'] <= 4.00) { $nilai_ips4_kategori = "Cumlaude"; } //"jenis_kelamin" => "$jenis_kelamin", // masukkan variabel pada array $array2 = array( "jurusan" => "$jurusan", "nilai_ips1_kategori" => "$nilai_ips1_kategori", "nilai_ips2_kategori" => "$nilai_ips2_kategori", "nilai_ips3_kategori" => "$nilai_ips3_kategori",

Page 135: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

"nilai_ips4_kategori" => "$nilai_ips4_kategori", ); $sqlSelectDistinctAtribut = mysql_query("SELECT distinct atribut FROM pohon_keputusan_c45"); while($rowSelectDistinctAtribut = mysql_fetch_array($sqlSelectDistinctAtribut)) { if (!empty($rowSelectDistinctAtribut)) { foreach ($array2 as $atribut_array => $nilai_atribut_array) { // jika atribut pada pohon sama dgn atribut yg ada di array (atribut yg di post-kan) maka insert atribut dan nilai atribut pada db if ($rowSelectDistinctAtribut['atribut'] == $atribut_array) { mysql_query("INSERT INTO data_penentu_keputusan VALUES('', '$atribut_array', '$nilai_atribut_array')"); } } } } $arrayPenentuKeputusan = array(); // buat array baru // ambil atribut dan nilai atribut pada db data penentu keputusan $sqlDataPenentuKeputusan = mysql_query("SELECT atribut, nilai_atribut FROM data_penentu_keputusan"); while($rowDataPenentuKeputusan = mysql_fetch_array($sqlDataPenentuKeputusan)) { // ambil atribut dan nilai atribut pada db rule_penentu_keputusan $sqlRulePenentuKeputusan = mysql_query("SELECT id, atribut, nilai_atribut FROM rule_penentu_keputusan where pohon = 'C45'"); while($rowRulePenentuKeputusan = mysql_fetch_array($sqlRulePenentuKeputusan)) { if (!empty($rowRulePenentuKeputusan)) { // jika atribut pada db data_penentu_keputusan sama dengan atribut pada db rule_penentu_keputusan if ($rowRulePenentuKeputusan['atribut'] == $rowDataPenentuKeputusan['atribut']) { // jika nilai atribut pada db data_penentu_keputusan sama dengan nilai atribut pada db rule_penentu_keputusan if ($rowRulePenentuKeputusan['nilai_atribut'] == $rowDataPenentuKeputusan['nilai_atribut']) { // set nilai id, cocok dan masukkan pada array $arrayPenentuKeputusanTemp['id'] = $rowRulePenentuKeputusan['id']; $arrayPenentuKeputusanTemp['cocok'] = "Ya"; $arrayPenentuKeputusan[] = $arrayPenentuKeputusanTemp; } elseif ($rowRulePenentuKeputusan['nilai_atribut'] !== $rowDataPenentuKeputusan['nilai_atribut']) { // set nilai id, cocok dan masukkan pada array $arrayPenentuKeputusanTemp['id'] = $rowRulePenentuKeputusan['id']; $arrayPenentuKeputusanTemp['cocok'] = "Tidak"; $arrayPenentuKeputusan[] = $arrayPenentuKeputusanTemp;

Page 136: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

} } } } } foreach ($arrayPenentuKeputusan as $arrayPenentuKeputusanUpdate) { // update nilai cocok dari array sebelumnya mysql_query("UPDATE rule_penentu_keputusan SET cocok = '$arrayPenentuKeputusanUpdate[cocok]' where id = $arrayPenentuKeputusanUpdate[id]"); } // queri utk mengambil keputusan dan id rule berdasarkan nilai atribut yg cocok (nilai atribut rule == nilai atribut yg dipost-kan) $sqlKeputusan = mysql_query("SELECT distinct id_rule, keputusan FROM `rule_penentu_keputusan` WHERE pohon = 'C45' AND cocok = 'Ya' and id_rule not in (select distinct id_rule from `rule_penentu_keputusan` where pohon = 'C45' AND cocok = 'Tidak')"); $rowKeputusan = mysql_fetch_array($sqlKeputusan); if (!empty($rowKeputusan)) { $keputusan = "$rowKeputusan[keputusan]"; $idRule = "$rowKeputusan[id_rule]"; // insert data keputusan pada db mysql_query("INSERT INTO data_keputusan VALUES('', '$nim', '$nama', '$jenis_kelamin', '$jurusan', '$nilai_ips1', '$nilai_ips1_kategori', '$nilai_ips2', '$nilai_ips2_kategori', '$nilai_ips3', '$nilai_ips3_kategori', '$nilai_ips4', '$nilai_ips4_kategori', '$keputusan', '$idRule') "); } $w=isset($keputusan);

Page 137: PERANCANGAN DAN PEMBUATAN APLIKASI DATAMINING BERBASIS WEB MENGGUNAKAN ALGORITMA C4.5 UNTUK MEMPREDIKSI KELULUSAN MAHASISWA S-1 PADA UNIVERSITAS DARMA PERSADA

echo "<script>alert('Data berhasil diinput! Keputusan yang dihasilkan adalah : $keputusan'); document.location.href='../../media.php?module=penentu_keputusan';</script>";