Implementasi Data Mining Dalam Pemaketan Produk Menggunakan Metode Association Rule Di Minimarket Warga Tunggal Bandung

(1)

1

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Minimarket Warga Tunggal Bandung merupakan sebuah unit usaha yang bergerak di bidang bisnis waralaba swalayan yang menjual produk untuk kebutuhan sehari-hari. Dalam kegiatan operasionalnya, Minimarket Warga Tunggal biasa menjual produknya kepada konsumen umum. Untuk meningkatkan angka penjualan, Minimarket Warga Tunggal menyebarkan katalog dan melakukan Pemaketan pada Produk yang dijual dengan harapan banyak pelanggan yang membeli karena harganya yang lebih murah. Dalam proses pemaketan produk pihak Minimarket melakukan pembaruan paket produk dalam 6 bulan sekali. Setiap produk yang laku terjual, Minimarket Warga Tunggal biasanya mencatat data transaksi penjualannya ke dalam Database.

Dari hasil pengamatan langsung di Minimarket Warga Tunggal Bandung diketahui bahwa dari banyaknya produk paket yang ditawarkan hanya sedikit produk paket yang dibeli oleh pelanggan karena kombinasi produk yang dijual dalam satu paket merupakan produk yang kurang dibutuhkan oleh pelanggan,dengan terjadinya hal tersebut maka berpotensi timbul pemikiran dari pelanggan bahwa membeli produk biasa yang bukan dalam bentuk paket akan lebih berguna daripada membeli produk dalam satu paket meskipun harganya lebih murah. Pemilik Minimarket mengira bahwa hal ini terjadi akibat dari tidak adanya aturan khusus dalam menentukan produk apa saja yang akan dijual dalam bentuk paket dan tidak adanya analisis yang dilakukan terhadap data yang terus bertambah dan tersimpan dalam database untuk mendapatkan informasi. Oleh karena itu,pihak Minimarket ingin adanya pengolahan data lebih lanjut dan lebih mendalam untuk menemukan informasi baru yang berguna sebagai bahan pertimbangan dalam proses penjualan sehingga di kemudian hari pihak Minimarket memiliki pertimbangan dalam menentukan produk apa saja yang akan dijual dalam satu paket.


(2)

Hasil pengamatan dari data yang ada sebelumnya hingga sekarang, ternyata tiap data memiliki pola data yang mirip dalam data transaksi penjualan yang menunjukan bahwa terjadi pembelian produk yang berulang dan mengalami peningkatan jumlah pemesanan dari waktu ke waktu. Untuk mendapatkan informasi tersebut secara lebih cepat dan efisien perlu kiranya suatu bantuan teknologi informasi, dalam hal ini yaitu Data Mining [1]. Data Mining adalah suatu proses menemukan hubungan yang berarti, pola dan kecenderungan dengan memeriksa dalam sekumpulan besar data yang tersimpan dalam penyimpanan, dengan menggunakan teknik pengenalan pola seperti teknik statistik dan matematika [6]. Metode yang akan digunakan dalam membangun aplikasi ini adalah Metode Association Rule dengan Algoritma FP-Growth. Metode Association Rule adalah suatu prosedur untuk mencari hubungan antara item dalam suatu kumpulan data yang ditentukan. Dalam menentukan suatu Association Rule, terdapat suatu ukuran kepercayaan yang didapatkan dari hasil pengolahan data dengan perhitungan tertentu [8]. Algoritma FP-Growth merupakan salah satu alternatif Algoritma yang dapat digunakan untuk menentukan himpunan data yang paling sering muncul (frequent itemset) dalam sebuah kumpulan data [5]. Berdasarkan permasalahan yang dihadapi, pada penelitian ini akan dibangun aplikasi Data Mining yang menerapkan metode Association Rule dan Algoritma FP-Growth yang berguna untuk pemaketan produk di Minimarket Warga Tunggal Bandung.

.

1.2 Identifikasi Masalah

Berdasarkan uraian latar belakang yang telah dijelaskan, didapat identifikasi masalah, yaitu :

1. Kombinasi produk yang dijual dalam bentuk paket kurang diminati pelanggan.

2. Tidak ada aturan dalam menentukan produk apa saja yang akan dijual. 3. Tidak ada informasi yang berguna yang dapat diambil untuk menentukan


(3)

3

1.3 Maksud dan Tujuan 1.3.1 Maksud

Maksud dari penelitian yang akan dilakukan adalah menerapkan Data Mining dengan Metode Association Rule dan Algoritma FP-Growth terhadap data transaksi untuk mendapatkan informasi yang berguna sesuai dengan kebutuhan pihak Minimarket.

1.3.2 Tujuan

Sedangkan tujuan yang ingin dicapai adalah memberikan informasi kepada pihak Minimarket Warga Tunggal mengenai produk apa saja yang dapat dijual dalam bentuk paket dan memberikan sebuah pertimbangan dalam menentukan aturan dalam pemaketan produk serta memberikan informasi apa saja yang bisa digunakan untuk menentukan strategi penjualan selanjutnya.

1.4 Batasan Masalah

Agar penelitian yang dilakukan lebih terarah dan mencapai sasaran yang ditentukan, maka diperlukan sebuah pembatasan masalah atau ruang lingkup kajian, yaitu sebagai berikut:

1. Data yang digunakan dalam penelitian ini adalah data transaksi yang terjadi di Minimarket Warga Tunggal Bandung yang bertepatan dengan hari besar keagamaan.

2. Keluaran yang dihasilkan berupa informasi produk apa saja yang dapat dijual dalam satu paket untuk ditawarkan kepada konsumen.

3. Aplikasi yang akan dibangun berbasis Desktop.

4. Metode analisis yang digunakanan dalam pembangunan perangkat lunak ini menggunakan pendekatan analisis Pemrograman Berorientasi Objek.


(4)

1.5 Metodologi Penelitian

Metodologi penelitian yang digunakan dalam penelitian ini adalah kualitatif. Metode yang digunakan dalam penulisan laporan penelitian ini menggunakan dua metode, yaitu metode pengumpulan data dan metode pembangunan perangkat lunak.

1.5.1 Metode Pengumpulan Data

Metode yang digunakan dalam pengumpulan data pada penelitian ini adalah sebagai berikut:

a. Studi Literatur

Pengumpulan data dengan cara mengumpulkan referensi seperti jurnal, paper, buku referensi dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.

b. Tahap Observasi

Tahap observasi yaitu dengan mendatangi secara langsung lokasi yang dijadikan tempat penelitian, yang dalam hal ini adalah Minimarket Warga Tunggal Bandung yang terletak di Jl. Karees Timur No. 22 Bandung, untuk mengamati perilaku konsumen dalam membeli produk dalam satu paket.

.

1.5.1 Metode Pembangunan Perangkat Lunak

Dalam penelitian ini mengikuti standar dari Cross-Industry Standard for Data Mining (CRISP-DM) merupakan suatu standar yang telah dikembangkan pada tahun 1996 yang ditunjukkan untuk melakukan proses analisis dari suatu industri sebagai strategi pemecahan masalah dari bisnis satu unit penelitian [9]. Untuk data yang dapat di

proses dengan CRISP-DM ini, tidak ada ketentuan atau karakteristik tertentu, karena data tersebut akan diproses kembali pada fase-fase di dalamnya.


(5)

5

Berikut ini adalah tahapan-tahapan yang akan dilakukan dalam penelitian ini sesuai dengan CRISP-DM :

a. Business understanding

Tahap pertama adalah memahami tujuan dan kebutuhan dari sudut pandang bisnis, kemudian menterjemakan pengetahuan ini ke dalam pendefinisian masalah dalam Data Mining. Selanjutnya akan ditentukan rencana dan strategi untuk mencapai tujuan tersebut.

b. Data understanding

Tahap ini dimulai dengan pengumpulan data yang kemudian akan dilanjutkan dengan proses untuk mendapatkan pemahaman yang mendalam tentang data, mengidentifikasi masalah kualitas data, atau untuk mendeteksi adanya bagian yang menarik dari data yang dapat digunakan untuk hipotesa untuk informasi yang tersembunyi.

c. Data preparation

Tahap ini meliputi semua kegiatan untuk membangun dataset akhir (data yang akan diproses pada tahap pemodelan/modeling) dari data mentah. Tahap ini dapat diulang beberapa kali. Pada tahap ini juga mencakup pemilihan tabel, record, dan atribut-atribut data, termasuh proses pembersihan dan transformasi data untuk kemudian dijadikan masukan dalam tahap pemodelan (modeling).


(6)

d. Modeling

Dalam tahap ini akan dilakukan pemilihan dan penerapan berbagai teknik pemodelan dan beberapa parameternya akan disesuaikan untuk mendapatkan nilai yang optimal. Secara khusus, ada beberapa teknik berbeda yang dapat diterapkan untuk masalah Data Mining yang sama. Di pihak lain ada teknik pemodelan yang membutuhan format data khusus. Sehingga pada tahap ini masih memungkinan kembali ke tahap sebelumnya.

e. Evaluation

Pada tahap ini, model sudah terbentuk dan diharapkan memiliki kualitas baik jika dilihat dari sudut pandang analisa data. Pada tahap ini akan dilakukan evaluasi terhadap keefektifan dan kualitas model sebelum digunakan dan menentukan apakah model dapat mencapat tujuan yang ditetapkan pada fase awal (Business Understanding). Kunci dari tahap ini adalah menentukan apakah ada masalah bisnis yang belum dipertimbangkan. Di akhir dari tahap ini harus ditentukan penggunaan hasil proses Data Mining. f. Deployment

Pada tahap ini, pengetahuan atau informasi yang telah diperoleh akan diatur dan dipresentasikan dalam bentuk khusus sehingga dapat digunakan oleh pengguna. Tahap Deployment dapat berupa pembuatan laporan sederhana atau mengimplementasikan proses Data Mining yang berulang dalam perusahaan. Dalam banyak kasus, tahap Deployment melibatkan konsumen, di samping analis data, karena sangat penting bagi konsumen untuk memahami tindakan apa yang harus dilakukan untuk menggunakan model yang telah dibuat.


(7)

7

1.6 Sistematika Penulisan

Sistematika penulisan yang digunakan dalam penyusunan laporan tugas akhir ini adalah sebagai berikut :

BAB 1 PENDAHULUAN

Bab ini berisi penjelasan mengenai latar belakang permasalahan, identifikasi masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, serta sistematika penulisan dalam penelitian tentang data mining ini.

BAB 2 TINJAUAN PUSTAKA

Bab ini berisi berbagai konsep dan teori-teori para ahli yang berkaitan dengan topik penelitian data mining.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi analisis masalah dari objek penelitian untuk mengetahui hal atau masalah apa yang timbul dan mencoba memecahkan masalah tersebut, serta berisi perancangan dari aplikasi yang akan digunakan.

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi penjelasan dari proses analisis dan perancangan yang telah dilakukan untuk selanjutnya diimplementasikan menjadi perangkat lunak dan dilakukan pengujian terhadap perangkat lunak tersebut.

BAB 5 KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dari semua hal yang di bahas pada bab sebelumnya dan saran untuk pengembangan selanjutnya.


(8)

9

2.1 Profil Instansi

