## IMPLEMENTASI ALGORITMA APRIORI UNTUK ANALISIS PENJUALAN DENGAN BERBASIS WEB

## Agus Nursikuwagus
Fakultas Teknik, Program Studi Sistem Informasi Universitas Komputer Indonesia Email: agus235032@yahoo.com
Tono Hartono Fakultas Teknik, Program Studi Sistem Informasi Universitas Komputer Indonesia Email: tnaia74@yahoo.co.id

## ABSTRAK
Transaksi  penjualan  merupakan  suatu  usaha  penjualan  yang  dilakukan  setiap  menit,  setiap  hari, setiap  minggu  bahkan  bertahun-tahun.  Sehingga  data  akan  semakin  menumpuk  bisa  berasal  dari  proses manual  maupun  proses  komputasi.  Sehingga  data  yang  ada  belum  dimanfaatkan  dengan  baik  oleh pengambil  keputusan.  Tulisan  ini  bertujuan  untuk  memberikan  laporan  hasil  penelitian  mengenai implementasi  algoritma  apriori  untuk  analisis  penjualan.  Penelitian  ini  didukung  dengan  metodologi pengembangan  perangkat  lunak  yang  disebut linear  incremental  development .  Pada  proses  yang dilakukan  pada  implementasi  perangkat  lunak  ini  terdapat  beberapa  langkah  seperti  penentuan  masalah, identifikasi dan penyelesaian resiko, pengembangan dan test, serta perencanaan siklus berikutnya. Setiap langkah pada tahapan tersebut digunakan untuk memetakan permasalahan yang ada hingga terbentuknya suatu  aplikasi  sesuai  kebutuhan.  Sebagai  hasil  dari  penelitian  ini  adalah  aplikasi  berdasarkan  algoritma apriori  yang  terdiri  dari  pemilihan Itemset dan  aturan  asosiasi.  Keluaran  dari  perangkat  lunak  ini digunakan untuk data acuan stok barang serta mengotomatisasi perhitungan analisis penjualan barang.
Kata kunci: sequential linear incremental, algoritma apriori, penjualan, implementasi.

## ABSTRACT
A  sales  transaction  is  activity  business  that  can  be  made  every  minute,  every  day,  every  week  or even years. Furthermore the data that have accumulated to be more complex, this process can be came from  a  manual  process  and  the  process  of  computing.  The  impact,  the  data  have  not  been  used  by decision makers. This paper aims to provide research reports on the implementation of a priori algorithm for  sales  analysis.  This  research  was  supported  by  a  software  development  methodology  called  linear incremental  development.  In  the  process  performed  on  the  implementation  of  this  software,  there  are several steps such as determining the problem, identification and settlement risks, development and test, as  well  as  planning  the  next  cycle.  Each  step  in  this  phase  is  used  to  map  existing  problems  until  the formation  of  a  custom  application.  As  a  result  of  this  research  is  the  application  based  on  the  a  priori algorithm  consists  of  selecting  Itemsets  and  association  rules.  The  output  of  this  software  is  used  for reference data inventory and automate the calculation of sales analysis goods
Keywords: sequential linear incremental, algoritma apriori, selling, implementation.

