APLIKASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN DI XYZ HELM
Alfonsus Doni Setyawan
ABSTRAK
Data mining merupakan proses untuk menganalisis kumpulan data yang
menghasilkan pengetahuan baru sehingga dapat membantu dalam pengambilan
keputusan. Terdapat metode Association Rule dalam data mining yang dapat
menentukan pola aturan dari kumpulan data. Data dalam penelitian ini bertujuan
untuk mengetahui pola penjualan di XYZ Helm dengan analisis hasil
menggunakan Algoritma Apriori. Penelitian ini diperoleh dari hasil penjualan
helm sejumlah 126 nota transaksi dengan 798 detil penjualan yang kemudian
diolah dengan algoritma tersebut dengan menentukan nilai support dan
confidence. Hasil analisis menunjukan terdapat 4 barang yang lolos dari minimum
support 40% dan minimum confidence 50% dan diharapkan dapat membantu
pemilik usaha dalam mengambil keputusan untuk penjualan selanjutnya.
DATA MINING APPLICATION USING APRIORI ALGORITHM
FOR ANALYSIS OF SALES PATTERN IN XYZ HELMET
Alfonsus Doni Setyawan
ABSTRACT
Data mining is the process to analyze data sets that produce new knowledge to
help making a decision. There is a method of Association Rule in the data mining
that can determine the rule pattern of the data sets. This research aims to know the
sales pattern in XYZ Helmet using apriori algorithm. The data
were obtained from the results of sales at XYZ helmet that totaled 126
transactions with 798 sales details which were analyzed using the algorithm by
determining the value of support and confidence. According to the result of
analysis, there are 4 items passed minimum support 40% and minimum
confidence 50%. This result is expected to help business owner in deciding next
sales plan.
APLIKASI DATA MINING
MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN
DI XYZ HELM
Skripsi
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Disusun oleh :
Alfonsus Doni Setyawan
105314096
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
i
DATA MINING APPLICATION
USING APRIORI ALGORITHM
FOR ANALYSIS OF SALES PATTERN
IN XYZ HELMET
Thesis
Presented as Partial Fullfilment of the Requirements
To Obtain the Computer Bachelor Degree
In Informatics Engineering
By :
Alfonsus Doni Setyawan
105314096
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
ii
HALAMAN PERSETUJUAN PEMBIMBING
SKRIPSI
APLIKASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN DI XYZ HELM
Dipersiapkan dan ditulis oleh :
Alfonsus Doni Setyawan
105314096
Telah disetujui oleh :
Pembimbing
iii
HALAMAN PENGESAHAN SKRIPSI
APLIKASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN DI XYZ HELM
Dipersiapkan dan ditulis oleh :
Alfonsus Doni Setyawan
105314096
Telah dipertahankan di depan Panitia Penguji
Pada tanggal ……… 2016
dan dinyatakan memenuhi syarat
Susunan Panitia Penguji:
Nama Lengkap
Tanda Tangan
Ketua
Drs.Haris Sriwindono M.Kom
...
Sekretaris
Paulina Heruningsih Prima Rosa M.Sc
...
Anggota
Ridowati Gunawan, S.Kom. M.T.
...
Yogyakarta, ………
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
Dekan,
iv
HALAMAN MOTTO
Jika ada mimpi selalu ada harapan
Jika ada harapan selalu ada usaha
Jika ada usaha selalu ada hasil
Jangan takut bermimpi untuk berhasil
Make dreams come true
(anonymous)
Berusahalah sampai tetes terakhir
Karena hasil tidak akan mengingkari usaha
(anonymous)
Katak selalu melompat kedepan
Walau jalan terjal menanti tak takut untuk melangkah
Hiduplah seperti katak
v
HALAMAN PERSEMBAHAN
Karya ini aku persembahkan untuk
Tuhan Yesus yang baik telah memberi karunia,
rahmat, dan penyertaanNya.
Bapak yang selalu ada, bahkan saat aku menulis halaman ini
aku percaya bapak ada disini.
Ibu dan adikku yang selalu memberikan
doa dan dukungan.
Dosen pembimbing skripsi yang telah memberikan
bimbingan dengan penuh kesabaran.
Kekasih yang selalu memberi semangat dan harapan
Serta kepada semua orang
vi
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak
memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam
daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, ……… 2016
Penulis,
vii
APLIKASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN DI XYZ HELM
Alfonsus Doni Setyawan
ABSTRAK
Data mining merupakan proses untuk menganalisis kumpulan data yang
menghasilkan pengetahuan baru sehingga dapat membantu dalam pengambilan
keputusan. Terdapat metode Association Rule dalam data mining yang dapat
menentukan pola aturan dari kumpulan data. Data dalam penelitian ini bertujuan
untuk mengetahui pola penjualan di XYZ Helm dengan analisis hasil
menggunakan Algoritma Apriori. Penelitian ini diperoleh dari hasil penjualan
helm sejumlah 126 nota transaksi dengan 798 detil penjualan yang kemudian
diolah dengan algoritma tersebut dengan menentukan nilai support dan
confidence. Hasil analisis menunjukan terdapat 4 barang yang lolos dari minimum
support 40% dan minimum confidence 50% dan diharapkan dapat membantu
pemilik usaha dalam mengambil keputusan untuk penjualan selanjutnya.
viii
DATA MINING APPLICATION USING APRIORI ALGORITHM
FOR ANALYSIS OF SALES PATTERN IN XYZ HELMET
Alfonsus Doni Setyawan
ABSTRACT
Data mining is the process to analyze data sets that produce new knowledge to
help making a decision. There is a method of Association Rule in the data mining
that can determine the rule pattern of the data sets. This research aims to know the
sales pattern in XYZ Helmet using apriori algorithm. The data
were obtained from the results of sales at XYZ helmet that totaled 126
transactions with 798 sales details which were analyzed using the algorithm by
determining the value of support and confidence. According to the result of
analysis, there are 4 items passed minimum support 40% and minimum
confidence 50%. This result is expected to help business owner in deciding next
sales plan.
ix
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma
Nama
:
Alfonsus Doni Setyawan
Nomor Mahasiswa
:
105314096
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah saya yang berjudul:
APLIKASI DATA MINING MENGGUNAKAN ALGORITMA APRIORI
UNTUK ANALISIS POLA PENJUALAN DI XYZ HELM
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan
kepada Perpusatakaan Universitas Sanata Dharma hak untuk menyimpan,
mengalihkan dalam bentuk media lain, mengelolanya di internet atau media lain
untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun
memberikan royalti kepada saya selama saya tetap mencantumkan nama saya
sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Dibuat di Yogyakarta
Pada tanggal,………
Yang menyatakan,
x
KATA PENGANTAR
Puji syukur dan terima kasih penulis panjatkan kepada Tuhan Yesus Kristus
atas segala berkat dan anugerah-Nya sehingga skripsi yang berjudul “APLIKASI
DATA MINING MENGGUNAKAN ALGORITMA APRIORI UNTUK
ANALISIS POLA PENJUALAN DI XYZ HELM” ini dapat diselesaikan dengan
baik. Skripsi ini disusun sebagai salah satu syarat untuk memperoleh gelar sarjana
di Program Studi Teknik Informatika, Fakultas Sains dan Teknologi Universitas
Sanata Dharma Yogyakarta.
Penulisan skripsi ini tentunya dapat selesai berkat dukungan dan bantuan dari
berbagai pihak. Oleh karena itu, penulis ingin mengucapkan banyak terima kasih
kepada :
1.
Bpk. Sudi Mungkasi, Ph.D., selaku Dekan Fakultas Sains dan Teknologi
Universitas Sanata Dharma.
2.
Ibu Dr. Anastasia Rita Widarti, M.Kom selaku Kepala Program Studi Fakultas
Psikologi Universitas Sanata Dharma.
3.
Ibu Ridowati Gunawan, S.Kom, M.T., selaku Dosen Pembimbing Skripsi.
Terima kasih atas kesabarannya dalam membimbing pengerjaan tugas akhir.
4.
Segenap Bapak / Ibu staf pengajar di Fakultas Sains dan Teknologi Universitas
Sanata Dharma, khususnya Program Studi Teknik Informatika. Terima kasih
untuk ilmu dan pelayanan yang telah diberikan.
5.
Bapak, Ibu dan adik yang tercinta. Terima kasih untuk dukungan dan doa yang
xi
6.
Hilda Muliastu Widesti, pacar yang tersayang. Terima kasih untuk kesabaran,
cinta, dan perhatiannya. Terima kasih telah selalu mengingatkan saat rasa
malas melanda.
7.
Untuk teman-teman di Universitas Sanata Dharma, dan semua teman-teman
lainnya yang selalu memberi dukungan, dan sindiran juga ilmu yang berguna
hingga skripsi saya selesai.
8.
Seluruh pihak yang telah membantu selesainya skripsi ini, yang tidak bisa
disebutkan satu per satu. Terima kasih banyak.
Pada akhirnya penulis menyadari bahwa skripsi ini memiliki banyak
kekurangan. Oleh karena itu, penulis mengharapkan saran dan kritik yang dapat
membuat skripsi ini menjadi lebih baik lagi.
Yogyakarta, ...2016
Penulis
xii
DAFTAR ISI
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN PEMBIMBING ... ii
HALAMAN PENGESAHAN
...iii
HALAMAN MOTTO ... iv
HALAMAN PERSEMBAHAN... v
HALAMAN PERNYATAAN KEASLIAN KARYA ... vi
ABSTRAK ... vii
ABSTRACT ... viii
HALAMAN PERSETUJUAN PUBLIKASI KARYA ILMIAH ... ix
KATA PENGANTAR ... x
DAFTAR ISI ... xii
DAFTAR GAMBAR ... xvi
DAFTAR TABEL... xviii
BAB I
PENDAHULUAN ... 1
1.1.Latar Belakang ... 1
1.2.Rumusan Masalah ... 3
1.3.Tujuan dan Manfaat ... 3
1.4.Batasan Masalah... 3
1.5.Metodologi ... 4
xiii
BAB II LANDASAN TEORI ... 7
2.1.
Pengertian Data Mining ... 7
2.2.
Proses Penambangan Data ... 7
2.3.
Teknik Penambangan Data ... 9
2.4.
Teknik Asosiasi ... 10
2.5.
Algoritma Apriori ... 12
BAB III ANALISIS DAN DESAIN SISTEM ... 16
3.1.
Identifikasi Sistem ... 16
3.2.
Analisis Sistem ... 17
3.3.
Pemrosesan Data ... 18
3.4.
Use Case Diagram ... 23
3.4.1.
Diagram Use Case ... 23
3.4.2.
Definisi Use Case ... 24
3.5.
Diagram Aktivitas ... 25
3.5.1.
Diagram Aktivitas Menginput Data ... 25
3.5.2.
Diagram Aktivitas Menginput Data Penjualan ... 25
3.5.3.
Diagram Aktivitas Melihat Histori Penjualan ... 26
3.5.4.
Diagram Aktivitas Mencari Rule Penjualan ... 26
3.5.5.
Diagram Aktivitas Melihat Hasil Apriori ... 27
3.6.
Diagram Sekuensial ... 28
3.6.1.
Diagram Sekuensial Menginput Data ... 28
3.6.2.
Diagram Sekuensial Menginput Data Penjualan... 28
xiv
3.6.4.
Diagram Sekuensial Mencari Rule Penjualan ... 29
3.6.5.
Diagram Sekuensial Melihat Hasil Apriori ... 30
3.7.
ER Diagram ... 30
3.7.1.
Model Data Konseptual... 30
3.7.2.
Model Data Logikal ... 31
3.7.3.
Model Data Fisikal ... 32
3.8.
Desain Program ... 34
BAB IV IMPLEMENTASI SISTEM ... 38
4.1.
Spesifikasi Hardware dan Software ... 38
4.4.1.
Spesifikasi Hardware ... 38
4.4.2.
Spesifikasi Software ... 38
4.2.
Pembuatan Database ... 38
4.3.
Koneksi Java dan MySQL ... 38
4.4.
Implementasi Program ... 40
4.4.1.
Halaman Utama ... 40
4.4.2.
Halaman Barang ... 40
4.4.3.
Halaman Penjualan ... 41
4.4.4.
Halaman Histori Penjualan ... 42
4.4.5.
Halaman Apriori ... 43
4.5.
Pengujian Program ... 50
BAB V ANALISIS SISTEM ... 53
5.1.
Analisis Sistem Pengujian ... 53
xv
5.3.
Kelebihan dan Kekurangan Program ... 55
5.3.1.
Kelebihan Program... 55
5.3.2.
Kekurangan Program ... 56
BAB VI PENUTUP ... 57
6.1.
Kesimpulan ... 57
6.2.
Saran ... 57
DAFTAR PUSTAKA ... 58
xvi
DAFTAR GAMBAR
Gambar 2.1 Langkah KDD ... 9
Gambar 3.1 Use Case ... 23
Gambar 3.2 Diagram Aktivitas Menginput Data Barang... 25
Gambar 3.3 Diagram Aktivitas Menginput Data Penjualan ... 25
Gambar 3.4 Diagram Aktivitas Melihat Histori Penjualan ... 26
Gambar 3.5 Diagram Aktivitas Mencari Rule Penjualan... 26
Gambar 3.6 Diagram Aktivitas Melihat Hasil Apriori... 27
Gambar 3.7 Diagram Sekuensial Menginput Data Barang ... 28
Gambar 3.8 Diagram Sekuensial Menginput Data Penjualan ... 28
Gambar 3.9 Diagram Sekuensial Melihat Histori Penjualan ... 29
Gambar 3.10 Diagram Sekuensial Mencari Rule Penjualan ... 29
Gambar 3.11 Diagram Sekuensial Melihat Hasil Apriori ... 30
Gambar 3.12 ER Diagram Konseptual... 30
Gambar 3.13 Desain Menu Utama ... 34
Gambar 3.14 Desain Menu Barang ... 35
Gambar 3.15 Desain Menu Penjualan ... 36
Gambar 3.16 Desain Histori Penjualan ... 37
Gambar 3.17 Desain Menu Apriori ... 37
Gambar 4.1 Halaman Utama ... 40
Gambar 4.2 Halaman Barang ... 41
Gambar 4.3 Halaman Penjualan ... 42
xvii
Gambar 4.5 Halaman Apriori ... 44
Gambar 4.6 Hasil Analisis ... 45
Gambar 4.7 Data Penjualan... 51
Gambar 4.8 Hasil Rule Program ... 51
Gambar 4.9 Hasil Manual Excel ... 52
xviii
DAFTAR TABEL
Tabel 2.1 Contoh Transaksi Penjualan... 13
Tabel 2.2 Contoh Penentuan C1... 13
Tabel 2.3 Contoh Kombinasi Data ... 14
Tabel 2.4 Contoh Kombinasi Data ... 15
Tabel 3.1 Atribut Tabel Penjualan_det ... 17
Tabel 3.2 Atribut Untuk Penambangan ... 18
Tabel 3.3 Atribut Tabel Detailpenjualan ... 19
Tabel 3.4 Atribut Tabel Detailpenjualancanvaser ... 20
Tabel 3.5 Definisi Use Case ... 24
Tabel 3.6 Tabel Logikal Warna ... 31
Tabel 3.7 Tabel Logikal Merk ... 31
Tabel 3.8 Tabel Logikal Tipe ... 31
Tabel 3.9 Tabel Logikal Barang... 31
Tabel 3.10 Tabel Logikal Penjualan_det ... 31
Tabel 3.11 Tabel Logikal Penjualan ... 32
Tabel 3.12 Tabel Logikal Pelanggan ... 32
Tabel 3.13 Tabel Fisikal Merk ... 32
Tabel 3.14 Tabel Fisikal Tipe ... 32
Tabel 3.15 Tabel Fisikal Barang ... 33
Tabel 3.16 Tabel Fisikal Penjualan_det ... 33
Tabel 3.17 Tabel Fisikal Penjualan ... 34
xix
Tabel 5.1 Hasil Pengujian ... 53
BAB I
PENDAHULUAN
1.1. Latar Belakang
Beberapa tahun terakhir, jumlah kendaraan terutama sepeda motor
meningkat di kota-kota besar. Misalnya, di Yogyakarta, jumlah motor
bertambah banyak setiap tahunnya sejak 2009 (Iskandar, 24 Agustus 2014).
Tidak mengherankan apabila penduduk di kota-kota besar memilih sepeda
motor sebagai alat transportasi utama sebab sepeda motor memudahkan
mereka untuk berpindah dari satu tempat ke tempat yang lain dengan cepat.
Selain itu, sepeda motor juga dapat membantu mereka menghemat waktu
untuk mencapai suatu tempat dibandingkan menggunakan kendaraan umum.
Ketika mengendarai sepeda motor, seseorang wajib menggunakan helm.
Helm merupakan alat pelindung keselamatan yang memiliki fungsi sangat
penting yaitu melindungi pengendara dari kecelakaan yang tidak diinginkan,
seperti jatuh atau terkena benturan. Untuk memaksimalkan fungsi pelindung
keselamatan tersebut, saat ini sudah banyak helm yang dilengkapi fitur
tambahan. Misalnya, ada helm yang dilengkapi dengan kaca ganda (double
visor) sehingga pengendara dapat menghindari sinar matahari yang
menyilaukan ketika mengendarai motor. Ada pula helm yang dilengkapi
dengan kunci pengaman (anti theft system) sehingga tidak mudah dicuri
ketika ditinggalkan di motor.
Pada saat ini, ada berbagai merk dan tipe helm yang beredar di pasaran.
Helm pun semakin menarik dengan aneka pilihan warna, motif, maupun
gambar. Hal ini membuat helm tidak hanya berfungsi sebagai alat pelindung
keselamatan namun juga membuat pengendara motor terlihat gaya.
XYZ Helm merupakan distributor penjualan helm yang melayani
permintaan dari Yogyakarta dan Jawa Tengah. Banyaknya permintaan helm
membuat perusahaan tersebut membutuhkan perangkat lunak untuk
2
transaksi yang disimpan dalam perangkat lunak tersebut, perusahaan dapat
dengan mudah mengetahui helm yang sesuai dengan permintaan pasar.
Salah satu area penerapan data mining adalah di dalam bidang promosi.
Bila sasaran promosi tidak ditentukan secara baik, dalam arti tidak
diupayakan mencari sasaran promosi yang potensial, maka hanya akan
menghabiskan banyak waktu dan biaya yang seharusnya bisa diminimalisir
melalui pemilihan target promosi yang baik. Salah satu cara yang dapat
diterapkan adalah dengan menerapkan penggunaan data mining. Dengan data
mining, diharapkan dapat mengoptimalkan penjualan. Penjualan barang yang
laku dan kurang laku dipasaran akan terlihat sehingga dengan demikian
barang yang kurang laku dapat dioptimalkan dengan cara obral atau bisa
dipaketkan dengan barang yang laris atau bisa juga dapat dimasukkan ke
dalam bonus penjualan bagi pembeli dengan jumlah banyak.
Algoritma Apriori adalah algoritma pengambilan data dengan aturan
asosiatif (Association rule) untuk menentukan hubungan asosiatif suatu
kombinasi item (Kusrini, 2007). Association Rule yang dimaksud dilakukan
melalui mekanisme penghitungan support dan confidence dari suatu
hubungan item. Sebuah aturan asosiasi dikatakan interesting jika nilai
support adalah lebih besar dari minimum support dan juga nilai confidence
adalah lebih besar dari minimum confidence. Algoritma Apriori ini akan
cocok untuk diterapkan bila terdapat beberapa hubungan item yang ingin
dianalisis. Penggunaan algoritma ini, akan memberikan pengetahuan bagi
pengguna berupa aturan atau pola penjualan yang telah terjadi.
Dari latar belakang tersebut, penulis tertarik menerapkan data mining
dalam penjualan di XYZ helm sehingga memudahkan penentuan hubungan
asosiatif tiap barang yang terjual. Hasil tersebut diharapkan dapat membantu
3
1.2. Rumusan Masalah
Berdasarkan latar belakang yang telah dijelaskan di atas, maka dapat
dirumuskan masalah, yaitu :
a.
Bagaimana membangun aplikasi data mining untuk analisis pola
penjualan helm di XYZ Helm menggunakan algoritma Apriori?
b.
Bagaimana hasil penggunaan algoritma Apriori untuk analisis pola
penjualan?
1.3. Tujuan dan Manfaat
Adapun tujuan yang ingin dicapai adalah :
Mengetahui analisis pola penjualan helm dengan penerapan data mining
menggunakan algoritma Apriori.
Sedangkan manfaat yang diperoleh adalah :
a.
Bagi Penulis
Dapat menambah pengetahuan dan wawasan lebih lanjut dari
perkuliahan, dan dapat mengaplikasikan ke dalam kasus yang nyata.
b.
Bagi Pengguna
Diharapkan dari penelitian ini, informasi yang diperoleh menjadi
pertimbangan pengguna untuk marketing sehingga barang yang paling
laku atau kurang laku dapat dioptimalkan penjualannya.
1.4.
Batasan Masalah
Agar tidak menyimpang dari permasalahan dan dapat mencapai sasaran
yang diharapkan, maka penulis membatasi permasalahan pada:
a.
Data yang digunakan adalah data penjualan helm bulan Januari sampai
Februari 2015.
b.
Data diperoleh dari basis data program yang telah berjalan di XYZ helm.
c.
Data yang digunakan adalah No Faktur, Kode Item, Nama Item, dan
Jumlah Barang.
d.
Berdasarkan data tersebut, output program adalah pola penjualan helm.
4
1.5. Metodologi
Metode penelitian yang digunakan dalam penelitian ini adalah studi
kasus dengan langkah-langkah sebagai berikut :
a.
Pengumpulan Data
Pengambilan data dari rekap transaksi penjualan helm pada XYZ
Helm.
b.
Penambangan Data
Data Cleaning (Pembersihan Data)
Pembersihan data adalah langkah awal yang penting dalam
proses mining karena data yang berkualitas dapat memberikan
informasi yang berkualitas pula. Pembersihan data akan dilakukan
pada data yang kosong dan dapat dilakukan dengan cara
penghapusan tuple, mengisi dengan konstanta, atau dengan nilai
rata-rata.
Data Integration (Integrasi Data)
Integrasi data adalah menggabungkan berbagai sumber ke
sebuah tempat penyimpanan data. Hal ini berguna untuk mendeteksi
dan menyelesaikan data yang mengandung konflik sehingga data
yang diperoleh pun menjadi tidak terdapat redundancy.
Data Selection (Seleksi Data)
Data yang relevan diambil dan dianalisis dari sebuah basis data.
Data Transformation (Transformasi Data)
Transformasi data akan dilakukan untuk mengubah data
menjadi bentuk atau satuan yang tepat untuk ditambang. Hal ini
akan terjadi apa bila pada suatu kolom atribut, memiliki satuan
berbeda. Misalnya data nilai rapor yang memiliki data continue
diubah dalam interval tertentu.
Data Mining (Penambangan Data)
Mengaplikasikan metode yang digunakan yaitu Apriori untuk
5
Pattern Evaluation (Evaluasi Pola)
Mengidentifikasi
pola-pola
data
yang
menarik
untuk
mempresentasikan pengetahuan berdasarkan pengukuran yang
penting.
Knowledge Presentation (Presentasi Pengetahuan)
Teknik visualisasi kepada pengguna untuk mempresentasikan
pengetahuan.
c.
Uji Coba Sistem
Melakukan uji coba pada aplikasi data mining menggunakan
metode Apriori untuk analisis pola penjualan di XYZ secara
keseluruhan terhadap pengguna.
Menganalisis hasil pola yang didapat dengan teknik Apriori dari
perhitungan data yang ada.
1.6. Sistematika Penulisan
Sistematika penulisan laporan tugas akhir ini adalah sebagai berikut :
1.
BAB I PENDAHULUAN
Berisi tentang latar belakang, rumusan masalah, tujuan dan manfaat,
batasan masalah, metodologi penelitian dan sistematika penulisan.
2.
BAB II LANDASAN TEORI
Berisi penjelasan teori-teori yang digunakan sebagai dasar untuk
pembuatan aplikasi.
3.
BAB III ANALISIS DAN DESAIN SISTEM
Berisi tentang analisis sistem yang akan dibuat dengan menerapkan
teori-teori yang telah dipaparkan pada bab sebelumnya. Terdapat
pembuatan desain sistem yang akan dibuat.
4.
BAB IV IMPLEMENTASI SISTEM
Berisi tentang penjelasan implementasi sistem informasi praktek
dokter umum yang meliputi struktur menu sistem dan tampilan
6
5.
BAB V ANALISIS SISTEM
Berisi tentang analisis hasil dari implementasi sistem. Terdapat
penjelasan tentang hasil uji coba sistem dan kelebihan atau
kekurangan yang ada.
6.
BAB VI PENUTUP
7
BAB II
LANDASAN TEORI
2.1. Pengertian Data Mining
Data mining (Penambangan Data) adalah suatu proses menemukan
hubungan yang berarti, pola, dan kecenderungan dengan memeriksa dalam
sekumpulan besar data yang tersimpan dalam penyimpanan dengan
menggunakan teknik pengenalan pola seperti teknik statistika dan
matematika (Kusrini dan Luthfi, 2009).
Secara sederhana dapat diartikan bahwa data mining atau yang disebut
juga dengan Knowledge Discovery in Database (KDD) adalah serangkaian
proses untuk mengekstrak pola yang penting atau menarik dari sejumlah data
yang sangat besar berupa pengetahuan yang selama ini tidak diketahui secara
manual.
Data mining muncul setelah banyak dari pemilik data baik perorangan
maupun organisasi mengalami penumpukan data yang telah terkumpul
selama beberapa tahun, misalnya data pembelian, data penjualan, data
nasabah, data transaksi, data akademik, dan sebagainya. Kemudian muncul
pertanyaan dari pemilik data tersebut, apa yang harus dilakukan terhadap
tumpukan data tersebut.
2.2. Proses Penambangan Data (Data Mining)
Data mining merupakan serangkaian proses yang terdiri dari
langkah-langkah sesuai pada Gambar 2.1 :
1.
Data Selection (Seleksi Data)
Pada langkah ini, data yang relevan akan dianalisis yang diambil
dari sebuah basis data. Akan dilakukan analisis korelasi untuk analisis
fitur. Atribut-atribut data akan dicek apakah relevan ataupun atribut yang
mengalami redudansi tidak akan digunakan. Atribut yang diharapkan
adalah atribut yang bersifat independen. Artinya antara atribut satu
8
2.
Data Cleaning (Pembersihan Data)
Pada langkah ini, noise data yang tidak konsisten akan dihapus. Di
dunia nyata, data cenderung tidak lengkap, noisy, dan tidak konsisten.
Pembersihan data secara rutin mencoba mendeteksi missing values,
memperhalus noise dari luar dengan mengidentifikasi outliers, dan
membenarkan ketidak konsistenan di dalam data.
3.
Data Integration (Integrasi Data)
Pada langkah ini, akan dilakukan penggabungan data dari berbagai
macam sumber data. Data ini akan digabungkan ke dalam penyimpanan
data yang koheren. Macam-macam penyimpanan termasuk multiple
databases, data cubes, atau flat files. Hal-hal yang perlu diperhatikan
dalam integrasi data yaitu integrasi skema, pencocokan objek, redudansi
data.
4.
Data Transformation (Transformasi Data)
Pada langkah ini, data ditransformasikan atau dikonsolidasi kedalam
bentuk-bentuk yang sesuai atau tepat untuk ditambang.
5.
Data Mining (Penambangan Data)
Merupakan sebuah proses penting, dimana metode-metode
diaplikasikan dengan tepat untuk mengekstrak pola data.
6.
Pattern Evaluation (Evaluasi Pola)
Mengidentifikasi pola yang sungguh-sungguh menarik untuk
merepresentasikan pengetahuan berdasarkan beberapa pengukuran yang
penting.
7.
Knowledge Presentation (Presentasi Pengetahuan)
Teknik visualisasi dalam merepresentasikan pengetahuan yang
9
Gambar 2.1. Langkah KDD ( Han & Kamber 2006)
2.3. Teknik Penambangan Data
Penambangan data dibagi menjadi beberapa teknik, seperti :
1.
Association Rule
Teknik mining untuk menemukan aturan assosiatif antara suatu
kombinasi item. Contoh dari aturan assosiatif dari analisa pembelian
di suatu pasar swalayan adalah bisa diketahui berapa besar
kemungkinan seorang pelanggan membeli roti bersamaan dengan
susu. Dengan pengetahuan tersebut pemilik pasar swalayan dapat
mengatur penempatan barangnya atau merancang kampanye
pemasaran dengan memakai kupon diskon untuk kombinasi barang
tertentu. Penting tidaknya suatu aturan assosiatif dapat diketahui
dengan dua parameter, support yaitu persentase kombinasi item
tersebut dalam database dan confidence yaitu kuatnya hubungan
antar item dalam aturan assosiatif.
2.
Classification
Proses untuk menemukan model atau fungsi yang menjelaskan atau
membedakan konsep atau kelas data, dengan tujuan untuk dapat
10
Model itu sendiri bisa berupa aturan “jika
-
maka”, berupa deci
sion
tree, formula matematis atau neural network.
3.
Clustering
Berbeda dengan association rule mining dan classification dimana
kelas data telah ditentukan sebelumnya, clustering melakukan
pengelompokan data tanpa berdasarkan kelas data tertentu. Bahkan
clustering dapat dipakai untuk memberikan label pada kelas data
yang belum diketahui itu. Karena itu clustering sering digolongkan
sebagai metode unsupervised learning. Prinsip dari clustering adalah
memaksimalkan
kesamaan
antar
anggota
satu
kelas
dan
meminimumkan kesamaan antar kelas/cluster. Clustering dapat
dilakukan pada data yan memiliki beberapa atribut yang dipetakan
sebagai ruang multidimensi.
2.4. Teknik Asosiasi
Teknik asosiasi adalah merupakan suatu metode penambangan data
untuk mencari pola asosiasi yang sering muncul dalam data. Metode ini
popular karena sering digunakan untuk menganalisis keranjang belanja.
Aturan yang terbentuk akan berupa “jika maka” dalam suatu transaksi. Bisa
digambarkan jika membeli barang A maka membeli barang B terjadi dalam
satu transaksi.
Hal penting dalam teknik asosiasi :
1.
Item, Itemset, dan k-Itemset
Sebuah nilai atribut disebut dengan item, kumpulan dari beberapa
item disebut dengan itemset, dan k-itemset adalah itemset yang berisi
k item.
2.
Support
Persentasi dari transaksi yang mengandung seluruh itemset. Semakin
banyak persentasi support yang didapat bisa disimpulkan bahwa item
11
sebaliknya semakin sedikit support yang diperoleh menandakan item
yang kurang laku.
… (2.1)
3.
Confidence
Persentasi banyaknya A pada transaksi yang mengandung B.
… (2.2)
Support dan confidence adalah parameter yang digunakan untuk
mengukur aturan asosiasi. Aturan asosiasi tersebut dapat diperoleh dari
itemset yang mempunyai support dan confidence lebih besar dari minimum
support (minsup) dan minimum confidence (minconf).
Masalah yang mendasar dalam teknik asosiasi dibagi menjadi dua, yaitu
1.
Menemukan seluruh itemset yang memiliki support >= minsup
Itemset yang memiliki support lebih besar atau sama dengan minsup
disebut dengan large itemset, sedangkan yang memiliki support lebih
kecil dari minimum support disebut dengan small itemset.
2.
Menggunakan large itemset untuk menghasilkan aturan asosiasi yang
diinginkan.
Algoritma yang digunakan dalam teknik asosiasi antara lain :
1.
Apriori
Algoritma ini mencari frequent itemset dari database transaksi
melalui beberapa tahap iterasi.
2.
FP Growth
Algoritma ini berbeda dengan Apriori, tidak perlu melakukan
pencarian kandidat. Data direpresentasikan menggunakan Frequent
Pattern Tree melalui pendekatan devide and conquer untuk mendapat
12
2.5.Algoritma Apriori
Langkah-langkah dari algoritma Apriori adalah sebagai berikut
(Ulmer,David,2002) :
1.
Set k=1 (menunjuk pada itemset ke-1).
2.
Hitung semua k-itemset (itemset yang mempunyai k item), untuk
mendapatkan candidate 1-itemset.
3.
Hitung support dari semua calon itemset kemudian filter itemset tersebut
berdasarkan perhitungan minimum support, untuk mendapatkan frequent
1-itemset.
4.
Gabungkan semua itemset berukuran k untuk menghasilkan calon
itemset k+1 atau candidate k-itemset.
5.
Set k=k+1.
6.
Ulangi langkah 3-5 sampai tidak ada itemset yang lebih besar yang dapat
dibentuk.
Apriori secara umum adalah mencari frequent itemset dari database
transaksi penjualan melalui beberapa tahap iterasi. Langkah pertama
algoritma ini adalah menghitung kejadian item untuk menentukan large
1-itemset atau frequent 1-itemset. Langkah berikutnya untuk large 1-itemset
tersebut dilakukan penggabungan dari item yang telah lolos seleksi kemudian
itemset yang tidak lolos maka akan dihapus. Langkah berikutnya untuk item
yang telah lolos diiterasi tersebut maka akan digunakan untuk proses
selanjutnya, dan yang tidak lolos akan dihapus. Demikian langkah demi
langkah pencarian kandidat melalui iterasi sehingga memperoleh titik akhir
yang tidak dapat dilakukan iterasi lagi.
Untuk lebih jelasnya berikut ini merupakan contoh penerapan algoritma
13
Tabel 2.1 Contoh Transaksi Penjualan
Transaksi
Item yang dibeli
1
Susu, Teh, Gula
2
Teh, Gula, Roti
3
Teh, Gula
4
Susu, Roti
5
Susu, Gula, Roti
6
Teh, Gula
7
Gula, Kopi, Susu
8
Gula, Kopi, Susu
9
Susu, Roti, Kopi
10
Gula, Teh, Kopi
Dari table data transaksi tersebut akan dicari pola asosiasi dengan
minimal support lebih dari 20% dan confidence lebih dari 35%. Maka
penyelesaiannya :
1.
Langkah pertama menentukan C1 atau candidate 1-itemset dam
jumlah kemunculan disemua transaksi.
Tabel 2.2 Contoh Penentuan C1
Kombinasi
Jumlah
Teh
5
Gula
8
Kopi
4
Susu
6
Roti
4
Support 1-itemset
-
Support(Teh)
= 5/10 = 50%
-
Support(Gula)
= 8/10 = 80%
-
Support(Kopi)
= 4/10 = 40%
-
Support(Susu)
= 6/10 = 60%
14
2.
Kumpulkan data item yang mempunyai kemunculan lebih atau sama
dengan 2 sehingga menjadi kombinasi data.
Tabel 2.3 Contoh Kombinasi Data
Kombinasi
Jumlah
Teh, Gula
5
Teh, Kopi
1
Teh, Susu
1
Teh, Roti
1
Gula, Kopi
3
Gula, Susu
4
Gula, Roti
2
Kopi, Susu
3
Kopi, Roti
1
Susu, Roti
3
Support 2-itemset
-
Support(Teh,Gula) = 5/10 = 50%
-
Support(Gula,Kopi) = 3/10 = 30%
-
Support(Gula,Susu) = 4/10 = 40%
-
Support(Gula,Roti) = 2/10 = 20%
-
Support(Kopi,Susu) = 3/10 = 30%
-
Support(Susu,Roti) = 3/10 = 30%
Confidence 2-itemset
-
Confidence(Teh,Gula)
= 5/5 = 100%
-
Confidence(Gula,Kopi)
= 3/8 = 37.5%
-
Confidence(Gula,Susu)
= 4/8 = 50%
-
Confidence(Gula,Roti)
= 2/8 = 25%
-
Confidence(Kopi,Susu)
= 3/4 = 75%
15
3.
Kemudian buat gabungan antara itemset yang lolos sehingga menjadi
3itemset dan jumlah kemunculan disetiap transaksi.
Tabel 2.4 Contoh Kombinasi Data
Kombinasi
Jumlah
Teh, Gula, Kopi
1
Teh, Gula, Susu
1
Gula, Susu, Kopi
2
Gula, Susu, Roti
0
Gula, Kopi, Roti
0
Kopi, Susu, Roti
1
Support 3-itemset
-
Support(Gula Susu, Kopi) = 2/10 = 20%
Confidence 3-itemset
16
BAB III
ANALISIS DAN DESAIN SISTEM
3.1.Identifikasi Sistem
XYZ Helm merupakan distributor penjualan helm yang melayani
permintaan helm. Banyak permintaan ini membuat perusahaan memiliki data
penjualan yang terus bertambah setiap harinya. Data tersebut disimpan
didalam bentuk database dengan program penjualan yang telah berjalan. Data
yang disimpan sangat beragam dan sangat banyak. Hal tersebut sebenarnya
dapat berguna bagi pemilik usaha jika diolah lebih dalam untuk menentukan
keterkaitan penjualan dari setiap barang yang ada. Namun untuk menemukan
keterkaitan tersebut tentusaja akan sulit jika harus memilah dari setiap
penjualan yang ada. Masalah ini dapat diatasi dengan adanya penambangan
data karena semua data penjualan yang ada akan diolah oleh sistem sehingga
pemilik usaha dapat melihat keterkaitan dengan mudah.
Sistem ini berfungsi sebagai alat bantu untuk XYZ Helm dalam
menganalisis pola penjualan helm. Sistem ini menggunakan algoritma asosiasi
dan menggunakan teknik apriori. Sistem akan mengolah penjualan, data
barang harus terlebih dahulu dimiliki dan dapat dimasukan pada master barang
yang disediakan. Setiap penjualan yang dilakukan direkap dengan menyimpan
juga data barang yang dijual sehingga dapat diketahui pada setiap nota
penjualan terdapat barang apa saja yang keluar. Data tersebut akan di simpan
dalam database, semakin banyak data yang dimiliki dapat membuat hasil
menjadi semakin baik. Data penjualan yang telah tersimpan akan diolah
dengan teknik apriori. Keluaran dari teknik tersebut akan berupa tingkat
keterkaitan dari barang yang telah dibeli oleh konsumen dari XYZ Helm,
17
3.2.Analisis Sistem
Langkah-langkah dari algoritma Apriori adalah sebagai berikut
(Ulmer,David,2002) :
1.
Set k=1 (menunjuk pada itemset ke-1).
2.
Hitung semua k-itemset (itemset yang mempunyai k item), untuk
mendapatkan candidate 1-itemset.
3.
Hitung support dari semua calon itemset kemudian filter itemset
tersebut
berdasarkan
perhitungan
minimum
support,
untuk
mendapatkan frequent 1-itemset.
4.
Gabungkan semua itemset berukuran k untuk menghasilkan calon
itemset k+1 atau candidate k-itemset.
5.
Set k=k+1.
6.
Ulangi langkah 3-5 sampai tidak ada itemset yang lebih besar yang
dapat dibentuk.
Data yang akan digunakan untuk penelitian ini adalah data penjualan dari
XYZ Helm. Data tersebut diperoleh dari database program yang telah
berjalan. Jumlah data untuk penelitian ini terdapat 726 record yang tersimpan
[image:39.595.85.524.129.713.2]dalam tabel penjualan_det. Berikut penjelasan detail atribut tabel tersebut pada
Table 3.1
Table 3.1 Atribut Tabel Penjualan_det
No
Nama Atribut
Keterangan
1
no_faktur
Nomor faktur penjualan
2
kode_item
Kode item yang terjual
3
nama_item
Nama item yang terjual
4
satuan
Satuan item yang terjual
5
harga_jual
Harga jual per item
6
jumlah_barang
Jumlah item yang terjual
7
disc
Diskon penjualan per item
18
Data pada tabel tersebut masih merupakan data mentah, harus diproses
terlebih dahulu agar dapat dipakai untuk proses penambangan data.
3.3. Pemrosesan Data
Sebelum data dimasukan ke dalam sistem untuk proses penambangan
data, dilakukan pemrosesan awal terlebih dahulu. Pemrosesan tersebut
merupakan serangkaian langkah yang sesuai dengan KDD (Knowlage
Discovery in Database). Tidak semua langkah dilakukan dalam pemrosesan
awal tersebut karena dilihat dari data yang ada. Proses tersebut terdiri dari
langkah-langkah berikut :
1.
Data Selection (Seleksi Data)
Proses seleksi data merupakan pemilihan data yang relevan untuk
penelitian. Pada database awal terdapat banyak atribut dalam tabel yang
tidak diperlukan karena tidak digunakan dalam proses penambangan
data. Sehingga dipilih beberapa atribut pada tabel 3.2.
Tabel 3.2 Atribut Untuk Penambangan
No
Nama Atribut
Keterangan
1
no_faktur
Nomor faktur penjualan
2
kode_item
Kode item yang terjual
3
nama_item
Nama item yang terjual
4
jumlah_barang
Jumlah item yang terjual
2.
Data Cleaning (Pembersihan Data)
Proses pembersihan data merupakan langkah pertama yang harus
dilakukan. Dari data mentah yang ada dilakukan pembersihan dari data
yang tidak relevan. Namun dalam data penjualan ini tidak dilakukan
pembersihan karena data mentah tersebut dapat digunakan seluruhnya.
[image:40.595.87.520.199.697.2]19
3.
Data Integration (Integrasi Data)
Proses integrasi data merupakan penggabungan data dari beberapa
sumber. Disini yang diperlukan untuk penambangan data adalah data
penjualan. Sementara data penjualan pada XYZ Helm terdapat dua jenis,
yaitu penjualan yang langsung dari toko dan penjualan canvaser. Untuk
itu diperlukan penggabungan terlebih dahulu dari rekap data penjualan
tersebut.
Tabel 3.3 Atribut Tabel Detailpenjualan
No
Nama Atribut
Keterangan
1
noFaktur
Nomor faktur penjualan
2
kodeBarang
Kode barang yang terjual
3
namaBarang
Nama barang yang terjual
4
satuan
Satuan item yang terjual
5
hargaJual
Harga jual setelah diskon
6
quantity
Jumlah barang terjual
7
discount
Diskon per barang (%)
8
discountReal
Diskon per barang (Rp)
9
discount2
Diskon kedua per barang (Rp)
10
total
Total harga dari sejumlah barang
11
urut
Urutan barang terjualan
12
hpp
Harga pokok penjualan
13
hppdpp
Harga pokok penjualan
14
hargasatuan
Harga jual per barang
15
sisapesan
Sisa pesan penjualan
16
statusReturOrder
Status retur pemesanan
17
statusNotaKredit
Status nota kredit penjualan
[image:41.595.85.539.175.646.2]20
Tabel 3.4 Atribut Tabel Detailpenjualancanvaser
No
Nama Atribut
Keterangan
1
noFaktur
Nomor faktur penjualan
2
kodeBarang
Kode barang yang terjual
3
namaBarang
Nama barang yang terjual
4
satuan
Satuan item yang terjual
5
hargaJual
Harga jual setelah diskon
6
quantity
Jumlah barang terjual
7
discount
Diskon per barang (%)
8
discountReal
Diskon per barang (Rp)
9
discount2
Diskon kedua per barang (Rp)
10
total
Total harga dari sejumlah barang
11
urut
Urutan barang terjualan
12
hpp
Harga pokok penjualan
13
hppdpp
Harga pokok penjualan
14
hargasatuan
Harga jual per barang
15
sisapesan
Sisa pesan penjualan
16
statusReturOrder
Status retur pemesanan
17
statusNotaKredit
Status nota kredit penjualan
18
noUrut
Urutan penjualan
19
kodeCanvaser
Kode dari canvaser yang menjual
Dari kedua tabel diatas, akan dilakukan penggabungan menjadi satu
tabel untuk diolah. Tabel penggabungan tersebut merupakan tabel
penjualan_det pada Tabel 3.1.
4.
Data Transformation (Transformasi Data)
Proses transformasi data merupakan proses pengubahan data
menjadi bentuk atau satuan yang tepat untuk ditambang. Pada data yang
dimiliki tidak memerlukan proses transformasi karena tidak memiliki
data continue karena data yang diambil adalah hasil masukkan program
[image:42.595.86.535.130.673.2]21
5.
Data Mining (Penambangan Data)
Proses penambangan data merupakan proses pengolahan data yang
telah didapat dari pemrosesan data. Pengolahan menggunakan algoritma
Apriori sebagai berikut :
1.
Set k=1 (menunjuk pada itemset ke-1).
2.
Hitung semua k-itemset (itemset yang mempunyai k item), untuk
mendapatkan candidate 1-itemset.
3.
Hitung support dari semua calon itemset kemudian filter itemset
tersebut berdasarkan perhitungan minimum support, untuk
mendapatkan frequent 1-itemset.
4.
Gabungkan semua itemset berukuran k untuk menghasilkan calon
itemset k+1 atau candidate k-itemset.
5.
Set k=k+1.
6.
Ulangi langkah 3-5 sampai tidak ada itemset yang lebih besar yang
dapat dibentuk.
6.
Pattern Evaluation (Evaluasi Pola)
Proses evaluasi pola akan dilakukan dengan penggunaan lift ratio
untuk mengukur seberapa penting aturan yang telah didapat dari
program. Nilai ini akan menunjukkan kevalidan informasi apakah barang
A dibeli secara bersamaan dengan barang B, yang diperoleh dari hasil
perhitungan support dan confidence.
… (3.1)
Jika hasil perhitungan lift ratio lebih dari 1 maka dapat dikatakan
bahwa transaksi tersebut valid atau bisa dikatakan bahwa dalam
22
7.
Knowladge Presentation (Presentasi Pengetahuan)
Proses presentasi pengetahuan akan ditampilkan dalam bentuk
tabel java. Pada tabel tersebut akan ditampilkan asosiasi barang yang
dibeli secara bersamaan dan persentase jumlah support beserta
confidence. Dengan tampilan tersebut akan membantu mempermudah
[image:44.595.86.508.235.624.2]23
3.4. Use Case Diagram
1.4.1.
Diagram Use Case
Pada sistem ini aka ada 1 pengguna. Kegiatan yang dapat
dilakukan adalah menginput data, melihat histori penjualan, mencari
rule penjualan, dan melihat hasil apriori. Dari kegiatan yang dapat
dilakukan, terdapat 1 kegiatan yang terdapat keterangan depands on
yang artinya baru dapat dilakukan setelah kegiatan sebelumnya
[image:45.595.84.513.233.680.2]dikerjakan. Ditunjukan pada Gambar 3.1
Gambar 3.1 Use Case
Menginput
Data Barang
Melihat
Histori
Penjualan
Melihat Hasil
Apriori
Pengguna
Mencari
rule penjualan
<<depands on>>
24
1.4.2.
Definisi Use Case
Deskripsi dari use case pada Gambar 3.1 dijabarkan dalam Tabel
[image:46.595.82.562.165.726.2]3.5.
Tabel 3.5 Definisi Use Case
No
Use Case
Deskripsi
1
Menginput Data
Barang
Pengguna dapat menambahkan data barang. Data
tersebut dapat diinputkan sesuai dengan isian yang
telah disediakan pada sistem kemudian akan
tersimpan dalam database.
2
Menginput Data
Penjualan
Pengguna dapat menambahkan data penjualan. Data
tersebut dapat diinputkan sesuai dengan isian yang
telah disediakan pada sistem kemudian akan
tersimpan dalam database.
3
Melihat Histori
Penjualan
Pengguna dapat melihat histori data penjualan. Data
tersebut
diperoleh
dari
database
yang
telah
menyimpan data dari setiap penjualan yang pernah
dilakukan.
4
Mencari Rule
Penjualan
Pengguna dapat mencari rule penjualan. Pada
kegiatan ini sebenarnya pengguna hanya akan
menekan tombol dan pencarian rule akan dilakukan
oleh sistem.
5
Melihat Hasil
Apriori
Pengguna dapat melihat hasil output dari algoritma
apriori. Hasil yang ditampilkan adalah hasil dari
pencarian rule yang telah dilakukan sebelumnya.
Hasil ini akan muncul jika kegiatan Mencari Rule
25
3.5.Diagram Aktivitas
1.5.1.
Diagram Aktivitas Menginput Data
Menekan tombol Barang Menampilan form barang
Menyimpan ke database Menekan tombol Simpan
Memasukan data sesuai field
[image:47.595.87.506.149.689.2]Pengguna
Sistem
Gambar 3.2 Diagram Aktivitas Menginput Data Barang
1.5.2.
Diagram Aktivitas Menginput Data Penjualan
Menekan tombol Penjualan
Menampilkan form penjualan
Menyimpan ke database Menekan tombol Simpan
Memasukan data sesuai field
Pengguna
Sistem
26
1.5.3.
Diagram Aktivitas Melihat Histori Penjualan
Menekan tombol Analisa
Menampilan form histori penjualan
Pengguna
Sistem
[image:48.595.85.510.130.695.2]Mengambil data dari database
Gambar 3.4 Diagram Aktivitas Melihat Histori Penjualan
1.5.4.
Diagram Aktivitas Mencari Rule Penjualan
Menekan tombol Analisa
Menampilan form histori penjualan
Menekan tombol Proses
Pengguna
Sistem
Mengambil data dari database
Menampilan form Apriori
Menghitung rule penjualan Menekan tombol Analisa
27
1.5.5.
Diagram Aktivitas Melihat Hasil Apriori
Menekan tombol Analisa
Menampilan form histori penjualan
Menekan tombol Proses
Pengguna
Sistem
Mengambil data dari database
Menampilan form Apriori
Menghitung rule penjualan Menekan tombol Analisa
[image:49.595.83.509.134.650.2]Menampilkan hasil pola
28
3.6. Diagram Sekuensial
1.6.1.
Diagram Sekuensial Menginput Data
Mengisi data barang
Form Barang
boudary
Barang
entity
tambahBarang() Menekan
[image:50.595.84.509.129.658.2]tombol Simpan
Gambar 3.7 Diagram Sekuensial Menginput Data Barang
1.6.2.
Diagram Sekuensial Menginput Data Penjualan
Mengisi data penjualan
Form Penjualan
boudary
Barang entity
tambahBarang() Menekan
tombol Simpan
29
1.6.3.
Diagram Sekuensial Melihat Histori Penjualan
Form Histori Penjualan
boudary
Barang
entity
getAllDetail()
[image:51.595.84.527.136.647.2]Menampilkan data penjualan
Gambar 3.9 Diagram Sekuensial Melihat Histori Penjualan
1.6.4.
Diagram Sekuensial Mencari Rule Penjualan
Form Histori Penjualan
boudary
Barang
entity
getAllDetail()
Menampilkan data penjualan
Form Apriori
boudary
Menekan tombol Proses
Menekan tombol Analisa
c2() c3()
30
1.6.5.
Diagram Sekuensial Melihat Hasil Apriori
Form Histori Penjualan
boudary
Barang
entity
getAllDetail()
Menampilkan data penjualan
Form Apriori
boudary
Menekan tombol Proses
Menekan tombol Analisa
c2() c3()
[image:52.595.85.556.133.646.2]Menampilkan hasil pola
Gambar 3.11 Diagram Sekuensial Melihat Hasil Apriori
3.7. ER Diagram
1.7.1.
Model Data Konseptual
pelanggan
beli
barang
punya
merk
punya
tipe
1..* 1..* 1..1 1..*
1..1
1..*
warna
punya
1..1
1..*
31
1.7.2.
Model Data Logikal
1.
Tabel Warna
Tabel 3.6 Tabel Logikal Warna
Kode_warna
Nama_warna
2.
Tabel Merk
Tabel 3.7 Tabel Logikal Merk
kodemerk
namamerk
3.
Tabel Tipe
Tabel 3.8 Tabel Logikal Tipe
kodetipe
namatipe
kodemerk
4.
Tabel Barang
Tabel 3.9 Tabel Logikal Barang
Kode_
item
Nama_
item
stok Harga_
beli
Harga_
jual
satuan kodemerk kodetipe kodewarna
5.
Tabel Penjualan_det
Tabel 3.10 Tabel Logikal Penjualan_det
No_faktur Kode_item Nama_item satuan Harga_jual Jumlah_
barang
disc Jumlahh_
32
6.
Tabel Penjualan
Tabel 3.11 Tabel Logikal Penjualan
No_faktur
Tgl_faktur
Total_harga
Diskon
Grand_total
Kode_pel
7.
Tabel Pelanggan
Tabel 3.12 Tabel Logikal Pelanggan
Kode_pel
Nama
Alamat
Kodepos
telp
1.7.3.
Model Data Fisikal
1.
Tabel Merk
Tabel 3.13 Tabel Fisikal Merk
merk
kodemerk (PK)
namamerk
varchar(3)
varchar(40)
2.
Tabel Tipe
Tabel 3.14 Tabel Fisikal Tipe
tipe
kodetipe (PK)
namatipe
kodemerk (FK)
33
3.
Tabel Barang
Tabel 3.15 Tabel Fisikal Barang
barang
kode_item (PK)
nama_item
stok
harga_beli
harga_jual
satuan
kodemerk (FK)
kodetipe (FK)
kode_warna (FK)
varchar(15)
varchar(30)
int(11)
double
double
varchar(10)
varchar(4)
varchar(4)
varchar(4)
4.
Tabel Penjualan_det
Tabel 3.16 Tabel Fisikal Penjualan_det
penjualan_det
no_faktur (FK)
kode_item (FK)
nama_item
satuan
harga_jual
jumlah_barang
disc
jumlah_harga
34
5.
Tabel Penjualan
Tabel 3.17 Tabel Fisikal Penjualan
penjualan
no_faktur (PK) tgl_faktur total_harga diskon grand_total kode_pel (FK)
varchar(20) varchar(20) double double double varchar(20)
6.
Tabel Pelanggan
Tabel 3.18 Tabel Fisikal Pelanggan
pelanggan kode_pel (PK)
nama alamat kodepos telp
varchar(15) varchar(35) varchar(30) varchar(7) varchar(13)
3.8. Desain Program
[image:56.595.88.507.116.697.2]1.
Menu Utama
35
2.
Barang Form
36
3.
Penjualan Form
37
4.
DetailPenjualan Form
Gambar 3.16 Desain Histori Penjualan
[image:59.595.84.551.117.681.2]5.
Apriori Form
38
BAB IV
IMPLEMENTASI SISTEM
4.1. Spesifikasi hardware dan software
1.1.1.
Spesifikasi hardware
1.
Prosesor Intel Pentium Dual Core
2.
Memori 2 GB
3.
Hardisk 320 GB
1.1.2.
Spesifikasi software
1.
Sistem Operasi Windows 8.1 Pro
2.
JDK1.8.0_65 dan JRE1.8.0_65
3.
Netbeans IDE 6.8
4.
SQLYog
4.2. Pembuatan Database
Pada bagian ini dilakukan pembuatan database baru pada MySQL dengan
bantuan SQLYog untuk menyimpan data-data yang akan digunakan. Adapun
langkah-langkah pembuatan database sebagai berikut :
1.
Membuat database baru dengan nama apriori.
2.
Pilih database yang baru saja dibuat kemudian Create table.
3.
Buat tabel sesuai dengan perancangan yang telah dibuat.
4.3. Koneksi Java dan MySQL
Untuk menjembatani komunikasi data antara Java dengan MySQL perlu
digunakan JDBC (Java Databases Connectivity). Langkah untuk membuat
koneksi untuk keduanya, dengan :
1.
Menambahkan driver dari library Java, yaitu MySQL JDBC Driver
–
mysql-connector-java-5.16.bin.jar.
39
Pada file koneksi.java ini ada fungsi yang berguna :
1.
koneksiDatabase()
Fungsi ini digunakan untuk mendefinisikan letak dari database
yang akan dituju. Terdapat url, user, password yang akan
digunakan pengisian letaknya.
public class Koneksi {private static Connection connection;
public Connection con;
public Statement stat;
public static Connection koneksiDatabase() throws SQLException {
if (connection == null) {
DriverManager.registerDriver(new Driver());
String url = "jdbc:mysql://localhost/aprioridataasli";
String user = "root";
String password = "admin";
connection = DriverManager.getConnection(url,user,password);
}
return connection;
}
40
4.4. Implementasi Program
1.4.1.
Halaman Utama
Halaman utama ini merupakan halaman yang ditampilkan pertama
kali ketika program dijalankan. Pada tampilan halaman ini, terdapat 3
[image:62.595.84.511.207.714.2]tombol yaitu tombol barang, penjualan, dan analisis.
Gambar 4.1 Halaman Utama
1.4.2.
Halaman Barang
Halaman ini merupakan halaman yang muncul ketika menekan
tombol barang di halaman utama. Halaman ini digunakan untuk
memasukan data barang baru atau melakukan edit untuk barang yang
sudah ada. Barang disini dapat digunakan untuk melakukan penjualan.
Dalam data barang ini, terdapat kode barang yang telah otomatis dari
program, kemudian merk, tipe, warna, dan satuan dalam bentuk combo
box. Lalu terdapat nama barang, stok, ritel setelah ppn, dan beli setelah
41
Gambar 4.2 Halaman Barang
1.4.3.
Halaman Penjualan
Halaman ini merupakan halaman yang muncul ketika menekan
tombol penjualan di halaman utama. Halaman ini digunakan untuk
menambahkan data penjualan. Data penjualan akan digunakan untuk
analisis dengan algoritma apriori. Pertama kali pengguna harus
memasukan pelanggan kemudian akan otomatis diikuti oleh alamat,
jika pelanggan telah ada dalam database. Lalu diikuti dengan
mengisikan barang yang dijual sehingga penjualan dapat di simpan
42
Gambar 4.3 Halaman Penjualan
1.4.4.
Halaman Histori Penjualan
Halaman ini merupakan halaman yang muncul ketika menekan
tombol analisis di halaman utama. Halaman ini digunakan untuk
menampilkan terlebih dahulu histori penjualan sebelum langkah
analisis menggunakan apriori. Disini ditampilkan tabel yang berisi no
faktur, kode barang, nama barang, dan jumlah. Pada tabel ini akan
43
Gambar 4.4 Halaman Histori Penjualan
1.4.5.
Halaman Apriori
Halaman ini merupakan halaman yang muncul ketika menekan
tombol proses di halaman histori penjualan. Halaman ini digunakan
untuk menampilkan analisis dari data penjualan yang ada. Pertama kali
terlihat disini ada nilai minimum support, minimum confidence, dan
count. Nilai minimum support langsung diset sebesar 20%, minimum
confidence diset sebesar 50%, dan count disini terisi 126 sesuai dengan
jumlah penjualan yang ada. Terdapat juga textArea pada halaman ini,
nantinya akan digunakan untuk mengeluarkan hasil analisis algoritma
44
Gambar 4.5 Halaman Apriori
Ketika telah muncul halaman seperti Gambar 4.5, dapat menekan
tombol Analisis. Tombol ini berfungsi untuk menampilkan data pola
penjualan dari hasil analisis penjualan yang ada. Saat menekan tombol,
tunggu hingga proses selesai karena proses cukup memakan waktu
terlebih jika data penjualan berjumlah banyak. Tidak serta merta Count
sejumlah 126 transaksi tersebut adalah jumlah dari record yang akan
dioleh karena setiap penjualan akan mempunyai banyak barang yang
laku. Sebagai contoh jika pada setiap penjualan ada 5 barang terjual,
maka record yang akan diproses berjumlah 126 dikalikan 5 jadi
jumlahnya 730.
Dapat dilihat pada gambar 4.5, muncul hasil pola dari penjualan
yang ada. Muncul banyak pola penjualan karena minimum support
yang
menjadi
batas
bisa
dibilang
cukup
rendah.
Untuk
memaksimalkan pola, bisa dinaikan juga minimum support dan
45
Gambar 4.6 Hasil Analisis
Seperti pada Gambar 4.6 diatas, hasil analisis dapat diperoleh dari