Anda di halaman 1dari 29

PROPOSAL TUGAS AKHIR

PERANCANGAN DAN IMPLEMENTASI SISTEM UNTUK


MEMPREDIKSI MASA STUDI MAHASISWA MENGGUNAKAN
ALGORITMA DECISION TREE C4.5

KOMPETENSI RPL

KADEK DWI PRASEPTIA PUTRA


NIM. 1008605056

PROGRAM STUDI TEKNIK INFORMATIKA


JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS UDAYANA
BUKIT JIMBARAN
2014

LEMBAR PERSETUJUAN UJIAN PROPOSALTUGASAKHIR

Judul Skripsi

: Perancangan Dan Implementasi Sistem Untuk Memprediksi


Masa Studi Mahasiswa Menggunakan Algoritma Decision
Tree C4.5

Kompetensi

: Rekayasa Perangkat Lunak

Nama

: Kadek Dwi Praseptia Putra

NIM

: 1008605056

Tanggal disetujui : 21/04/2014

Disetujui oleh :

Reviewer I

Reviewer II

I. B. Gede Dwidasmara, S.Kom., M.Cs.

I Gede Santi Astawa, S.T., M.Cs.

NIP. 198503152010121007

NIP. 198012062006041003

Mengetahui,
Komisi Seminar dan Tugas Akhir
Jurusan Ilmu Komputer FMIPA UNUD
Ketua,

Ida Bagus Gede Dwidasmara, S.Kom., M.Cs.


NIP. 198503152010121007

ii

KATA PENGANTAR
Proposal penelitian dengan judul Perancangan Dan Implementasi Sistem
Untuk Memprediksi Masa Studi Mahasiswa Menggunakan Algoritma Decision
Tree C4.5 ini disusun dalam rangkaian kegiatan pelaksanaan Tugas Akhir di
Jurusan Ilmu Komputer FMIPA UNUD. Sehubung dengan telah terselesaikannya
proposal ini, maka diucapkan terima kasih dan penghargaan kepada berbagai
pihak yang telah membantu pengusul, antara lain:
1.

Bapak Ida Bagus Gede Dwidasmara, S.Kom., M.Cs.sebagai reviewer 1


yang telah bersedia mengkritisi, membantu dan memeriksa serta
menyempurnakan proposal ini.

2.

Bapak I Gede Santi Astawa, S.T., M.Cs sebagai reviewer 2 yang telah
bersedia mengkritisi, membantu dan memeriksa serta menyempurnakan
proposal ini.

3.

Bapak-bapak dan ibu-ibu dosen di Jurusan Ilmu Komputer yang telah


meluangkan waktu turut memberikan saran dan masukan dalam
penyempurnaan proposal ini.

4.

Komisi Tugas Akhir Jurusan Ilmu Komputer FMIPA UNUD, yang telah
memberikan petunjuk dalam penyusunan proposal tugas akhir ini.

5.

Rekan-rekan mahasiswa yang telah memberi dukungan, motivasi,


semangat dan kerja sama dalam pembuatan proposal tugas akhir ini.

6.

Keluarga dan kerabat serta semua pihak yang turut serta memberi
dukungan sehingga laporan ini dapat diselesaikan sesuai dengan waktu
yang ditentukan.

Penulis menyadari bahwa tugas akhir ini masih belum sempurna, untuk itu
kritik dan saran yang bermanfaat demi kesempurnaan tugas akhir ini sangat
penulis harapkan.
Denpasar,April 2014

Penulis

iii

DAFTAR ISI

LEMBAR PERSETUJUAN UJIAN PROPOSALTUGASAKHIR ....................... ii


KATA PENGANTAR ........................................................................................... iii
DAFTAR ISI .......................................................................................................... iv
DAFTAR GAMBAR ............................................................................................. vi
DAFTAR TABEL ................................................................................................. vii
1.

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

2.

Rumusan Masalah ........................................................................................ 2

3.

Tujuan Penelitian ......................................................................................... 3

4.

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

5.

Manfaat Penelitian ....................................................................................... 3

6.

Tinjauan Pustaka .......................................................................................... 3

7.

6.1

Data Mining .......................................................................................... 3

6.2

Klasifikasi ............................................................................................. 4

6.3

Decision Tree (Pohon Keputusan) ........................................................ 4

6.4

Algoritma C4.5 ..................................................................................... 5

6.5

Deteksi Outlier ...................................................................................... 6

6.6

Local Outlier Factor (LOF)................................................................... 6

6.7

Metode Pengembangan Perangkat Lunak............................................. 7

6.8

Waterfall ............................................................................................... 7

6.9

Entropy.................................................................................................. 9

6.10

Information GAIN ................................................................................ 9

6.11

Confusion Matrix .................................................................................. 9

6.12

Tinjauan Studi ..................................................................................... 10

Metodologi Penelitian ................................................................................ 12


7.1.

Desain Penelitian ................................................................................ 12

7.2.

Pengumpulan Data .............................................................................. 13

7.3.

Pengolahan Data Awal........................................................................ 14

7.3.1
7.4.

Data Cleaning .............................................................................. 14

Metode yang Digunakan ..................................................................... 14

7.4.1.

Perhitungan Entropy .................................................................... 14

iv

7.4.2.

Perhitungan GAIN ....................................................................... 15

7.4.3.

Model Pengembangan Perangkat Lunak Waterfall ..................... 15

7.5.
8.

Evaluasi dan Validasi Hasil ................................................................ 16

Jadwal Pelaksanaan Penelitian ................................................................... 19

DAFTAR PUSTAKA ........................................................................................... 21

DAFTAR GAMBAR

Gambar 1 The Waterfall Model .............................................................................. 8

vi