## 1. PENDAHULUAN
Ketatnya persaingan pada sektor penjualan, membuat pelaku usaha harus pintar dalam menganalisis pasar.  Selain  itu,  ketersediaan  barang  yang  dijualpun  menjadi  salah  satu  faktor  yang  harus  dianalisis supaya  kebutuhan  pelanggan  dapat  terpenuhi.    Untuk  mendukung  hal  itu,  data  penjualan  sebelumnya dapat dimanfaatkan untuk menganalisis pasar dan kebutuhan pelanggan.
Penelitian sebelumnya  yang dilakukan oleh Dewi Kartika Pane tentang Implementasi Data mining pada  Penjualan  Produk  Elektronik  dengan  Algoritma  Apriori  (Studi  Kasus:  Kreditplus)  menjelaskan analisis  penjualan  produk  elektronik  terutama  laptop  untuk  mencari merk laptop  yang  banyak  dibeli pelanggan. [3]
Algoritma apriori termasuk jenis aturan asosiasi pada data mining , algoritma apriori yang bertujuan untuk  menemukan frequent  item  sets dijalankan  pada  sekumpulan  data.  Analisis  apriori  didefenisikan
suatu proses untuk menemukan semua aturan apriori yang memenuhi syarat minimum untuk support dan syarat  minimum  untuk confidence .  Penggunaan  algoritma  apriori  yang  telah  dilakukan  oleh  peneliti sebelumnya  [3],  Hal  ini  menjadi  dasar  untuk  membuat  aplikasi data  mining untuk  analisis  penjualan dengan  algoritma  apriori  berbasis web dengan  menggunakan  data  contoh  (sampel  data)  dari Microsoft Adventure Work .
Berdasarkan latar belakang, maka dapat ditarik rumusan masalah yaitu bagaimana membuat aplikasi data  mining untuk  menganalisis  penjualan  dengan  metode  algoritma  apriori  berbasis web .  Sedangkan batasan  masalah  dalam  penelitian  ini  adalah  sebagai  berikut:  bahwa  aplikasi  yang  dikembangkan menggunakan algoritma apriori berbasis web , dan membahas mengenai algoritma apriori dapat diterapkan pada aplikasi data mining berbasis web . Tujuan dari penelitian ini adalah menyediakan data produk yang banyak  dibeli  oleh  pelanggan  sebagai  data,  sehingga  dapat  dilihat  seberapa  banyak  pelangga  membeli suatu produk  yang dipengaruhi oleh produk lainnya. Pada akhirnya dapat  mempermudahkan acuan stok barang serta mengotomatisasi perhitungan analisis penjualan barang.

## 2. METODOLOGI PENELITIAN DAN LANDASAN TEORI

## 2.1 Metodologi Penelitian
Di  dalam  pengembangan  sistem  selalu  dibutuhkan  acuan  dan  pedoman  pengembangan,  terdapat berbagai  macam    metodologi  pengembangan  perangkat  lunak  beserta  kelebihan,  kekurangan  dan kecocokannya masing-masing terhadap suatu projek perangkat lunak.
Salah  satu  model  pengembangan  perangkat  lunak  yang  merupakan  evolusi  dari  model Linear Sequencial dan    model  pengembangan prototyping yang  memiki  kapasitas  yang  sangat  baik  dalam mengelola  resiko  kegagalan  pengembangan  perangkat  lunak  adalah  pengembangan  perangkat  lunak dengan  model  spiral.  Maka  pengembangan  sistem  dalam  penalitian  ini  menggunakan  pendekatan pengembangan sistem spiral. Metodologi ini dapat dilihat pada gambar 1.
Model  spiral  adalah  model  proses  pengembangan  perangkat  lunak  yang  diusung  oleh  Barry  W. Boehm  dengan  model  spiral,  proses  pengembangan  perangkat  lunak  dikembangkan  dalam  serangkaian pengembangan incremental [2].  Selama  awal  iterasi,  produk  yang  dihasilkan  dapat  menjadi  sebuah purwarupa yang dapat menjadi acuan pengembangan berikutnya. Model spiral memiliki tiga hingga enam region sebagai  tahapan-tahapan  proses  pengembangan  perangkat  lunak.  Setiap region merupakan sekumpulan  kegiatan  proses  pengembangan  perangkat  lunak.  Model  spiral  menggunakan  purwarupa sebagai  mekanisme  pengurangan  risiko  kesalahan  penangkapan  kebutuhan.  Sedangkan tools yang digunakan  untuk  merancang  sistem  ini  adalah  UML Unifed  Modelling  Language )  dan  menggunakan beberapa  diagram  dari  UML  tersebut,  seperti: Use  case  Diagram,  Class  Diagram, dan Sequensial Diagram [1].
Gambar 1. Proses Pengembangan Spiral [2]