2.1.1 Sejarah Minimarket Warga Tunggal

Minimarket Warga Tunggal merupakan salah satu Minimarket yang menyediakan berbagai produk untuk memenuhi kebutuhan sehari - hari. Minimarket Warga Tunggal ini didirikan di Jalan Karees Timur Nomor 22 Bandung oleh Sri Andayani. Selain menjual produk – produk untuk kebutuhan sehari – hari dalam bentuk satuan Minimarket Warga Tunggal ini juga menjual produk untuk kebutuhan sehari – hari dalam bentuk Paket Produk dengan harga jual lebih murah daripada membeli produk dalam bentuk satuan. Minimarket Warga Tunggal ini menerapkan konsep swalayan dalam proses penjualannya, sehingga memberikan kemudahan bagi para konsumen untuk melihat dan memilih secara langsung produk yang akan dibeli sesuai dengan keinginan dan kebutuhannya. Selain itu, konsumen juga dapat membeli produk dalam jumlah yang banyak atau grosir dengan harga yang lebih murah. Hal inilah yang menjadikan Minimarket Warga Tunggal ini sangat diminati oleh para konsumen.

Seiring dengan minat konsumen terhadap Minimarket Warga Tunggal yang semakin meningkat setiap tahunnya, pihak Minimarket berencana untuk membuka cabang baru di daerah lain.


(9)

10

2.1.2 Logo

Berikut ini adalah logo dari Minimarket Warga Tunggal yang dapat dilihat pada Gambar 2.1 :

Gambar 2. 1 Logo Minimarket Warga Tunggal 2.1.3 Struktur Organisasi

Berikut ini adalah Struktur Organisasi Minimarket Warga Tunggal yang dapat dilihat pada Gambar 2.2 :


(10)

Job description :

1. Pemilik bertanggung jawab penuh terhadap Minimarket, tugas dan tanggung jawabnya sebagai berikut :

a. Membuat perencanaan, strategi dan kebijakan yang menyangkut operasi Minimarket.

b. Menyusun anggaran kebutuhan persediaan produk.

c. Melakukan kontrol secara keseluruhan atau operasi Minimarket.

d. Memegang kendali atas keputusan penting yang bersifat umum berkaitan dengan keuangan.

2. Manager berfungsi untuk membantu pemilik, tugas dan tanggung jawabnya adalah sebagai berikut :

a. Membantu pemilik dalam mengawasi Minimarket.

b. Mengatur setiap bagian yang ada di Minimarket agar menjalankan tugasnya dengan baik.

3. Bagian pelayanan berfungsi untuk melayani tiap pelanggan, tugas dan tanggung jawab sebagai berikut :

a. Membantu dalam melayani pesanan-pesanan pelanggan. b. Melayani semua pesanan pelanggan.

4. Bagian Adm.Keuangan bertugas terhadap transaksi pelanggan, tugas dan tanggung jawab sebagai berikut :

a. Bertanggung jawab terhadap hal-hal yang menyangkut keuangan. b. Menghitung pemasukan dan pengeluaran setiap bulannya.

c. Melayani pelanggan dalam pembayaran transaksi.

5. Bagian house keeping bertugas terhadap kebersihan dan kenyamanan pelanggan, tugas dan tanggung jawab sebagai berikut :

a. Bertanggung jawab terhadap kebersihan, baik di luar ataupun di dalam lingkungan Minimarket.


(11)

12

2.1.4 Visi dan Misi

Visi dari Minimarket Warga Tunggal adalah Mendirikan Minimarket dengan konsep Modern dan menjadi Minimarket distributor lokal yang berkedudukan dan berkepanjangan. Sedangkan Misi dari Minimarket Warga Tunggal adalah sebagai berikut :

1. Mengutamakan pelayanan terbaik untuk pelanggan serta kualitas makanan yang akan dijual.

2. Melakukan inovasi terhadap produk dan sistem penjualan secara berkala.

3. Mengembangkan usaha Minimarket di luar wilayah Bandung. 4. Meningkatkan produktifitas Minimarket dari Sumber Daya.

Manusianya agar Minimarket terus berkembang ke arah yang lebih baik.

2.2 Landasan Teori

Landasan teori yang berkaitan dengan materi atau teori yang digunakan sebagai acuan melakukan penenlitian. Landasan teori yang diuraikan merupakan hasil studi literatur, buku-buku, maupun situs internet.

2.2.1 Data

Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya [10]. Data dapat digunakan sebagai input dan menghasilkan sebuah informasi. Data juga merupakan sesuatu yang belum memiliki arti dan masih membutuhkan suatu pengolahan. Dalam data terdapat himpunan data yang merupakan kumpulan dari objek dan atributnya. Atribut merupakan sifat atau karakteristik dari suatu objek yang biasanya dikenal sebagai variabel, field, karakteristik atau fitur.Salah satu himpunan data adalah recorddata, yaitu data yang terdiri dari sekumpulan record, yang


(12)

masing-masing terdiri dari satu set atribut yang tetap. Salah satu yang termasuk dalam tipe datarecord yaitu data transaksi. Data transaksi merupakan sebuah tipe khusus dari record data, dimana tiap record (transaksi) meliputi satu setitem [11].

2.2.2 Basis Data

Basis data adalah mekanisme yang digunakan untuk menyimpan informasi atau data. Informasi adalah sesuatu yang kita gunakan sehari-hari untuk berbagai alasan. Dengan basis data, pengguna dapat menyimpan data secara terorganisasi. Setelah data disimpan, informasi harus mudah diambil. Kriteria dapat digunakan untuk mengambil informasi. Cara data disimpan dalam basis data menentukan seberapa mudah mencari informasi berdasarkan banyak kriteria. Data pun harus mudah ditambahkan ke dalam basis data, dimodifikasi, dan dihapus [12].

Menurut Fathansyah [14], basis data sendiri dapat didefinisikan dalam sejumlah sudut pandang seperti :

1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.

2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.

3. Kumpulan file/ tabel/ arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.

2.2.2.1 Data pada Basis Data dan Hubungannya Ada 3 jenis data pada sistem database, yaitu [13] :

1. Data operasional dari suatu organisasi, berupa data yang tersimpan dalam basis data

2. Data masukan (input data), data dari luar sistem yang dimasukan melalui peralatan input (keyboard), yang dapat merubah data operasional.

3. Data kelauran (output data), berupa laporan melalui peralatan output sebagai hasil dari dalam sistem yang mengakses data operasional.


(13)

14

2.2.2.2 Keuntungan dan Kerugian Pemakain Sistem Database Keuntungan [13] :

1. Terpeliharanya keselarasan data

2. Data dapat dipakai secara bersama-sama.

3. Memudahkan penerapan standarisaasi dan batas-batas pengamanan. 4. Terpeliharanya keseimbangan atas perbedaan kebutuhan data dari setiap aplikasi.

5. Program /data independent. Kerugian [13]:

1. Mahal dalam implementasinya. 2. Rumit

3. Penanganan proses recoverybackup sulit.

4. Kerusakan pada sistem basis data dapat mempengaruhi.

2.2.3 Database Management System

Kumpulan atau gabungan database dengan perangkat lunak aplikasi yang berbasis database tersebut dinamakan Database Management System (DBMS).DBMS merupakan koleksi terpadu dari database dan program– program komputer (utilitas) yang digunakan untuk mengakses dan memelihara database. Program-program tersebut menyediakan berbagai fasilitas operasi untuk memasukan, melacak, dan memodifikasi data kedalam database, mendefinisikan data baru, serta mengolah data menjadi informasi yang dibutuhkan (DBMS = Database + Program Utilitas) [14].

2.2.4 Data Mining

Data mining, sering juga disebut knowledge discovery in database (KDD), adalah kegiatan yang meliputi pengumpulan, pemakaian data historis untuk menemukan keteraturan, pola atau hubungan dalam set data berukuran besar. Keluaran dari data mining ini bisa dipakai untuk memperbaiki pengambilan keputusan di masa depan. Sehingga istilah pattern recognition sudah tidak digunakan lagi [15].


(14)

Secara umum, definisi data mining dapat diartikan sebagai berikut [16]:

1. Proses penemuan pola yang menarik dari data yang tersimpan dalam jumlah besar.

2. Ekstrasi dari suatu informasi yang berguna atau menarik (non-trivial, implisit, sebelumnya belum diketahui potensi kegunaannya) pola atau pengetahuan dari data yang di simpan dalam jumlah besar.

3. Eksplorasi dari analisa secara otomatis atau semiotomatis terhadap data data dalam jumlah besar untuk mencari pola dan aturan yang berarti.

2.2.4.1 Konsep Data Mining

Data mining sangat diperlukan terutama dalam mengelola data yang sangat besar untuk memudahkan aktifitas recording suatu transaksi dan untuk proses data warehousing agar dapat memberikan informasi yang akurat bagi bagi pengguna data mining. Alasan utama data mining sangat dibutuhkan dalam industri informasi karena tersedianya data dalam jumlah yang besar dan semakin besarnya kebutuhan untuk mengubah data tersebut menjadi informasi dan pengetahuan yang berguna karena sesuai fokus bidang ilmu ini yaitu melakukan kegiatan mengekstraksi atau menambang pengetahuan dari data yang berukuran atau berjumlah besar. Informasi iniliah yang nantinya sangat berguna untuk pengembangan. Berikut adalah langkah-langkah dalam data mining [15] :


(15)

16

1. Data cleaning yaitu untuk menghilangkan noise data yang tidak konsisten.

2. Data integration yaitu menggabungkan beberapa file atau database.

3. Data selection yaitu data yang relevan dengan tugas analisis dikembalikan ke dalam database untuk proses data mining.

4. Data transformation yaitu data berubah atau bersatu menjadi bentuk yang tepat untuk menambang dengan ringkasan performa atau operasi agresi.

5. Data mining yaitu proses esensial dimana metode yang intelejen digunakan untuk mengekstrak pola data.

6. Knowledge disccovery yaitu proses esential dimana metode yang intelejen digunakan untuk mengekstrak pola data.

7. Pattern evolution yaitu untuk mengidentifikasi pola yang benar-benar menarik yang mewakili pengetahuan berdasarkan atas beberapa tindakan yang menarik.

8. Knowledge presentation yaitu gambaran teknik visualisasi dan pengetahuan digunakan untuk memberikan pengetahuan yang telah ditambah kepada user.

2.2.4.1 Metode –Metode Data Mining

Data mining dibagi menjadi beberapa kelompok berdasarkan tugas yang dapat dilakukan, yaitu [17] :

1. Deskripsi

Terkadang peneliti dan analis secara sederhana ingin mencoba mencari carauntuk menggambarkan pola dan kecenderungan yang terdapat dalam data. Sebagai contoh, petugas pengumpulan suara mungkin tidak dapat mengumpulkan keterangan atau fakta bahwa siapa yang tidak cukup profesional akan sedikit didukung dalam pemilihan presiden. deskripsi dari pola dan kecenderungan sering memberikan kemungkinan penjelesan untuk suatu pola atau kecenderungan.


(16)

2. Estimasi