DAFTAR TABEL

Tabel 1 Perbedaan dengan Penelitian Sebelumnya ............................................... 11


Tabel 2 Atribut yang Digunakan pada Sistem ...................................................... 13
Tabel 3 Contoh Pengujian Fungsional Sistem ...................................................... 17
Tabel 4 Hubungan Cyclomatic Complexity dan Resiko dari Suatu Prosedur ...... 18
Tabel 5 Pengujian Unit Testing ............................................................................ 19

vii

1.

Latar Belakang
Kemampuan mahasiswa untuk menyelesaikan masa studi tepat waktu

merupakan salah satu faktor yang menentukan kualitas perguruan tinggi dan juga
merupakan salah satu elemen penilaian akreditasi universitas (Buku VI Matriks
Penilaian Instrumen Akreditasi Program Studi Badan Akreditasi Nasional
Perguruan Tinggi, 2008). Data dari Pusat Statistik Pendidikan Badan Penelitian
dan Pengembangan Departemen Pendidikan Nasional Republik Indonesia pada
tahun akademik 2001/2002 sampai dengan 2009/2010 menunjukkan bahwa
perguruan tinggi menerima rata-rata sebanyak 868.050 mahasiswa baru dan
meluluskan rata-rata 451.168 mahasiswa setiap tahunnya yaitu hanya mencapai
51,97% dari jumlah mahasiswa baru setiap tahun, artinya terdapat 48,03%
mahasiswa yang tidak diketahui status studinya dari jumlah mahasiswa baru setiap
tahunnya. Ketika masuk ke dalam perguruan tinggi seorang mahasiswa memiliki
masa studi program sarjana sekurang-kurangnya 144 SKS dan sebanyakbanyaknya 160 SKS yang dijadwalkan untuk 8 Semester dan dapat ditempuh
dalam waktu kurang dari 8 semester dan selama-lamanya 14 semester setelah
pendidikan menengah (Direktorat Jenderal Pendidikan Tinggi, 2000). Mahasiswa
yang menempuh pendidikan sarjana yang lebih dari 8 semester atau hingga 14
semester sudah tergolong mahasiswa yang menempuh masa studi yang lama.
Untuk menghindari bertambahnya jumlah mahasiswa yang menempuh
masa studi yang lama, maka diperlukannya suatu sistem untuk memprediksi masa
studi dari mahasiswa dari semester yang masih awal. Sistem ini juga berguna
untuk memberi motivasi dan refleksi bagi mahasiswa untuk dapat mencapai masa
lulus yang lebih baik. Dalam perkembangannya terdapat banyak model prediksi
yang tersedia dengan berbagai pendekatan untuk memprediksi kinerja mahasiswa,
tetapi tidak ada kepastian apakah ada model prediksi yang akurat untuk
menentukan masa studi dari mahasiswa. Klasifikasi juga dapat digunakan sebagi
model untuk memprediksi jika hasil dari model digunakan dalam dataset yang
baru (Tan, Steinbach, & Kumar, 2006). Terdapat berbagai jenis algoritma untuk
melakukan klasifikasi seperti contoh di atas dan juga untuk mengklasifikasikan
masa studi mahasiswa. Beberapa jenis algoritma tersebut seperti Decision Tree,
Nave Bayes, dan Neural Network. Menurut penelitian yang dilakukan oleh Abeer

Badr El Din Ahmed tentang Using Data Mining Technique to Analyze Student's
Performance algoritma C4.5 memberikan akurasi yang lebih baik daripada ID3
dan REPTree, serta algoritma C4.5 memberikan hasil yang lebih cepat dan
decision tree yang lebih baik daripada ID3 dan REPTree (Ahmed & Elaraby).
Menurut penelitian yang dilakukan oleh Khafiizh Hastuti tentang

Analisis

Komparasi Algoritma Klasifikasi Data Mining Untuk Prediksi Mahasiswa Non


Aktif algoritma C4.5 merupakan algoritma yang paling akurat dibandingkan
dengan Logistic Regression, Nave Bayes dan Neural Networks (Hastuti, 2012).
Menurut penelitian yang dilakukan oleh Kalpesh Adhatrao tentang Predicting
Students Performance Using ID3 And C4.5 Classification Algorithms algoritma
C4.5 memberikan hasil eksekusi yang lebih cepat dibandingkan dengan algoritma
ID3 (Adhatrao, Gaykar, Dhawan, Jha, & Honrao, 2013).
Algoritma decision tree memiliki kemampuan untuk mengklasifikasikan
objek dengan cepat, mudah diimplementasikan, serta dapat digunakan untuk data
yang bersifat diskrit maupun kontinu, sehingga karena data yang digunakan untuk
penelitian ini sebagian besar merupakan data yang bersifat kontinu maka
digunakanlah algoritma Decision Tree C4.5. Pada penelitian ini akan diterapkan
algoritma klasifikasi Decision Tree C4.5 untuk memprediksi masa studi
mahasiswa apakah tepat waktu atau tidak tepat waktu.

2.

Rumusan Masalah
Adapun permasalahan yang akan dibahas dalam proposal ini adalah

sebagai berikut :
1. Bagaimana merancang dan membangun sistem untuk memprediksi
masa studi seorang mahasiswa ?
2. Apakah algoritma Decision Tree C4.5 dapat membantu memprediksi
masa studi seorang mahasiswa ?

3.

Tujuan Penelitian
Adapun tujuan penelitian yang dibahas dalam proposal ini adalah sebagai

berikut :
1. Membuat rancang bangun sistem untuk memprediksi masa studi
seorang mahasiswa dengan algoritma Decision Tree C4.5
2. Mengetahui akurasi algoritma Decision Tree C4.5 untuk memprediksi
masa studi seorang mahasiswa.

