IMPLEMENTASI METODE NAIVE BAYES DALAM MENENTUKAN POSISI IDEAL PEMAIN DALAM SEPAK BOLA BERBASIS ANDROID
(STUDI KASUS : TALENTA SOCCER RANTAUPRAPAT)
SKRIPSI
AHMAD RIFAI 111401020
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
IMPLEMENTASI METODE NAIVE BAYES DALAM MENENTUKAN POSISI IDEAL PEMAIN DALAM SEPAK BOLA BERBASIS ANDROID
(STUDI KASUS : TALENTA SOCCER RANTAUPRAPAT)
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
AHMAD RIFAI 111401020
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : IMPLEMENTASI METODE NAIVE BAYES DALAM
MENENTUKAN POSISI IDEAL PEMAIN DALAM
SEPAK BOLA BERBASIS ANDROID (STUDI
KASUS : TALENTA SOCCER RANTAUPRAPAT)
Kategori : SKRIPSI
Nama : AHMAD RIFAI
Nomor Induk Mahasiswa : 111401020
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Agustus 2015
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dian Rachmawati, S.Si., M.Kom Dr. Poltak Sihombing, M.Kom
NIP. 19830723 200912 2 004 NIP. 19620317 199103 1 001
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
IMPLEMENTASI METODE NAIVE BAYES DALAM MENENTUKAN POSISI
IDEAL PEMAIN DALAM SEPAK BOLA BERBASIS ANDROID
(STUDI KASUS : TALENTA SOCCER RANTAUPRAPAT)
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Agustus 2015
Ahmad Rifai
PENGHARGAAN
Alhamdulillah. Puji dan syukur kehadirat Allah SWT, yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk
memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas
Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Metode Naive Bayes dalam Menentukan Posisi Ideal Pemain dalam Sepak Bola Berbasis Android, penulis menyadari bahwa banyak pihak yang turut membantu, baik dari pihak keluarga,
sahabat dan orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam
kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Drs. Subhilhar, M.A., Ph.D selaku Pj. Rektor Universitas Sumatera
Utara.
2. Bapak Prof. Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas
Sumatera Utara sekaligus selaku Dosen Pembimbing I yang telah memberikan
arahan serta motivasi kepada penulis dalam pengerjaan skripsi ini.
4. Ibu Dian Rachmawati S.Si., M.Kom selaku Dosen Pembimbing II yang telah
memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam
pengerjaan skripsi ini.
5. Bapak Dr. Syahril Effendi S.Si., M.IT selaku Dosen Pembanding I yang telah
banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.
6. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen Pembanding II yang telah
banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.
7. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi
Informasi USU.
8. RCS yang selama ini telah menjadi keluarga dan rumah penulis selama menjalani
9. Teman-teman kuliah, khususnya Hari Rahman Nihe, Jonathan Simamora, Aditya
Putra, Sandy Ramadhan, Alfrid Iskandar, Tifany Maria, Syafura Tri Utari,
Fildzah Hanifati serta seluruh stambuk 2011 yang tidak dapat disebut
satu-persatu, yang telah banyak membantu dalam selesainya pengerjaan skripsi ini.
10. Teman-teman Pengurus IMILKOM (Ikatan Mahasiswa S1 Ilmu Komputer)
Fasilkom-TI 2014/2015, Nurhayati Lubis, Abidah Novita, Farid Akbar,
Abdussubhi Afif, Joshua Christy, Steven Sinaga, Deka Triatnoko, Magdalena
Siregar, Meylina Manik, Witty Mareta, Ivana Lisa Sitepu, Arief Anwar, Hanafi
Ahmad, Nadhira Dwi Sabrina, Ita Sinaga dan Astrid Febrina Siregar yang telah
memberikan banyak dukungan, tempat belajar berorganisasi yang benar, dan
menimba pengalaman.
11. Terakhir, untuk yang paling berharga dalam hidup, almarhum Bapak saya
Suharto, Ibunda Kartini Nasution, Kakak-kakak tercinta Nurmeini, Kurnia Sari
dan Siti Maimunah, yang telah banyak memberikan kasih sayang, semangat,
dorongan serta merupakan sumber motivasi bagi saya dalam menjalani
kehidupan. Tidak ada satu hari pun saya tidak mengingat dan mendoakan yang
terbaik buat kalian dan tidak ada yang lebih membahagiakan selain ada disisi
kalian. Semua yang baik dari saya adalah dari dan untuk kalian.
Semoga Allah SWT. melimpahkan berkah dan membalas dengan kebaikan
kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan
kepada penulis dalam menyelesaikan skripsi ini.
Medan, Agustus 2015
Penulis,
ABSTRAK
Kebutuhan masyarakat terhadap layanan teknologi berbasis IT sangat bervariasi.
Ketersediaan suatu perangkat mobile berbasis Android yang dapat membantu memecahkan suatu permasalahan adalah sesuatu yang dapat bermanfaat bagi
masyarakat. Dalam hal ini, penulis berusaha menambang data pemain sebuah sekolah
sepak bola untuk mengetahui posisi pemain yakni Kiper, Bek, Gelandang dan
Penyerang dengan menggunakan teknik Data Mining. Data mining adalah teknik yang memanfaatkan data dalam jumlah yang besar untuk memperoleh informasi berharga
yang sebelumnya tidak diketahui dan dapat dimanfaatkan untuk pengambilan
keputusan penting. Data yang ada dianalisis menggunakan metode Naive Bayes, yang bertujuan untuk melakukan klasifikasi data pada kelas tertentu, kemudian pola
tersebut dapat digunakan untuk memperkirakan posisi ideal pemain yang baru
sehingga pelatih bisa mengambil keputusan untuk menempatkan posisi pemain
tersebut.
IMPLEMENTATION NAIVE BAYES METHOD FOR DETERMINING THE IDEAL POSITION IN FOOTBALL PLAYERS BASED ON ANDROID
ABSTRACT
Social demand for IT services based technologies vary widely. The availability of an
Android-based mobile devices that can help solve a problem is something that can be
useful to society. In this case, the authors tried to mine the data of a school football
players to know the position of the player Goalkeeper, Defender, Midfielder and
Striker by using Data Mining techniques. Data mining is a technique that utilizes large
amounts of data to obtain valuable information that was not previously known and can
be used for making important decisions. Existing data were analyzed using Naive
Bayes, which aims to classify the data in a particular class, then the pattern can be
used to estimate the ideal position of the new players that the coach can take the
decision to put the position of the player.
DAFTAR ISI
DAFTAR LAMPIRAN xii
BAB 1 PENDAHULUAN
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metodologi Penelitian 3
1.7 Sistematika Penulisan 4
BAB 2 LANDASAN TEORI
2.1 Sistem Pendukung Keputusan 6
2.2.1 Komponen Sistem Pendukung Keputusan 6
2.2 Data Mining 8
2.3.1 Tugas Utama Data Mining 8
2.3.2 Proses DataMining 9
2.3 Klasifikasi 10
2.4 Metode NaiveBayes 12
2.5 Android 17
2.6 Sepak Bola 18
2.6.1 Pengenalan Sepak Bola 19
2.6.2 Posisi dan Peran Pemain 19
2.7 Penelitian yang relevan 20
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem 22
3.1.1 Analisis Masalah 22
3.1.2 Analisis Persyaratan 23
3.1.2.1 Persyaratan Fungsional 23
3.1.2.2 Persyaratan Non Fungsional 24
3.1.3 Pemodelan 24
3.1.3.1 Use CaseDiagram 24
3.1.3.3 SequenceDiagram 27
3.1.3.4 Kamus Data 28
3.1.3.5 Flowchart Sistem 29
3.1.3.6 Pseudecode Program 31
3.2 Perancangan Sistem 39
3.2.1 Menu Utama 40
3.2.2 Menu Database 41
3.2.3 Menu Proses NaiveBayes 42
3.2.4 Menu Proses 43
3.2.5 Menu Help 44
3.2.6 Menu About 45
BAB 4 IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi 46
4.2 Antarmuka Sistem 46
4.2.1 Menu Utama 47
4.2.2 Menu Database 47
4.2.3 Proses NaiveBayes 48
4.2.4 Menu Proses 49
4.2.5 Menu Help 50
4.2.6 Menu About 50
4.3 Pengujian 51
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan 73
5.2 Saran 73
DAFTAR PUSTAKA 75
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
2.1
Data Pemain dan Posisi
Dokumentasi Naratif Use Case Database
Dokumentasi Naratif Use Case Proses Naive Bayes
Dokumentasi Naratif Use Case Help
Kamus Data
Pseudecode Naive Bayes
Keterangan gambar rancangan Menu Utama Keterangan gambar rancangan Menu Database
Keterangan gambar rancangan Menu Proses NaiveBayes
Keterangan gambar rancangan Menu Proses Keterangan gambar rancangan Menu Help Keterangan gambar rancanganMenu About Data training awal untuk atribut objektif
Data training atribut objektif
Data training atribut subjektif
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
2.1
Komponen Sistem Pendukung Keputusan Langkah Proses Klasifikasi
Skema NaiveBayes
Posisi Pemain Sepak Bola Diagram Ishikawa
Use Case Diagram Sistem
Activity Diagram Sequence Diagram Flowchart Sistem
RancanganMenu Utama Rancangan Menu Database
RancanganMenu Proses NaiveBayes
RancanganMenu Proses RancanganMenu Help
RancanganMenu About
Menu Utama Menu Database
Menu Lanjutan Menu Database Menu Proses NaiveBayes
DAFTAR LAMPIRAN
Halaman
Listing Program 77
ABSTRAK
Kebutuhan masyarakat terhadap layanan teknologi berbasis IT sangat bervariasi.
Ketersediaan suatu perangkat mobile berbasis Android yang dapat membantu memecahkan suatu permasalahan adalah sesuatu yang dapat bermanfaat bagi
masyarakat. Dalam hal ini, penulis berusaha menambang data pemain sebuah sekolah
sepak bola untuk mengetahui posisi pemain yakni Kiper, Bek, Gelandang dan
Penyerang dengan menggunakan teknik Data Mining. Data mining adalah teknik yang memanfaatkan data dalam jumlah yang besar untuk memperoleh informasi berharga
yang sebelumnya tidak diketahui dan dapat dimanfaatkan untuk pengambilan
keputusan penting. Data yang ada dianalisis menggunakan metode Naive Bayes, yang bertujuan untuk melakukan klasifikasi data pada kelas tertentu, kemudian pola
tersebut dapat digunakan untuk memperkirakan posisi ideal pemain yang baru
sehingga pelatih bisa mengambil keputusan untuk menempatkan posisi pemain
tersebut.
IMPLEMENTATION NAIVE BAYES METHOD FOR DETERMINING THE IDEAL POSITION IN FOOTBALL PLAYERS BASED ON ANDROID
ABSTRACT
Social demand for IT services based technologies vary widely. The availability of an
Android-based mobile devices that can help solve a problem is something that can be
useful to society. In this case, the authors tried to mine the data of a school football
players to know the position of the player Goalkeeper, Defender, Midfielder and
Striker by using Data Mining techniques. Data mining is a technique that utilizes large
amounts of data to obtain valuable information that was not previously known and can
be used for making important decisions. Existing data were analyzed using Naive
Bayes, which aims to classify the data in a particular class, then the pattern can be
used to estimate the ideal position of the new players that the coach can take the
decision to put the position of the player.
BAB 1 PENDAHULUAN
1.1. Latar Belakang
Sepak bola adalah salah satu olahraga yang sangat terkenal dan digemari oleh
berbagai kalangan di hampir seluruh pelosok dunia yang dimainkan oleh berbagai
jenis usia baik tua maupun muda. Sebuah tim sepak bola terdiri dari seorang penjaga
gawang dan sepuluh pemain yang bergerak di seluruh lapangan yang mengisi posisi
bek, gelandang dan penyerang.
Dalam sepak bola salah satu faktor yang terpenting adalah pemain. Pemain yang
memiliki kemampuan yang baik akan menguntungkan bagi satu tim dan begitu juga
sebaliknya. Keluarnya kemampuan terbaik seorang pemain tidak terlepas dari
penempatan posisi yang ideal bagi pemain tersebut.
Pada saat ini ternyata seorang pelatih/manager masih merasa kesulitan dalam
menentukan posisi yang ideal untuk para pemainnya. Masih ada pelatih yang belum
bisa menilai pemain secara objektif. Dimana para pemain memang benar-benar dinilai
dari kemampuan mereka sendiri bukan dari penelitian secara subjektif saja. Selain itu,
dalam proses penentuan posisi pemain, seorang pelatih hanya mengandalkan insting
dan ego para pemain saja tanpa didukung dengan data nilai skill individu pemain yang disimpan. Pada kenyataannya selama ini, dalam proses penentuan posisi yang ideal
tersebut masih dilakukan secara manual yakni dengan diimplementasikan dalam
bentuk sebuah kertas berupa form penilaian karakter dan kriteria pemain saja.
Algoritma Naive Bayes merupakan salah satu algoritma yang terdapat pada teknik klasifikasi. Klasifikasi adalah proses menemukan kumpulan pola atau
fungsi-fungsi yang mendeskripsikan dan memisahkan kelas data satu dengan lainnya, untuk
dapat digunakan untuk memprediksi data yang belum memiliki kelas data tertentu
Berdasarkan permasalahan di atas, maka dibuatlah sebuah sistem yang dapat
mempermudah dan mengubah cara penilaian seorang pelatih dalam menentukan posisi
ideal pemain dalam sepak bola. Pada penelitian ini, penulis akan mengembangkan
suatu sistem menggunakan Smartphone berbasis Android sebagai media. Sistem bekerja sesuai input yang diberikan dari data training yang telah dikumpulkan. Sistem yang akan diimplementasikan menggunakan metode Naive Bayes sebagai aturan dalam pembangunan sistem. Jadi, hanya dengan membawa Smartphone dan memasukkan beberapa parameter seperti Dribbling, Passing, Crossing, Shooting, Accelaration, Agility, Stamina, Jumping, Aggression, Composure, Creativity, Decisioning, Positioning, Marking, dan Teamwork. maka pelatih dapat menentukan apakah posisi ideal pemain tersebut Kiper, Bek, Gelandang atau Penyerang.
1.2. Rumusan Masalah
Adapun rumusan masalah yang akan dibahas pada penelitian ini adalah bagaimana
menentukan posisi ideal pemain dalam sepak bola dengan menggunakan metode
Naive Bayes.
1.3. Batasan Masalah
Agar fokus penelitian tidak menyimpang dari rumusan masalah yang telah ditetapkan,
maka dibuat batasan masalah sebagai berikut :
1. Data yang diproses adalah data pemain yang bersumber dari Talenta Soccer
Rantauprapat dan lembar penilaian skill dan teknik individu pemain yang diisi pada saat proses penyeleksian pemain oleh pelatih.
2. Posisi bermain yang dipilih diantaranya adalah Kiper, Bek, Gelandang dan
Penyerang.
3. Atribut pemain yang digunakan dalam menentukan keputusan terbagi dalam dua
kategori, yakni penilaian secara subjektif dan objektif. Untuk penilaian secara
4. Sistem dibangun dengan menggunakan metode Naive Bayes.
5. Sistem dibangun pada Smartphone berbasis Android dengan versi 4.1/4.2/4.3 (Jelly Bean) menggunakan eclipse.
1.4. Tujuan Penelitian
Penelitian ini bertujuan untuk membangun sebuah sistem berbasis Android yang dapat memberikan informasi dalam penentuan posisi ideal pemain dalam sepak bola dengan
menggunakan metode Naive Bayes.
1.5. Manfaat Penelitian
Manfaat yang didapat dalam pembuatan sistem ini antara lain :
1. Dapat mempermudah seorang pelatih dalam menentukan posisi ideal untuk
seorang pemain.
2. Mampu membantu seorang pelatih merubah cara penilaiannya dalam menyeleksi
pemain, agar dapat menilai dari yang bersifat subjektif menjadi objektif.
3. Dapat menyediakan pilihan bagi pelatih dalam menentukan posisi ideal pemain.
4. Dapat meningkatkan efektifitas dan efisiensi bagi pelatih dalam menentukan posisi
ideal pemain.
1.6. Metodologi Penelitian
Tahapan penelitian yang dilakukan dalam penelitian ini adalah :
a. Studi Literatur
Studi ini dilakukan dengan cara mempelajari, meneliti dan menelaah berbagai
literatur-literatur Sistem Pendukung Keputusan, Data Mining, dan Metode Naive Bayes dari perpustakaan yang bersumber dari buku-buku, teks, jurnal ilmiah maupun hasil penelitian terdahulu sebagai referensi yang diperlukan dalam
melakukan penelitian.
b. Analisis dan Perancangan
Dengan adanya rumusan dan batasan masalah, kebutuhan perancangan dianalisis
c. Implementasi
Sistem diimplementasi dengan menggunakan metode Naive Bayes.
d. Pengujian
Penulis melakukan pengujian dan mengevaluasi aplikasi sistem pendukung
keputusan yang dihasilkan, serta melakukan perbaikan sistem. Selain itu juga
melakukan pengujian terhadap sistem, apakah sudah sesuai dengan yang
diharapkan.
e. Dokumentasi
Pembuatan dokumentasi dilakukan selama penelitian berlangsung sampai
penelitian selesai yang dibuat dalam bentuk laporan.
1.7. Sistematika Penulisan
Sistematika penulisan skripsi ini terdiri dari beberapa bagian utama, yaitu:
BAB 1 PENDAHULUAN
Bab ini menjelaskan latar belakang judul skripsi ”Implementasi
Metode Naive Bayes dalam menentukan posisi ideal pemain dalam sepak bola berbasis Android”, rumusan masalah, batasan
masalah, tujuan penelitian, manfaat penelitian, metode
penelitian dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini berisi tentang penjelasan singkat mengenai Sepak Bola,
Data Mining, metode Naive Bayes, Android, dan Eclipse.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini membahas analisis terhadap masalah penelitian dan
perancangan terhadap sistem yang akan dibangun, cara kerja
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Bab ini berisi tentang pembuatan sistem dan coding sesuai dengan analisis dan perancangan, kemudian melakukan
pengujian sistem., serta pembahasan hasil pengujian dan
analisisnya.
BAB 5 KESIMPULAN DAN SARAN
Bab ini memuat kesimpulan dari keseluruhan uraian bab-bab
sebelumnya dan saran berdasarkan hasil pengujian yang
diharapkan dapat bermanfaat untuk penelitian yang
BAB 2
LANDASAN TEORI
2.1. Sistem Pendukung Keputusan (SPK)
Definisi awal SPK menunjukkan SPK sebagai sebuah sistem yang dimaksudkan untuk
mendukung para pengambil keputusan manajerial dalam situasi keputusan
semiterstruktur. SPK dimaksudkan untuk menjadi alat bantu bagi para pengambil
keputusan untuk memperluas kapabilitas mereka, namun tidak untuk menggantikan
penilaian mereka.
Little (1970) mendefinisikan SPK sebagai “sekumpulan prosedur berbasis
model untuk data pemrosesan dan penilaian guna membantu para manajer mengambil
keputusan.” Dia menyatakan bahwa untuk sukses, sistem tersebut haruslah sederhana,
cepat, mudah dikontrol, adaptif, lengkap dengan isu-isu penting dan mudah
berkomunikasi.
McLeod (1998) mendefinisikan SPK merupakan suatu sistem informasi yang
ditunjukkan untk membantu manajemen dalam memecahkan masalah yang
dihadapinya.
Dari semua pengertian SPK yang dipaparkan di atas dapat disimpulkan bahwa
SPK adalah sebuah sistem berbasis komputer yang dapat membantu seseorang dalam
memecahkan masalah dari data yang ada serta mengambil keputusan dan melahirkan
output yang bersifat altenatif.
2.1.1.Komponen Sistem Pendukung Keputusan
Adapun komponen-komponen dari Sistem Pendukung Keputusan adalah sebagai
berikut :
1. Manajemen Data
Manajemen data mencakup database yang berisi data yang relevan untuk situasi
2. Manajemen Model
Manajemen model merupakan paket perangkat lunak yang memasukkan
model-model finansial, statistik, ilmu manajemen atau model-model kuantitatif yang lain yang
menyediakan kemampuan analisis sistem dan management software yang terkait.
3. Antarmuka Pengguna
Antarmuka pengguna merupakan media interaksi antara pengguna dan sistem
sehingga pengguna dapat memberikan inputan kepada sistem agar didapatkan
keputusan yang diproses oleh sistem.
4. Subsistem Berbasis Pengetahuan
Subsistem berbasis pengetahuan adalah subsistem yang dapat mendukung semua
subsistem lain atau bertindak sebagai komponen yang berdiri sendiri.
Untuk lebih memahami komponen Sistem Pendukung Keputusan yang telah
dijelaskan di atas dapat dilihat pada gambar 2.1.
2.2. Data Mining
Data mining merupakan disiplin ilmu yang mempelajari metode untuk mengekstrak pengetahuan atau menemukan pola dari suatu data (Han and Kamber, 2006). 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 (Santosa, 2007).
2.2.1.Tugas Utama Data Mining
Secara umum data mining memiliki empat tugas utama (Sahu, 2011): 1. Klasifikasi (Classification)
Klasifikasi bertujuan untuk mengklasifikasikan item data menjadi satu dari
beberapa kelas standar. Sebagai contoh, suatu program email dapat
mengklasifikasikan email yang sah dengan email spam. Beberapa algoritma
klasifikasi antara lain pohon keputusan, nearest neighbor, naïve bayes, neural networks dan support vector machines.
2. Regresi (Regression)
Regresi merupakan pemodelan dan investigasi hubungan dua atau lebih variabel.
Dalam analisis regresi ada satu atau lebih variabel independent / prediktor yang biasa diwakili dengan notasi x dan satu variabel respon yang biasa diwakili dengan
notasi y (Santosa, 2007).
3. Pengelompokan (Clustering)
Clustering merupakan metode pengelompokan sejumlah data ke dalam klaster (group) sehingga dalam setiap klaster berisi data yang semirip mungkin.
4. Pembelajaran Aturan Asosiasi (Association Rule Learning)
Pembelajaran aturan asosiasi mencari hubungan antara variabel. Sebagai contoh
suatu toko mengumpulkan data kebiasaan pelanggan dalam berbelanja. Dengan
menggunakan pembelajaran aturan asosiasi, toko tersebut dapat menentuan produk
yang sering dibeli bersamaan dan menggunakan informasi ini untuk tujuan
2.2.2. Proses Data Mining
Proses dari data mining mempunyai prosedur umum dengan langkah-langkah sebagai berikut (Kantardzic, 2003):
1. Merumuskan permasalahan dan hipotesis
Pada langkah ini dispesifikasikan sekumpulan variabel yang tidak diketahui
hubungannya dan jika memungkinkan dispesifikasikan bentuk umum dari
keterkaitan variabel sebagai hipotesis awal.
2. Mengoleksi data
Langkah ini menitikberatkan pada cara bagaimana data dihasilkan dan dikoleksi.
Secara umum ada dua kemungkinan yang berbeda. Yang pertama adalah ketika
proses pembangkitan data dibawah kendali dari ahli. Pendekatan ini disebut juga
dengan percobaan yang dirancang (designed experiment). Kemungkinan yang kedua adalah ketika ahli tidak memiliki pengaruh pada proses pembangkitan data,
dikenal sebagai pendekatan observasional.
3. Pra pengolahan data
Pra pengolahan data melibatkan dua tugas utama yaitu:
a. Deteksi dan pembuangan data asing (outlier)
Data asing merupakan data dengan nilai yang tidak dibutuhkan karena tidak
konsisten pada sebagian pengamatan. Biasanya data asing dihasilkan dari
kesalahan pengukuran, kesalahan pengkodean dan pencatatan dan beberapa
nilai abnormal yang wajar. Ada dua strategi untuk menangani data asing, yang
pertama mendeteksi dan berikutnya membuang data asing sebagai bagian dari
fase pra pengolahan. Yang kedua adalah mengembangkan metode pemodelan
yang kuat yang tidak merespon data asing.
b. Pemberian skala, pengkodean dan seleksi fitur
Pra pengolahan data menyangkut beberapa langkah seperti memberikan skala
variabel dan beberapa jenis pengkodean. Sebagai contoh, satu fitur dengan
range [0, 1] dan yang lain dengan range [-100, 100] tidak akan memiliki bobot
yang sama pada teknik yang diaplikasikan dan akan berpengaruh pada hasil
4. Mengestimasi model
Pemilihan dan implementasi dari tehnik data mining yang sesuai merupakan tugas utama dari fase ini. Proses ini tidak mudah, biasanya dalam pelatihan,
implementasi berdasarkan pada beberapa model dan pemilihan model yang terbaik
merupakan tugas tambahan.
5. Menginterpretasikan model dan menarik kesimpulan
Pada banyak kasus, model data mining akan membantu dalam pengambilan keputusan. Metode data mining modern diharapkan akan menghasilkan hasil akurasi yang tinggi dengan menggunakan model dimensi-tinggi.
Pengetahuan yang baik pada keseluruhan proses sangat penting untuk
kesuksesan aplikasi. Tidak peduli seberapa kuat metode data mining yang digunakan, hasil dari model tidak akan valid jika pra pengolahan dan pengkoleksian data tidak
benar atau jika rumusan masalah tidak berarti.
2.3. Klasifikasi
Salah satu tugas utama dari data mining adalah klasifikasi. Klasifikasi digunakan untuk menempatkan bagian yang tidak diketahui pada data ke dalam kelompok yang
sudah diketahui. Klasifikasi menggunakan variabel target dengan nilai nominal.
Dalam satu set pelatihan, variabel target sudah diketahui. Dengan pembelajaran dapat
ditemukan hubungan antara fitur dengan variabel target. Ada dua langkah dalam
proses klasifikasi (Han and Kamber, 2006) :
a. Pembelajaran (learning) : pelatihan data dianalisis oleh algoritma klasifikasi. b. Klasifikasi: data yang diujikan digunakan untuk mengkalkulasi akurasi dari aturan
klasifikasi. Jika akurasi dianggap dapat diterima, aturan dapat diterapkan pada
Berikut merupakan langkah proses klasifikasi, yang dapat dilihat pada gambar 2.2.
Gambar 2.2 Langkah Proses Klasifikasi (Han and Kamber, 2006)
Training Data New Data
Classification Rules
name age income loan decision
Juan Bello senior low safe
Silvia Crest middle_aged low risky
Anne Yee middle_aged high safe
... ... ... ...
(John Henry, middle_aged, low)
Loan decision?
risky
Training Data
Classification Algorithm
Classification Rules
name age income loan decision
Sandy Jones young low risky
Bill Lee young low risky
Caroline Fox middle_aged low safe
Rick Field middle_aged low risky
Susan Lake senior low safe
Claire Phips senior medium safe
Joe Smith middle_aged low safe
... ... ... ... IF age = youth THEN loan_decision = risky
IF income = high THEN loan_decision = safe IF age = middle_aged AND income = low
2.4. Metode Naive Bayes
Naive Bayes merupakan algoritma klasifikasi yang sederhana dimana setiap atribut bersifat independent dan memungkinkan berkontribusi terhadap keputusan akhir (Xhemali, 2009). Algoritma Naive Bayes merupakan salah satu algoritma yang terdapat pada teknik klasifikasi. Naive Bayes merupakan pengklasifikasian dengan metode probabilias dan statistik yang dikemukan oleh ilmuwan Inggris Thomas
Bayes, yaitu memprediksi peluang di masa depan berdasarkan pengalaman di masa
sebelumnya sehingga dikenal sebagai Teorema Bayes. Teorema tersebut dikombinasikan dengan Naive dimana diasumsikan kondisi antar atribut saling bebas. Klasifikasi Naive Bayes diasumsikan bahwa ada atau tidak ciri tertentu dari sebuah kelas tidak ada hubungannya dengan ciri dari kelas lainnya.
Persamaan dari teorema Bayes adalah :
( | ) = ( | ). ( )( )
Keterangan :
X : Data dengan class yang belum diketahui
H : Hipotesis data X merupakan suatu class spesifik
P(H|X) : Probabilitas hipotesis H berdasar kondisi X (posterior probability)
P(H) : Probabilitas hipotesis H (prior probability)
P(X|H) : Probabilitas X berdasarkan kondisi pada hipotesis H
P(X) : Probabilitas X
Untuk menjelaskan teorema Naive Bayes, perlu diketahui bahwa proses klasifikasi memerlukan sejumlah petunjuk untuk menentukan kelas apa yang cocok
bagi sampel yang dianalisis tersebut. Karena itu, teorema Bayes di atas disesuaikan
sebagai berikut :
( | … ) = ( ). ( … | )
( … )
Dimana variabel C mempresentasikan kelas, sementara variabel ( … )
mempresentasikan karakteristik petunjuk yang dibutuhkan untuk melakukan
karakteristik tertentu dalam kelas C (Posterior) adalah peluang munculnya kelas C (sebelum masuknya sampel tersebut, seringkali disebut Prior), dikali dengan peluang kemunculan karakteristik-karakteristik sampel pada kelas C (disebut juga likelihood), dibagi dengan peluang kemunculan karakteristik-karakteristik sampel secara global
(disebut juga evidence). Karena itu, rumus di atas dapat pula ditulis secara sederhana sebagai berikut :
= ℎ
Nilai evidence selalu tetap untuk setiap kelas pada satu sampel. Nilai dari
posterior tersebut nantinya akan dibandingkan dengan nilai-nilai posterior kelas lainnya untuk menentukan ke kelas apa suatu sampel akan diklasifikasikan.
Penjabaran lebih lanjut rumus Bayes tersebut dilakukan dengan menjabarkan
( | … ) menggunakan aturan perkalian sebagai berikut :
( | … ) = ( ). ( … | )
= ( ). ( | ) ( … | , )
= ( ). ( | ) ( | , ) ( … | , , )
= ( ). ( | ) ( | , ) ( | , , ) ( … | , , , )
= ( ). ( | ) ( | , ) ( | , , ) … ( | , , , … ! )
Dapat dilihat bahwa hasil penjabaran tersebut menyebabkan semakin banyak
dan semakin kompleksnya faktor-faktor syarat yang mempengaruhi nilai probabilitas,
yang hampir mustahil untuk dianalisa satu persatu. Akibatnya, perhitungan tersebut
menjadi sulit untuk dilakukan. Disinilah digunakan asumsi independensi yang sangat
tinggi (naif), bahwa masing-masing petunjuk ( , … ) saling bebas (independent) satu sama lain. Dengan asumsi tersebut, maka berlaku suatu kesamaan sebagai berikut
:
" #$ %& = " #"∩ %& %& =
( #) " %&
" %& = ( #)
Untuk i ≠ j, sehingga
Dari persamaan di atas dapat disimpulkan bahwa asumsi independensi naif
tersebut membuat syarat peluang menjadi sederhana, sehingga perhitungan menjadi
mungkin untuk dilakukan. Selanjutnya penjabaran ( | … ) dapat disederhanakan
menjadi :
( | … ) = ( ) ( | ) ( | ) ( | ) ...
= ( ) ∏)*+ ( | )
Persamaan di atas merupakan model teorema Naive Bayes yang selanjutnya akan digunakan dalam proses klasifikasi. Untuk klasifikasi dengan data kontinyu
digunakan rumus Densitas Gauss :
" # = # | , = -%& = 1
/2πσ 3 e
!(56!7#%)98#% 8
Keterangan :
P : Peluang
# : Atribut ke i
# : Nilai atribut ke i
Y : Kelas yang dicari -% : Sub kelas Y yang dicari
µ : Mean, menyatakan rata-rata dari seluruh atribut
σ : Deviasi standar, menyatakan varian dari seluruh atribut
Adapun alur dari metode Naive Bayes adalah sebagai berikut : 1. Input data training
2. Baca data training.
3. Hitung jumlah dan probabilitas, namun apabila data numerik maka :
a. Cari nilai mean dan standar deviasi dari masing-masing parameter yang merupakan data numerik.
b. Cari nilai probabilistik dengan cara menghitung jumlah data yang sesuai dari
kategori yang sama dibagi dengan jumlah data pada kategori tersebut.
Berikut merupakan skema Naive Bayes, yang dapat dilihat pada gambar 2.3.
Gambar 2.3 Skema Naive Bayes
Selesai
Tidak Ya
Jumlah dan Probabilitas
Apakah Data Numerik? Baca Data Training
Tabel Probabilitas
Mean tiap Parameter
Standar Deviasi tiap Parameter
Tabel Mean dan Standar Deviasi Mulai
Input Data String
Solusi Konversi Data
Konsep dari perhitungan Naive Bayes dapat dijelaskan dengan menggunakan contoh yang terdapat pada data sebagai berikut :
Tabel 2.1 Data Pemain dan Posisi
Nama Dribbling Passing Shooting Technique Stamina Posisi
Andi Baik Kurang Baik Baik Kurang Penyerang
Budi Kurang Baik Kurang Kurang Baik Bek
Candra Baik Kurang Kurang Kurang Baik Bek
Doni Baik Baik Baik Baik Kurang Penyerang
Erick Kurang Kurang Baik Baik Baik Bek
Faisal Baik Baik Kurang Kurang Baik Penyerang
Gani Kurang Baik Baik Kurang Kurang Bek
Naive Bayes akan menentukan kelas dari data pemain baru berikut :
Haris (Dribbling = Baik, Passing = Baik, Shooting = Kurang, Technique = Baik,
Stamina = Kurang)
P(Y = Bek) =
: = 0.57 P(Y = Penyerang) = : = 0.43
P(Dribble = Baik | Y = Bek) = 1<4 P(Dribble = Baik | Y = Penyerang) = 3<3 P(Passing = Baik | Y = Bek) = 2<4 P(Passing = Baik | Y = Penyerang) = 2<3 P(Shooting = Kurang | Y = Bek) = 2<4 P(Shooting = Kurang | Y = Penyerang) = 1<3 P(Technique = Baik | Y = Bek) = 1<4
P(Bek) * P(Dribble | Bek) * P(Passing | Bek) * P(Shooting | Bek) * P(Technique | Bek) * P(Stamina | Bek)
= 4<7 * 1<4 * 2<4 * 2<4 * 1< 4* 1<4 = 0,0022
P(Penyerang) * P(Dribble | Penyerang) * P(Passing | Penyerang) * P(Shooting | Penyerang) * P(Technique | Penyerang) * P(Stamina | Penyerang)
= 3<7 * 3<3 * 2<3 * 1<3 * 2< 3* 2<3 = 0,0427
Dari hasil di atas, terlihat bahwa nilai probabilitas tertinggi ada pada kelas (P |
Penyerang), sehingga dapat disimpulkan bahwa Haris masuk ke dalam klasifikasi “Penyerang”.
2.5. Android
Android merupakan sebuah sistem operasi yang berbasis Linux untuk telepon seluler seperti smartphone dan komputer tablet. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh
berbagai macam peranti bergerak.
Sampai pada saat ini, sistem operasi Android sudah memasuki versi 4.2. Uniknya, penanaman versi Android selalu menggunakan nama makanan dan diawali
dengan abjad yang berurutan seperti berikut (Arif, 2013) :
1. Android version 1.5 (Cupcake) 2. Android version 1.6 (Donut) 3. Android version 2.0/2.1 (Eclair)
4. Android version 2.2 (Frozen Yogurt/Froyo) 5. Android version 2.3 (Gingerbread)
2.6. Sepak Bola
Awal mula munculnya sepak bola cukup membingungkan. Beberapa dokumen
mengatakan sepak bola berasal dari masa Romawi, namun ada juga yang menyatakan
bahwa sepak bola berasal dari daratan Cina. FIFA sendiri sebagai badan sepak bola
dunia menyatakan bahwa sepak bola berawal dari permainan yang dilakukan oleh
masyarakat Cina pada abad ke-2 hingga ke-3 sebelum Masehi. Olah raga ini dikenal
dengan nama “Cuju“. Sepak bola modern yang kita kenal sekarang diakui oleh berbagai pihak berasal dari Inggris. Sepak bola modern ini mulai dimainkan pada
pertengahan abad ke-19 di sekolah-sekolah di daerah Inggris Raya. Pada tahun 1857
berdiri klub sepak bola pertama di dunia, dengan nama Sheffield Football Club. Klub sepak bola ini merupakan gabungan dari beberapa sekolah yang memainkan
permainan sepak bola. Pada saat yang sama, tepatnya tahun 1863, berdiri badan
asosiasi sepak bola di Inggris, dengan nama Football Association (FA). Pada saat itu badan inilah yang mengeluarkan peraturan dasar permainan sepak bola, sehingga
sepak bola menjadi lebih terorganisir.
Pada tahun 1886 terbentuk badan yang mengeluarkan peraturan sepak bola
modern di dunia, dengan nama International Football Association Board (IFAB). IFAB terbentuk setelah adanya pertemuan antara FA dengan Scottish Football Association, Football Association of Wales, dan Irish Football Association di Manchester, Inggris. Hingga saat ini IFAB adalah badan yang mengeluarkan berbagai
peraturan pada permainan sepak bola, mulai dari peraturan dasar hingga peraturan
yang menyangkut teknik permainan serta perpindahan pemain.
Tidak adanya badan yang mengatur permainan sepak bola di dunia internasional
membuat perkembangan olah raga ini agak terhambat. Disadari oleh para pelaku
sepak bola bahwa penting untuk membentuk sebuah organisasi yang membawahi dan
mengatur permainan sepak bola secara global. Karena itu pada tanggal 21 Mei 1904
dibentuk sebuah badan sepak bola internasional di Perancis dengan nama Fédération Internationale de Football Association (FIFA). Meskipun terbentuk di Perancis, namun kantor pusat dari FIFA terdapat di Zurich, Swiss. Sedangkan presiden pertama
2.6.1.Pengenalan Sepak Bola
Sepak bola adalah salah satu olahraga yang sangat populer di dunia. Dalam
pertandingan, olahraga ini dimainkan oleh dua kelompok berlawanan yang
masing-masing berjuang untuk memasukkan bola ke gawang kelompok lawan.
Masing-masing kelompok beranggotakan sebelas pemain, dan karenanya kelompok tersebut
juga dinamakan kesebelasan. Dua tim yang masing-masing terdiri dari 11 orang
bertarung untuk memasukkan sebuah bola bundar ke gawang lawan ("mencetak gol").
Tim yang mencetak lebih banyak gol adalah sang pemenang (biasanya dalam jangka
waktu 90 menit, tetapi ada cara lainnya untuk menentukan pemenang jika hasilnya
seri). Akan diadakan tambahan waktu 2x15 menit dan apabila dalam tambahan waktu
hasilnya masih seri, akan diadakan adu penalti yang setiap timnya akan diberikan lima
kali kesempatan untuk menendang bola ke arah gawang dari titik penalti yang berada
di dalam daerah kiper hingga hasilnya bisa ditentukan. Peraturan terpenting dalam
mencapai tujuan ini adalah para pemain (kecuali penjaga gawang) tidak boleh
menyentuh bola dengan tangan mereka selama masih dalam permainan.
Sebuah pertandingan diperintah oleh seorang wasit yang mempunyai
"wewenang penuh untuk menjalankan pertandingan sesuai peraturan permainan dalam
suatu pertandingan yang telah diutuskan kepadanya", dan keputusan-keputusan
pertandingan yang dikeluarkannya dianggap sudah final. Sang wasit dibantu oleh dua
orang asisten wasit dan seorang ofisial keempat yang dapat menggantikan seorang
ofisial lainnya jika diperlukan.
2.6.2.Posisi dan Peran Pemain
Satu tim sepak bola terdiri dari 11 orang pemain yang memiliki posisi dan tugas yang
berbeda-beda. Secara umum ada 4 posisi pemain dalam sepak bola, diantaranya:
1. Penjaga Gawang / Kiper
Bertugas menjaga daerah gawang dan mencegah bola masuk ke gawang.
2. Pemain Bertahan / Bek
Bertugas menjaga daerah pertahanan sendiri agar lawan tidak bisa membobol
gawang yang dijaga oleh penjaga gawang.
3. Pemain Tengah / Gelandang
Untuk posisi ini mempunyai tugas ganda, yaitu sebagai penyeimbang. Artinya saat
bola dari bek untuk diarahkan ke penyerang, sedangkan waktu diserang seorang
gelandang adalah orang pertama yang harus merebut bola dari kaki lawan, sebelum
bek.
4. Pemain Depan / Penyerang
Bertugas untuk mencetak gol. Untuk posisi ini, seorang pemain harus mempunyai
naluri dan penempatan posisi yang bagus. Penyerang juga harus bisa
memaksimalkan peluang sekecil apapun untuk menjadi sebuah gol. Karena dalam
permainan yang sebenarnya, seorang penyerang akan mendapat kawalan dari
pemain bertahan lawan.
Berikut merupakan gambaran dari posisi pemain sepak bola, yang dapat dilihat pada
gambar 2.4.
Gambar 2.4 Posisi Pemain Sepak Bola
2.7. Penelitian yang Relevan
Berikut ini beberapa penelitian tentang sistem pendukung keputusan yang terkait
dengan metode Naive Bayes :
Bayes didukung oleh ilmu probabilistik dan ilmu statistika khususnya penggunaan data petunjuk untuk mendukung keputusan pengklasifikasian. Pada algoritma
Naive Bayes, semua atribut akan memberikan kontribusinya dalam pengambilan keputusan, dengan bobot atribut yang sama penting dan setiap atribut saling bebas
satu sama lain.
b. Sri Kusumadewi (2009) dalam jurnal yang berjudul Klasifikasi Status Gizi Menggunakan Naive Bayes Classification. Menyatakan bahwa algoritma Naive Bayes Classification dapat digunakan sebagai salah satu metode untuk klasifikasi status gizi berdasarkan hasil pengukuran antropometri dan model sistem yang
dibangun memiliki kinerja yang baik karena hasil pengujian menunjukkan total
kinerja sebesar 0,932 atau 93,2%.
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem bertujuan untuk melakukan identifikasi persoalan-persoalan yang akan
muncul dalam pembuatan sistem, hal ini dilakukan agar pada saat proses perancangan
aplikasi tidak terjadi kesalahan yang berarti, sehingga sistem yang dirancang dapat
berjalan dengan baik, tepat guna dan ketahanan dari sistem tersebut akan lebih terjaga
serta selesai tepat pada waktu yang telah ditentukan. Ada dua tahapan analisis dalam
tugas akhir ini yaitu: analisis masalah dan analisis persyaratan.
Sistem ini akan melakukan perhitungan dan memberikan informasi dalam
penentuan posisi ideal pemain dalam sepak bola. Sistem ini dirancang dengan
menggunakan metode Naive Bayes.
3.1.1. Analisis Masalah
Analisis masalah merupakan proses mengidentifikasi sebab dan akibat dibangunnya
sebuah sistem agar sistem yang akan dibangun tersebut dapat berjalan sebagaimana
mestinya sesuai dengan tujuan dari sistem itu. Dalam sepak bola, terdapat beberapa
posisi yang diperankan oleh pemainnya. Saat ini masih banyak pelatih yang merasa
kesulitan dalam menentukan posisi ideal pemainnya. Sehingga banyak pemain yang
tidak dapat mengeluarkan kemampuan terbaiknya dikarenakan penempatan posisi
yang kurang ideal bagi pemain tersebut. Oleh karena itu dibutuhkan sebuah sistem
untuk memberikan informasi yang tepat dalam proses penentuan posisi ideal pemain
dalam sepak bola berdasarkan kemiripan data sebelumnya yang dipenuhi dengan
atribut pemain dan juga posisinya dengan menggunakan metode Naive Bayes.
cause-and-effect diagram. Pemakaian diagram Ishikawa yang paling umum adalah untuk mencegah efek serta mengembangkan kualitas produk. Analisa masalah lebih
jelas melalui diagram Ishikawa yang dapat dilihat pada Gambar 3.1.
Gambar 3.1 Diagram Ishikawa
Berdasarkan Gambar 3.1 dapat diketahui bahwa permasalahan penentuan posisi ideal
pemain dalam sepak bola dikarenakan banyaknya posisi pemain dan atribut pemain
yang ada dan juga belum adanya sebuah sistem informasi yang ditujukan untuk
menyelesaikan masalah tersebut. Untuk itu dibuatlah Sistem Pendukung Keputusan
dengan menggunakan metode Naive Bayes pada platform Android.
3.1.2. Analisis Persyaratan
Analisis persyaratan terbagi dua bagian, yaitu persyaratan fungsional dan persyaratan
nonfungsional. Persyaratan fungsional mendeskripsikan aktivitas yang disediakan suatu sistem. Sedangkan persyaratan nonfungsional mendeskripsikan fitur, karakteristik dan batasan lainnya.
3.1.2.1. Persyaratan Fungsional
Kebutuhan fungsional yang harus dimiliki oleh sistem dalam menentukan posisi ideal
pemain dalam sepak bola adalah :
1. Sistem dapat menerima inputan data pemain dan atribut.
2. Sistem dapat menampilkan informasi posisi ideal pemain yang sesuai
3.1.2.2. Persyaratan Nonfungsional
Kebutuhan nonfungsional mencakup karakteristik berikut: 1. Performa
Sistem yang akan dibangun harus dapat menampilkan hasil pemilihan
yang sesuai dengan apa yang dipilih.
2. Mudah dipelajari dan digunakan
Sistem yang akan dibangun harus memiliki tampilan yang user friendly
sehingga penggunadapat mengakses sistem dengan mudah.
3. Hemat biaya
Sistem yang dibangun tidak memerlukan perangkat tambahan ataupun
perangkat pendukung lainnya yang dapat mengeluarkan biaya.
3.1.3. Pemodelan
Pemodelan sistem dilakukan untuk memperoleh gambaran yang lebih jelas tentang
objek apa saja yang akan berinteraksi dengan sistem, serta hal-hal apa saja yang harus
dilakukan oleh sebuah sistem sehingga sistem dapat berfungsi dengan baik sesuai
dengan kegunaannya.
Pada penelitian ini digunakan UML (Unified Modeling Language) sebagai bahasa pemodelan untuk mendesain dan merancang Sistem Pendukung Keputusan
penentuan posisi ideal pemain dengan metode Naive Bayes. Model UML yang digunakan antara lain use case diagram, activity diagram, dan sequence diagram.
3.1.3.1. Use Case Diagram
Gambar 3.2 Use Case Diagram sistem
Berikut ini merupakan tabel dokumen naratif use case yang dapat dilihat pada tabel 3.1, tabel 3.2 dan tabel 3.3.
Tabel 3.1 Dokumentasi Naratif Use Case Database
Nama Use Case Database
Actor Pengguna
Description Use case ini menampilkan database pemain yang menjadi patokan dalam perhitungan metode Naive Bayes.
Pre-Condition Aplikasi siap menerima inputan.
Typical course of Event
Kegiatan Pengguna Respon Sistem
1. Menekan tombol
database.
2. Menampilkan database
pemain.
Alternatecourse Aksi Actor Respon sistem
Tabel 3.2 Dokumentasi Naratif Use Case Proses Naive Bayes Nama Use Case Proses Naive Bayes
Actor Pengguna
Description Use case ini menjelaskan proses penentuan posisi ideal pemain yang akan digunakan dari sistem ini.
Pre-Condition Aplikasi siap menerima inputan.
Typical course of Event
Kegiatan Pengguna Respon Sistem
1. Menekan tombol
Proses Naive Bayes.
2. Menampilkan isi dari pilihan
proses Naive Bayes.
3. Memasukkan data
untuk tiap-tiap atribut
pemain.
perhitungan dengan metode
Naive Bayes.
7. Sistem akan menampilkan
hasil perhitungan metode
Naive Bayes.
Alternatecourse Aksi Actor Respon sistem
Post Condition Sistem telah melakukan proses penentuan posisi ideal pemain.
Tabel 3.3 Dokumentasi Naratif Use Case Help Nama Use Case Help
Actor Pengguna
Description Use case ini menjelaskan cara penggunaan dari sistem ini
Pre-Condition Aplikasi siap menerima inputan.
Typical course of Event
Kegiatan Pengguna Respon Sistem
1. Menekan tombol Help. 2. Menampilkan isi dari menu
Help tersebut.
Alternatecourse Aksi Actor Respon sistem
3.1.3.2. Activity Diagram
Activity Diagram adalah teknik untuk menggambarkan logika procedural, jalur kerja sistem. Diagram ini menggambarkan berbagai alur kerja dalam sistem yang sedang
dirancang, bagaimana masing-masing alur kerja berawal, decision yang mungkin terjadi, dan bagaimana mereka aktifitas atau alur kerja berakhir. Proses penentuan
dengan metode Naive Bayes, dapat dilihat Activity Diagram pada Gambar 3.3.
Gambar 3.3 Activity Diagram
3.1.3.3. Sequence Diagram
Sequence Diagram merupakan diagram yang menunjukkan bagaimana kelompok-kelompok objek saling berkolaborasi dalam beberapa behavior. Sequence diagram
secara khusus, menjabarkan behavior sebuah skenario tunggal. Diagram tersebut menunjukkan sejumlah objek contoh dan pesan-pesan yang melewat objek-objek
Gambar 3.4 Sequence Diagram
Pada tahap ini, yang dilakukan adalah membuka form penentuan posisi pemain,
kemudian memasukkan data-data atribut pemain, yaitu Dribbling, Passing, Crossing, Shooting, Accelaration, Agility, Stamina, Jumping, Aggression, Composure, Creativity, Decisioning, Positioning, Marking, dan Teamwork. Lalu sistem akan mengakses ke database pemain yang telah dimasukkan kemudian melakukan
perhitungan dengan metode Naive Bayes. Kemudian hasil perhitungan akan ditampilkan secara berurutan dengan nilai terbaik dari beberapa posisi yang ada.
3.1.3.4. Kamus Data
Kamus data merupakan sebuah daftar yang mengatur semua komponen data yang
berhubungan terhadap sistem dengan definisi singkat dan sejelas-jelasnya sehingga
pengguna dan analisis sistem dapat sama-sama mengerti tentang data masukan,
keluaran, komponen penyimpanan dan kalkulasi lanjutan. Kamus data pada sistem
Tabel 3.4 Kamus Data
Data Field Type Deskripsi
Tb_Pemain Id Integer (primary key) No Id pemain
Nama Varchar (20) Nama pemain
Dribbling String Nilai Dribbling pemain
Passing String Nilai Passing pemain
Crossing String Nilai Crossing pemain
Shooting String Nilai Shooting pemain
Accelaration String Nilai Accelaration pemain
Agility String Nilai Agility pemain
Stamina String Nilai Stamina pemain
Jumping String Nilai Jumping pemain
Aggression String Nilai Aggression pemain
Composure String Nilai Composure pemain
Creativity String Nilai Creativity pemain
Decisioning String Nilai Decisioning pemain
Positioning String Nilai Positioning pemain
Marking String Nilai Marking pemain
Teamwork String Nilai Teamwork pemain
Posisi String Posisi pemain
3.1.3.5. Flowchart Sistem
Flowchart atau bagan alir adalah bagan (chart) yang menunjukkan alir (flow) didalam program atau prosedur sistem secara logika. Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya.
Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol
menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis
Gambar 3.5 Flowchart Sistem
Kiper Bek Gelandan
3.1.3.6. Pseudecode Program
Pseudecode adalah suatu algoritma yang untuk dapat menjelaskannya harus menggunakan bahasa tingkat tinggi. Bahasa tingkat tinggi adalah bahasa yang
dimengerti manusia dan dapat digambarkan dengan mudah sehingga dapat dipahami
oleh manusia itu sendiri. Pseudecode dari Naive Bayes pada sistem ini dapat dilihat pada Tabel. 3.5.
Tabel 3.5 Pseudecode Naive Bayes
1. double dri,pas,cro,sho,acc,agi,sta,jum,agg,com,cre,dec,pos,mar,tea
String dribbling, passing, crossing, shooting, accelaration, agility, stamina,
jumping, aggression, composure, creativity, decisioning, positioning, marking,
teamwork
String kategori,gambarprio
double sort[]
String prioritas[]= new String[4]
String cari,s_tring,nilaikiper,nilaibek,nilaigelandang,nilaipenyerang,kesatu
double nKiper,nBek,nGelandang,nPenyerang
double bykdatabase
double hKiper,hBek,hGelandang,hPenyerang
Cursor cursor
double swap
2. for i <- 0 to 14
if (i==0)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
dribbling='"+dribbling+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
dri <- cursor.getCount()
else if (cursor==null)
dri <- 0
else if (i==1)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
passing='"+passing+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
pas <- cursor.getCount()
else if (cursor==null)
pas <- 0
end if
else if (i==2)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
crossing='"+crossing+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
cro <- cursor.getCount()
else if (cursor==null)
cro <- 0
end if
else if (i==3)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
shooting='"+shooting+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
sho <- cursor.getCount()
else if (cursor==null)
sho <- 0
end if
else if (i==4)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
accelaration='"+accelaration+"' AND posisi='"+kategori+"'",
null)
if (cursor!=null/*cursor.getCount()>0*/)
else if (cursor==null)
acc <- 0
end if
else if (i==5)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
agility='"+agility+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
agi <- cursor.getCount()
else if (cursor==null)
agi <- 0
end if
else if (i==6)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
stamina='"+stamina+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
sta <- cursor.getCount()
else if (cursor==null)
sta <- 0
end if
else if (i==7)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
jumping='"+jumping+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
jum <- cursor.getCount()
else if (cursor==null)
jum <- 0
else if (i==8)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
aggression='"+aggression+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
agg <- cursor.getCount()
else if (cursor==null)
agg <- 0
end if
else if (i==9)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
composure='"+composure+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
com <- cursor.getCount()
else if (cursor==null)
com <- 0
end if
else if (i==10)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
creativity='"+creativity+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
cre <- cursor.getCount()
else if (cursor==null)
cre <- 0
end if
else if (i==11)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
decisioning='"+decisioning+"' AND posisi='"+kategori+"'",
null)
if (cursor!=null/*cursor.getCount()>0*/)
else if (cursor==null)
dec <- 0
end if
else if (i==12)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
positioning='"+positioning+"' AND posisi='"+kategori+"'",
null)
if (cursor!=null/*cursor.getCount()>0*/)
pos <- cursor.getCount()
else if (cursor==null)
pos <- 0
end if
else if (i==13)
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
marking='"+marking+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
mar <- cursor.getCount()
else if (cursor==null)
mar=0
end if
else
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
teamork='"+teamwork+"' AND posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
tea <- cursor.getCount()
else if (cursor==null)
tea <- 0
end if
end if
3. for i <- 0 to 3
if (i==0)
kategori <- 'kiper'
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
nKiper <- cursor.getCount()
else if (cursor==null)
nKiper <- 0
end if
hKiper <- (dri/nKiper)*(pas/nKiper)*(cro/nKiper)*(sho/nKiper)*(acc/nKiper)
*(agi/nKiper)*(sta/nKiper)*(jum/nKiper)*(agg/nKiper)*(com/nKiper)*
(cre/nKiper)*(dec/nKiper)*(pos/nKiper)*(mar/nKiper)*(tea/nKiper)*
(nKiper/bykdatabase)
sort[0] <- hKiper
darikiper <- 'Skor Kiper= '+df.format(hKiper)
else if (i==1)
kategori <- 'bek'
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
nBek <- cursor.getCount()
else if (cursor==null)
nBek <- 0
end if
hBek <- (dri/nBek)*(pas/nBek)*(cro/nBek)*(sho/nBek)*(acc/nBek)*
(agi/nBek)*(sta/nBek)*(jum/nBek)*(agg/nBek)*(com/nBek)*(cre/nBek)*
(dec/nBek)*(pos/nBek)*(mar/nBek)*(tea/nBek)*(nBek/bykdatabase)
sort[1] <- hBek
else if (i==2)
kategori <- 'gelandang'
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
nGelandang <- cursor.getCount()
else if (cursor==null)
nGelandang <- 0
end if
hGelandang <- (dri/nGelandang)*(pas/nGelandang)*(cro/nGelandang)*
(sho/nGelandang)*(acc/nGelandang)*(agi/nGelandang)*(sta/nGelandang)*
(jum/nGelandang)*(agg/nGelandang)*(com/nGelandang)*(cre/nGelandang)*
(dec/nGelandang)*(pos/nGelandang)*(mar/nGelandang)*(tea/nGelandang)*
(nGelandang/bykdatabase)
sort[2] <- hGelandang
darigelandang <- 'Skor Gelandang = '+df.format(hGelandang)
else
kategori <- 'penyerang'
cursor <- db.rawQuery("SELECT * FROM tabel_biodata where
posisi='"+kategori+"'", null)
if (cursor!=null/*cursor.getCount()>0*/)
nPenyerang <- cursor.getCount()
else if (cursor==null)
nPenyerang <- 0
end if
hPenyerang <- (dri/nPenyerang)*(pas/nPenyerang)*(cro/nPenyerang)*
(sho/nPenyerang)*(acc/nPenyerang)*(agi/nPenyerang)*(sta/nPenyerang)*
(jum/nPenyerang)*(agg/nPenyerang)*(com/nPenyerang)*(cre/nPenyerang)*
(dec/nPenyerang)*(pos/nPenyerang)*(mar/nPenyerang)*(tea/nPenyerang)*
sort[3] <- hPenyerang
daripenyerang <- 'Skor Penyerang= '+df.format(hPenyerang)
end if
end for
4. for c <- 0 to 3
for d <- 0 to 4-c-1
if (sort[d] < sort[d+1])
swap <- sort[d]
sort[d] <- sort[d+1]
sort[d+1] <- swap
end if
end for
end for
5. for j <- 0 to 3
if(sort[j]==hKiper)
nilaikiper <- 'kiper'
prioritas[j] <- 'kiper dengan skor '+df.format(hKiper)
else if (sort[j]==hBek)
nilaibek <- 'bek'
prioritas[j] <- 'bek dengan skor '+df.format(hBek)
else if (sort[j]==hGelandang)
nilaigelandang <- 'gelandang'
prioritas[j] <- 'gelandang dengan skor '+df.format(hGelandang)
else
nilaipenyerang <- 'penyerang'
prioritas[j] <- 'penyerang dengan skor '+df.format(hPenyerang)
end if
6. if (sort[0]==hKiper)
gambarprio <- 'kiper'
else if (sort[0]==hBek)
gambarprio <- 'bek'
else if (sort[0]==hGelandang)
gambarprio <- 'gelandang'
else if (sort[0]==hPenyerang)
gambarprio <- 'penyerang'
end if
Keterangan :
1. Inisialisasi variabel.
2. Pengambilan nilai untuk setiap atribut-atribut pemain berdasarkan posisinya.
3. Pengambilan jumlah pemain untuk setiap posisi Kiper, Bek, Gelandang dan
Penyerang. Dan melakukan perhitungan skor untuk masing-masing posisi.
4. Pengurutan berdasarkan skor tertinggi hingga terendah.
5. Pengembalian skor ke tiap-tiap posisi.
6. Pengambilan gambar berdasarkan posisi dengan skor tertinggi.
3.2. Perancangan Sistem
Proses perancangan antarmuka (interface) sebuah sistem adalah proses yang cukup penting dalam perancangan sebuah sistem. Merancang antarmuka merupakan bagian
yang paling penting dari merancang sebuah sistem. Sebuah antarmuka harus
dirancang dengan memperhatikan faktor pengguna sehingga sistem yang dibangun
3.2.1. Menu Utama
Perancangan Menu Utama dapat dilihat pada gambar 3.6.
Gambar 3.6 Rancangan Menu Utama
Tabel 3.6 Keterangan gambar rancangan Menu Utama
No. Keterangan
1. Imagebutton untuk menampilkan menu Database
2. Imagebutton untuk menampilkan menu Proses Naive Bayes 3. Imagebutton untuk menampilkan menu Help
3.2.2. Menu Database
Perancangan menu Database dapat dilihat pada gambar 3.7.
Gambar 3.7 Rancangan Menu Database
Tabel 3.7 Keterangan gambar rancangan Menu Database
No. Keterangan
3.2.3. Menu Proses Naive Bayes
Perancangan menu Proses Naive Bayes dapat dilihat pada gambar 3.8.
Gambar 3.8 Rancangan Menu Proses Naive Bayes
Tabel 3.8 Keterangan gambar rancangan Menu Proses Naive Bayes
No. Keterangan
1. Textview untuk menampilkan nama pemain 2. Textview untuk menampilkan atribut pemain
3.2.4. Menu Proses
Perancangan menu Proses dapat dilihat pada gambar 3.9.
Gambar 3.9 Rancangan Menu Proses
Tabel 3.9 Keterangan gambar rancangan Menu Proses
No. Keterangan
1. Textview untuk menampilkan nama pemain
3.2.5. Menu Help
Perancangan menu Help dapat dilihat pada gambar 3.10.
Gambar 3.10 Rancangan Menu Help
Tabel 3.10 Keterangan gambar rancangan Menu Help
No. Keterangan
1. Textview untuk menampilkan judul Help
3.2.6. Menu About
Perancangan menu About dapat dilihat pada gambar 3.11.
Gambar 3.11 Rancangan menu About
Tabel 3.11 Keterangan gambar rancangan menu About
No. Keterangan