IMPLEMENTASI ALGORITMA FREQUENT PATTERN GROWTH PADA APLIKASI RETAIL BERBASIS JAVA MODEL VIEW CONTROLLER (MVC) | Basalamah | semanTIK 1 PB

semanTIK, Vol.3, No.1, Jan-Jun 2017, pp. 67-80
ISSN : 2502-8928 (Online)



67

IMPLEMENTASI ALGORITMA FREQUENT
PATTERN GROWTH
PADA APLIKASI RETAIL BERBASIS
JAVA MODEL VIEW CONTROLLER (MVC)
Laila Wahda Basalamah*1, Natalis Ransi2, LM Bahtiar Aksara3
Jurusan Teknik Informatika, Fakultas Teknik Universitas Halu Oleo, Kendari
e-mail: *[email protected], [email protected], [email protected]
*1,2,3

Abstrak
Bisnis retail berkembang pesat di Indonesia dalam beberapa tahun ini dan kita dapat
menjumpainya di kota-kota besar maupun kota-kota kecil. Dalam bisnis retail, diperlukan
pengendalian dan pengawasan yang baik dalam arus data barang dagangan. Salah satunya dengan
melakukan pencatatan data yang teratur mulai dari pendistribusian ke gudang kemudian dilakukan

penyusunan di swalayan hingga sampai ke tangan konsumen, serta penyuguhan informasi dalam
bentuk sistem pelaporan yang tepat waktu dan akurat. Masalah ketersediaan barang yang selalu ada
dapat diatasi dengan menyimpan informasi pembelian dalam database, dari data transaksi konsumen
yang tersimpan hal ini dapat memberikan pengetahuan kepada pihak swalayan dalam melihat
barang-barang mana yang sering dibeli oleh konsumen dan barang-barang yang dibeli secara
bersamaan oleh konsumen.
Algoritma Frequent Pattern Growth digunakan untuk menentukan kombinasi dari jenis barang
yang sering dibeli konsumen dengan mencari item yang sering muncul kemudian dihitung
menggunakan support dan confidence.Pengujian dilakukan menggunakan dataset yang merupakan
data transaksi penjualan pada Swalayan Surya Cabang Wua-Wua menggunakan algoritma Frequent
Pattern Growth yang bertujuan untuk menentukan pola analisis kombinasi barang yang dibeli secara
bersamaan. Hasil dari penelitian adalah sebuah aplikasi retail yang dapat mengetahui pola pembelian
konsumen menggunakan algoritma FP-Growth berbasis Java Model View Controller (MVC) pada
Swalayan Surya Cabang Wua-Wua.
Kata kunci— Asosiasi Pengusaha Ritel Indonesia, Aplikasi Retail, Frequent Pattern Growth, Java,
MVC.
Abstract
Retail business has grown rapidly in Indonesian in these recent years and it can be found either
in big cities or small towns. In retail business, it is a need for a good management and supervision
for data flow of merchandise. One of them is by recording a well organized data starting from

distribution to warehouse then to the preparation at the supermarket then to the customer, and also
providing information in the form of a reporting system that on time and accurate. The existing
problem of goods availability can be solved with storing the purchase information in the database.
These consumer transaction’s saved data can tell the supermarket to see goods which are frequently
bought by customer the goods are purchased simultaneously by consumer.
Frequent Pattern Growth algorithm is used to determine the combination of types which are
frequently purchased items by searching for items that often appear then calculated using the support
and confidence.Testing is done using a dataset that is a sales transaction data at the Surya Cabang
Wua-Wua with Frequent Pattern Growth algorithm that aims to determine the pattern of combined
analysis of items purchased simultaneously.Results of the study is a retail application that can identify
patterns of consumer purchases using FP-Growth algorithm based on Java Model View Controller
(MVC) at Surya Cabang Wua-Wua.
Received June 1st ,2012; Revised June 25th, 2012; Accepted July 10th, 2012

Implementasi Algoritma Frequent Pattern Growth

68

Keywords— Asosiasi Pengusaha Ritel Indonesia, Aplikasi Retail, Frequent Pattern Growth, Java,
MVC.

1. PENDAHULUAN

I

ndustri retail terus berubah seiring dengan
perkembangan
teknologi
informasi,
perkembangan dunia usaha, dan tentunya
kebutuhan konsumen. Retail adalah suatu
kegiatan bisnis yang bergerak dalam bidang
transaksi penjualan dan pembelian dalam
jumlah kecil, satuan, ataueceran. Retail
memiliki peran penting dalam dunia
perekonomian dan merupakantahap akhir
proses distribusi dengan dilakukannya
penjualan langsung pada konsumen akhir.Agar
berhasil dalam pasar retail yang kompetitif,
perusahaan retail dalam hal ini swalayan harus
dapat menawarkan produk yang tepat, dengan

harga , tempat dan waktu yang tepat [1].
Dalam perdagangan retail, arus data
barang dagangan dan uang berputar sangat
cepat
diperlukan
pengendalian
dan
pengawasan yang baik. Salahsatunya adalah
dengan melakukanpencatatandatayang tertib
dan teratur mulai dari pendistribusian ke
gudang kemudiandilakukan penyusunan di
swalayan hingga sampai ke tangan konsumen.
Dalam pendistribusian barang, swalayanmasih
menjumpai permasalahan inventory berupa
kekurangan stok (out of stock) dan kelebihan
stok (over stock). Hal ini mengakibatkan
konsumen akan beralih ke produk sejenis dari
swalayan lain, sehingga dapat mengurangi
kesempatan
pihak

swalayan
untuk
memperoleh laba.Masalah ketersediaan barang
yang selalu ada dapat diatasi dengan
menyimpan informasi pembelian dalam
database. Data transaksi konsumen yang
tersimpandapat memberikan pengetahuan
kepada pihak swalayandalam melihat barangbarang mana yang sering dibeli oleh
konsumen dan barang-barang yang dibeli
secara bersamaan oleh konsumen, sehingga
dapat
membantu dalam mengorder atau
memesan barang secara bijaksana. Pihak
swalayan juga dapat mengatur penempatan
susunan barang, bahwa barang-barang yang
sering dibeli bersamaan untuk disusun saling
berdekatan.
Menurut [2] Algoritma Frequent Pattern
Growth dapat digunakan untuk menentukan
kombinasi dari jenis barang yang sering