4.

Batasan Masalah
Adapun batasan masalah yang dibahas dalam proposal ini adalah sebagai

berikut :
1. Pengolahan basis data menggunakan SQLyog.
2. Data nilai yang digunakan yaitu dari semester 1 hingga semeter 4

5.

Manfaat Penelitian
Adapun manfaat yang nantinya diharapkan dari penelitian ini adalah

sebagai berikut :
a. Bagi penulis
Hasil penelitian ini diharapkan dapat menambah wawasan dan
menjawab keingintahuan penulis terhadap masalah yang penulis teliti
sehingga penulis dapat lebih memahami penerapannya.
b. Bagi pihak lain
Hasil penelitian diharapkan dapat digunakan sebagai salah satu cara
alternatif untuk memprediksi masa studi seorang mahasiswa

6.

Tinjauan Pustaka

6.1

Data Mining
Data mining adalah proses pencarian atau penemuan secara otomatis dari

informasi yang berguna pada penyimpanan data yang besar (Tan, Steinbach, &
Kumar, 2006). Data mining juga melayani atau memiliki kemampuan
memprediksi hasil dari sebuah pengamatan. Secara garis besar tugas data mining
ada dua kategori, yaitu :

1.

Memprediksikan
Pada bagian ini, tugasnya adalah memprediksi nilai hasil dari

atribut-atribut pada fakta yang ada berdasarkan nilai-nilai dari atribut yang
lain. Atribut yang diprediksi biasanya berupa target atau tujuan atau
variabel ketergantungan, sementara yang digunakan untuk memprediksi
adalah penjelasan-penjelasan atau variabel bebas.
2.

Mendeskripsikan
Tujuan

tugas

ini

untuk

mendapatkan

pola

(korelasi,

kecenderungan, pengelompokan, pembagian, dan penyimpangan) yang


dirangkum pada relasi antar data.

6.2

Klasifikasi
Klasifikasi adalah sebuah metode yang digunakan untuk mempelajari

suatu fungsi target f yang di mana fungsi tersebut berguna untuk memetakan suatu
atribut x ke sebuah class label y yang belum didefinisikan (Tan, Steinbach, &
Kumar, 2006). Fungsi target tersebut biasanya disebut sebagai classification
model. Classification model tersebut sangat berguna untuk hal berikut ini, yaitu :
a.

Descriptive Modeling. Classification model dapat disajikan sebagai


alat untuk mendeskripsikan suatu objek agar dapat membedakan
apakah objek tersebut berada dalam class yang berbeda atau tidak.
Contohnya mengkategorikan hewan mamalia atau bukan dilihat dari
atribut setiap data set yang diberikan.

b.

Predictive Modelling. Classification model dapat digunakan untuk


memprediksi label dari suatu class dari record yang tidak diketahui.
Sehingga dari record yang tidak diketahui tersebut kita dapat
memprediksi record tersebut masuk ke dalam class yang mana.

Teknik

classification

sangatlah

cocok

untuk

memprediksi

atau

mendeskripsikan data set dengan kategori biner atau nominal.

6.3

Decision Tree (Pohon Keputusan)


Decision

Tree

adalah

pendekatan

sistematis

untuk

membangun

classification model dari data set yang ada (Tan, Steinbach, & Kumar, 2006).

Decision Tree yang memiliki struktur seperti hirarki pada biasanya, yaitu
memiliki node (daun) dan edge (garis penghubung antar daun). Dalam Decision
Tree, terdapat tiga bentuk node, yaitu :
a.

Root node, yaitu node yang tidak memiliki edge yang menuju ke
dirinya sendiri dan bisa juga tidak memiliki edge yang menuju node
yang lainnya, namun bisa juga memiliki edge yang lebih dari satu
yang menuju node yang lainnya.

b.

Internal nodes, yaitu node yang hanya memiliki satu buah edge yang
menuju ke dirinya sendiri dan memiliki dua buah edge atau lebih yang
menuju node yang lainnya.

c.

Leaf atau terminal node, yaitu node yang memiliki satu buah edge
yang menuju ke dirinya sendiri namun tidak memiliki edge yang
menuju ke node yang lainnya.

Dalam Decision Tree, setiap daun atau node merepresentasikan class label.
Root dan internal node adalah atribut kondisi yang merepresentasikan jawaban
dari pertanyaan yang diberikan.

6.4

Algoritma C4.5
Banyak algotima yang dapat dipakai dalam pembentukan pohon keputusan

antara lain ID3, CART dan C4 (Larose, 2005). Algoritma C4.5 merupakan
pengembangan dari algoritma ID3. Algoritma C4.5 secara rekursif mengunjungi
masing-masing node keputusan, memilih split yang optimal, sampai tidak ada
split yang mungkin lebih lanjut. Kelebihan algoritma C4.5 yaitu menghasilkan
bentuk pohon yang bervariasi, tidak hanya berbentuk biner saja.
Secara umum algoritma C4.5 untuk membangun pohon keputusan adalah
sebagai berikut :

Untuk memilih atribut sebagai akar, didasarkan pada nilai GAIN tertinggi
dari atribut-atribut yang ada.

6.5

Deteksi Outlier
Sebuah sumber data atau dataset pada umumnya mempunyai nilai-nilai

pada setiap obyek yang tidak terlalu berbeda jauh dengan obyek lain (Handriyadi,
Bijaksana, & Setiawan, 2009). Akan tetapi terkadang pada data tersebut juga
ditemukan obyek-obyek yang mempunyai nilai atau sifat atau karakteristik yang
berbeda dibandingkan dengan obyek pada umumnya.
Deteksi oulier adalah suatu teknik untuk mencari obyek dimana obyek
tersebut mempunyai perilaku yang berbeda dibandingkan obyek-obyek pada
umumnya. Teknik data mining dapat digunakan untuk mendeteksi adanya suatu
outlier pada sebuah dataset. Teknik data mining yang diganakan adalah
Clustering-based, Distance-based dan Density-based.