Estimasi hampir sama dengan klasifikasi, kecuali variabel target estimasi lebih kearah numerik daripada ke arah kategori. Model dibangun dengan record lengkap yang menyediakan nilai dari variabel target sebagai nilai prediksi. Sebagai contoh, akan dilakukan estimasi tekanan darah sistolik pada pasien rumah sakit berdasarkan umur pasien, jenis kelamin, indeks berat badan, dan level sodium darah. Hubungan antara tekanan darah sistolik dan nilai variabel prediksi dalam proses pembelajaran akan menghasilkan model estimasi. Model estimasi yang dihasilkan dapat digunakan untuk kasus baru lainnya. 3. Prediksi

Prediksi hampir sama dengan klasifikasi dan estimasi, kecuali bahwa dalam prediksi nilai dari hasil akan ada dimasa mendatang. Contoh prediksi dalam bisnis dan penelitian adalah :

1. Prediksi harga beras dalam tiga bulan yang akan datang. 2. Prediksi persentase kenaikan kecelakaan lalu lintas tahun

depan jika batas bawah dinaikan. 4. Klasifikasi

Dalam klasifikasi, terdapat terget variabel kategori. sebagai contoh, penggolongan pendapatan dapat dipisahkan dalam tiga kategori yaitu: pendapatan tinggi, pendapatan sedang, dan pendapatan rendah.Contoh lain

klasifikasi dalam bisnis dan penelitian adalah :

1. Menentukan apakah suatu transaksi kartu kredit

merupakan transaksi yang curang atau bukan.

2. Mendiagnosis penyakit seorang pasien untuk mendapatkan


(17)

18

5. Pengklusteran

Pengklusteran merupakan pengelompokan record, pengamatan, atau memperhatikan dan membentuk kelas objek-objek yang memiliki kemiripan. Kluster adalah kumpulan record yang memiliki kemiripan satu dengan yang lainnya dan tidak memiliki kemiripan dengan record-record dalam kluster lain. Pengklusteran berbeda dengan klasifikasi yaitu tidak adanya variabel target dalam pengklusteran. pengklusteran tidak mencoba untuk melakukan klasifikasi, mengestimasi, atau memprediksi nilai dari variabel target. Akan tetapi, algoritma pengklusteran mencoba untuk melakukan pembagian terhadap keselurahan data menjadi kelompok-kelompok yang memiliki kemiripan (homogen), yang mana kemiripan record dalam suatu kelompok akan bernilai maksimal, sedangkan kemiripan dengan record dalam kelompok lain akan bernilai minimal.Contoh pengklusteran dalam bisnis dan penelitian adalah :

1. Mendapatkan kelompok-kelompok konsumen untuk target pemasaran dari suatu produk sebuah perusahaan yang tidak memiliki dana pemasaran yang besar.

2. Untuk tujuan audit akuntansi, yaitu melakukan pemisahan terhadap perilaku finansial dalam baik maupun mencurigakan.

6. Asosiasi

Tugas asosiasi dalam data mining adalah menemukan atribut yang muncul dalam satu waktu. Dalam dunia bisnis lebih umum disebut analisis keranjang pasar.Contoh asosiasi dalam bisnis dan penelitian adalah :

1. Meneliti jumlah pelanggan dari perusahaan telekomunikasi seluler yang diharapkan untuk memberikan respon positif terhadap penawaran upgrade layanan yang diberikan.


(18)

2.Menemukan barang dalam supermarket yang dibeli secara bersamaan dan barang yang tidak pernah dibeli secara

bersamaan.

2.2.5 Association Rule

Association Rule atau Aturan Asosiasi adalah teknik Data Mininguntukmenemukan aturan asosiatif atau pola kombinasi dari suatu item. Bila kita mengambil contoh aturan asosiatif dalam suatu transaksi pembelian barang di suatu minimarket adalah kita dapat mengetahui berapa besar kemungkinan seorang konsumen membeli suatu item bersamaan dengan item lainnya (membeli roti bersama dengan selai). Karena awalnya berasal dari studi tentang database transaksi pelanggan untuk menentukan kebiasaan suatu produk dibeli bersama apa, maka association rule sering juga dinamakan market basket analysis [15].

Association Rule adalah bentuk jika “kejadian sebelumnya” kemudian

“konsekuensinya” (If antecedent, then consequent), yang diikuti

denganperhitungan aturan support dan confidence. Bentuk umum dari association ruleadalah Antecedent -> Consequent.Bila kita ambil contoh dalam sebuah transaksi pembelian barang di sebuah minimarket didapat bentuk association rule roti -> selai. Yang artinya bahwa pelanggan yang membeli roti ada kemungkinan pelanggan tersebut juga akan membeli selai, dimana tidak ada batasan dalam jumlah item-item pada bagian antecedent ataupun consequent dalam sebuah rule. Dalam menentukan suatu associaiton rule, terdapat suatu interestingness measure (ukuran kepercayaan) yang didaapt dari hasil pengolahan data dengan perhitungan tertentu. Umumnya ada dua ukuran, yaitu :

1. Support : suatu ukuran yang menunjukkan seberapa besar tingkat dominasi suatu item/itemset dari keseluruhan transaksi. Support merupakan matrik pertama yang ditetapkan dalam analisis keranjang pasar, yang merupakan probabilitas dari asosiasi (probabilitas dari dua item yang diberi bersama - sama). Support dihasilkan dari berapa kali jumlah item A dan B terjadi bersamaan dalam transaksi yang sama dibagi dengan jumlah total dari transaksi tersebut. Support dapat dirumuskan sebagai berikut [4]:


(19)

20

Support = P (A ∩ B)

= J a a a ya a a

T a a a a

2. Confidence : Confidence dihasilkan dari seberapa kuat hubungan produk yang sudah dibeli.

Confidence dapat dirumuskan sebagai berikut [4] : Confidence = P (B / A)

= � ∩

Kedua ukuran ini nantinya berguna dalam menentukan kekuatan suatu pola dengan membandingkan pola tersebut dengan nilai minimum kedua parameter tersebut yang ditentukan oleh pengguna. Bila suatu pola memenuhi kedua nilai minimum parameter yang sudah ditentukan sebelumnya, maka pola tersebut dapat disebut sebagai interestingrule atau strongrule. Metodologi dasar analisis asosiasi terbagi menjadi dua tahap [19] :

1. Analisis pola frekuensi tinggi

Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari nilai support dalam database. Nilai support sebuah item diperoleh dengan rumus berikut.

� � = � �ℎ � � � ya �ℎ � � � ��� � X 100 % ...Persamaan (2-1)

Sementara itu, nilai support dari 2 item diperoleh dari rumus berikut :� � , = � ∩ )…Persamaan (2-2) � � , =

� �ℎ � � � ya �� � �


(20)

2. Pembentukan aturan asosiasi

Setelah semua pola frekuensi tinggi ditemukan, kemudian mencari aturan asosiasi yang cukup kuat ketergantungan antar item.Dalam antecedent (pendahulu) dan consequent (pengikut) serta memenuhi syarat minimum untuk confidence aturan asosiatif AB.Misalkan D adalah himpunan transaksi, dimana setiap transaksi T dalam D merepresentasikan himpunan item yang berada dalam I. I adalah himpunan item yang dijual.

Misalkan kita memilih himpunan item A dan himpunan item lain B, kemudian aturan asosiasi akan berbentuk :

Jika A, maka B (AB)

Dimana antecedent A dan consequent B merupakan subset dari I, dan A dan B dimana aturan :

Jika A, maka B

Tidak berarti Jika B, maka A

Sebuah itemset adalah himpunan item-item yang ada dalam I, dan i itemset. Frekuensi itemset merupakan itemset yang memiliki frekuensi kemunculan lebih dari nilai minimum yang telah ditentukan.

Nilai confidence dari aturan A B diperoleh dari rumus berikut.

� = � | =� �ℎ � � � ya �ℎ � � � �� � ���� � �


(21)

22

2.2.6 Algoritma FP-Growth

Algoritma yang sama dengan Apriori, FP-Growth mulai dengan menghitung item tunggal sesuai dengan jumlah kemunculan item yang ada didalam dataset. Setelah proses penghitungan selesai maka akan dibuat struktur pohon pada tahap kedua. Pohon yang dibuat mulanya kosong yang nanti akan diisi dengan hasil dari dataset yang telah didapat sebelumnya. Kunci untuk mendapatkan struktur pohon yang bisa didapatkan dengan proses lebih cepat untuk mencari item set yang besar menjadi sedikit dengan di urutkan secara descending dari frekuensi yang ada dataset tersebut. Masing-masing item yang tidak mencapai kebutuhan minimum dari threshold tidak dimasukkan kedalam pohon, tapi dikeluarkan secara efektif dari dataset [8].

Tree merupakan struktur penyimpanan data yang dimampatkan. FP-Tree dibangun dengan memetakan setiap data transaksi ke dalam setiap lintasan tertentu dalam FP-Tree. Karena dalam setiap transaksi yang dipetakan, mungkin ada transaksi yang memiliki item yang sama, maka lintasannya memungkinkan untuk saling menimpa. Semakin banyak data transaksi yang memiliki item yang sama, maka proses pemampatan dengan struktur data FP-Tree semakin efektif. Kelebihan dari FP-Tree adalah hanya memerlukan dua kali pemindaian data transaksi yang terbukti sangat efisien.

Adapun FP-Tree adalah sebuah pohon dengan definisi sebagai berikut:

a. FP-Tree dibentuk oleh sebuah akar yang diberi label null, sekumpulan berupa pohon yang beranggotakan item-item tertentu, dan sebuah tabel frequentheader.

b. Setiap simpul dalam FP- Tree mengandung tiga informasi penting, yaitu label item, menginformasikan jenis item yang direpresentasikan simpul tersebut, support count, merepresentasikan jumlah lintasan transaksi yang melalui simpul tesebut, dan pointer penghubung yang menghubungkan simpul-simpul dengan label item sama antar-lintasan, ditandai dengan garis panah putus-putus.


(22)

2.2.4.1Langkah-Langkah Proses Perhitungan Association Rule Dengan Algoritma FP-Growth

Proses perhitungan association rule terdiri dari beberapa tahap adalah sebagai berikut [9] :

1. Membuat Header Item

Header dalam hal ini selain sebagai header suatu item ke FP-Tree juga sebagai jenis item dasar yang memenuhi minimum support. Setelah mendapatkan item dan nilai support-nya, maka item yang tidak frequent dibuang dan item diurutkan berdasarkan nilai support-nya. Header untuk item, disiapkan pada suatu array tertentu dan ditambahkan ketika membuat FP-Tree.

2. Membuat FP-Tree

FP-Tree dibangun dengan mencari item sesuai urutan pada item yang frequent. Data transaksi tidak perlu diurutkan, dan untuk tiap item yang ditemukan bisa langsung dimasukkan ke dalam FP-Tree. Sesudah membuat root, tiap item yang ditemukan dimasukkan berdasarkan path pada FP-Tree. Jika item yang ditemukan sudah ada, maka nilai supportitem tersebut yang ditambahkan. Namun jika path belum ada, maka dibuat node baru untuk melengkapi path baru pada FP-Tree tersebut. Hal ini dilakukan selama item pada transaksi masih ada yang qualified, artinya memenuhi nilai minimum support. Jadi, item-item yang ditemukan dalam transaksi akan berurutan memanjang ke bawah. Dalam struktur FP-Tree, diterapkan alur path dari child hingga ke root. Jadi, suatu path utuh dalam FP-Tree adalah dari child terbawah hingga ke root. Tiap node pada FP-Tree memiliki pointer ke parent, sehingga pencarian harus dimulai dari bawah.