## 2.2 Landasan Teori
Data  mining adalah  suatu  istilah  yang  digunakan  untuk  menguraikan  penemuan  pengetahuan didalam database. Data mining adalah proses yang menggunakan teknik statistik, matematika, kecerdasan buatan, dan machine learning untuk mengekstraksi dan mengidentifikasi informasi yang bermanfaat dan
pengetahuan yang terkait dari berbagai database besar [3].
Algoritma apriori termasuk jenis aturan asosiasi pada data mining . Aturan yang menyatakan asosiasi antara beberapa atribut sering disebut affinity analysis atau market basket analysis . Analisis asosiasi atau association rule mining adalah teknik data mining untuk menemukan aturan suatu kombinasi item. Salah satu  tahap  analisis  asosiasi  yang  menarik  perhatian  banyak  peneliti  untuk  menghasilkan  algoritma  yang efisien  adalah  analisis  pola  frequensi  tinggi  ( frequent  pattern  mining) .  Penting  tidaknya  suatu  asosiasi dapat  diketahui  dengan  dua  tolak  ukur,  yaitu: support dan confidence . Support (nilai  penunjang)  adalah persentase  kombinasi  item  tersebut  dalam  database,  sedangkan confidence (nilai  kepastian)  adalah kuatnya hubungan antar-item dalam aturan asosiasi [4,5,6].
PHP  atau  PHP  ( Personal  Home  Page ) Hypertext  Preprocessor merupakan  bahasa  pemrograman berbasis server-side yang  banyak  digunakan  untuk  membangun web dinamis  atau  situs web interaktif.
Sebagai  aturan  umum,  program  PHP  dapat  dijalankan  di server web ,  dan  melayani  halaman web untuk pengunjung  berdasarkan  permintaan.  Salah  satu  fitur  kunci  dari  PHP  adalah  dapat  menanamkan  kode PHP  dalam  halaman web HTML,  sehingga  sangat  mudah  untuk  membuat  konten  dinamis  dengan  cepat [7].  Beberapa  alasan  menggunakan  PHP  [7],  diantaranya  sebagai  berikut: performance ,  probabilitas, mudah digunakan, open-source , dukungan komunitas, dukungan aplikasi pihak ketiga. MySQL merupakan  suatu  perangkat  lunak  sisem  menajemen  basis  data  relasional  dengan  konsep SQL . SQL ( Structured Query Language ) adalah sebuah konsep pengoperasian basis data, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan  pengoperasian data dikerjakan dengan mudah  secara  otomatis. MySQL merupakan DBMS yang  sangat  popular  sehingga  banyak  digunakan dalam  suatu  aplikasi.  Beberapa  alasan  dalam  memilih MySQL diantaranya  sebagai  berikut:  kecepatan, kemudahan  penggunaan,  biaya,  dukungan  bahasa query ,  kapabilitas,  konektivitas  dan  keamanan, probabilitas, open source , dan multi-user .

## 3. ANALISA DAN PEMBAHASAN

## 3.1 Analisa
Data transaksi penjualan pada suatu usaha penjualan setiap menit, setiap hari, setiap minggu bahkan bertahun-tahun  semakin  menumpuk  dan  banyak  sekali  baik  itu  dari  proses  manual  maupun  proses komputasi yang menyimpan besar sekali sumberdaya komputer. Namun data yang banyak tersebut belum banyak  dimanfaatkan  dengan  baik  oleh  pengusaha  tersebut  hanya  dibiarkan  dan  diarsipkan  saja  bahkan dibuang atau dihapus
Data  transaksi  penjualan  yang  banyak  dan  besar  tersebut,  dapat  dianalisa  penjualan  dalam  hal ketersediaan  barang.  Barang-barang  yang  diperlukan  untuk  tujuan  kepuasan  pelanggan,  dan meningkatkan  transaksi  penjualan,  serta  dapat  mengetahui  perkembangan  dari  pasar  pelanggan  yang dapat  memenuhi  kebutuhannya.  Berkaitan  dengan  hal  tersebut,  untuk  memecahkan  masalah  tersebut, dibuatlah  aplikasi data  mining untuk  analisis  penjualan  dengan  algoritma  apriori  berbasis web dengan menggunakan data contoh (sampel data) dari M icrosoft Adventure Work .