6.6

Local Outlier Factor (LOF)


Metode density-based tidak secara eksplisit mengklasifikasikan sebuah

obyek adalah outlier atau bukan, akan tetapi lebih kepada pemberian nilai kepada
obyek sebagai derajat kekuatan obyek tersebut dapat dikategorikan sebagai outlier
6

(Handriyadi, Bijaksana, & Setiawan, 2009). Ukuran derajat kekuatan ini adalah
local outlier factor (LOF). Pendekatan untuk pencarian outlier ini hanya
membutuhkan satu parameter yaitu MinPts, dimana MinPts adalah jumlah
tetangga terdekat yang digunakan untuk mendefinisikan local neighborhood suatu
obyek. MinPts diasumsikan sebagai jangkauan dari nilai MinPtsLB dan
MinPtsUB. Nilai MinPtsLB dan MinPtsUB disarankan bernilai 10 dan 20.
Akhirnya semua obyek dalam dataset dihitung nilai LOFnya. Secara sederhana
algoritma LOF dapat dideskripsikan sebagai berikut:

6.7

1.

Menghitung jumlah tetangga terdekat

2.

Menghitung kepadatan lokal dari setiap obyek

3.

Menghitung LOF untuk setiap obyek data

4.

Me-maintain obyek-obyek data dengan nilai LOF yang tinggi

Metode Pengembangan Perangkat Lunak


Pada rekayasa perangkat lunak, banyak model yang telah dikembangkan

untuk membantu proses pengembangan perangkat lunak (Sommerville, 2011).


Model-model ini pada umumnya mengacu pada model proses pengembangan
sistem yang disebut System Development Life Cycle (SDLC). Ada banyak model
pengembangan perangkat lunak, antara lain The Waterfall Model, Joint
Application

Development

(JAD),

Information

Engineering

(IE),

Rapid

Application Development (RAD) termasuk di dalamnya Prototyping, Unified


Process (UP), Structural Analysis and Design (SAD) dan Framework for the
Application of System thinking (FAST). Pada buku ini akan dibahas tiga model
pengembangan yaitu The Waterfall Model, Prototyping, dan Unified Processs
(UP).

6.8

Waterfall
Model siklus hidup (life cycle model) adalah model utama dan dasar dari

banyak model. Salah satu model yang cukup dikenal dalam dunia rekayasa
perangkat lunak adalah The Waterfall Model (Sommerville, 2011). Ada 5 tahapan
utama dalam The Waterfall Model seperti terlihat pada gambar di bawah :

Gambar 1 The Waterfall Model

Berikut merupakan penjelasan dari tahapan-tahapan pada metode


Waterfall ini :
a.

Definisi kebutuhan merupakan proses menganalisis kebutuhan dari


pengguna dengan melakukan konsultasi, kemudian didefinisikan
secara rinci yang berfungsi untuk spesifikasi sistem

b.

Desain sistem merupakan proses untuk menetapkan arsitektur


perangkat lunak, menggambarkan dasar dari perangkat lunak yang
akan di bangun

c.

Implementasi dan pengujian unit merupakan tahapan merubah


kebutuhan pengguna menjadi fungsi - fungsi dalam perangkat lunak,
serta melakukan pengujian dari setiap unit fungsi agar sesuai dengan
kebutuhan.

d.

Integrasi dan pengujian sistem merupakan penggabungan dari


seluruh fungsi yang

telah dibuat dan melakukan pengujian sistem

secara menyeluruh m setelah

pengujian perangkat lunak akan siap

disampaikan kepada pengguna


e.

Pemeliharaan merupakan tahapan dengan masa waktu paling lama,


karena akan melibatkan kesalahan - kesalahan yang tidak ditemukan
pada tahap awal.
8

Keuntungan dari model proses SDLC adalah dokumentasi dihasilkan pada


setiap tahapan, hal tersebut dapat berguna untuk model proses perangkat lunak
yang lain namun masalah utama dari model proses ini adalah tidak flexibel, pada
tahap awal semua kebutuhan harus diketahui secara jelas dan rinci, model proses
ini akan sulit untuk merespon perubahan dari kebutuhan perlanggan, model proses
SDLC baik digunakan ketika persyaratan dipahami dengan baik oleh pengembang
sistem.

6.9

Entropy
Sebuah pohon keputusan dibangun dari atas hingga bawah yaitu dari

simpul akar dan melibatkan partisi data menjadi himpunan bagian yang
mengandung kasus dengan nilai yang sama (homogen). Algoritma C4.5
menggunakan entropi untuk menghitung homogenitas sampel. Jika semua sampel
benar-benar homogen atau berasal dari satu class maka nilai entropi adalah nol
dan jika sampel terdistribusi sama rata antar semua class yang ada maka memiliki
nilai entropi satu (Tan, Steinbach, & Kumar, 2006).

6.10

Information GAIN
Information GAIN didasarkan pada penurunan entropi setelah dataset

dibagi pada atribut. Proses dalam membangun pohon keputusan yaitu menemukan
atribut yang mengembalikan information gain tertinggi (yaitu, cabang-cabang
yang paling homogen) (Tan, Steinbach, & Kumar, 2006).

6.11

Confusion Matrix
Confusion Matix menampilkan jumlah prediksi yang benar dan tidak benar