3. Pattern Extraction

Pattern extraction dilakukan berdasarkan keterlibatan item pada suatu path. Di setiap path, diperiksa semua kombinasi yang mungkin dimana item tersebut terlibat. Di iterasi berikutnya dilakukan dengan melibatkan item berikutnya, tanpa melibatkan item sebelumnya,


(23)

24

sehingga pattern yang sama tidak akan ditemukan dua kali pada path yang sama. Bila item pertama suatu hasil kombinasi bukan item terakhir (sebelum root), maka kombinasi itemset tersebut masih bisa dikembangkan lagi.

4. Memasukkan setiap pattern yang ditemukan ke dalam PatternTree Setelah mengolah FP-Tree menjadi pattern-pattern, diperlukan proses akumulasi pattern-pattern yang ditemukan mengingat pattern yang sama dapat ditemukan pada path yang berbeda. Untuk itu digunakan struktur data Pattern Tree (lihat Gambar 2.5). Setiap node di Pattern Tree merepresentasikan dan menyimpan frekuensi suatu pattern. Pattern Tree terdiri atas Pattern TreeNode yang menyimpan nilai item, nilai support dan dilengkapi dengan dua pointer yaitu untuk horisontal dan vertikal.

Misalnya pada node d:1 di atas, berarti terdapat pattern a-c-d bernilai support 1. Kemudian bila ada pattern a-c-d lagi bernilai support n yang ditemukan dari FP-Tree maka nilai support 1 tersebut menjadi n+1. Contoh hasil lengkap dari PatternTree tersebut:

1. a:5 menggambarkan bahwa ada pattern a sebanyak 5 2. b:4 menggambarkan bahwa ada pattern a-b sebanyak 4 3. c:4 menggambarkan bahwa ada pattern a-b-c sebanyak 4 4. d:3 menggambarkan bahwa ada pattern a-b-c-d sebanyak 3 5. c:2 menggambarkan bahwa ada pattern a-c sebanyak 2 6. d:1 menggambarkan bahwa ada pattern a-c-d sebanyak 1 7. d:3 menggambarkan bahwa ada pattern a-d sebanyak 3 5. Mengurutkan dan Menyeleksi Pattern


(24)

Pattern yang tidak memenuhi minimum support, dihapus dari daftar pattern. Pattern-pattern yang tersisa kemudian diurutkan untuk memudahkan pembuatan rules.

2.2.7 Unified Modelling Language (UML)

Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek serta aplikasinya. Berikut adalah beberapa model yang digunakan dalam perancangan Data Mining Pemaketan Produk di Minimarket Warga Tunggal untuk menggambarkan sistem dalam UML:

1. Diagram Use Case 2. Diagram Kelas 3. Diagram Aktivitas 4. Diagram Sequence

2.2.7.1 Diagram Use Case

Diagram use case adalah model fungsional sebuah sistem yang menggunakan aktor dan use case. Use case adalah layanan (services) atau fungsi–fungsi yang disediakan oleh sistem untuk penggunanya.

Deskripsi Diagram Use Case:

1. Sebuah use case adalah dimana sistem digunakan untuk memenuhi satu atau lebih kebutuhan pemakai.

2. Use case merupakan awal yang sangat baik untuk setiap fase pengembangan berbasis objek, design testing, dan dokumentasi. 3. Use case menggambarkan kebutuhan sistem dari sudut pandang di

luar sistem.

4. Use case menentukan nilai yang diberikan sistem kepada pemakainya.

5. Use case hanya menetapkan apa yang seharusnya dikerjakan oleh sistem, yaitu kebutuhan fungsional sistem.


(25)

26

6. Use case tidak untuk menentukan kebutuhan nonfungsional, misal: sasaran kerja, bahasa pemrograman.

2.2.7.2 Diagram Kelas

Diagram kelas adalah diagram UML yang menggambarkan kelas-kelas dalam sebuah sistem dan hubungannya antara satu dengan yang lain, serta dimasukkan pula atribut dan operasi.Tahapan dari diagram kelas adalah sebagai berikut:

1. Mengidentifikasi objek dan mendapatkan kelas-kelasnya. 2. Mengidentifikasi atribut kelas-kelas.

3. Mulai mengkonstruksikan kamus data. 4. Mengidentifikasi operasi pada kelas-kelas.

5. Mengidentifikasikan hubungan antar kelas dengan menggunakan asosiasi, agregasi, dan inheritance (pewarisan).

2.2.7.3 Diagram Aktifitas

Diagram aktivitas adalah representasi grafis dari seluruh tahapan alur kerja. Diagram ini mengandung aktivitas, pilihan tindakan, perulangan dan hasil dari aktivitas tersebut. Diagram ini dapat digunakan untuk menjelaskan proses bisnis dan alur kerja operasional secara langkah demi langkah dari komponen suatu sistem.

2.2.7.4 Diagram Sequence

Sequence diagram menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambarkan sequence diagram maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu.

Banyaknya sequence diagram yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada sequence diagram sehingga semakin banyak use case yang didefinisikan maka sequence diagram yang harus dibuat juga semakin banyak. Penomoran pesan


(26)

berdasarkan urutan iteraksi pesan. Penggambaran letak pesan harus berurutan, pesan yang lebih atas dari lainnya adalah pesan yang berjalan terlebih dahulu.


(27)

29 BAB 3

ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Sistem

Analisis sistem adalah suatu proses untuk mengumpulkan dan melakukan sebuah interpretasi pada kenyataan – kenyataan yang ada, mendiagnosa persoalan dan menggunakan keduanya untuk untuk memperbaiki sistem. Analisis Sistem ini bertujuan untuk menjelaskan permasalahan yang muncul pada saat pembangunan sistem, hal ini bertujuan untuk membantu ketika proses perancangan sistem berlangsung. Tugas utama analisis sistem dalam tahap ini adalah menemukan kelemahan-kelemahan dari sistem yang berjalan sehingga dapat diusulkan perbaikannya. Dalam analisis sistem ini meliputi beberapa bagian, yaitu :

1. Analisis Masalah

2. Analisis Penerepan Metode CRISP-DM

3. Analisis Penerapan Kebutuhan Perangkat Lunak 4. Analisis Kebutuhan Fungsional

5. Analisis Kebutuhan Non-Fungsional 3.1.1 Analisis Masalah

Analisis masalah yang dilakukan adalah melihat dan mengidentifikasi permasalahan atau kendala di dalam penelitian yang dilakukan. Masalah dapat diartikan sebagai sebagai suatu pernyataan yang menyatakan tentang situasi yang memerlukan pemecahan. Perlu ada analisis masalah melalui rumusan masalah yang sudah ditentukan sebelumnya. Berdasarkan hasil pengamatan, dapat disimpulkan bahwa permasalahan yang ada di Minimarket Warga Tunggal Bandung yaitu belum adanya informasi penentuan paket produk yang sesuai dengan minat konsumen yang akan ditawarkan menjelang hari-hari besar kegamaan.


(28)

3.1.2 Analisis Penerapan Metode CRISP-DM

Metode pembangunan perangkat data mining yang digunakan dalam penelitian ini adalah Cross-Industry Standard Process for Data Mining (CRISP-DM).

3.1.2.1 Pemahaman Bisnis

Tahapan pemahaman bisnis merupakan tahapan pertama dilakukan dalam kerangka kerja CRISP-DM. Dalam tahapan bisnis ini terdapat beberapa tahapan lainnya, yaitu :

1. Tujuan Bisnis

Dalam proses bisnisnya Minimarket Warga Tunggal Bandung mempunyai tujuan bisnis yaitu untuk memenuhi permintaan konsumen sehingga dapat meningkatkan kepuasan pelanggan dan pendapatan Minimarket.

2. Penentuan Sasaran Data Mining

Tujuan dari penerapan data mining pada pemaketan produk-produk ini adalah untuk mengetahui bagaimana pola pembelian kosumen dalam pemaketan produk dan menigkatkan jumlah produk yang dibeli dalam bentuk paket.

3.1.2.2 Pemahaman Data

Berdasarkan tujuan bisnis Minimarket Warga Tunggal Bandung, data dalam penelitian ini adalah data transaksi yang terjadi di Minimarket Warga Tungal Bandung selama 6 bulan yang berasal dari file microsoft excel (.xlsx), Data tersebut akan dilakukan proses mining pada program. Data yang akan dipakai dalam proses analisis ini merupakan data sample transaksi untuk percobaan dalam proses pencarian rule nya. Berikut merupakan penjelasan dari masing-masing atribut yang terdapat pada tabel data transaksi yang dapat dilihat pada tabel 3.1 dibawah ini :


(29)

31

Tabel 3. 1Struktur Data Transaksi Keterangan

Fungsi Untuk mengetahui jenis produk yang paling diminati oleh konsumen

Format Microsoft Excel (.xlsx)

Atribut Id Nomor urut

Faktur Kode transaksi dalam satu transaksi

Kode barang Kode setiap barang Nama barang Nama barang yang dibeli Harga satuan Harga setiap barang Qty Jumlah barang yang dibeli Harga Harga barang yang dibeli Total Total harga barang yang dibeli Kategori Kategori Barang yang dibeli Tanggal Tanggal pencetakan struk Buyer Pembeli

Kasir Nama kasir

Kbuyer Komputer tempat pelanggan melakukan pembayaran

3.1.2.3 Persiapan Data

Sebelum dilakukan proses mining data harus dipersiapkan sedemikian rupa agar data digunakan sesuai kebutuhan. Dalam kasus ini tidak semua atribut dalam data dipakai untuk membuat proses data mining lebih sederhana, sesuai kebutuhan dan mencapai tujuan yang diharapkan. Adapun tahapan-tahapan persiapan data dalam penelitian ini adalah sebagai berikut :

1. Pemilihan Atribut

Berdasarkan informasi yang ingin didapat oleh pengguna mengenai barang - barang yang dibeli oleh konsumen, maka dalam tahap ini atribut yang digunakan dari tabel C-1 dalam Lampiran C hanya Faktur dan Kode Barang yang memiliki tujuan masing – masing, seperti Faktur berguna


(30)

untuk membedakan satu transaksi dengan transaksi lain, sedangkan Kode Barang berguna untuk mengetahui barang apa saja yang dibeli dalam satu transaksi. Hasil pemilihan atribut dapat dilihat pada tabel D-2 dalam Lampiran D.

2. Pembersihan Data

Pada tahap Pembersihan Data akan dilakukan pengeleminasian terhadap data transaksi yang memiliki item tunggal karena data transaksi yang memiliki item tunggal tidak memiliki hubungan asosiasi dengan item lainnya . Hasil pembersihan data dapat dilihat pada tabel D-3 pada Lampiran D.

3.1.2.4 Pemodelan