## 3.2 Pembahasan

## 3.2.1 Pola Transaksi Penjualan Adventure Work
Transaksi  yang  telah  dilakukan,  dapat  dilihat  pola  perkembangannya.  Pembelian  yang  dilakukan oleh  pembeli  dapat  dijadikan  data  acuan  untuk  membuat  analisis  persediaan  produk  selanjutnya.  Pada tabel 1, dapat dilihat pola hasil pembacaan transaksi penjualan.
Tabel 1. Contoh hasil pembacaan transaksi penjualan
No-ID ID Order Detail Data 1 52191 Mountain Tire Tube, Fender Set - Mountain, Racing Socks, 2 52192 Mountain Tire Tube, Sport-100 Helmet, 3 52193 Fender Set - Mountain, Sport-100 Helmet, Mountain Tire Tube, Racing Socks 4 52194 Fender Set - Mountain, Racing Socks, Mountain Tire Tube, 5 52195 Fender Set - Mountain, Racing Socks, 6 52196 LL Road Tire, Short-Sleeve Classic Jersey, 7 52197 LL Road Tire, Patch Kit/8 Patches 8 52198 LL Road Tire, Road Tire Tube, Sport-100 Helmet, Short-Sleeve Classic Jersey 9 52199 Touring Tire, Mountain Tire Tube, Long-Sleeve Logo Jersey 10 52200
Mountain Tire, LL Road Tire, Patch Kit/8 Patches
Proses  pembentukan  C1  atau  disebut  1 Itemset dengan  jumlah  minimum support =30%.  Formulasi itemset dapat dituliskan sebagai berikut:
(1) Tabel 1. Perhitungan itemset untuk setiap produk Itemset Jumlah Support Fender Set - Mountain 3 30% LL Road Tire 4 40% Long-Sleeve Logo Jersey 1 10% Mountain Tire Tube 5 50% Patch Kit/8 Patches 2 20% Racing Socks 3 30% Short-Sleeve Classic Jersey 2 20% Sport-100 Helmet 3 30% Touring Tire 1 10%

## 3.2.2 Kombinasi 2 Itemset
Proses  pembentukan  C2  atau  disebut  dengan  2 Itemset dengan  jumlah  minimum support =  30% dapat diselesaikan dengan rumus berikut: Support (A,B) = P(A∩B)
(2)
Tabel 3. Contoh hasil seleksi dengan kombinasi 2 itemset
Itemset Jumlah  Support Mountain Tire Tube, Fender Set - Mountain 3 30% Mountain Tire Tube, Racing Socks, 2 20% Mountain Tire Tube, Sport-100 Helmet 2 20% LL Road Tire, Patch Kit/8 Patches 2 20% Fender Set - Mountain, Racing Socks 3 30% LL Road Tire, Short-Sleeve Classic Jersey, 2 20%

## 3.2.3 Kombinasi 3 Itemset
Proses  pembentukan  C3  atau  disebut  dengan  3 Itemset dengan  jumlah  minimum support =  30% dapat diselesaikan dengan rumus berikut: Support (A,B,C) = P(A∩B∩C)
(3) Tabel 4. Contoh hasil seleksi dengan kombinasi 3 itemset Itemset Jumlah Support Mountain Tire Tube, Fender Set - Mountain, Racing Socks, 2 20% Mountain Tire, LL Road Tire, Patch Kit/8 Patches 1 10% Touring Tire, Mountain Tire Tube, Long-Sleeve Logo Jersey, 1 10% LL Road Tire, Road Tire Tube, Sport-100 Helmet 1 10% LL Road Tire, Road Tire Tube,  Short-Sleeve Classic Jersey 1 10% Fender Set - Mountain, Sport-100 Helmet, Mountain Tire Tube 1 10%
Karena  Kombinasi  3 Itemset tidak  ada  yang  memenuhi  minimal support ,  maka  2  kombinasi  yang memenuhi untuk pembentukan asosiasi.