dibeli konsumen dengan cara mencari item

yang sering muncul kemudian dihitung
dengan menggunakan support dan confidence.
Sebelumnya menurut [3], menyatakan bahwa
pemanfaatan data transaksi yang banyak
tersimpan dapat memberikan pengetahuan
yang berguna dalam membuat kebijakan dan
strategi bisnis.
Oleh karena itu, pada penelitian ini
penulis mengajukan pembuatan aplikasi
retailyang berfungsi untuk menyediakan
pelayanan guna memudahkan konsumen
dalam pembelian barang di Swalayan Surya
cabang Wua-Wua. Pihak swalayan juga dapat
menganalisis pola pembelian konsumen
dengan hasil dari aplikasi ini karena barangbarang
yang
sering
terjual

dengan
menggunakan Algoritma Frequent Pattern
Growth.
Aplikasi yang dibuat berbasis desktop
menggunakan object oriented programming
berbasis
Java
MVC
karena
dengan
menggunakan Java MVC, programmer akan
sangat terbantu dalam membuatcodingyang
bersifat repetitif. Selain itu, source code secara
otomatis akan mengikuti struktur file yang ada
di framework tersebut sehingga memudahkan
manajemen source code.
2. METODE PENELITIAN
2.1

Sejarah Retail

Retail adalah satu rangkaian aktivitas
bisnis untuk menambah nilai guna barang dan
jasa yang dijual kepada konsumen untuk
konsumsi pribadi atau rumah tangga [4].
Dalam matarantai perdagangan bisnis retail
merupakan bagian terakhir dari proses
distribusi suatu barang atau jasa dan
bersentuhan langsung dengan konsumen.
Perusahaan retail tidak membuat barang dan
tidak menjual ke pengecer lain. Akan tetapi
dalam praktik bisnis retail modern saat ini
tidak tertutup kemungkinan, banyak pengecer
kecil membeli barang di gerai retail besar,
mengingat perbedaan harga yang muncul pada
waktu-waktu promosi tertentu yang dilakukan
oleh gerai retail besar.
Bisnis Retail di Indonesia secara umum
dapat diklasifikasikan menjadi dua yaitu, retail
modern dan retail tradisional. Retail modern
sebenarnya merupakan pengembangan dari


IJCCS Vol. x, No. x, July 201x : first_page – end_page

Basalamah, Ransi dan Aksara



1978-1520

retail tradisional, yang pada praktiknya
mengaplikasikan konsep yang modern,
pemanfaatan teknologi, dan mengakomodasi
perkembangan gaya hidup di masyarakat
(konsumen) [5].
2.2

Data Mining
Data mining adalah proses untuk
menemukan interesting knowledge dari
sejumlah data besar yang disimpan dalam

database, data warehouse, atau media
penyimpanan yang lainnya [6].
Data
mining
diterapkan
dengan
paradigma untuk melihat informasi yang
tersembunyi. Data mining muncul berdasarkan
fakta bahwa pertumbuhan data yang sangat
pesat, tetapi minim pengetahuan apa yang ada
di dalam data tersebut.
Berikut adalah tahapan-tahapan untuk
mendapatkan knowledge dari proses data
mining :
1. Selection,
proses
memilih
dan
memisahkan data berdasarkan beberapa
kriteria, misalnya berdasarkan kota tempat

tinggal konsumen.
2. Preprocessing, mempersiapkan data,
dengan cara membersihkan data informasi
atau field yang tidak dibutuhkan, yang
jika
dibiarkan
hanya
akan
memperlambat proses query , misalnya
nama pelanggan jika sudah mengetahui
kode pelanggannya. Selain itu juga,
ditahap ini dilakukan penyeragaman
format terhadap data yang tidak konsisten.
3. Transformation, data yang telah melalui
proses select dan pre-processing tidak
begitu saja langsung digunakan, tapi
ditransformasikan
terlebih
dahulu
kebentuk yang lebih navigable dan
useable.
4. Data Mining, tahap ini dipusatkan untuk
mendapatkan pola dari data (extraction
of data).
5. Interpretation and evaluation, dalam
proses ini pattern atau pola-pola yang
telah diidentifikasi oleh sistem kemudian
diterjemahkan/ diinterpretasikan kedalam
bentuk knowledge yang lebih mudah
dimengerti oleh user untuk mengambil
keputusan.
Gambar 1 menunjukkan Tahapan Data
Mining.

69

2.3