Pemodelan merupakan tahap untuk membuat model atau desain sistem yang akan dibangun. Data yang digunakan untuk pengolahan data ini adalah data yang terahir yang sudah dilakukan proses pembersihan data dalam Lampiran D. Didalam tahap ini akan dilakukan penyelesaian masalah pada pemaketan produk di Minimarket Warga Tunggal Bandung dengan Metode Association Rule dan Algoritma FP-Growth. Langkah awal yang dilakukan dalam pemodelan ini adalah mencari kombinasi item yang memenuhi syarat dari nilai minimum support dalam database. Minimum Support merupakan suatu ukuran yang menunjukan seberapa besar tingkat dominasi suatu item pada sebuah data transaksi. Untuk kasus ini diambil nilai minimum support yang diambil adalah 12 yang berarti item yang memiliki jumlah frequent yang kurang dari 12 akan dieliminasi dalam data transaksi. Langkah pertama yang dilakukan untuk menghitung nilai Support dari sebuah item adalah dengan menghitung kemunculan tiap item yang sudah disusun secara Ascending. Berikut ini merupakan jumlah kemunculan tiap item :


(31)

33

Tabel 3. 2 Frequent Item Kode Barang

Support Count

RK4 20

MIN78 19

RK6 18

SNC27 17

RK5 16

KP2 15

MIN4 15

RK2 15

MINUMAN112 5

OBT4 4

MAN1 4

MIN30 4

MIN25 4

MAN81 4

SNC14 3

MIN7 3

MAN3 2

PBT4 2

KP20 2

MAN79 1

SBN3 1

SBN8 1

SNC56 1


(32)

Setelah mengetahui nilai frequent dari semua item, langkah selanjutnya adalah mengeliminasi item yang tidak memenuhi minimum support yang telah ditentukan. Hasil pengeliminasian item yang tidak memenuhi minimum support dapat dilihat pada Tabel 3.4

Tabel 3. 3 Item yang memenuhi Minimum Support

Kode Barang Support Count

RK4 20

MIN78 19

RK6 18

SNC27 17

RK5 16

KP2 15

MIN4 15

RK2 15

Setelah didapatkan data yang memenuhi nilai minimum support seperti pada tabel 3.4 diatas, selanjutnya mencari Frequency Of Occurrence. Urutkan tabel 3.4 berdasarkan Frequent terbesar sampai dengan terkecil, kemudian berikan nilai priority dimulai dari data frekuensi terbesar sampai dengan terkecil. Jika ada Kode Barang dengan jumlah kemunculan yang sama maka yang didahulukan adalah Kode Barang yang pertama muncul dalam data transaksi. Hasil pemberian nilai priority dapat dilihat di Tabel 3.5

Tabel 3. 4 Frequency Of Occurence

Kode Barang

Support

Count Priority

RK4 20 1

MIN78 19 2

RK6 18 3

SNC27 17 4

RK5 16 5

KP2 15 6

MIN4 15 7


(33)

35

Setelah tiap item diketahui nilai priority nya maka data transaksi yang mengandung item yang memenuhi minimum support akan diurutkan berdasarkan nilai priority. Pada tahap ini item yang memiliki frequent tertinggi atau nilai priority tertinggi akan didahulukan penulisannya. Hasil pengurutan berdasarkan priority dapat dilihat pada Tabel 3.6 berikut ini :

Tabel 3. 5 Hasil Pengurutan Berdasarkan Priority

Faktur

Kode

Barang Faktur

Kode Barang

1000 RK4 1005 RK6

1000 RK6 1005 SNC27

1000 SNC27 1005 MIN4

1000 RK5 1005 RK2

1000 KP2 1006 RK4

1000 MIN4 1006 MIN78

1000 RK2 1006 RK6

1001 MIN78 1006 SNC27

1001 SNC27 1006 RK5

1002 RK4 1006 KP2

1002 MIN78 1007 RK4

1002 RK6 1007 MIN78

1002 MIN4 1007 RK5

1002 RK2 1007 RK2

1003 MIN78 1008 RK4

1003 RK6 1008 RK6

1003 SNC27 1008 SNC27

1003 RK5 1008 KP2

1003 KP2 1008 MIN4

1003 MIN4 1009 RK4

1003 RK2 1009 MIN78

1004 RK4 1009 RK5

1004 RK6 1010 RK4

1004 RK5 1010 RK6

1004 KP2


(34)

Faktur

Kode

Barang Faktur

Kode Barang

1010 SNC27 1015 RK6

1010 MIN4 1015 RK5

1011 MIN78 1015 MIN4

1011 RK6 1016 RK6

1011 RK5 1016 SNC27

1011 KP2 1016 KP2

1011 RK2 1017 RK4

1012 RK4 1017 MIN78

1012 SNC27 1017 SNC27

1012 RK2 1017 KP2

1013 MIN78 1017 MIN4

1013 RK6 1018 RK4

1013 RK5 1018 RK5

1013 KP2 1018 MIN4

1013 MIN4 1018 RK2

1013 RK2 1019 RK4

1014 RK4 1019 MIN78

1014 MIN78 1019 RK6

1014 SNC27 1019 SNC27

1014 RK5 1019 RK5

1014 KP2 1019 KP2

1014 RK2 1020 MIN78

1015 RK4 1020 RK6

1015 MIN78 1020 SNC27


(35)

37

Faktur

Kode

Barang Faktur

Kode Barang

1021 MIN78 1027 MIN78

1021 RK6 1027 SNC27

1021 SNC27 1027 KP2

1021 RK5 1027 RK2

1021 KP2 1028 RK6

1021 RK2 1028 MIN4

1022 MIN4 1029 RK4

1022 RK2 1029 MIN78

1023 RK4 1029 SNC27

1023 MIN78 1029 RK5

1023 SNC27 1029 MIN4

1023 KP2

1023 RK2

1024 RK4

1024 MIN78

1024 RK6

1024 RK5

1024 KP2

1025 RK4

1025 MIN4

1026 RK6

1026 RK5

1026 MIN4

1026 RK2


(36)

Setelah data sudah terurut berdasarkan priority, langkah selanjutnya adalah membangun FP-Tree. Berikut ini merupakan tahap – tahap dalam membangun FP-Tree :

a. Buat Tree dengan Root yang tidak memiliki anak.

b. Jika Root tidak memiliki anak, maka data yang muncul pertama kali dijadikan sebagai anak pertama dari Root disertai dengan support count = 1.

c. Jika Root sudah memiliki anak, tetapi data yang muncul berbeda dengan anak dari Root, maka data tersebut merupakan anak selanjutnya dari Root tersebut dan support count nya bertambah 1. d. Jika Root sudah memiliki anak, dan data yang muncul sama dengan

anak tersebut maka support count-nya bertambah 1.

e. Jika data yang muncul sudah ada dalam notasi anak, maka support count-nya bertambah 1.

Hasil pembentukan FP-Tree tiap transaksi pada data transaksi ini dapat dilihat di Lampiran C-4 pada Lampiran C.

1. Setelah tahap pembangunan fp-tree dari sekumpulan data transaksi dilakukan, maka akan dilakukan proses untuk mencari frequent itemset yang signifikan. Berikut adalah tahapanya :

a) Tahap Pembangkitan Conditional Pattern Base

Pembangkitan Conditional Pattern Base didapatkan melalui hasil FP-Tree seluruhnya dengan mencari support count terkecil sesuai dengan hasil pengurutan priority yang telah dibuat sebelumnya.

b) Tahap Pembangkitan Conditional FP-Tree

Pada tahap ini, support count dari setiap item pada Tabel Conditional Pattern Base diatas dijumlahkan, lalu setiap item yang memiliki jumlah Support Count lebih besar atau sama dengan Minimum Support akan dibangkitkan dengan Conditional FP-Tree.

c) Tahap Pencarian Frequent Itemset

Apabila Conditional FP-Tree merupakan lintasan tunggal (single path), maka didapatkan frequent itemset dengan melakukan kombinasi


(37)

39

itemuntuk setiap conditional FP-Tree. Jika bukan lintasan tunggal, maka dilakukan pembangkitan secara rekursif.

Berikut ini merupakan pembentukan FP -Tree untuk Faktur 1000 dengan produk yang dipesan adalah RK4,RK6,SNC27,RK5,KP2,MIN4,RK2 :

NULL

RK4:1

RK6:1 SNC27

:1 RK5:1 KP2:1 MIN4:

1 RK2:1

Gambar 3. 1 Hasil pembentukan FP-Tree Faktur 1000

Pembacaan Faktur 1001 yaitu MIN78,SNC27. Karena MIN78 belum terbentuk maka dibuat jalur baru seperti pada Gambar 3.2 :


(38)

NULL

RK4:1

RK6:1

SNC27 :1

RK5:1

KP2:1

MIN4: 1

RK2:1

MIN78 :1

SNC27 :1

Gambar 3. 2 Hasil pembentukan FP-Tree Faktur 1001

Berikut ini merupakan hasil pembentukan FP-Tree Faktur 1002 dengan barang yang dipesan adalah RK4,MIN78,RK6,MIN4,RK2 :

Berikut ini merupakan hasil pembentukan FP-Tree Faktur 1003 dengan barang yang dipesan adalah MIN78,RK6,SNC27,RK5,KP2,MIN4,RK2:

Gambar 3. 3Hasil pembentukan FP-Tree Faktur 1002 NULL

RK4:2

RK6:1

SNC27 :1 RK5:1

KP2:1

MIN4: 1

RK2:1

MIN78 :1

SNC27 :1 MIN78

:1

RK6:1

MIN4: 1


(39)

41 NULL RK4:2 RK6:1 SNC27 :1 RK5:1 KP2:1 MIN4: 1 RK2:1 MIN78 :2 SNC27 :1 MIN78 :1 RK6:1 MIN4: 1 RK2:1 RK6:1 SNC27 :1 RK5:1 KP2:1 MIN4: 1 RK2:1 Gambar 3. 4 Hasil pembentukan FP-Tree Faktur 1003

Berikut ini merupakan hasil pembentukan FP-Tree Faktur 1004 dengan barang yang dipesan adalah RK4,RK6,RK5,KP2 :

NULL RK4:3 RK6:2 SNC27 :1 RK5:1 KP2:1 MIN4: 1 RK2:1 MIN78 :2 SNC27 :1 MIN78 :1 RK6:1 MIN4: 1 RK2:1 RK6:1 SNC27 :1 RK5:1 KP2:1 MIN4: 1 RK2:1 RK5:1 KP2:1


(40)

Setelah proses pembacaan Faktur 1029 yaitu RK4,MIN78,SNC27,RK5,MIN4, maka terbentuklah Tree dari semua transaksi yang akan digunakan seperti pada gambar 3.6 dibawah ini :

NULL RK4:20 RK6:4 SNC27 :3 RK5:1 KP2:1 MIN4: 1 RK2:1 MIN78 :5 SNC27 :1 MIN78 :14 RK6:7 MIN4: 1 RK2:1 RK6:4 SNC27 :2 RK5:1 KP2:1 MIN4: 1 RK2:1 RK5:1 KP2:1 MIN4: 1 RK2:1 KP2:1 MIN4: 1 SNC27 :4 RK5:3 KP2:3 RK5:2 RK2:1 MIN4: 1 RK5:2 KP2:2 RK2:1 SNC27 :1 RK2:1 MIN4: 1 RK2:1 SNC27 :5 RK5:2 KP2:1 RK2:1 RK5:2 MIN4: 1 RK6:3 SNC27 :1 KP2:1 KP2:3 MIN4: 1 RK5:1 MIN4: 1 RK2:1 RK2:1 MIN4: 1 RK2:1 RK2:2 KP2:1 MIN4: 1 RK5:1 MIN4: 1 RK2:1 MIN4: 1 MIN4: 1