yang dibuat oleh model dibandingkan dengan klasifikasi yang sebenarnya dalam
data uji. Confusion Matrix memiliki dimensi sebesar n x n, di mana n adalah
jumlah kelas. Baris dalam Confusion Matrix menyajikan jumlah aktual dalam
klasifikasi data uji. Kolom dalam Confusion Matrix menyajikan jumlah klasifikasi
diprediksi dibuat oleh model (Tan, Steinbach, & Kumar, 2006).

6.12

Tinjauan Studi
Terdapat beberapa penelitian sebelumnya yang menggunakan algoritma

C4.5. Pada bagian ini peneliti akan membahas perbedaan penelitian ini dengan
tiga penelitian sebelumnya yang menggunakan algoritma C4.5.
1.

Predicting Students Performance Using ID3 And C4.5 Classification


Algorithms (Adhatrao, Gaykar, Dhawan, Jha, & Honrao, 2013)
Pada penelitian ini dilakukan metode klasifikasi untuk memprediksi

bagaimana kinerja akademik mahasiswa yang baru terdaftar pada waktu yang
mendatang. Sehingga sistem ini nantinya mampu mengidentifikasi mahasiswa
mana yang menjanjikan dan juga memberikan mereka kesempatan untuk
memperhatikan dan meningkatkan mahasiswa-mahasiswa yang mungkin akan
mendapatkan nilai yang lebih rendah. Atribut atau variabel yang digunakan pada
penelitian ini yaitu jenis kelamin, hasil nilai ujian dari 10 dan kelas 12, nilai dan
peringkat dari ujian masuk universitas, serta nilai dari tahun pertama mahasiswa
tersebut masuk universitas. Pada penelitian ini algoritma klasifikasi yang
digunakan yaitu ID3 dan C4.5 dan didapat dari hasil bahwa algoritma C4.5
memiliki waktu eksekusi algoritma yang lebih cepat dibandingkan dengan
algoritma ID3.
2.

Using Data Mining Technique to Analyze Student's Performance


(Ahmed & Elaraby)
Pada penelitian ini dilakukan metode klasifikasi untuk memprediksi

kinerja dari mahasiswa yang dibagi menjadi 5 class yang berbeda, yaitu apakah
mahasiswa tersebut memeliki kinerja Excellent, Very good, Good, Acceptable dan
Fail. Pada penelitian ini juga melakukan perbandingan 3 buah algoritma
klasifikasi yaitu ID3, C4.5 dan REPTree. Dari hasil penelitian didapat hasil
bahwa algoritma C4.5 memiliki akurasi dan kecepatan dalam membuat decision
tree yang lebih baik daripada kedua algoritma lainnya, serta algoritma C4.5
memiliki tingkat error yang lebih kecil dibandingkan dengan kedua algoritma
lainnya.
3.

Analisis Komparasi Algoritma Klasifikasi Data Mining untuk


Prediksi Mahasiswa Non Aktif (Hastuti, 2012)

10

Pada penelitian ini dilakukan metode klasifikasi untuk membandingkan


tingkat akurasi dari masing-masing algoritma. Algoritma yang digunakan adalah
Logistic Regression, Decision Tree C4.5, Nave Bayes dan Neural Network.
Selain itu penelitian ini juga dilakukan untuk memprediksi mahasiswa tersebut
tergolong aktif atau non aktif. Hasil dari proses klasifikasi dievaluasi dengan
menggunakan cross validation, confusion matrix, ROC Curve dan T-Test untuk
mengetahui algoritma klasifikasi data mining yang paling akurat untuk prediksi
mahasiswa non aktif. Dari hasil penelitian didapat bahwa algoritma decision tree
C4.5 memiliki akurasi yang paling tinggi.
Dari ketiga penelitian tersebut dapat diperoleh perbedaan antara ketiga
penelitian tersebut dengan penelitian yang ingin dilakukan saat ini.
Tabel 1 Perbedaan dengan Penelitian Sebelumnya

Tujuan

Penelitian
sekarang

Algorima

Output

Memprediksi masa Algoritma C4.5

< 4 tahun, = 4

studi

tahun, dan > 4

mahasiswa

apakah kurang atau


sama

dengan

tahun

tahun atau lebih


Penelitian oleh

Memprediksi

Adhatrao,

bagaimana

Gaykar, Dhawan,

akademik

Jha, & Honrao,

mahasiswa

2013)

Algoritma ID3 dan Pass dan fail


kinerja C4.5

yang

baru terdaftar pada


waktu

yang

mendatang
Penelitian

oleh Memprediksi

Ahmed & Elaraby kinerja

Algoritma

ID3, Excellent,

dari C4.5 dan REPTree

Very

mahasiswa

dan

Good,

perbandingan

tiga

Acceptable

buah metode

good,

dan Fail serta


akurasi,

11

kecepatan, dan
error rate dari
masingmasing
algoritma
Penelitian
Hastuti

oleh Membandingkan

Logistic

Akurasi

tingkat akurasi dari Regression,


masing-masing
algoritma

Decision

dari

masingTree masing

dan C4.5, Nave Bayes algoritma

memprediksi

dan

Neural serta

class

mahasiswa tersebut Network

aktif dan non

tergolong aktif atau

aktif

non aktif

7.

Metodologi Penelitian

7.1.

Desain Penelitian
Pada penelitian ini desain penelitian yang digunakan adalah desain

penelitian studi kasus karena studi kasus merupakan penelitian yang memusatkan
perhatian pada suatu kasus tertentu dengan menggunakan individu atau kelompok
sebagai bahan studinya (Hasibuan, 2007). Selain itu, penelitian ini berfokus untuk
mengumpulkan data-data terhadap objek yang diteliti untuk menjawab
permasalahan yang sedang terjadi dan juga untuk menguji teori terhadap suatu
permasalahan, sehingga bisa dikategorikan sebagai penelitian bertipe studi kasus.
Permasalahan