Frequent Pattern Tree (FP-Tree)
Frequent
Pattern
Tree
(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 [7].

Gambar 1 Tahapan Data Mining
Adapun FP-Tree dibentuk oleh sebuah
akar yang diberi label null. Setiap simpul
dalam FP-Tree mengandung tiga informasi
penting, yaitu label item, menginformasikan
jenis item yang direpresentasikan simpul
tersebut, support count, mereprestasikan
jumlah lintasan transaksi yang melalui simpul
tersebut dan pointer penghubung yang
menghubungkan simpul-simpul dengan label
item sama antar lintasan, ditandai dengan garis
putus-putus.
2.4

Algoritma Frequent Pattern Growth
(FP-Growth)
Frequent Pattern Growth (FP-Growth)
adalah salah satualternatif algoritma yang
dapat digunakan untuk menentukanhimpunan
data yang paling sering muncul (frequent item
set) dalam sebuah kumpulan data. Algoritma
FP-Growth merupakan pengembangan dari
algoritma Apriori, sehingga kekurangan dari

Title of manuscript is short and clear, implies research results (First Author)

70

Implementasi Algoritma Frequent Pattern Growth

algoritmaApriori diperbaiki oleh algoritma
FP-Growth [8].
Pada algoritma Apriori diperlukan
generate candidate untuk mendapatkan
frequent item sets. Akan tetapi, di algoritma
FP-Growthgenerate candidate tidak dilakukan
karena FP-Growth menggunakan konsep
pembangunan tree dalam pencarian frequent
item sets.
Hal tersebut yang menyebabkan
algoritma FP-Growth lebih cepat dari
algoritma Apriori. Karakteristik algoritma FPGrowth adalah struktur data yang digunakan
adalah tree yang disebut dengan Frequent
Pattern Tree (FP-Tree).
Setelah tahap pembangunan FP-Tree
dari sekumpulan data transaksi, akan
diterapkan algoritma FP-Growth untuk
mencari frequent item set yang signifikan.
Algoritma FP-Growth dibagi menjadi tiga
langkah utama, yaitu :
1. Tahap pembangkitan conditional pattern
base
Conditional Pattern Base merupakan
subdata yang berisi prefix path (lintasan
awal) dan suffix pattern (pola akhiran).
Pembangkitan
conditional
pattern base
didapatkan
melalui
FP-Treeyang telah
dibangun sebelumnya.

confidance (minconf) pada sebuah database
[9].
Pada tahap ini digunakan untuk
menentukan nilai support dan confidence pada
setiap item set dengan Persamaan (1).

2. 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 minimum support count akan
dibangkitkan dengan conditional FP-Tree.
3. Tahap pencarian frequent item set
Apabila Conditional FP-Tree merupakan
lintasantunggal (single path),maka didapatkan
frequent item set dengan
melakukan
kombinasi item untuk setiap conditional FPTree. Jika bukan lintasan tunggal, maka
dilakukan pembangkitan FP-Growth secara
rekursif (proses memanggil dirinya sendiri).
2.5

Assosiation Rule
Association rule merupakan suatu proses
pada datamining untuk menentukan suatu
aturan asosiatif yang memenuhi syarat
minimum untuk support (minsup) dan

Support (A) =

(1)
Kemudian untuk mendapatkan nilai
support dari dua item dapat diperoleh dengan
Persamaan (2).
Support (A,B) = P(A∩B) =

(2)
Setelah semua frequent item dan large
item set didapatkan, dapat dicari syarat
minimum confidence (mincof) dengan
menggunakan Persamaan (3).
Confidence (A→B) = P(A│B) =
(3)

2.6. Model View Controller (MVC)
Model-View-Controller (MVC) adalah
sebuah konsep yang diperkenalkan oleh
penemu Smalltalk (Trygve Reenskaug) untuk
mengenkapsulasi data bersama dengan
pemrosesan (model), mengisolasi dari proses
manipulasi (controller) dan tampilan (view)
untuk direpresentasikan pada sebuah user
interface [10].
MVC mengikuti pendekatan yang paling
umum dari Layering. Layering hanyalah
sebuah logika yang membagi kode ke dalam
fungsi di kelas yang berbeda. Pendekatan ini
mudah dikenal dan yang paling banyak
diterima.
Keuntungan
utama
dalam
pendekatan ini adalah penggunaan ulang kode
[11].
Model, view dan controller sangat erat
terkait, oleh karena itu, mereka harus merujuk
satu sama lain. Gambar 2 mengilustrasikan
hubungan dasar Model-View-Controller.
Bagian Model View Controller yaitu :
1) Model
Model mewakili struktur data. Biasanya
model berisi fungsi-fungsi yang membantu
seseorang dalam pengelolaan basis data seperti
memasukkan data ke basis data, pembaruan
data dan lain-lain.

IJCCS Vol. x, No. x, July 201x : first_page – end_page

Basalamah, Ransi dan Aksara



1978-1520

71

1. Permulaan (Inception)
Pada tahap ini dilakukan penentuan
ruang lingkup dan kebutuhan secara intensif
serta analisis pada aplikasi yang akan dibuat.
Seperti manfaat dan tujuan pembuatan aplikasi
serta batasan masalah yang akan diterapkan.

Gambar 2 Arsitektur MVC
2) View
View adalah bagian yang mengatur
tampilan ke pengguna. Bisa di katakanaberupa
halaman web.
3) Controller
Controller merupakan bagian yang
menjembatani
model
dan
view.
Controllerberisi
perintah-perintah
yang
berfungsi untuk memproses suatu data dan
mengirimkannya ke view.
2.7. Unified Modelling Language (UM L)
Unified Modelling Language (UML)
adalah bahasa dalam mendesain perangkat
lunak secara visual, yang serupa dengan skema
elektronika yang dalam gambar rangkaian
[12].
Dengan UML, desainer dapat melihat
konsep global suatu desain. Desain kemudian
dapat dijadikan panduan dalam proses
pengembangan dan rekayasa perangkat lunak.
Selain itu, UML dapat menjadi media
komunikasi gagasan antara pengembang
perangkat lunak dengan pengguna.
Bagian-bagian
UML
yang pada
pembuatan aplikasi kelayakan finansial usaha
ini adalah:
A. Use Case Diagram
B. Activity Diagram
C. Sequence Diagram
D. Class Diagram
2.8. Metode Pengembangan Sistem
Metode pengembangan sistem yang
digunakan untuk membangun Aplikasi Retail
adalah Rational Unified Model (RUP).
Adapun tahap-tahap dalam RUP adalah
sebagai berikut:

2. Perluasan/ Perencanaan (Elaboration)
Pada tahap ini dilakukan perencanaan dari
aplikasi. Tahap ini meliputi Mendesain basis
data. UML sistem, seperti diagram use case,
diagram aktivitas, diagram kelas, dan diagram
sekuen dari perangkat lunak yang akan dibuat,
serta pada tahap ini desain antarmuka aplikasi
dilakukan.
3. Konstruksi (Construction)
Padatahap ini dilakukan implementasi
desain yang telah dirancang dengan bahasa
pemrograman Java MVC dan database
MySQL.
4. Transisi (Transition)