Gambar 3. 6 Hasil pembentukan FP-Tree Faktur 1029

Setelah tahap pembangunan FP-Tree dari sekumpulan data transaksi dilakukan, maka akan diterapkan Algoritma FP-Growth untuk proses pencarian frequent itemset yang signifikan. Berikut langkah-langkah utama Algoritma FP-Growth, yaitu :

a. Tahap pembangkitan conditional pattern base

Pembangkitan conditional pattern base didapatkan melalui hasil FP-Tree seluruhnya, dengan mencari support count terkecil sesuai dengan hasil pengurutan priority. Dan telah didapatkan yaitu : RK2, MIN4, KP2, RK5, SNC27, RK6, MIN78, RK4. Berikut adalah hasil tabel dari conditional pattern base :


(41)

43

Tabel 3. 6 Conditional Pattern Base

Item Conditonal Pattern Base

RK2 {{RK4,RK6,SNC27,RK5,KP2,MIN4:1},{RK4,MIN78,RK6,MIN4:1}, {RK4,MIN78,RK6,SNC27,RK5,KP2:1},{RK4,MIN78,RK5:1},{RK4,MIN78, SNC27,RK5,KP2:1},{RK4,MIN78,SNC27,KP2:1},

{RK4,SNC27:1},{RK4,RK5,MIN4:1},{MIN78,RK6,SNC27,RK5,KP2,MIN4: 1},{MIN78,RK6,SNC27,MIN4:1},{MIN78,RK6,RK5,KP2:1},

{MIN78,RK6,RK5,KP2,MIN4:1},{RK6,RK5,MIN4:1},{MIN4:1}} MIN4 {{RK4,RK6,SNC27,RK5,KP2:1},{RK4,RK6,SNC27,KP2:1},

{RK4,RK6,SNC27:1},{RK4,MIN78,RK6:1},{RK4,MIN78,RK6,RK5:1},{RK 4,MIN78,SNC27,RK5:1},{RK4,MIN78,SNC27,KP2:1},

{RK4,RK5:1},{RK4:1},{MIN78,RK6,SNC27,RK5,KP2:1},

{MIN78,RK6,SNC27:1},{MIN78,RK6,RK5,KP2:1},{RK6,RK5:1}, {RK6:1}}

KP2 {{RK4,RK6,SNC27,RK5:1},{RK4,RK6,SNC27:1},{RK4,RK6,RK5:1},{RK4 ,MIN78,RK6,SNC27,RK5:3},{RK4,MIN78,RK6,RK5:1},

{RK4,MIN78,SNC27,RK5:1},{RK4,MIN78,SNC27:3},{MIN78,RK6,SNC27, RK5:1},{MIN78,RK6,RK5:2},{RK6,SNC27:1}}

RK5 {{RK4,RK6,SNC27:1},{RK4,RK6:1},{RK4,MIN78,RK6,SNC27:3}, {RK4,MIN78,RK6:2},{RK4,MIN78:2},{RK4,MIN78,SNC27:2}, {RK4:1},{MIN78,RK6,SNC27:1},{MIN78,RK6:2},{RK6:1}} SNC27 {{RK4,RK6:3},{RK4,MIN78,RK6:4},{RK4,MIN78:5},

{RK4,MIN78:5},{MIN78:1},{MIN78,RK6:2},{RK6:1}} RK6 {{RK4:4},{RK4,MIN78:7},{MIN78:4},{NULL, RK6:3}} MIN78 {{RK4,MIN78:14},{NULL, MIN78:5}}

RK4 {NULL, RK4:20}

b. Tahap pembangkitan Conditional FP-Tree

Pada tahap ini, support count dari setiap item pada setiap conditional pattern base dijumlahkan, lalu setiap item yang memiliki jumlah support count lebih besar atau sama dengan minimumsupport akan dibangkitkan dengan ConditionalFP-Tree.


(42)

{RK4,RK6,SNC27,RK5,KP2,MIN4:1},{RK4,MIN78,RK6,MIN4:1},{RK4 ,MIN78,RK6,SNC27,RK5,KP2:1},{RK4,MIN78,RK5:1},{RK4,MIN78,S NC27,RK5,KP2:1},{RK4,MIN78,SNC27,KP2:2},{RK4,SNC27:1},{RK4, RK5,MIN4:1},{MIN78,RK6,SNC27,RK5,KP2,MIN4:1},{MIN78,RK6,SN C27,MIN4:1},{MIN78,RK6,RK5,KP2:1},{MIN78,RK6,RK5,KP2,MIN4:1 },{RK6,RK5,MIN4:1},{MIN4:1} NULL RK4:20 RK6:4 SNC27 :3 RK5:1 KP2:1 MIN4: 1 RK2:1 MIN78 :5 MIN78 :14 RK6:7 MIN4: 1 RK2:1 RK6:4 SNC27 :2 RK5:1 KP2:1 MIN4: 1 RK2:1 MIN4: 1 RK2:1 SNC27 :4 RK5:3 KP2:3 RK5:2 RK2:1 RK5:2 KP2:2 RK2:1 SNC27 :1 RK2:1 MIN4: 1 RK2:1 SNC27 :5 RK5:2 KP2:1 RK2:1 RK6:3 KP2:3 RK5:1 MIN4: 1 RK2:1 RK2:1 MIN4: 1 RK2:1 RK2:2 RK5:1 MIN4: 1 RK2:1

Gambar 3. 7 Conditional FP-Tree Kode Produk RK2 Sebelum dibangkitkan