yang

nantinya

ingin

diselesaikan

yaitu

apakah

dengan

menggunakan algoritma Decision Tree C4.5 bisa digunakan untuk memprediksi


masa studi mahasiswa di Jurusan Ilmu Komputer Universitas Udayana. Sebelum
mengangkat penelitian ini peneliti terlebih dahulu mereview jurnal-jurnal yang
terkait atau yang mendukung tentang topik penelitian yang sama maupun
penelitian dengan metode yang sama atau komparasi metode. Sehingga dari hasil
review tersebut peneliti dapat mengangkat topik yang sesuai beserta metode yang
sesuai untuk memecahkan masalah dalam topik yang diangkat.

12

7.2.

Pengumpulan Data
Sesuai dengan jenis penelitian yang digunakan yaitu studi kasus, maka

data yang nantinya digunakan sebagai penelitian adalah data primer (Hasibuan,
2007). Namun pada penelitian ini diperlukan data primer ketika terdapat
kekurangan pada variabel atau atribut yang terdapat pada data sekunder yang telah
dikumpulkan. Jadi, pada penelitian ini peneliti sebagian besar menggunakan data
sekunder untuk mengumpulkan data, namun jika terdapat kekurangan variabel
atau atribut, peneliti menggunakan data primer yang dikumpulkan dengan
menggunakan kuesioner. Data sekunder yang nantinya dikumpulkan adalah data
mahasiswa dari tahun 2006 hingga tahun 2009 pada semester 1 hingga 4 di
Fakultas MIPA Universitas Udayana. Berikut merupakan atribut-atribut yang
akan digunakan pada penelitian ini yang diambil dari data mahasiswa pada
Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana.
Tabel 2 Atribut yang Digunakan pada Sistem

Nama Atribut

Nilai Atribut

Kosentrasi

Rekayasa Perangkat Lunak, Komputasi, Jaringan

Kategori

SNMPTN, PMDK

Masuk
Jumlah Cuti

Jumlah berapa kali mahasiswa melakukan cuti kuliah

Jumlah

Jumlah berapa kali mahasiswa mengulang mata kuliah

Mengulang
Jenis Kelamin

Laki-laki, Perempuan

IPS 1

Indeks Prestasi Semester 1

IPS 2

Indeks Prestasi Semester 2

IPS 3

Indeks Prestasi Semester 3

IPS 4

Indeks Prestasi Semester 4

SKS 1

Jumlah Satuan Kredit Semester yang diambil pada semester 1

SKS 2

Jumlah Satuan Kredit Semester yang diambil pada semester 2

SKS 3

Jumlah Satuan Kredit Semester yang diambil pada semester 3

SKS 4

Jumlah Satuan Kredit Semester yang diambil pada semester 4

13

7.3.

Pengolahan Data Awal


Untuk mendapatkan data yang sesuai dengan inputan pada sistem, data

tersebut terlebih dahulu diolah di awal (data preprocessing). Pengolahan data awal
diperlukan karena pada saat pengambilan data sekunder bisa saja terdapat data
yang hilang atau kosong, kekurangan atribut yang sesuai, atau berisi nilai yang
berbeda dalam suatu atribut (Han & Kamber, 2006). Pada penelitian ini teknikteknik data preprocessing yang digunakan yaitu data cleaning dan data reduction.
Berikut merupakan penjelasan dari masing-masing proses pengolahan data awal.

7.3.1 Data Cleaning


Untuk mendapatkan hasil klasifikasi yang akurat diperlukannya proses
data cleaning. Proses dari data cleaning pada penelitian ini yaitu mendeteksi dan
mengilangkan noise atau outlier, yaitu dengan menggunakan metode density
based yang dapat bekerja dengan baik dalam mencari outlier (Handriyadi,
Bijaksana, & Setiawan, 2009). Dalam metode density based ini nantinya
algoritma yang digunakan adalah algoritma Local Outlier Factor (LOF) (Breunig,
Kriegel, Ng, & Sander, 2000) untuk mendeteksi outlier lalu menghilangkan
outlier tersebut dengan cara tidak menggunakan data yang terdeksi sebagai outlier.

7.4.

Metode yang Digunakan


Metode yang digunakan dalam penelitian ini adalah metode klasifikasi

untuk menentukan masa studi mahasiswa dengan menggunakan algoritma C4.5.


Dalam algoritma C4.5 terdapat berbagai perhitungan di dalamnya, perhitunganperhitungan tersebut antara lain seperti perhitungan GAIN dan Entropy untuk
pemilihan urutan atribut yang sesuai sebagai akar atau cabang dari decision tree
(Han & Kamber, 2006).

7.4.1. Perhitungan Entropy


Perhitungan Entropy merupakan perhitungan untuk menentukan atribut
yang digunakan sebagai akar dari decision tree. Berikut merupakan rumus yang
digunakan untuk menghitung Entropy.
( )

..........................................................(1)

14

Dengan :
S

: Himpunan Kasus

: Fitur

Jumlah partisi S

pi

: Proporsi dari Si terhadap S

7.4.2. Perhitungan GAIN