Pada tahap ini dilakukan proses
pengujian sistem, untuk menjadikan
aplikasi menjadi sesuatu yang layak dan
bermanfaat memberikan pengetahuan
tentang prediksi kombinasi barang yang
dibeli bersamaan oleh Swalayan Surya
cabang Wua-Wua.
3. HASIL DAN PEMBAHASAN
Implementasi merupakan tahap dimana
sistem siap dioperasikan. Aplikasi ini
merupakan executable berekstensi JAR.
Spesifikasi hardware dan software yang
digunakan dalam implementasi adalah sebagai
berikut:
1. Hardware yang dibutuhkan:
a. Processor Intel Core i-5
b. RAM 4 GB
c. Harddisk 500 GB
2. Software yang dibutuhkan:
a. Sistem operasi Windows 7 Ultimate
b. Netbeans 8.0
c. GUI Controller Java
Berikut adalah tampilan halaman pada
aplikasi:

Title of manuscript is short and clear, implies research results (First Author)

72

Implementasi Algoritma Frequent Pattern Growth

3.1

Growth, Logout, dan Exit. Selain itu terdapat
juga 3 menu bar yang merupakan shortcut dari
kesembilan menu utama dalam halaman ini
yaitu File, Data Master dan Report.

Halaman Login
Ketika aplikasi dijalankan maka akan
tampil halaman Login seperti terlihat pada
Gambar 3.

3.3

Halaman Data User
Ketika tombol data user pada halaman
menu utama ditekan maka akan tampil
halaman data user seperti terlihat pada
Gambar 5.

Gambar 3 Halaman Login
Halaman login digunakan untuk
melakukan validasi terhadap pengguna
aplikasi ini sehingga yang menggunakan
aplikasi ini hanyalah petugas/orang yang
mempunyai
otorisasi.
Gambar
ini
mengharuskan setiap pengguna atau dalam hal
ini admin untuk memasukkan username dan
password. Jika username dan password yang
dimasukkan valid akan tampil pesan jika login
yang dilakukan berhasil.

Pada halaman ini admin dapat mengisi
dengan menginput data ID user, Nama,
alamat, telepon, username, password, dan hak
akses sebagai admin atau kasir. Secara
otomatis data yang diinputkan tersebut akan
masuk ke dalam database.

3.2

3.4

Halaman Menu Utama
Setelah login berhasil maka program
akan menampilkan halaman utama seperti
pada Gambar 4.

Gambar 5 Halaman Data User

Tampilan Halaman Stok Barang
Ketika admin memilih menu Stok
Barang terdapat form yang harus diisi oleh
admin yang bertugas untuk mengelola data
keluar masuknya stok barang, menambah,
menghapus, dan mengubah data barang.
Tampilan halaman stok barang aplikasi ini
ditunjukan pada Gambar 6.

Gambar 4 Halaman Menu Utama
Pada halaman menu ini admin memilih
menu yang akan dibuka sesuai dengan
kebutuhannya, terdapat 9 menu utama, yaitu:
Data user, Stok barang, Data Supplier,
Laporan transaksi, Chart line, Chart bar, FPIJCCS Vol. x, No. x, July 201x : first_page – end_page

Gambar 6 Halaman Stok Barang



1978-1520

Basalamah, Ransi dan Aksara

3.5

Tampilan Halaman Data Supplier
Admin memilih data supplier pada menu
utama terlebih dahulu. Kemudian sistem akan
menampilkan form data supplier, setelah itu
admin dapat mengelola data supplier. Dalam
menu ini admin memiliki kewenangan untuk
menambah data supplier baru, mengubah data
supplier yang telah ada maupun menghapus
data supplier. Hasil pengolahan data ini
selanjutnya akan tersimpan ke database.
Proses tersebut dapat dilihat pada Gambar 7.

73

menampilkan Chart Bar berupagrafik chart
penjualan sebagai alat control adminberbentuk
batang atau bar. Proses tersebut dapat dilihat
pada Gambar 9.

Gambar 9 Halaman Chart Bar
3.8

Gambar 7 Halaman Data Supplier

Tampilan Halaman Analisis FP-Growth
Halaman Analisis FP-Growth ini adalah
bagian yang terpenting dalam pengembangan
aplikasi ini. Halaman ini akan menampilkan
analisis asosiasi sehingga dapat diketahui pola
pembelian konsumen. Rancangan halaman
analisis seperti yang ditunjukkan pada Gambar
10 dengan Algoritma FP-Growth.

3.6

Tampilan Halaman Laporan Transaksi
Penjualan
Ketika admin memilih menu laporan
pada menu utama. Kemudian sistem
melakukan proses untuk menampilkan laporan
transaksi penjualan dan dapat melakukan cetak
laporan. Proses tersebut dapat dilihat pada
Gambar 8.

Gambar 10 Halaman FP-Growth
3.9

Gambar 8
Penjualan
3.7

Halaman

Laporan

Transaksi

Tampilan Halaman Chart Bar
Ketika admin memilih Menu Chart Bar
pada menu utama, maka sistem akan

Implementasi Model, View, Controller
(MVC) pada Aplikasi Retail
Arsitektur MVC diimplementasikan
dalam setiap modul aplikasi dalam aplikasi
retail ini. Setiap modul memiliki satu model,
satu controller dan beberapa view. Berikut ini
pada Gambar 11 dapat dilihat implementasi
arsitektur MVC pada component retail.

Title of manuscript is short and clear, implies research results (First Author)

Implementasi Algoritma Frequent Pattern Growth

74

hasil penelitian. Adapun data uji penjualan
dapat dilihat pada Tabel 1.
Tabel 1 Data Uji Penjualan
Tanggal
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
30/08/16
31/08/16
31/08/16
31/08/16
31/08/16
31/08/16
31/08/16
31/08/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16
01/09/16