Karena nilai Support Countkode produk RK2 setelah diakumulasikan memenuhi Minimum Support, maka kode produk RK2 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran {RK2:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran RK2, akan disamakan dengan support count RK2 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.


(43)

45 NULL RK4:9 RK6:1 SNC27 :1 RK5:1 KP2:1 MIN4: 1 MIN78 :4 MIN78 :6 RK6:2 MIN4: 1 RK6:4 SNC27 :2 RK5:1 KP2:1 MIN4: 1 MIN4: 2 SNC27 :1 RK5:1 KP2:1 RK5:1 RK5:2 KP2:2 SNC27 :1 MIN4: 1 SNC27 :3 RK5:1 KP2:1 RK6:1 KP2:2 RK5:1 MIN4: 1 RK2:1 MIN4: 1 RK5:1 MIN4: 1

Gambar 3. 8 Conditional FP-Tree Kode Produk RK2 Setelah dibangkitkan

Tidak ada frequent itemset yang keluar karna tidak ada yang memenuhi minimum support.

- ConditionalFP-Tree untuk kode produk MIN4 :

{RK4,RK6,SNC27,RK5,KP2:1},{RK4,RK6,SNC27,KP2:2},{RK4,RK6,S NC27:1},{RK4,MIN78,RK6:1},

{RK4,MIN78,RK6,RK5:1},{RK4,MIN78,SNC27,RK5:1}, {RK4,MIN78,SNC27,KP2:1},{RK4,RK5:1},{RK4:1}, {MIN78,RK6,SNC27,RK5,KP2:1},{MIN78,RK6,SNC27:1},


(44)

NULL RK4:20 RK6:4 SNC27 :3 RK5:1 KP2:1 MIN4: 1 MIN78 :5 MIN78 :14 RK6:7 MIN4: 1 RK6:4 SNC27 :2 RK5:1 KP2:1 MIN4: 1 MIN4: 1 KP2:1 MIN4: 1 MIN4: 1 RK5:2 KP2:2 MIN4: 1 SNC27 :5 RK5:2 RK5:2 MIN4: 1 RK6:3 KP2:3 MIN4: 1 RK5:1 MIN4: 1 MIN4: 1 MIN4: 1 RK5:1 MIN4: 1 MIN4: 1 MIN4: 1

Gambar 3. 9 Conditional FP-Tree Kode Produk MIN4 Sebelum dibangkitkan

Karena nilai Support Countkode produk MIN4 setelah diakumulasikan memenuhi Minimum Support, maka kode produk MIN4 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran {MIN4:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran MIN4, akan disamakan dengan support count MIN4 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.


(45)

47

NULL

RK4:6

RK6:2 SNC27

:2 RK5:1 KP2:1

MIN78 :2 MIN78

:3 RK6:1

RK6:2 SNC27

:1 RK5:1

KP2:1 KP2:1

RK5:1

KP2:1 SNC27

:2 RK5:1 RK5:1

RK6:1

KP2:1

RK5:1 RK5:1

Gambar 3. 10 Conditional FP-Tree Kode Produk MIN4 Setelah dibangkitkan

Tidak ada frequent itemset yang keluar karena tidak ada yang memenuhi minimum support.

- ConditionalFP-Tree untuk kode produk KP2 :

{RK4,RK6,SNC27,RK5:1},{RK4,RK6,SNC27:2},{RK4,RK6,RK5:1}, {RK4,MIN78,RK6,SNC27,RK5:3},{RK4,MIN78,RK6,RK5:1},

{RK4,MIN78,SNC27,RK5:1},{RK4,MIN78,SNC27:1},{MIN78,RK6,SN C27,RK5:1}, {MIN78,RK6,RK5:2}, {RK6,SNC27:1}


(46)

NULL RK4:20 RK6:4 SNC27 :3 RK5:1 KP2:1 MIN78 :5 MIN78 :14 RK6:7 RK6:4 SNC27 :2 RK5:1 KP2:1 RK5:1 KP2:1

KP2:1 SNC27:4 RK5:3 KP2:3 RK5:2 KP2:2 SNC27 :5 RK5:2 KP2:1 RK5:2 RK6:3 SNC27 :1 KP2:1 KP2:3 KP2:1

Gambar 3. 11 Conditional FP-Tree Kode Produk KP2 Sebelum dibangkitkan

Karena nilai Support Countkode produk KP2 setelah diakumulasikan memenuhi Minimum Support, maka kode produk KP2 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran {KP2:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran KP2, akan disamakan dengan support count KP2 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.


(47)

49 NULL RK4:11 RK6:3 SNC27 :2 RK5:1 MIN78 :3 MIN78 :8 RK6:4 RK6:3 SNC27 :1 RK5:1 RK5:1 SNC27 :3 RK5:3 RK5:2 SNC27 :4 RK5:1 RK5:1 RK6:1 SNC27 :1

Gambar 3. 12 Conditional FP-Tree Kode Produk KP2 Setelah dibangkitkan

Tidak ada frequent itemset yang keluar karena tidak ada yang memenuhi minimum support.

- ConditionalFP-Tree untuk kode produk RK5 :

{RK4,RK6,SNC27:1},{RK4,RK6:1},{RK4,MIN78,RK6,SNC27:3},{RK4, MIN78,RK6:2},{RK4,MIN78:2},{RK4,MIN78,SNC27:2},{RK4:1},{MIN 78,RK6,SNC27:1},{MIN78,RK6:2},{RK6:1} NULL RK4:20 RK6:4 SNC27 :3 RK5:1 MIN78 :5 MIN78 :14 RK6:7 RK6:4 SNC27 :2 RK5:1 RK5:1 SNC27 :4 RK5:3 RK5:2 RK5:2 SNC27 :5 RK5:2 RK5:2 RK6:3 RK5:1 RK5:1


(48)

Karena nilai Support Countkode produk RK5 setelah diakumulasikan memenuhi Minimum Support, maka kode produk RK5 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran { RK5:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran RK5, akan disamakan dengan support countRK5 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.

NULL

RK4:12

RK6:2

SNC27 :1

MIN78 :3

MIN78 :9

RK6:5

RK6:3

SNC27 :1

SNC27 :3

SNC27 :2

RK6:1

Gambar 3. 14 Conditional FP-Tree Kode Produk RK5 Setelah dibangkitkan

Frequent Itemset yang keluar adalah {RK4:12}, {MIN78:12}

Setelah proses pembangkitan, maka proses terakhir adalah mencari frequent itemset yang keluar yang memenuhi minimum support. {RK4:12} {MIN78:12}adalah yang keluar yang dapat memenuhi minimum support. Dan frequentitemset yang didapatkan adalah {RK5, RK4:12} dan {RK5, MIN78:12}


(49)

51

NULL

RK4:12

Gambar 3. 15 Conditional FP-Tree RK5, RK4:12 Hasil Frequent Pattern NULL

MIN78 :12

Gambar 3. 16 Conditional FP-Tree RK5, MIN78:12 Hasil Frequent Pattern ConditionalFP-Tree untuk kode produk SNC27 :

{RK4,RK6:3},{RK4,MIN78,RK6:4},{RK4,MIN78:5},{RK4:1},{MIN78:1},{MI N78,RK6:2},{RK6:1}

NULL

RK4:20

RK6:4

SNC27 :3

MIN78 :5

SNC27 :1 MIN78

:14

RK6:7

RK6:4

SNC27 :2

SNC27 :4

SNC27 :1

SNC27 :5

RK6:3

SNC27 :1

Gambar 3. 17 Conditional FP-Tree Kode Produk SNC27 Sebelum dibangkitkan

Karena nilai Support Countkode produk SNC27 setelah diakumulasikan memenuhi Minimum Support, maka kode produk SNC27 akan dibangkitkan. Berikut adalah tahapannya :


(50)

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran { SNC27:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran SNC27, akan disamakan dengan support countSNC27 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.

NULL

RK4:13

RK6:3

MIN78 :3 MIN78

:9 RK6:4

RK6:2

RK6:1

Gambar 3. 18 Conditional FP-Tree Kode Produk SNC27 Setelah dibangkitkan

frequent itemset yang keluar adalah {RK4:13}, {MIN78:12}

Setelah proses pembangkitan, maka proses terakhir adalah mencari frequent itemset yang keluar yang memenuhi minimum support. {RK4:13} {MIN78:12}adalah yang keluar yang dapat memenuhi minimum support. Dan frequentitemset yang didapatkan adalah {SNC27, RK4:12} dan {SNC27, MIN78:12}

NULL

RK4:13


(51)

53

NULL

MIN78 :12

Gambar 3. 20 Conditional FP-Tree SNC27, MIN78:12 Hasil Frequent Pattern - ConditionalFP-Tree untuk kode produk RK6 :

{RK4:4},{RK4,MIN78:7},{MIN78:4},{NULL,RK6:3} NULL

RK4:20

RK6:4

MIN78 :5 MIN78

:14 RK6:7

RK6:4

RK6:3

Gambar 3. 21 Conditional FP-Tree Kode Produk RK6 Sebelum dibangkitkan

Karena nilai Support Countkode produk RK6 setelah diakumulasikan memenuhi Minimum Support, maka kode produk RK6 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran { RK6:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran RK6, akan disamakan dengan support countRK6 yaitu sesuai dengan support count yang dimilikinya.

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.


(52)

NULL

RK4:11

MIN78 :4

MIN78 :7

Gambar 3. 22 Conditional FP-Tree Kode Produk RK6 Setelah dibangkitkan

Tidak ada frequent itemset yang keluar karna tidak ada yang memenuhi minimum support.

- ConditionalFP-Tree untuk kode produk MIN78 : {RK4,MIN78:14} {NULL, MIN78:5}

NULL

RK4:20

MIN78 :6

MIN78 :13

Gambar 3. 23 Conditional FP-Tree Kode Produk MIN78 Sebelum dibangkitkan

Karena nilai Support Countkode produk MIN78 setelah diakumulasikan memenuhi Minimum Support, maka kode produk MIN78 akan dibangkitkan. Berikut adalah tahapannya :

1. Jumlah support count yang memenuhi minimum support akan dibangkitkan dengan conditional FP-Tree.

- Pada lintasan yang berakhiran { MIN78:1} dengan support count adalah 1 atau lebih akan dihilangkan dan support count yang melewati lintasan pertama yang berakhiran MIN78, akan disamakan dengan support countMIN78 yaitu sesuai dengan support count yang dimilikinya.


(53)

55

- Proses selanjutnya adalah apabila dalam suatu lintasan, melintasi dua atau lebih, maka support count-nya akan selalu bertambah 1.

NULL

RK4:13

Gambar 3. 24 Conditional FP-Tree Kode Produk MIN78 Setelah dibangkitkan frequent itemset yang keluar adalah {RK4:13}

- ConditionalFP-Tree untuk kode produk RK4 : {NULL, RK4:20}

NULL

RK4:20

Gambar 3. 25 Conditional FP-Tree Kode Produk RK4 Sebelum dibangkitkan

Setelah mendapatkan hasil dari conditional fp-tree, tidak ditemukan beberapa frequent itemset yang keluar seperti pada table dibawah ini :

Tabel 3. 7 Conditional Fp-Tree

Item Conditional FP-tree

RK5 <RK5, RK4:12>,<RK5, MIN78:12> SNC27 <SNC27, RK4:13>,<SNC27, MIN78:12> MIN78 <MIN78, RK4:13>


(54)

Setelah mendapatkan tabel dari conditional fp-tree, tahap selanjutnya adalah : a. Akumulasikan setiap item untuk setiap frequent itemset yang ada pada

table 3.6

b. Buat conditional fp-tree dari setiap frequent itemset yang keluar.

- Untuk item RK5, item frequent itemset yang keluar adalah {RK4:12} {MIN78:12}

NULL

RK4:12

RK5:16

RK4:12 NULL

NULL

Gambar 3. 26 Conditional FP-Tree Untuk Item Frequent itemset RK5, RK4:12

NULL

MIN78 :12

RK5:12

MIN78 :12 NULL

NULL

Gambar 3. 27 Conditional FP-Tree Untuk Item Frequent itemset RK5, MIN78:12

- Untuk item SNC27, item frequent itemset yang keluar adalah {RK4:12} {MIN78:12}


(55)

57

NULL

RK4:13

SNC27 :17

RK4:13 NULL

NULL

Gambar 3. 28 Conditional FP-Tree Untuk Item Frequent itemset SNC27, RK4:12 NULL

MIN78 :12

SNC27 :17

MIN78 :12 NULL

NULL

Gambar 3. 29 Conditional FP-Tree Untuk Item Frequent itemset SNC27, MIN78:1

- Untuk item MIN78, item frequent itemset yang keluar adalah {RK4:13} NULL

RK4:13

MIN78 :19

RK4:13 NULL

NULL


(56)

Setelah mendapatkan hasil conditional fp tree dari tiap frequent itemset, selanjutnya adalah menentukan suffix dari tiap frequent itemset, seperti pada table dibawah ini :

Tabel 3. 8 Hasil Frequent Itemset

Suffix Frequent Itemset

RK5 RK5 - RK4 RK5 - MIN78 SNC27 SNC27 - RK4

SNC27 - MIN78 MIN78 MIN78 - RK4

Dari hasil frequent itemset yang didapatkan pada table 3.8 di atas akan di generate untuk mendapatkan rule dengan minimum support 12 dan minimum confidence 60 % dengan masing-masing itemset dikombinasikan dengan itemset lain. Dengan menggunakan rumus yang ada pada bagian bab 2 untuk memperoleh nilai support dan nilai confidence.Berikut hasil perhitungan minimum support dan minimum confidence.

Tabel 3. 9 Hasil Perhitungan Confidence

Rule Minimum Confidence

RK5  RK4 (12/16)*100%=75% RK4  RK5 (12/20)*100%=60% RK5  MIN78 (12/16)*100%= 75% MIN78  RK5 (12/19)* 100 %=63,15% SNC27  RK4 (12/17) *100% =70,59% RK4  SNC27 (12/20) *100% =60% SNC27 MIN78 (12/17) *100% =70,59% MIN78 SNC27 (12/19) *100 %=63,15% MIN78  RK4 (13/19) *100% =68,42% RK4  MIN78 (13/20) *100% =65%

Berikut adalah hasil rule dalam penentuan barang-barang dalam bentuk awal berdasarkan confidence


(57)

59

Tabel 3. 10 Paket Produk dalam Bentuk Awal

Rule Confidence

RK5  RK4 75% RK4  RK5 60% RK5  MIN78 75% MIN78  RK5 63,15% SNC27  RK4 70,59% RK4  SNC27 60% SNC27  MIN78 70,59% MIN78  SNC27 63,15% MIN78  RK4 68,42% RK4  MIN78 65%

Tabel 3. 11 Hasil Pembentukan Rules

Rule Paket Produk

RK5  RK4 Jika 234 (16) dibeli, maka SAMPURNA KRETEK dibeli dengan confidence 75%

RK4  RK5 Jika SAMPURNA KRETEK dibeli, maka 234 (16) dibeli dengan confidence 60%

RK5  MIN78 Jika 234 (16) dibeli, maka JAM GELAS dibeli dengan confidence 75%

MIN78  RK5 Jika JAM GELAS dibeli, maka 234 (16) dibeli dengan confidence 63,15%

SNC27  RK4 Jika ROMA KELAPA dibeli, maka SAMPURNA KRETEK dibeli dengan confidence 70,59%

RK4  SNC27 Jika SAMPURNA KRETEK dibeli, maka ROMA KELAPA dibeli dengan confidence60% SNC27  MIN78 Jika ROMA KELAPA dibeli, maka JAM

GELAS dibeli dengan confidence 70,59% MIN78  SNC27 Jika JAM GELAS dibeli, maka ROMA


(58)

MIN78  RK4 Jika JAM GELAS dibeli, maka SAMPURNA KRETEK dibeli dengan confidence 68,42% RK4  MIN78 Jika SAMPURNA KRETEK dibeli, maka JAM

GELAS dibeli dengan confidence 65%

Dalam penentuan kombinasi produk yang akan dijual dalam bentuk paket pihak Minimarket Warga Tunggal tidak memiliki batasan khusus, sehingga dari Rule yang terbentuk bisa digunakan sebagai pertimbangan dalam menentukan paket produk yang akan dijual. Berikut ini merupakan paket produk yang terbentuk.

Tabel 3. 12 Informasi Paket

Paket Paket Produk

Paket 1 234 (16) bisa dipaketkan dengan SAMPURNA KRETEK

Paket 2 Jika 234 (16) bisa dipaketkan dengan JAM GELAS

Paket 3 Jika ROMA KELAPA bisa dipaketkan dengan SAMPURNA KRETEK

Paket 4 Jika ROMA KELAPA bisa dipaketkan dengan JAM GELAS

Paket 5 JAM GELAS bisa dipaketkan dengan SAMPURNA KRETEK

3.2 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional bertujuan untuk perancangan terhadap aplikasi yang akan dibangun. Aplikasi yang akan dibangun menggunakan pendekar berorientasi objek dengan menggunakan pemodelan UML. Pemodelan yang akan digunakan untuk memodelkan terdiri dari diagram Use Case, Activity Diagram, Sequence Diagram dan Class Diagram.


(59)

61

3.2.1 Diagram Use Case

Use case atau diagram use case merupakan pemodelan untuk kelakuan (behavior) sistem yang akan dibuat. Diagram use case yang terdapat pada sistem yang akan dibangun terdiri dari satu user dan 9use case. Adapun diagram use case dari sistem yang akan dibuat dapat dilihat di gambar 3.1.

Gambar 3. 31Diagram Use Case Pada Sistem Data Mining di Minimarket Warga Tunggal

Tabel 3. 13 Tabel Definisi User

User Deskripsi

User User bertugas untuk melakukan import data, memasukkan Minimum Support dan Minimum Confidence


(60)

Tabel 3. 14 Deskripsi Use Case

No Use Case Deskripsi

1 Import Data Import data harus dilakukan user terlebih dahulu, data yang diimportmerupakan data transaksi yang selanjutnya data tersebut akan disimpankedalam database

2 Preprocessing Data transaksi yang sudah tersimpan dalam database kemudian akan dilakukan proses pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan berdasarkan priority 3 Pemilihan Atribut Sistem melakukan pemilihan atribut Faktur dan

Kode Barang, proses ini hanya bisa dilakukan jika user sudah melakukan import data

4 Pembersihan Data Sistem melakukan pembersihan data pada Faktur yang mengandung Kode Barang tunggal, proses ini hanya bisa dilakukan jika user sudah melakukan import data dan pemilihan atribut

5 Hitung frekuensi Sistem melakukan proses perhitungan kemunculan tiap item pada data transaksi

6 Pengurutan Data Sistem melakukan proses pengurutan data berdasarkan priority.

7 Asosiasi Sistem melakukan proses eliminasi dan lihat rule. Sedangkan user menginputkan nilai parameter yaitu nilai MinimumSupport dan MinimumConfidence. 8 Input Parameter User memasukkan nilai Minimum Support dan

Minimum Confidence sebagai parameter dalam menentukan rule.

9 Rules Sistem menampilkan informasi dari hasil seleksi rule. Informasi yang ditampilkan berupa produk apa saja yang bisa dijual dalam bentuk paket.

3.2.1.1 Skenario Use Case

Skenario use case menjelaskan skenario dari setiap proses yang digambarkan pada diagram use case. Berikut ini skenariouse case dari gambar 3.1.


(61)

63

1. Skenario Use Case Import Data

Skenario use case import data menggambarkan langkah – langkah aksi user terhadap sistem untuk melakukan import data transaksi penjualan yang akan disimpan ke dalam database.

Tabel 3. 15 Requirement A.1 Requirement A.1

Sistem menyediakan menuimport data untuk melakukan import data transaksi kedalam databasesebelum melakukan preprocessing dan asosiasi

Tabel 3. 16 Skenario Use Case Import Data Use case Name Import Data

Related Requirements Requirement A.1

Goal In Context Import data transaksi penjualan dan menyimpannya ke dalam database

Precondition User menyiapkan data transaksi Successful End

Condition

Data transaksi yang di import oleh user berhasil disimpan ke dalam database

Failed End Condition Data transaksi gagal disimpan ke dalam database

Actors User

Triger User memasukan data transaksi Included Cases -

Main Flow Step Action

1 User melakukan request import data 2 User memasukkan data transaksi 3 Sistem melakukan generate file 4 Sistem menampilkan data di gridview 5 Data disimpan ke database

6 Sistem menampilkan pesan data tersimpan Extension Step Branching Action

6.1 Menampilkan pesan kesalahan dalam proses import data

2. Skenario Use Case Preprocesing

Skenario use case preprocessing menjelaskan langkah-langkah untuk melakukan proses Pemilihan Atribut, Pembersihan Data, Hitung Frekuensi dan Pengurutan Data.


(62)

Tabel 3. 17 Requirement A.2 Requirement A.2

Sistem menyediakan menupreprocesing untuk melakukan pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan data.

Tabel 3. 18 Skenario Use Case Preprocesing Use case Name Preprocesing

Related Requirements Requirement A.1, Requirement A.2

Goal In Context Sistem melakukan proses pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan data

Precondition Data transaksi sudah tersimpan didalam database Successful End

Condition

Sistem berhasil melakukan proses pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan data

Failed End Condition Sistem gagal untuk melakukan proses pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan data

Actors User

Triger User melakukan request proses pemilihan atribut, pembersihan data, hitung frekuensi dan pengurutan data kepada sistem

Included Cases Pemilihan Atribut, Pembersihan Data, Hitung Frekuensi dan Pengurutan Data

Main Flow Step Action

1 User melakukan request preprocessing 2 User melakukan request Pemilihan Atribut 3 Sistem melakukan proses pemilihan atribut 4 User melakukan request pembersihan data 5 Sistemmelakukan proses pembersihan data 6 User melakukan request hitung frekuensi 7 Sistem melakukan proses hitung frekuensi 8 User melakukan request pengurutan data 9 Sistem melakukan proses pengurutan data Extension Step Branching Action


(63)

65

3. Scenario Use Case Pemilihan Atribut

Skenario Use Case Pemilihan Atributmenggambarkan langkah-langkah melakukan pemilihan atribut terhadap data transaksi yang telah melewati proses import data.

Tabel 3. 19 Skenario Use Case Pemilihan Atribut Use case Name Pemilihan Atribut

Related Requirements Requirement A.1, Requirement A.2

Goal In Context Sistem melakukan pemilihan atribut Faktur dan Kode Barang

Precondition Data transaksi tersimpan didalam database Successful End

Condition

Sistem berhasil memilih atribut Faktur dan Kode Barang

Failed End Condition Sistem gagal melakukan Pemilihan Atribut Faktur dan Kode Barang

Actors User

Triger User melakukan request Pemilihan Atribut kepada system

Included Cases -

Main Flow Step Action

1 User request preprocessing

2 User melakukan request pemilihan atribut 3 Sistem menampilkan hasil pemilihan

atribut

4 Sistem menampilkan pesan berhasil melakukan proses pemilihan atribut

Extension Step Branching Action

4.1 Sistem manampilkan pesan gagal dalam melakukan proses pemilihan atribut

4. Skenario Use Case Pembersihan Data

Skenario use casePembersihan Datamenggambarkan langkah-langkah melakukan pembersihan terhadap Fakturdan Kode Barang yang memiliki item tunggal dan telah melewati proses Pemilihan Atribut.

Tabel 3. 20 Skenario Use Case Pembersihan Data Use case Name Pembersihan Data


(1)

114

[17] D. T. Larose, DATA MINING METHODS AND MODELS, New Jersey: John Wiley & Sons, Inc, 2006.

[18] J. Santoni, “Implementasi Data Mining Dengan Metode Market Basket Analysis,” Teknologi Informasi dan Pendidikan, vol. 5, p.2, Sep.2012. [19] K. and E. T. Luthfi, Algoritma Data Mining, Andi, 2009.

[20] U. D, “Mining an Online Auctions Data Warehouse,” The Mid-Atlantic Student Workshop on Programming Languages and Systems, vol. 19, 2002. [21] R. S. Pressman, Software Engineering - A Practitionar's Approach, 5th ed. McGraw-Hill International, 2001.

[22] Ariesto Hadi Sutopo, Fajar Masya, Pemrograman Berorientasi Objek dengan Java¸ Graha Ilmu, Yogyakarta, 2005.


(2)

iii

KATA PENGANTAR

Assalamu’alaikum wr.wb,

Alhamdulillahi Rabbil alamiin, segala puji dan syukur kita panjatkan kepada Allah SWT atas berkat, rahmat, taufik dan hidayah-Nya, penyusunan skripsi yang berjudul “IMPLEMENTASI DATA MINING DALAM PEMAKETAN PRODUK MENGGUNAKAN METODE ASSOCIATION RULE DI MINIMARKET WARGA TUNGGAL” dapat diselesaikan dengan baik.

Adapun tujuan dari penyusunan skripsi ini adalah untuk menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika Universitas Komputer Indonesia.

Dalam proses penyusunan Tugas Akhir ini banyak hal atau pihak yang telah memberikan dukungan sehingga Tugas Akhir ini dapat terselesaikan. Banyak pihak yang tak mungkin Penulis sebutkan satu persatu, namun dengan segala kerendahan hati, Penulis mengucapkan terima kasih kepada :

1. Allah SWT yang telah mencurahkan rahmat dan hidayah-Nya hingga detik ini.

2. Ibu Dian Dharmayanti, S.T., M.Kom. selaku dosen pembimbing serta dosen penguji 2 yang telah memberikan arahan, nasihat, motivasi kepada penulis selama penyusunan skripsi.

3. Bapak Adam Mukharil Bachtiar, S.Kom., M.T.selaku dosen penguji 1 yang telah memberikan saran serta kritiknya dalam penyusunan skripsi ini.

4. Bapak Richi Dwi Agustia, S.Kom., M.Kom selaku dosen penguji 3 yang telah memberikan saran serta kritiknya dalam penyusunan skripsi ini.

5. Ibu Riani Lubis, S.T., M.T. selaku ketua panitia skripsi yang telah memberikan bantuan dalam kelancaran penyusunan skripsi ini.

6. Ibu Sri Andayani S.Pd. yang telah mengizinkan penulis untuk melakukan penelitian di Minimarket Warga Tunggal Bandung.


(3)

iv

Selain itu tidak lupa penulis ucapkan terima kasih yang sebesar-besarnya dan penghargaan yang setinggi-tingginya kepada :

1. Ibunda Sri Andayani dan Ayahanda Ade Wartadi yang tidak pernah berhenti mendoakan dan memberikan semangat, perhatian, dukungan sepenuhnya, dan kasih sayang.

2. Kepada teman-teman kelas IF-11 angkatan 2011 atas dukungan dan kebersamaannya.

3. Kepada teman-teman satu bimbingan Ibu Dian Dharmayanti, S.T., M.Kom. atas dukungan dan kebersamaannya untuk penulis dalam menyelesaikan skripsi ini.

Penulis menyadari bahwa Tugas Akhir ini masih memiliki banyak sekali kekurangan baik dalam hal penulisan, cara penyusunan maupun pengkajian sehingga masih jauh dari sempurna. Oleh karena itu, penulis sangat terbuka untuk menerima segala kritik dan saran untuk menyempurnakan Tugas Akhir ini. Akhir kata penulis mengharapkan semoga skripsi yang disusun ini menjadi sumber ilmu pengetahuan yang bermanfaat untuk bangsa dan negara.

Bandung, 1 Februari 2016


(4)

(5)

(6)