Perhitungan GAIN merupakan kelanjutan dari perhitungan Entropy.
Berikut merupakan rumus yang digunakan untuk menghitung GAIN.
(

( )

| |

| |

( ) ...........................(2)

Dengan :
S

: Himpunan kasus

: Atribut

: Jumlah partisi atribut A

|Si|

: Jumlah kasus pada partisi ke i

|S|

: Jumlah kasus dalam S

7.4.3. Model Pengembangan Perangkat Lunak Waterfall


Dalam membangun sistem ini, model pengembangan perangkat lunak
yang digunakan yaitu model Waterfall (Sommerville, 2011). Dalam model
Waterfall ini terdapat 5 tahapan utama yang digunakan dalam penelitian yaitu :
1.

Definisi dan analisis kebutuhan, yaitu mencatat kebutuhan user,


kebutuhan

fungsional,

dan

kebutuhan

nonfungsional.

Untuk

kebutuhan user karena dalam sistem ini kebutuhan yang diperlukan


sudah jelas yaitu mengklasifikasikan masa studi mahasiswa, maka
sistem ini dapat langsung ditentukan pengerjaannya. Untuk kebutuhan
fungsional pada sistem ini nantinya terdiri dari kebutuhan-kebutuhan
seperti bagaimana sistem harus bereaksi terhadap inputan tertentu dan
bagaimana perilaku sistem pada situasi tertentu. Sedangkan untuk
kebutuhan non-fungsional pada sistem ini yaitu kebutuhan untuk
performa sistem.

15

2.

Desain sistem, pada proses ini peneliti merancang diagram aliran data
(DFD) pada sistem dari kebutuhan yang sudah ditentukan. Selain
diagram aliran data peneliti juga mendesain database dengan
menggunakan Entity Relationship Diagram (ERD) dan antarmuka
pada sistem.

3.

Implementasi

dan

pengujian

unit,

pada

proses

ini

peneliti

mengimplementasikan fungsi-fungsi yang ada pada sistem ke dalam


bahasa pemrograman PHP dengan menggunakan algoritma C4.5.
Setelah itu masing-masing fungsi diuji untuk mendapatkan output
yang sesuai.
4.

Integrasi dan pengujian sistem, pada proses ini setiap fungsi yang
telah diselesaikan diintegrasikan ke dalam sistem yang utuh, lalu dari
sistem yang utuh tersebut kembali diuji untuk mendapatkan output
yang sesuai. Pengujian sistem nantinya menggunakan teknik
pengujian Black Box Testing dan White Box Testing. Untuk Black
Box Testing yaitu Functional Testing dan Stress Testing (Williams,
2006). Untuk White Box Testing teknik pengujian yang dilakukan
menggunakan teknik Basis Path (Watson & McCabe, 1996) yang
termasuk ke dalam Unit Testing. Sedangkan untuk pengujian
algoritma menggunakan teknik Confusion Matriks.

5.

Pemeliharaan, pada proses ini jika masih terdapat kekurangan pada


sistem, maka peneliti kembali menganalisis kebutuhan tersebut.

7.5.

Evaluasi dan Validasi Hasil


Pada penelitian ini teknik pengujian sistem yang digunakan yaitu dengan

cara pengujian Black Box (Patton, 2006) yaitu pengujian Functional Testng dan
Stress Testing. Teknik pengujian Functional Testing menguji fungsi-fungsi
khusus dari sistem yang dirancang. Kebenaran fungsi-fungsi yang diuji nantinya
dilihat dari output yang dihasilkan dari proses pada fungsi tersebut tanpa melihat
source code dari fungsi tersebut. Dari hasil pengujian tersebut nantinya dapat
diketahui kesalahan-kesalahan pada fungsi dan bagaimana suatu program

16

memenuhi kebutuhan pemakai atau user. Berikut merupakan contoh tabel


pengujian Functional Testing.

Tabel 3 Contoh Pengujian Fungsional Sistem

Test ID

Deskripsi

Hasil

yang Hasil Aktual

Diharapkan

Kolom Test ID berisi ID dari kebutuhan fungsional yang akan diuji.


Kolom Deskripsi berisi serangkaian langkah-langkah atau masukan untuk
kondisi tertentu yang ingin diuji. Kolom Hasil yang Diharapkan adalah hasil
yang diharapkan untuk input atau output apakah sesuai dengan yang ada pada
kolom Deskripsi atau tidak. Pada kolom terakhir yaitu Hasil Aktual berisi
nilai setelah tes dijalankan. Pada kolom ini berisi nilai Pass dan Fail. Pass jika
Hasil yang diharapkan sesuai dengan output yang dihasilkan sistem.
Stress Testing adalah pengujian yang dilakukan untuk mengevaluasi
mampu atau tidak sebuah sistem atau komponen melampaui batas-batas
spesifikasi atau persyaratan. Dalam tahap ini Stressing Test dilakukan
menggunakan tool yaitu WAPT (Web Application Performance Tool). Dengan
tool ini dapat diukur jumlah maksimum user yang dapat mengakses web ini.
Parameter yang digunakan dalam tool ini yaitu jumlah user yang nantinya
diinginkan ketika mengakses suatu web. Setelah usernya ditentukan maka
menentukan durasi dari web tersebut diakses oleh jumlah user yang telah
ditentukan.
Setelah kedua pengujian Black Box dilakukan, selanjutnya dilakukan
pengujian

White

Box

dengan

menggunakan

Basis

Path.

Metode

ini

memungkinkan perancang Test case mendapatkan ukuran Cyclomatic Complexity


logical dari perancangan prosedural atau suatu fungsi pada program (Watson &
McCabe, 1996). Cyclomatix complexity V(G) untuk basis path dihitung dengan
rumus sebagai berikut :
( )

...................................................................................(3)
17

Dengan :
E = jumlah edge pada basis path
N = jumlah node pada basis path

Cyclomatic Complexity yang tinggi menunjukkan prosedur kompleks


yang sulit untuk dipahami, diuji dan dipelihara. Ada hubungan antara Cyclomatic
Complexity dan resiko dalam suatu prosedur. Berikut merupakan tabel hubungan
antara Cyclomatic Complexity dan resiko dalam suatu prosedur.
Tabel 4 Hubungan Cyclomatic Complexity dan Resiko dari Suatu Prosedur

Cyclomatic

Type of Procedure

Complexity

Risk

1-4

A simple procedure

Low

5-10

A well structured and stable procedure

Low

11-20

A more complex procedure

Moderate

21-50

A complex procedure, alarming

High

>50

An error-prone, extremely troublesome, untestable Very


procedure

high

Biasanya batas maksimum nilai yang dapat diterima Cyclomatic


Complexity adalah 10. Nilai-nilai lain, seperti 15 atau 20, juga telah diusulkan.
Terlepas dari batas yang tepat, jika Cyclomatic Complexity melebihi 20, harus
dipertimbangkan hal itu. Prosedur dengan kompleksitas yang tinggi cyclomatic
harus disederhanakan atau dipecah menjadi beberapa prosedur yang lebih kecil.
Setelah suatu prosedur memiliki tingkat Cyclomatic Complexity yang
kurang dari 20, maka tester akan memanggil prosedur tersebut dengan parameter
tertentu dan akan memastikan bahwa nilai output dari prosedur ini adalah seperti
yang diharapkan. Proses testing dan parameter yang digunakan ini dicatat dalam
sebuah tabel sehingga tester dapat mengetahui dengan jelas apakah nilai output
dari prosedur tersebut sesuai dengan yang diharapkan. Berikut merupakan contoh
tabel dari pengujian Unit Testing.

18

Tabel 5 Pengujian Unit Testing

No.

Tanggal Baris Kode

Hasil Output

Hasil Diharapkan

Keterangan

1
2
...
dst.

Untuk menguji hasil akurasi dari algoritma klasifikasi C4.5 digunakan


perhitungan Confusion Matrix (Han & Kamber, 2006). Berikut merupakan
tampilan dari Confusion Matrix.
Predicted Class

Actual Class

Class = 1

Class = 0

Class = 1

f11

f10

Class = 0

f01

f00

Kolom class tersebut nantinya berisi atribut-atribut yang digunakan dalam


penelitian. f11 dan f00 nantinya berisi berapa jumlah hasil yang diprediksi sistem
sama dengan hasil yang sebenarnya. f10 dan f01 adalah jumlah hasil yang
diprediksi sistem berbeda dengan yang sebenarnya. Setelah menginputkan isi cell
maka dilakukan perhitungan untuk menghitung akurasi dan eror rate dengan cara
sebagai berikut.
......................................................................(4)

...................................................................(5)

8.

Jadwal Pelaksanaan Penelitian


Bulan

No.

Kegiatan

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

19

Studi literatur

Analisis kebutuhan

Pengumpulan data
awal

Analisis data hasil


pengumpulan

Desain sistem

Implementasi dan
pengujian unit

Integrasi dan pengujian


sistem

Perbaikan sistem

Penyusun laporan
penelitian

20

DAFTAR PUSTAKA

Adhatrao, K., Gaykar, A., Dhawan, A., Jha, R., & Honrao, V. (2013).
PREDICTING STUDENTS PERFORMANCE USING ID3 AND C4.5
CLASSIFICATION ALGORITHMS. International Journal of Data
Mining & Knowledge Management Process (IJDKP), 3(5), 14.
Ahmed, A. B., & Elaraby, I. S. (t.thn.). Using Data Mining Technique to Analyze
Student's Performance. International Journal of Research in Education
Methodolgy, 5(2), 7.
Breunig, M. M., Kriegel, H.-P., Ng, R. T., & Sander, J. (2000). LOF: Identifying
Density-Based Local Outliers. Proc. ACM SIGMOD 2000 Int. Conf. On
Management of Data, 12.
Buku VI Matriks Penilaian Instrumen Akreditasi Program Studi Badan Akreditasi
Nasional Perguruan Tinggi. (2008).
Direktorat Jenderal Pendidikan Tinggi. (2000). Diambil kembali dari Direktorat
Jenderal Pendidikan Tinggi: http://www.dikti.go.id/
Han, J., & Kamber, M. (2006). Data Mining: Concepts and Techniques. San
Francisco: Services Manager Simon Crump.
Handriyadi, D., Bijaksana, M. A., & Setiawan, E. B. (2009). ANALISIS
PERBANDINGAN CLUSTERING-BASED, DISTANCE-BASED DAN
DENSITY-BASED DALAM MENDETEKSI OUTLIER. Seminar
Nasional Aplikasi Teknologi Informasi, 8.
Hasibuan, Z. A. (2007). METODOLOGI PENELITIAN PADA BIDANG ILMU
KOMPUTER DAN TEKNOLOGI INFORMASI.
Hastuti, K. (2012). ANALISIS KOMPARASI ALGORITMA KLASIFIKASI
DATA MINING UNTUK PREDIKSI MAHASISWA NON AKTIF.
Seminar Nasional Teknologi Informasi & Komunikasi Terapan 2012
(Semantik 2012), 9.
Larose, D. T. (2005). Discovering Knowledge in Data: An Introduction to Data
Mining. New Jersey: John Wiley & Sons .
Patton, R. (2006). Software Testing. Sams Publisher.
Sommerville, I. (2011).
Education.

SOFTWARE

21

ENGINEERING.

Boston:

Pearson

Tan, P.-N., Steinbach, M., & Kumar, V. (2006). Introduction to Data Mining.
Addison-Wesley Companion Book Site.
Watson, A. H., & McCabe, T. J. (1996). Structured Testing: A Testing
Methodology Using the Cyclomatic Complexity Metric. Gaithersburg:
National Institute of Standards and Technology.
Williams, L. (2006). Diambil kembali dari Real Search Software Engineering:
www.agile.csc.ncsu.edu

22