## 3.2.4 Pembentukan Aturan Asosiasi
Setelah semua pola frekuensi tinggi ditemukan, barulah dicari aturan asosiasi yang memenuhi syarat minimum  untuk confidence dengan  menghitung confidence aturan  asosiatif  A→B.  Minimal Confidence =60%.  Nilai Confidence dari aturan A→B diperoleh dengan rumus berikut:
(4)
Dari kombinasi 2 Itemset yang telah ditemukan, dapat dilihat besarnya nilai support , dan confidence dari calon aturan asosiasi seperti tampak pada tabel dibawah ini:
Tabel 4. Hasil confidence dengan minimal confidence 60%
Aturan Confidence Jika membeli Mountain Tire Tube maka akan membeli Fender Set - Mountain 0.6 60% Jika membeli Fender Set - Mountain maka akan membeli Racing Socks 0.75 75%

## 4. HASIL
Tahapan  ini  memberikan  paparan  mengenai  hasil  dari  implementasi  algoritma  apriori  dengan  bahasa pemrograman  berbasis web .  Beberapa  hasil  menunjukan  setiap  proses  yang  dilakukan  oleh  tahapan  algoritma apriori. Gambar 4,5,6 menunjukan hasil implementasi pada setiap proses algoritma apriori.

## 5. KESIMPULAN
Penelitian dapat ditarik kesimpulan bahwa dengan diketahuinya produk yang paling banyak terjual, bisa membantu membuatkan aturan asosiasi. Aturan asosiasi ini diperoleh berdasarkan pemilihan Itemset pada  setiap  transaksi.  Dengan  demikian  hasil  yang  diperoleh  dapat  digunakan  untuk  membantu pengambil  keputusan.  Hasil  lainnya  juga,  implementasi  ini  bisa  membantu  untuk  mengadakan  stok produk yang banyak disukai oleh pembeli, dan menambah persedian produk.
Gambar  2. Antarmuka Penyajian Data Orde Transaksi Penjualan Work
Gambar  3. Contoh Antarmuka Hasil Untuk Itemset Berjumlah 1
Gambar  4. Antarmuka Hasil Yang Menyajikan Asosiasi Rule Itemset

## UCAPAN TERIMA KASIH
Terima kasih kepada Agis Baswara dan Yana Mulyana yang telah membantu dalam pengumpulan data dan pencarian literasi untuk mendukung penulisan ini.

## DAFTAR PUSTAKA
[1] Boch, Grady, James Rumbraugh, Ivan Jacobson. 1999. Unified Modeling Language (UML). OMG Modeling.
[2] Boehm, Barry W. A Spiral Model for Software Development and Enhancment. Journal  volume 21 (61-72)
[3] Pane,  D.  K.  (2013).  Implementasi Data  mining Pada  Penjualan  Produk  Elektronik  Dengan Algoritma Apriori (Studi Kasus: Kreditplus). Pelita Informatika Budi Darma, Volume: IV, Nomor:
3 , 25-19.
[4] Kusrini, Emha dan Taufiq Luthfi. (2010). ” Algoritma Data Mining ”, ANDI, Yogyakarta, 2010
[5] Sulianta,  Feri  dan  Juju  Dominikus  (2010). Data  mining :  Meramalkan  Bisnis  Perusahaan.  PT  Elex Media Komputindo: Jakarta
[6] Kusumo,  Dana  Sulistiyo,  et  al.  (2003). Data  mining Dengan  Algoritma  Apriori  Pada  RDBMS Oracle, Jurnal Penelitian dan Pengembangan TELEKOMUNIKASI, Juni 2003, Vol. 8 No.1-3.
[7] Doyle, M. (2010). Beginning PHP 5.3. Indianapolis, USA: Wiley Publishing, Inc.