Gambar 11 Component MVC Retail
1. Model
Model perlu dibuat sebelum mulai
memisahkan view untuk mendapatkan
informasi yang akan kita tampilkan.
2. Controller
Controller bekerja berdasarkan task apa
yang telah diminta dan berdasarkan task
tersebut maka controller mengambil data dari
model dan mengirimkan data dari model
tersebut ke view. Jadi tugas controller adalah
bekerja berdasarkan inputan user, memanggil
metode pada model untuk memanipulasi data
pada tabel, dan mengirimkan data dari model
ke view untuk ditampilkan ke user.
3.10 Menentukan Data Pengujian
Tahap ini merupakan tahap untuk
memilih data uji yang digunakan untuk proses
perhitungan. Data uji yang digunakan
merupakan data hasil penjualann barang di
Swalayan Surya Wua-Wua berdasarkan dari

TID
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
6
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10

Item
Gula
Kopi
Teh
Gula
Kopi
Teh
Susu
Roti
Gula
Roti
Gula
Air
Susu
Kopi
Gula
Ice Cream
Frestea
Parfum Axe
Ice Cream
Keju
Shampoo
Mie Instan
Susu
Parfum axe
Ice Cream
Mie Instan
Freshtea
Keju
Shampoo
Keju
Shampoo
Freshtea
Parfum axe
Ice cream
Keju
Shampoo
Roti
Ice cream

TID
merupakan
pengelompokkan
transaksi barang dalam satu transaksi yang
sama. Contohnya Gula, Kopi dan Teh
memiliki TID 1 artinya ketiga item tersebut
berada pada transaksi yang sama yang terjual
pada tanggal 30 Agustus 2016. Begitu pula

IJCCS Vol. x, No. x, July 201x : first_page – end_page



1978-1520

Basalamah, Ransi dan Aksara

dengan keju, shampoo, roti, dan ice cream
memiliki TID 10 yang artinya ketiga barang
tersebut dibeli dalam satu transaksi pada 1
September 2016.
Dari data penjualan tersebut maka
dibuatkan tabel dengan semua item yang
dalam satu transaksi sudah disatukan sesuai
nomor transaksi pembelian konsumen, dapat
dilihat pada Tabel 2.

maka item tersebut akan dihapus dan tidak
dipakai dalam proses data mining. Misalkan
ditentukan nilai support count ξ = 2 , maka
hasilnya dapat dilihat pada Tabel 4.
Tabel 4 Frekuensi item setelah proses filter

Tabel 2 Data Transaksi Awal
TID
1
2
3
4
5
6
7
8
9
10

Item
Gula, kopi, teh
Gula, kopi, teh
Susu, roti, gula
Roti, gula, air
Susu, kopi, gula
Ice cream
Frestea, parfum axe, keju, shampoo,
mie instan, ice cream
Susu, parfum axe, ice cream, mie
instan, frestea, keju, shampoo
Keju, shampoo, frestea, parfum axe,
ice cream
Keju, shampoo, roti , ice cream

Kemudian
dibuatlah
frekuensi
kemunculan setiap item dari keseluruhan
transaksi awal yang dapat dilihat pada Tabel 3.
Tabel 3 Frekuensi item dari data tranksaksi
awal
Item

Jumlah

Gula
Kopi
Teh
Susu
Roti
Air
Keju
Shampoo
Mie instan
Frestea
Ice cream
Parfum axe

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

Setelah frekuensi setiap item diperoleh,
kemudian dibatasi dengan support count. Jika
frekuensi item tidak kurang dari support count,

75

Item

Jumlah

Gula
Kopi
Teh
Susu
Roti
Keju
Shampoo
Mie instan
Frestea
Ice cream
Parfum axe

5
3
2
3
3
4
4
2
3
5
3

Item Air hilang karena frekuensinya
tidak lebih dari sama dengan 2. Tahap
selanjutnya adalah pembangunan Tree
berdasarkan pertransaksi dengan item yang
telah dibatasi, dapat dilihat pada Tabel 5.
Tabel 5 Data transaksi setelah proses filter
TID
1
2
3
4
5
6
7
8
9
10

Item
Gula, kopi, the
Gula, kopi, the
Susu, roti, gula
Roti, gula,
Susu, kopi, gula
Ice cream
Frestea, parfum axe, keju, shampoo,
mie instan, ice cream
Susu, parfum axe, ice cream, mie
instan, frestea, keju, shampoo
Keju, shampoo, frestea, parfum axe,
ice cream
Keju, shampoo, roti , ice cream

3.11 Frequent Pattern Growth (FP-Growth)
Langkah selanjutnya adalah tahap
pembangkitan conditional pattern base, tahap
pembangkitan conditional FP-Tree, dan tahap
pencarian frequent itemset.
1. Tahap Conditional Pattern Base
Merupakan subdata yang berisi prefix
path (lintasan awal) dan suffix pattern (pola

Title of manuscript is short and clear, implies research results (First Author)

Implementasi Algoritma Frequent Pattern Growth

76
akhiran). Pembangkitan conditional pattern
base didapatkan melalui FP-Tree. Berikut
adalah hasil Conditional Pattern Base yang
ditunjukkan pada Tabel 6.

Mie
Instan

{{Ice cream: 2}, {keju: 2},
{Shampoo: 2}, {Freshtea: 2},
{Parfume axe: 2}, {Ice cream,
keju, Shampoo, Freshtea, Parfum
axe : 2}}

Tabel 6 Conditional Pattern Base
Item
The
Kopi

Conditional Pattern Base
{Gula, Kopi: 2}
{Gula: 3}
{Gula:2},
{ice cream, keju,
Roti
shampoo : 1}
{{Gula, Roti: 1}, {Gula, Kopi: 1},
{ice cream, keju, shampoo,
Susu
Freshtea, Parfum axe, mie instan :
1}}
Keju
{Ice cream : 4}
Shampoo {Ice cream, keju: 4}
Freshtea {Ice cream, keju, Shampoo: 3}
Parfum
{Ice cream, keju, Shampoo,
Axe
Freshtea: 3}
Mie
{Ice cream, keju, Shampoo,
Instan
Freshtea, Parfum axe : 2}
2. 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 minimum support count akan
dibangkitkan dengan conditional FP-Tree.
Tahap pencarian conditional FP-Tree dapat
dilihat pada Tabel 7.
Tabel 7 Conditional FP-Tree
Item
The
Kopi
Roti
Susu
Keju
Shampoo
Freshtea

