19
Bab 3 METODE PENELITIAN
Bab ini berisi penjelasan mengenai langkah atau metode yang dilakukan untuk menyelesaikan masalah dalam penelitian ini. Langkah penyelesaian
masalah tersebut meliputi data yang digunakan dalam penelitian, cara mengolah data dan contoh implementasi algoritma
Block-based Nested-Loop
. Hal-hal tersebut akan diuraikan dalam tiga sub bab di bawah ini.
3.1 Data
Pada penelitian ini data yang digunakan adalah data akademik mahasiswa Universitas Sanata Dharma Prodi Teknik Informatika Angkatan 2007 dan 2008.
Data ini diperoleh dari gudang data akademik mahasiswa hasil penelitian Rosa dkk 2011. Data diperoleh dalam bentuk skrip .
sql
. Dari skrip tersebut, data yang digunakan dalam penelitian ini adalah data nilai hasil seleksi masuk mahasiswa
jalur tes dan jalur prestasi dan nilai indeks prestasi semester IPS pada semester satu sampai semester empat. Total data akademik yang digunakan
dalam penelitian ini sebanyak 126 buah.
3.2 Pengolahan Data
Pengolahan data akademik dalam penelitian ini meliputi beberapa langkah yaitu :
3.2.1 Pemrosesan Awal Data
Data mentah yang digunakan dalam penelitian ini dalam bentuk skrip .
sql
. Sebelum mengolah data yang ada dalam skrip tersebut, skrip dijalankan terlebih
dahulu menggunakan
SQLyog
. Hasil yang diperoleh yaitu terdapat gudang data dengan nama data_mahasiswa dan di dalamnya terdapat beberapa tabel yaitu
dim_angkatan, dim_daftarsmu, dim_fakultas, dim_jeniskel, dim_kabupaten, dim_prodi, dim_prodifaks, dim_statustes dan fact_lengkap2. Setelah semua tabel
berhasil dibuat, proses pengolahan data dilanjutkan ke seleksi data.
Gambar 3.1 Gudang data ‘data_mahasiswa’ 3.2.2
Seleksi Data
Pada tahap ini dilakukan seleksi terhadap data yang relevan dengan penelitian. Berdasarkan data yang diperoleh, data yang akan dipakai adalah
kolom ips1, ips2, ips3, ips4, ips4, nil11, nil12, nil13, nil14, nil15 dan final. Kolom-kolom tersebut seluruhnya berada pada tabel fact_lengkap2. Kolom-
kolom tersebut kemudian diseleksi lagi barisnya yaitu diambil hanya baris
dengan sk_prodi = 27. Baris dengan sk_prodi = 27 merupakan data mahasiswa yang berasal dari Prodi Teknik Informatika. Data ini yang dipilih karena dapat
digunakan sebagai variabel numerik untuk mendeteksi
outlier
dan sesuai untuk mencapai tujuan penelitian.
3.2.3 Transformasi Data
Data yang telah diseleksi masih berupa data yang belum tepat untuk ditambang. Data tersebut belum tepat ditambang karena masih terdapat
perbedaan rentang nilai antara atribut nilai final, nilai tes masuk dan ips. Nilai final memiliki rentang nilai antara 0-100. Nilai tes masuk memiliki rentang nilai
antara 0-10. Ips memiliki rentang nilai antara 0-4. Perbedaan rentang nilai ini akan disamakan melalui proses transformasi data.
Transformasi data dilakukan dengan menggunakan metode normalisasi. Metode normalisasi dilakukan dengan cara membuat skala pada data atribut.
Salah satu jenis metode normalisasi yaitu
min-max normalization
Han Kamber, 2006.
Min-max normalization
didefinisikan sebagai berikut :
di mana v =
nilai awal,
min
A
=
nilai minimum atribut
A
sebelum normalisasi,
max
A
= nilai maksimum atribut
A
sebelum normalisasi,
new_max
A
= nilai 3.1
maksimum atribut
A
setelah normalisasi dan
new_min
A
= nilai minimum atribut
A
setelah normalisasi. Penelitian ini menggunakan data berupa nilai tes masuk, nilai final dan
ips. Range data nilai tes masuk dan data nilai final disamakan dengan range data ips. Contoh normalisasi data nilai final adalah sebagai berikut. Diketahui nilai
final awal
v
= 77.10, nilai minimum awal
min
A
= 0, nilai maksimum awal
max
A
= 100, nilai minimum baru
new_min
A
= 0 dan nilai maksimum baru
new_min
A
= 4, maka nilai final setelah normalisasi
v’ =
77.10 −0
100 −0
4 − 0 + 0 = 3.08 Contoh normalisasi data nilai tes masuk adalah sebagai berikut. Diketahui nilai
tes awal
v
= 8.00, nilai minimum awal
min
A
= 0, nilai maksimum awal
max
A
= 10, nilai minimum baru
new_min
A
= 0 dan nilai maksimum baru
new_min
A
= 4, maka nilai tes setelah normalisasi
v’ =
8.00 − 0
10 −0
4 − 0 + 0 = 3.20
3.2.4 Penambangan Data
Data yang telah melalui proses transformasi data selanjutnya dicari
outlier
nya menggunakan algoritma deteksi
outlier
yaitu algoritma
Block-based Nested-Loop
. Data yang diteliti akan dibatasi pada data dua tahun angkatan di Universitas Sanata Dharma yaitu tahun angkatan 2007 dan 2008. Pada tahap ini,
akan ditentukan juga variabel-variabel yang akan digunakan untuk menambang data. Variabel-variabel tersebut antara lain :
1.
Input
, yang terdiri dari : a.
Nilai hasil seleksi penerimaan mahasiswa baru.
Untuk mahasiswa yang mengikuti jalur tes, nilai hasil seleksi yang digunakan berasal dari lima jenis mata tes yaitu nilai penalaran
mekanik, nilai penalaran verbal, nilai hubungan ruang, nilai Bahasa Inggris dan nilai kemampuan numerik serta nilai final.
Untuk mahasiswa yang mengikuti jalur prestasi, nilai hasil seleksi yang digunakan berasal dari nilai final.
b. Nilai Indeks Prestasi Semester IPS pada semester 1 sampai
semester 4. 2.
Output
, yaitu sejumlah data yang masuk ke dalam kelompok
outlier
, jika ada
3.2.5 Evaluasi Pola yang Ditemukan
Pada tahap ini, pengetahuan atau pola berupa
outlier
yang didapat dari proses deteksi
outlier
akan dievaluasi dengan hipotesa yang telah dibentuk sebelumnya. Hipotesa awal mengenai mahasiswa yang masuk ke dalam kategori
outlier
yaitu mahasiswa dengan data akademik khusus atau unik dilihat dari hasil seleksi masuk dan IPS setiap semester. Kesesuaian hasil deteksi
outlier
dengan hipotesa awal menunjukan
output
yang baik dari proses penambangan data yang dilakukan.
3.2.6 Presentasi Pengetahuan
Tahap ini merupakan tahap akhir dari penelitian. Pola khusus yang dihasilkan
outlier
perlu ditampilkan ke dalam bentuk yang mudah dimengerti oleh pihak yang berkepentingan. Oleh sebab itu, pada tahap ini akan dilakukan
pembuatan sistem dengan antarmuka pengguna yang mudah dimengerti oleh pihak universitas.
3.3 Contoh Implementasi Algoritma
Block-based Nested-Loop
Pada penelitian ini, dilakukan deteksi
outlier
menggunakan algoritma
Block-based Nested-Loop
dengan data akademik yang berasal dari gudang data data akademik mahasiswa yang berasal dari penelitian Rosa dkk 2011. Data
yang awalnya dalam bentuk skrip .
sql
diubah ke dalam format
.xls
agar lebih mudah untuk diolah. Data yang akan diolah berasal dari tabel fact_lengkap2.
Jumlah data yang digunakan sebanyak 13 baris. Data tersebut telah diseleksi khusus untuk mahasiswa yang memiliki sk_prodi = 27 Prodi Teknik
Informatika, angkatan 2007 dan statustes = T jalur tes. Data yang digunakan untuk analisis tersebut adalah seperti gambar 3.2 di bawah ini
Gambar 3.2 Data mentah untuk implementasi algoritma
Block-based Nested- Loop
Pada bagian ini, penjelasan mengenai langkah-langkah deteksi
outlier
menggunakan algoritma
Block-based Nested-Loop
hanya akan ditampilkan menggunakan data mahasiswa di atas pada semester satu saja. Untuk semester
tiga hingga semester empat hanya akan ditampilkan hasil deteksi
outlier
nya saja. Proses deteksi
outlier
menggunakan algoritma
Block-based Nested-Loop
adalah sebagai berikut:
1. Menentukan nilai parameter
D
= 2 dan
M
= 4 2.
Mengasumsikan jumlah blok = 4
3. Membagi seluruh data ke dalam sejumlah blok. Jumlah blok = 4, maka
setiap
13 4
= 3 data dan sisa 1 data. Berdsarkan perhitungan tersebut, setiap blok akan berisi 3 buah data. Perhitungan ini menyisakan 1 data yang belum
masuk ke dalam sebuah blok. Sisa data dapat dimasukkan ke dalam blok yang mana saja. Dalam contoh ini, sisa data dimasukkan ke dalam blok ke-4.
Dengan demikian diperoleh hasil pembagian blok yaitu blok 1, blok 2, blok 3 masing-masing berisi 3 data dan blok 4 berisi 4 data
Tabel 3.1 Data mentah dibagi ke dalam 4 blok
4.
First array
diisi dengan data dari blok 1. 5.
Setiap data dalam
first array
dihitung jaraknya terhadap setiap data lainnya dalam
first array
menggunakan
Euclidean distance
dan nilainya dimasukkan pada kolom Eucliden dist.
Setiap kali jarak telah dihitung, nilai jarak langsung dibandingkan dengan nilai parameter
D
. Jika jarak ≤
D
, maka kedua data dinyatakan sebagai
tetangga dan ditandai dengan angka 1 pada kolom Neighbor. Jika jarak
D
, maka dinyatakan sebagai bukan tetangga dan ditandai dengan angka 0.
Gambar 3.3 Pengecekan tetangga pada
first array
antara blok 1 dan blok 1
Menurut analisis di atas, pada data mahasiswa dengan nomor 73 ditemukan tetangga sebanyak 2 buah yaitu mahasiswa dengan nomor 74 dan 75.
6. Setelah jumlah tetangga ditemukan, lalu dibandingkan dengan nilai parameter
M
. Jika jumlah tetangga
M
maka data tersebut dinyatakan sebagai bukan
outlier
, jika sebaliknya maka data masih dinyatakan sebagai
unmarked
. Pada contoh di atas, karena diperoleh jumlah tetangga = 2 yang artinya
M
, maka data masih diberi keterangan
unmarked
.
7. Selanjutnya, pengecekan dilakukan terhadap data lainnya dalam blok 1 yaitu
mahasiswa nomor 74 dan 75 kembali ke langkah 5. Hasil pengecekan dalam
first array
blok 1 dan blok 1 diperoleh semua data masih berstatus
unmarked
. Artinya, seluruh data tersebut masih dicek lagi dalam pengecekan berikutnya pada iterasi selanjutnya.
Gambar 3.4 Hasil akhir pengecekan blok 1 dan blok 1 dalam
first array
Selanjutnya blok 2 dimasukkan ke
second array
.
8. Setiap data dalam
first array
yang masih
unmarked
, dicari tetangganya yang berada dalam
second array
. Jumlah tetangga yang diperoleh pada perhitungan sebelumnya akan ditambahkan ke dalam pengecekan ini.
Gambar 3.5 Pencarian tetangga dari data
first array
pada
second array
Pada gambar di atas, terlihat bahwa mahasiswa nomor 73 mendapatkan 1 orang tetangga pada pengecekan dengan blok 2. Jumlah tetangga ini dijumlahkan
dengan jumlah tetangga sebelumnya yaitu 2 orang sehingga menjadi 3 orang. Mahasiswa nomor 73 masih berstatus
unmarked
pada tahap ini karena jumlah tetangganya masih
M
. Maka data mahasiswa ini akan dimasukkan lagi ke dalam pengecekan selanjutnya.
9. Selanjutnya, pengecekan dilakukan terhadap data lainnya dalam blok 1 yaitu
mahasiswa nomor 74 dan 75 kembali ke langkah 8.
Hasil akhir pengecekan antara blok 1
first arra y
dan blok 2
second array
diperoleh mahasiswa nomor 73, 74 dan 75 akan dimasukkan ke dalam pengecekan dengan blok selanjutnya karena masih ditandai sebagai
unmarked
.
Gambar 3.6 Hasil akhir pengecekan blok 1
first array
dan blok 2
second array
Selanjutnya blok 3 dimasukkan ke
second array
.
10. Setiap data dalam
first array
yang masih
unmarked
, dicari tetangganya yang berada dalam
second array
. Jumlah tetangga yang diperoleh pada perhitungan sebelumnya akan ditambahkan ke dalam pengecekan ini.
Gambar 3.7 Pencarian tetangga dari data
first array
pada
second array
Pada gambar di atas, terlihat bahwa mahasiswa nomor 73 mendapatkan 1 tetangga. Jumlah tetangga ini dijumlahkan dengan jumlah tetangga sebelumnya
yaitu 3 orang sehingga menjadi 4 orang. Mahasiswa nomor 73 masih berstatus
unmarked
pada tahap ini karena jumlah tetangganya masih kurang dari
M
. Maka data mahasiswa ini akan dimasukkan lagi ke dalam pengecekan selanjutnya.
11. Selanjutnya, pengecekan dilakukan terhadap data lainnya dalam blok 1 yaitu
mahasiswa nomor 74 dan 75 kembali ke langkah 10.
Hasil akhir pengecekan antara blok 1
first arra y
dan blok 3
second array
diperoleh 2 data yang ditandai sebagai bukan
outlier
yaitu mahasiswa dengan nomor 74 dan 75. Ketika mahasiswa 74 dicek dengan mahasiswa nomor 80,
jumlah tetangga mahasiswa nomor 74 telah mencapai
M
4. Jumlah tetangga
mahasiswa nomor 74 adalah 4 dari pengecekan sebelumnya dan ditambah 1 pada tahap ini sehingga menjadi 5 orang. Data yang diberi label biru menunjukkan
data yang tidak ikut serta ditambahkan sebagai tetangga mahasiswa nomor 74 karena pengecekan berhenti saat
M
4. Kedua data ini tidak akan disertakan lagi dalam pengecekan berikutnya pada iterasi selanjutnya.
Gambar 3.8 Hasil akhir pengecekan blok 1
first array
dan blok 3
second array
Selanjutnya blok 4 dimasukkan ke dalam
second array
.
12. Setiap data dalam
first array
yang masih
unmarked
, dicari tetangganya yang berada dalam
second array
. Jumlah tetangga yang diperoleh pada perhitungan sebelumnya akan ditambahkan ke dalam pengecekan ini.
Gambar 3.9 Hasil akhir pengecekan blok 1
first array
dan blok 4
second array
Hasil akhir pengecekan antara blok 1
first arra y
dan blok 4
second array
diperoleh data mahasiswa 73 yang ditandai sebagai bukan
outlier
yaitu. Ketika mahasiswa 73 dicek dengan mahasiswa nomor 83, jumlah tetangga mahasiswa
nomor 73 telah mencapai
M
4. Jumlah tetangga mahasiswa nomor 73 adalah 4 dari pengecekan sebelumnya dan ditambah 1 pada tahap ini sehingga menjadi 5
orang. Data yang diberi label biru menunjukkan data yang tidak ikut serta ditambahkan sebagai tetangga mahasiswa nomor 73 karena pengecekan berhenti
saat
M
4. Karena seluruh data dalam blok 1 telah dicek dengan seluruh blok lainnya maka iterasi pegecekan
outlier
untuk data dalam blok 1 telah selesai.
13. Jika blok yang berada dalam
second array
belum pernah menjadi
first array
, tukarkan isi kedua
array
tersebut dan proses pengecekan berjalan kembali seperti pada langkah ke-4. Jika blok yang berada pada
second array
sudah pernah menjadi
first array
, proses deteksi
outlier
dihentikan.
Urutan pengecekan data pada kasus di atas adalah sebagai berikut:
1. Blok 1 dan Blok 1, kemudian dengan Blok 2, Blok 3, Blok 4
total ada 4 blok yang dibaca 2.
Blok 4 dan Blok 4 tidak perlu dibaca, sudah berada dalam
array
, kemudian dengan Blok 1 tidak perlu dibaca, sudah berada dalam
array
, Blok 2, dan Blok 3
total ada 2 blok yang dibaca 3.
Blok 3 dan Blok 3, kemudian dengan Blok 4, Blok 1, dan Blok 2 total ada 2 blok yang dibaca
4. Blok 2 dan Blok 2, kemudian dengan Blok 3, Blok 4, Blok 1
total ada 2 blok yang dibaca Total ada 10 blok yang dibaca dalam pengecekan ini.
34
Bab 4 ANALISIS DAN PERANCANGAN SISTEM
4.1 Identifikasi Sistem
Universitas Sanata Dharma melakukan seleksi penerimaan mahasiswa baru setiap tahun. Seleksi penerimaan mahasiswa baru terbagi menjadi dua jalur
yaitu jalur prestasi dan jalur tes. Kedua jalur penerimaan mahasiswa baru tersebut memiliki persyaratan yang harus dipenuhi oleh calon mahasiswa. Calon
mahasiswa yang mengikuti jalur prestasi diwajibkan melampirkan nilai raport SMA saat kelas XI semester 1 dan semester 2. Untuk calon mahasiswa yang
mengikuti jalur tes, diwajibkan mengikuti tes tertulis yang terdiri dari lima jenis tes yaitu tes penalaran mekanik, tes penalaran verbal, tes hubungan ruang, tes
kemampuan numerik dan tes Bahasa Inggris. Berdasarkan nilai final untuk jalur prestasi dan nilai final serta nilai lima tes untuk jalur tes tersebut, dapat
ditentukan calon mahasiswa yang diterima menjadi mahasiswa di Universitas Sanata Dharma.
Mahasiswa di Universitas Sanata Dharma menjalani masa perkuliahan yang dibagi ke dalam beberapa semester. Setiap semester dilakukan evaluasi
untuk mengetahui tingkat pemahaman setiap mahasiswa. Tingkat pemahaman mahasiswa ditunjukkan oleh Indeks Prestasi Semester IPS. Setiap mahasiswa
memiliki IPS yang bervariasi terhadap mahasiswa lainnya. Selain itu setiap mahasiswa juga dapat memiliki IPS yang sama atau berbeda-beda di setiap
semester.