Parfum
Axe

Conditional FP-Tree
{{Gula: 2}, {Kopi: 2}, {Gula,
Kopi: 2}}
{Gula: 3}
{Gula:2}
{Gula: 2
{Ice cream : 4}
{{Ice cream : 4}, {Keju: 4}, {Ice
cream, keju :4}}
{{Ice cream: 3}, {keju: 3},
{Shampoo: 3}, {Ice cream, keju,
Shampoo: 3}}
{{Ice cream: 3}, {keju: 3},
{Shampoo: 3}, {Freshtea: 3}, {Ice
cream, keju, Shampoo, Freshtea:
3}}

3. Tahap pencarian frequent itemset
Apabila Conditional FP-Tree merupakan
lintasan
tunggal
(single path),
maka
didapatkan
frequent itemset
dengan
melakukan kombinasi item untuk setiap
conditionalFP-Tree. Jika bukan lintasan
tunggal, maka dilakukan pembangkitan FPGrowth secara rekursif (proses memanggil
dirinya sendiri). Tahap pencarian frequent
itemset dapat dilihat pada Tabel 8.
Tabel 8 Frequent Itemset
Item

Frequent Itemset

Teh
Kopi

{{Gula, teh: 2}, {Kopi, teh: 2},
{Gula, Kopi, teh: 2}}
{Gula, kopi: 3}

Roti

{Gula, roti:2}

Susu

{Gula, susu: 2}

Keju

{Ice cream, keju : 4}

Shampoo

{{Ice cream , Shampoo: 4},
{Keju, Shampoo: 4}, {Ice cream,
keju, Shampoo :4}}
{{Ice cream, freshtea: 3}, {keju,
freshtea: 3},
{Shampoo,
freshtea: 3}, {Ice cream, keju,
Shampoo, freshtea: 3},
{{Ice cream, Parfum axe: 3},
{keju,
Parfum
axe:
3},
{Shampoo, Parfum axe: 3},
{Freshtea, Parfum axe: 3}, {Ice
cream, keju, Shampoo, Freshtea,
Parfum axe: 3}}
{{Ice cream, Mie Instan: 2},
{keju,
Mie
Instan:
2},
{Shampoo, Mie Instan: 2},
{Freshtea, Mie Instan: 2},
{Parfume axe, Mie Instan: 2},
{Ice cream, keju, Shampoo,
Freshtea, Parfum axe, Mie Instan
: 2}}

Freshtea

Parfum
Axe

Mie Instan

3.12 Association Rule dan Menghitung Nilai
Support dan Nilai Confidence
Association rule merupakan suatu proses
pada data mining untuk menentukan suatu
IJCCS Vol. x, No. x, July 201x : first_page – end_page

aturan asosiatif yang memenuhi syarat
minimum untuk support (minsup) dan
confidence (mincof) pada sebuah database.
Pada tahap ini digunakan untuk
menentukan nilai support dan confidence pada
setiap itemset dengan rumus yang sudah
dijelaskan sebelumnya pada Persamaan (1),
(2) dan (3). Dari beberapa tabel tersebut maka
dilakukan perhitungan Nilai Support dan Nilai
Confidence masing-masing item.
1. Nilai Support
Untuk mendapatkan nilai Support dapat
menggunakan Persamaan (2).
Nilai “jumlah transaksi yang mengandung
A dan B” berada pada Frequent Setdan “total
transaksi” adalah 11 karena keseluruhan item
berjumlah 11.
Rule
Rule
Rule
Rule
Axe
Rule

Rule
Rule
Rule

Rule
Rule
Rule
Rule
Rule
Rule

: Ice Cream => Frestea
( ⋂ ) =

3
11

= 0,27

Rule

: Keju => Frestea
( ⋂ ) =

3
11

= 0,27

: Keju => Frestea, Ice Cream
( ⋂ ) =

3
11

( ⋂ ) =

3
11

= 0,27

( ⋂ ) =

11

Rule
Rule

= 0,18

Rule

: Shampoo => Keju
( ⋂ ) =

4
11

= 0,36

Rule

: Shampoo => Frestea
( ⋂ ) =

3
11
3
11

= 0,27

Rule : Shampoo => Frestea, Ice Cream,
Parfum Axe
( ⋂ ) =

3
11

= 0,27

Rule : Shampoo => Frestea, Ice Cream,
Parfum Axe, Keju
( ⋂ ) =

2
11

= 0,18

11

= 0,18

: Parfum Axe => Frestea
( ⋂ ) =

3
11

= 0,27

: Parfum Axe => Frestea, Ice Cream
( ⋂ ) =

3
11

= 0,27

: Parfum Axe => Ice Cream
( ⋂ ) =

3
11

= 0,27

: Roti => Gula

( ⋂ ) =

2
11

= 0,18

: Kopi => Gula
( ⋂ ) =

3
11

= 0,27

: Mie Instan => Frestea
( ⋂ ) =

2
11

= 0,18

: Mie Instan => Frestea, Ice Cream

( ⋂ ) =

2
11

= 0,18

2
11

= 0,18

: Mie Instan => Shampoo
( ⋂ ) =

2
11

= 0,18

: Teh => Gula

2

( ⋂ ) =

11

( ⋂ ) =

11

= 0,18

: Teh => Gula, Kopi
2

= 0,18

: Teh => Kopi

( ⋂ ) =

= 0,27

: Shampoo => Frestea, Ice Cream

2

77

Rule : Mie Instan => Frestea, Ice Cream,
Parfum Axe

: Keju => Parfum Axe
2

( ⋂ ) =

( ⋂ ) =

= 0,27

: Keju => Frestea, Ice Cream, Parfum

( ⋂ ) =

Rule



1978-1520

Basalamah, Ransi dan Aksara

2
11

= 0,18

2. Nilai Confidence
Untuk mendapatkan nilai Confidence
dapat menggunakan Persamaan (3).
Nilai “jumlah transaksi yang mengandung
A dan B” berada pada Frequent Set pada
Tabel 8 dan nilai “jumlah transaksi yang
mengandung A” dapat diambil dari nilai
frekuensi item.
Rule

: Susu => Gula
Rule

: Ice Cream => Frestea
( ⋂ ) =

3
5

= 0,6

: Keju => Frestea

Title of manuscript is short and clear, implies research results (First Author)

Implementasi Algoritma Frequent Pattern Growth

78

Rule
Rule
Axe
Rule
Rule
Rule
Rule

( ⋂ ) =

3

= 0,75

4

: Keju => Frestea, Ice Cream
( ⋂ ) =

3

= 0,75

4

( ⋂ ) =

3

= 0,75

( ⋂ ) =

4
2

= 0,5

4

( ⋂ ) =

4
4

= 1

( ⋂ ) =

= 0,75

4

: Shampoo => Frestea, Ice Cream
3

= 0,75

4
3

Rule
Rule
Rule
Rule

Rule

( ⋂ ) =

2
4

= 0,5

( ⋂ ) =

( ⋂ ) =

2
3

= 0,67

: Parfum Axe => Frestea
3

( ⋂ ) =

3

= 1

: Parfum Axe => Frestea, Ice Cream
3

( ⋂ ) =

3

= 1

: Parfum Axe => Ice Cream
( ⋂ ) =

3
3

= 1

( ⋂ ) =

Rule

( ⋂ ) =

2
3

= 0,67

: Kopi => Gula

( ⋂ ) =

3
3
2
2

= 1

: Mie Instan => Frestea, Ice Cream
( ⋂ ) =

2
2

2

= 1

2
2

= 1

2
2

= 1

( ⋂ ) =

2
2

= 1

Dari
perhitungan tersebut
maka
didapatkan nilai Support dan nilai Confidence
seperti ditunjukkan pada Tabel 9.
Tabel 9 Nilai Support dan Nilai Confidence
Tiap Transaksi
Rule

Support

Confidence

Ice Cream => frestea

0,27

0,6

Keju => frestea

0,27

0,75

0,27

0,75

0,27

0,75

Keju => parfum axe

0,18

0,5

Shampoo => Keju

0,36

1

Shampoo => freshtea

0,27

0,75

0,27

0,75

0,27

0,75

0,18

0,5

Susu => gula

0,18

0,67

Parfum axe => frestea

0,27

1

0,27

1

0,27

1

Keju => frestea, ice

Keju => frestea, ice
cream, parfum axe

Shampoo => frestea,
ice cream
Shampoo => frestea,

Shampoo => frestea,
ice cream, parfum
axe, keju

= 1

: Mie Instan => Frestea
( ⋂ ) =

2

: Teh => Kopi

ice cream, parfum axe

: Roti => Gula

= 1

: Teh => Gula, Kopi

cream

: Susu => Gula

2

: Teh => Gula

Rule

= 0,75

4

Rule : Shampoo => Frestea, Ice Cream,
Parfum Axe, Keju

Rule

( ⋂ ) =

: Shampoo => Frestea
3

2

: Mie Instan => Shampoo

: Shampoo => Keju

( ⋂ ) =

Rule

Rule

: Keju => Parfum Axe

Rule : Shampoo => Frestea, Ice Cream,
Parfum Axe

Rule

( ⋂ ) =

: Keju => Frestea, Ice Cream, Parfum

( ⋂ ) =

Rule

Rule : Mie Instan => Frestea, Ice Cream,
Parfum Axe

= 1

Parfum axe =>
frestea, ice cream
Parfum axe => ice
cream

IJCCS Vol. x, No. x, July 201x : first_page – end_page



1978-1520

Basalamah, Ransi dan Aksara

frestea

Roti => gula

0,18

0,67

Kopi => gula

0,27

1

Keju => frestea

Mie instan => frestea

0,18

1

Keju => frestea,

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,18

0,5

0,18

0,5

0,36

1

0,36

1

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,27

0,75

0,18

0,5

0,18

0,5

0,18

0,67

0,18

0,67

0,27

1

0,27

1

0,27

1

0,27

1

0,27

1

0,27

1

Roti => gula

0,18

0,67

0,18

0,67

Kopi => gula

0,27

1

0,27

1

0,18

1

0,18

1

0,18

1

0,18

1

0,18

1

0,18

1

0,18

1

0,18

1

Teh => gula

0,18

1

0,18

1

Teh => gula, kopi

0,18

1

0,18

1

Teh => kopi

0,18

1

0,18

1

ice cream

Mie instan =>

0,18

freshtea, ice cream

1

Keju => frestea,
ice cream, parfum

Mie instan =>
freshtea, ice cream,

0,18

axe

1

parfum axe

Keju => parfum

Mie instan =>

axe

shampoo
Teh => gula

0,18

1

0,18

1

Shampoo => Keju
Shampoo =>
freshtea

Teh => gula, kopi

0,18

1

Teh => kopi

0,18

1

79

Shampoo =>
frestea, ice cream
Shampoo =>

Kemudian dilakukan perbandingan
dengan hasil perhitungan pada aplikasi yang
ditunjukkan pada Gambar 12.

frestea, ice cream,
parfum axe
Shampoo =>
frestea, ice cream,
parfum axe, keju
Susu => gula
Parfum axe =>
frestea
Parfum axe =>
frestea, ice cream
Parfum axe => ice
cream

Mie instan =>

Gambar 12 Hasil Perhitungan Pada Aplikasi
Dari hasil perbandingan tersebut, maka
dapat disimpulkan perhitungan manual dan
perhitungan pada aplikasi 100% yang dapat
dilihat pada Tabel 10.
Tabel 10 Perbandingan Hitungan Manual dan
Aplikasi

frestea
Mie instan =>
freshtea, ice cream
Mie instan =>
freshtea, ice cream,
parfum axe
Mie instan =>
shampoo

Rule

Ice Cream =>

Manual

Aplikasi

Supp

Conf

Supp

Conf

0,27

0,6

0,27

0,6

Title of manuscript is short and clear, implies research results (First Author)

Implementasi Algoritma Frequent Pattern Growth

80
4. KESIMPULAN
Berdasarkan penelitian dan hasil
pengujian yang dilakukan pada penelitian ini,
maka dapat disimpulkan:
1. Pembuatan aplikasi retail telah berhasil
dibuat dengan menggunakan Java Model
View Controller (MVC), serta Algoritma
Frequent pattern growth dalam pengimplementasiannya
telah
berhasil
menentukan pola analisis kombinasi
barang yang dibeli secara bersamaan oleh
konsumen.
2. Hasil perhitungan manual dan aplikasi
retail yang dibangun menggunakan
algoritma Frequent Pattern Growth 100 %
sama.

[5]

Astiko, 1996. Manajemen Perkreditan.
Andi Offset. Yogyakarta.

[6]

Han, K. P., 2012, Data Mining Concepts
And Techniques Third Edition, San
Massachusetts (US): Morgan Kaufmann
Publisher.

[7]

Wicaksono, A., 2014, Penerapan
Kaidah Asosiasi Pada Data Transaksi
Minimarket Dengan Menggunakan
Algoritma Frequent Pattern Growth
(FP-Growth), Surabaya.

[8]

Samuel, D, 2008, Penerapan Struktur
FP-Tree Dan Algoritma FP-Growth
Dalam Optimasi Penentuan Frequent
Itemset, Institut Teknologi Bandung.

[9]

Rafsanzani, R., 2015, Pencarian
Association Rule Pada Data Pengguna
Aplikasi Android Dengan Metode FpGrowth, Malang.

5. SARAN
Berikut ini adalah saran-saran yang
dapat diberikan untuk pengembangan lebih
lanjut terhadap penelitian Tugas Akhir ini
adalah:
1. Pada
penelitian
selanjutnya
dapat
melakukan penelitian terkait dengan
objek ini terhadap algoritma lain.
2. Pada
penelitian
selanjutnya
perlu
dilakukan
pengelompokkan
barang
berdasarkan kategorinya, sehingga jumlah
item yang dihasilkan lebih sedikit.
DAFTAR PUSTAKA
[1]

Purba N., 2016, Faktor-Faktor Yang
Memengaruhi tingkat Penyaluran kredit
Pada BPR konvensional di Indonesia,
Bogor.

[2]

Wicaksono, A., 2014, Penerapan
Kaidah Asosiasi Pada Data Transaksi
Minimarket Dengan Menggunakan
Algoritma Frequent Pattern Growth
(FP-Growth), Surabaya.

[3]

Maulida, T,A., 2013, Analisa Data
Mining
Menggunakan
Algoritma
Frequent Pattern Growth Pada Data
Transaksi Penjualan Restoran Joglo
Kampoeng Doeloe, Semarang.

[4]

Levy dan Weitz, 2001, Retailing
Management, 4th Edition, New York:
Mc.Graw Hill, Irwin.

[10] Deacon,
J.,
2009,
Model-ViewController (MVC) Architecture. John
Deacon
Computer
Systems
Development, Consulting & Training.
Johndeacon.
[11] Satish, L., 2004, Biodiesel In India.
Navi Mumbai. India.
[12] Rosa dan Shalahudin, M., 2013,
Rekayasa Perangkat Lunak (Terstruktur
Dan Berorientasi Objek). Bandung.
Informatika.

IJCCS Vol. x, No. x, July 201x : first_page – end_page

Dokumen yang terkait

PENGARUH PEMBERIAN SEDUHAN BIJI PEPAYA (Carica Papaya L) TERHADAP PENURUNAN BERAT BADAN PADA TIKUS PUTIH JANTAN (Rattus norvegicus strain wistar) YANG DIBERI DIET TINGGI LEMAK

23 199 21

KEPEKAAN ESCHERICHIA COLI UROPATOGENIK TERHADAP ANTIBIOTIK PADA PASIEN INFEKSI SALURAN KEMIH DI RSU Dr. SAIFUL ANWAR MALANG (PERIODE JANUARI-DESEMBER 2008)

2 106 1

FREKUENSI KEMUNCULAN TOKOH KARAKTER ANTAGONIS DAN PROTAGONIS PADA SINETRON (Analisis Isi Pada Sinetron Munajah Cinta di RCTI dan Sinetron Cinta Fitri di SCTV)

27 310 2

MANAJEMEN PEMROGRAMAN PADA STASIUN RADIO SWASTA (Studi Deskriptif Program Acara Garus di Radio VIS FM Banyuwangi)

29 282 2

PENGEMBANGAN TARI SEMUT BERBASIS PENDIDIKAN KARAKTER DI SD MUHAMMADIYAH 8 DAU MALANG

57 502 20

ANALISIS PROSPEKTIF SEBAGAI ALAT PERENCANAAN LABA PADA PT MUSTIKA RATU Tbk

273 1263 22

PENERIMAAN ATLET SILAT TENTANG ADEGAN PENCAK SILAT INDONESIA PADA FILM THE RAID REDEMPTION (STUDI RESEPSI PADA IKATAN PENCAK SILAT INDONESIA MALANG)

43 322 21

KONSTRUKSI MEDIA TENTANG KETERLIBATAN POLITISI PARTAI DEMOKRAT ANAS URBANINGRUM PADA KASUS KORUPSI PROYEK PEMBANGUNAN KOMPLEK OLAHRAGA DI BUKIT HAMBALANG (Analisis Wacana Koran Harian Pagi Surya edisi 9-12, 16, 18 dan 23 Februari 2013 )

64 565 20

PEMAKNAAN BERITA PERKEMBANGAN KOMODITI BERJANGKA PADA PROGRAM ACARA KABAR PASAR DI TV ONE (Analisis Resepsi Pada Karyawan PT Victory International Futures Malang)

18 209 45

STRATEGI KOMUNIKASI POLITIK PARTAI POLITIK PADA PEMILIHAN KEPALA DAERAH TAHUN 2012 DI KOTA BATU (Studi Kasus Tim Pemenangan Pemilu Eddy Rumpoko-Punjul Santoso)

119 459 25