• Tidak ada hasil yang ditemukan

PENERAPAN ALGORITMA APRIORI UNTUK PENCARIAN POLA ASOSIASI BARANG PADA DATA TRANSAKSI PENJUALAN (Studi Kasus Pada Toko “Kafe Swalayan”) SKRIPSI

N/A
N/A
Protected

Academic year: 2019

Membagikan "PENERAPAN ALGORITMA APRIORI UNTUK PENCARIAN POLA ASOSIASI BARANG PADA DATA TRANSAKSI PENJUALAN (Studi Kasus Pada Toko “Kafe Swalayan”) SKRIPSI"

Copied!
135
0
0

Teks penuh

(1)

UNTUK PENCARIAN POLA ASOSIASI BARANG

PADA DATA TRANSAKSI PENJUALAN

(Studi Kasus Pada Toko “Kafe Swalayan”)

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

Jurusan Teknik Informatika

Disusun Oleh : Amin Nurdiyanto

035314041

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

FOR FINDING GOODS ASSOCIATION RULES

ON TRANSACTION OF SELLING DATA

(Case Study at “Kafe Swalayan” Store)

A THESIS

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree

In Informatics Engineering

By : Amin Nurdiyanto

035314041

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

(3)
(4)
(5)
(6)

vi

MOTO

Hidup tak selamanya indah.

Kebahagiaan hidup bukan ditentukan oleh materi yang berlimpah, tapi oleh hati yang tentram.

Seperti filosofi padi,

semakin dia berisi semakin dia menunduk.

Tak ada yang tak mungkin dalam hidup ini jika kita mau berusaha.

(7)

vii

HALAMAN PERSEMBAHAN

(8)

viii

ABSTRAK

Transaksi penjualan barang pada suatu toko swalayan menghasilkan data transaksi yang besar dan disimpan dalam database. Dalam suatu periode waktu tertentu, data transaksi tersebut bertambah seiring dengan banyaknya transaksi yang dilakukan oleh konsumen. Data transaksi tersebut dapat di analisa untuk menghasilkan pengetahuan yang lebih berguna bagi pemilik toko.

Pada Tugas Akhir ini akan dibuat sebuah sistem untuk mengimplementasikan algoritma Apriori menggunakan teknik Association Rules Mining untuk menganalisa data transaksi penjualan. Sistem yang dibuat

mengunakan bahasa pemrograman java dan database MySQL.

(9)

ix

ABSTRACT

Goods selling transaction in the department store results large transaction data and have been saving into database. In a periodic the transaction data grow as much as transaction has been done by customer. The transaction data can be analyzed to results more knowledge for owner department store.

In this thesis would be made a system to implemented Apriori algorithm using Association Rules Mining technique to analyze transaction of selling data. The system made by using java programming language and MySQL database.

(10)
(11)

xi

KATA PENGANTAR

Puji dan syukur saya panjatkan kehadirat Allah SWT yang telah memberikan rahmat dan karunia-Nya, sehingga saya dapat menyelesaikan Tugas Akhir ini dengan baik.

Dalam proses penulisan tugas akhir ini saya menyadari bahwa ada begitu banyak pihak yang telah memberikan perhatian dan bantuan dengan caranya masing-masing sehingga tugas akhir ini dapat diselesaikan. Oleh karena itu saya ingin mengucapkan terima kasih antara lain kepada :

1. Bapak Yosef Agung Cahyanta, S.T., M.T. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

2. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing Tugas Akhir dan Pembimbing Akademik, yang telah banyak memberikan bimbingan, dukungan, motivasi dan waktu untuk membimbing saya sehingga saya dapat menyelesaikan tugas akhir ini dengan baik.

3. Bapak Puspaningtyas Sanjaya Adi, S.T., M.T., selaku Ketua Jurusan Teknik Informatika.

4. Bapak Alb. Agung Hadhiatma, S.T., M.T., dan bapak Eko Hari Parmadi S.Si., M.Kom., selaku panitia penguji yang telah memberikan banyak kritik dan saran demi sempurnanya tugas akhir saya.

(12)

xii

6. Seluruh staff Sekretariat Sains dan Teknologi Universitas Sanata Dharma, yang banyak membantu saya dalam urusan administrasi akademik.

7. Staff laboran Teknik Informatika, terima kasih atas bantuannya dalam mempersiapkan laboratorium untuk praktikum saya.

8. Ibu Novi selaku pemilik toko Kafe Swalayan yang telah memberikan data kepada saya guna keperluan tugas akhir ini.

9. Bapak dan Ibu tercinta, terima kasih atas doa, semangat, dukungan dan cintanya sehingga saya bisa menyelesaikan studi dengan lancar.

10. Teman-teman Teknik Informatika khususnya angkatan 2003, terima kasih atas bantuan, ilmu, dan persahabatan yang telah kita bagi.

11. Seluruh pihak yang telah membantu dalam proses penulisan tugas akhir ini yang tidak bisa saya sebutkan satu per satu.

Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh karena itu kritik dan saran untuk perbaikan tugas akhir ini sangat saya harapkan. Akhir kata, semoga tugas akhir ini bermanfaat bagi semua pihak. Terima kasih.

Yogyakarta, 27 Februari 2009

(13)

xiii

DAFTAR ISI

HALAMAN JUDUL BAHASA INDONESIA HALAMAN JUDUL BAHASA INGGRIS

HALAMAN PERSETUJUAN ... HALAMAN PENGESAHAN ... PERNYATAAN KEASLIAN KARYA ... MOTO ... HALAMAN PERSEMBAHAN ... ABSTRAK ... ABSTRACT ... LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... KATA PENGANTAR ...

1.1 Latar Belakang Masalah ... 1.2 Rumusan Masalah ... 1.3 Batasan Masalah ...

(14)

xiv

1.4 Tujuan Penelitian ... 1.5 Manfaat Penelitian ... 1.6 Metodologi Penelitian ... 1.7 Sistematika Penulisan ...

BAB II. LANDASAN TEORI

2.1 Data Mining ... 2.2 Proses Data Mining ... 2.3 Association Rules ... 2.4 Algoritma Apriori ...

BAB III. ANALISIS DAN DESAIN SISTEM

3.1 Analisis Sistem ... 3.1.1 Gambaran Umum Sistem ... 3.1.2 Use Case Diagram ... 3.1.3 Class Diagram ... 3.1.4 Activity Diagram ... 3.1.4.1 Activity Diagram Sistem Kasir ... 3.1.4.1.1Activity Diagram Login Kasir ... 3.1.4.1.2Activity Diagram Mencatat Data Transaksi ... 3.1.4.1.3Activity Diagram Logout Kasir ... 3.1.4.2 Activity Diagram Sistem Admin ... 3.1.4.2.1Activity Diagram Login Admin ...

(15)

xv

3.1.4.2.2Activity Diagram Menambah Data Barang ... 3.1.4.2.3Activity Diagram Mengedit Data Barang ... 3.1.4.2.4Activity Diagram Menghapus Data Barang ... 3.1.4.2.5Activity Diagram Mencetak Data Barang ... 3.1.4.2.6Activity Diagram Menambah Data User ... 3.1.4.2.7Activity Diagram Mengedit Data User …... 3.1.4.2.8Activity Diagram Menghapus Data User ... 3.1.4.2.9Activity Diagram Mencetak Data User ... 3.1.4.2.10 Activity Diagram Melihat Data Transaksi .. 3.1.4.2.11 Activity Diagram Mencetak Data Transaksi 3.1.4.2.12 Activity Diagram Melakukan Pencarian

Pola Asosiasi Barang ... 3.1.4.2.13 Activity Diagram Mencetak Data Asosiasi

Barang ... 3.1.4.2.14 Activity Diagram Logout Kasir ... 3.1.5 Sequence Diagram ... 3.1.5.1 Sequence Diagram Sistem Kasir ...

3.1.5.1.1Sequence Diagram Login Kasir ... 3.1.5.1.2Sequence Diagram Mencatat Data Transaksi 3.1.5.1.3Sequence Diagram Logout Kasir ... 3.1.5.2 Sequence Diagram Sistem Admin ... 3.1.5.2.1Sequence Diagram Login Admin ... 3.1.5.2.2Sequence Diagram Menambah Data Barang

(16)

xvi

3.1.5.2.3Sequence Diagram Mengedit Data Barang ... 3.1.5.2.4Sequence Diagram Menghapus Data Barang 3.1.5.2.5Sequence Diagram Mencetak Data Barang ... 3.1.5.2.6Sequence Diagram Menambah Data User .... 3.1.5.2.7Sequence Diagram Mengedit Data User ... 3.1.5.2.8Sequence Diagram Menghapus Data User .... 3.1.5.2.9Sequence Diagram Mencetak Data User ... 3.1.5.2.10 Sequence Diagram Melihat Data Transaksi 3.1.5.2.11 Sequence Diagram Mencetak Data

Transaksi ... 3.1.5.2.12 Sequence Diagram Melakukan Pencarian

Pola Asosiasi Barang ... 3.1.5.2.13 Sequence Diagram Mencetak Data

Asosiasi Barang ... 3.1.5.3 Sequence Diagram Logout Kasir ... 3.2 Desain Sistem ... 3.2.1 ER Diagram ... 3.2.2 Desain Database ... 3.2.3 Desain Antar Muka (User Interface Design) ... 3.2.3.1 Form Login ... 3.2.3.2 Form Utama Sistem Kasir ... 3.2.3.3 Form Transaksi ... 3.2.3.4 Form Utama Sistem Admin ...

(17)

xvii

3.2.3.5 Form Daftar User ... 3.2.3.6 Form Daftar Barang ... 3.2.3.7 Form Daftar Transaksi ... 3.2.3.8 Form Perhitungan Apriori ... 3.2.3.9 Form Perhitungan Apriori - Mengambil Data

Transaksi ... 3.2.3.10Form Perhitungan Apriori - Mengambil Data

Transaksi ... 3.2.3.11Form Perhitungan Apriori - Cleaning Data ... 3.2.3.12Form Perhitungan Apriori - Pencarian Pola Asosiasi Barang ... 3.2.3.13Form Perhitungan Apriori - Hasil Analisa ...

BAB IV. IMPLEMENTASI SISTEM

4.1 Spesifikasi Hardware dan Software yang Digunakan ... 4.1.1 Spesifikasi Hardware ... 4.1.2 Spesifikasi Software ... 4.2 Pembuatan Database ... 4.3 Koneksi Java dan MySQL ... 4.4 Pembuatan Antar Muka ... 4.4.1 Form Login User ... 4.4.2 Form Utama Sistem Kasir ... 4.4.3 Form Transaksi ...

(18)

xviii

4.4.4 Form Utama Sistem Admin ... 4.4.5 Form Daftar User ... 4.4.6 Form Daftar Barang ... 4.4.7 Form Daftar Transaksi ... 4.4.8 Form Perhitungan Apriori – Langkah-langkah Perhitungan

Apriori ... 4.4.9 Form Perhitungan Apriori – Pemilihan Data Dari Database 4.4.10 Form Perhitungan Apriori – Pemilihan Data Dari Database Sistem dan Preprosesing/Cleaning Data ... 4.4.11 Form Perhitungan Apriori – Pemilihan Data Dari Database Sistem dan Preprosesing/Cleaning Data ... 4.4.12 Form Perhitungan Apriori – Data Hasil

Preprosesing/Cleaning ... 4.4.13 Form Perhitungan Apriori – Pencarian Pola Asosiasi

Barang ... 4.4.14 Form Perhitungan Apriori – Menganalisa Aturan Asosiasi .. 4.4.15 Form Perhitungan Apriori – Pembacaan Grafik Support ... 4.4.16 Form Perhitungan Apriori – Pembacaan Grafik Confidence

BAB V. ANALISIS HASIL

5.1 Analisis Pengujian Sistem ... 5.2 Analisis Manfaat Sistem ... 5.3 Kelebihan dan Kekurangan Sistem ...

(19)

xix

5.3.1 Kelebihan Sistem ... 5.3.2 Kekurangan Sistem ... BAB VI. PENUTUP

6.1 Kesimpulan ... 6.2 Saran ...

DAFTAR PUSTAKA

106 107 108 108 109

(20)

xx

DAFTAR GAMBAR

Gambar Keterangan Halaman

2.1 Proses KDD 9

2.2 Proses Data Mining 12

3.1 Use Case Diagram 24

3.2 Class Diagram 24

3.3 Activity Diagram Login Kasir 25

3.4 Activity Diagram Mencatat Data Transaksi 26

3.5 Activity Diagram Logout Kasir 27

3.6 Activity Diagram Login Admin 27

3.7 Activity Diagram Menambah Data Barang 28 3.8 Activity Diagram Mengedit Data Barang 29 3.9 Activity Diagram Menghapus Data Barang 30

3.10 Activity Diagram Mencetak Data Barang 30

3.11 Activity Diagram Menambah Data User 31

3.12 Activity Diagram Mengedit Data User 32

3.13 Activity Diagram Menghapus Data User 33

3.14 Activity Diagram Mencetak Data User 33

3.15 Activity Diagram Melihat Data Transaksi 34

3.16 Activity Diagram Mencetak Data Transaksi 34 3.17 Activity Diagram Melakukan Pencarian Pola Asosiasi

Barang

35

3.18 Activity Diagram Mencetak Data Asosiasi Barang 36

3.19 Activity Diagram Logout Admin 36

3.20 SequenceDiagram Login Kasir 37

3.21 SequenceDiagram Mencatat Data Transaksi 38

3.22 Sequence Diagram Logout Kasir 39

3.23 Sequence Diagram Login Admin 39

(21)

xxi

3.25 Sequence Diagram Mengedit Data Barang 41

3.26 Sequence Diagram Menghapus Data Barang 42

3.27 Sequence Diagram Mencetak Data Barang 43

3.28 Sequence Diagram Menambah Data User 44

3.29 Sequence Diagram Mengedit Data User 45

3.30 Sequence Diagram Menghapus Data User 46

3.31 Sequence Diagram Mencetak Data User 47

3.32 Sequence Diagram Melihat Data Transaksi 48

3.33 Sequence Diagram Mencetak Data Transaksi 49 3.34 Sequence Diagram Melakukan Pencarian Pola Asosiasi

Barang

50

3.35 Sequence Diagram Mencetak Data Asosiasi Barang 51

3.36 Sequence Diagram Logout Admin 51

3.37 ER Diagram 52

3.44 Form Daftar Transaksi 59

3.45 Form Utama Perhitungan Apriori 59

3.46 Form Perhitungan Apriori - Mengambil Data Transaksi 60 3.47 Form Perhitungan Apriori - Mengambil Data Transaksi 61 3.48 Form Perhitungan Apriori - Cleaning Data 61 3.49 Form Perhitungan Apriori - Pencarian Asosiasi Barang 62 3.50 Form Perhitungan Apriori - Hasil Analisa 62

4.1 Form Login User 66

4.2 Form Utama Sistem Kasir 67

(22)

xxii

4.4 Form Utama Sistem Admin 70

4.5 Form Daftar User 71

4.6 Fom Daftar Barang 72

4.7 Form Daftar Transaksi 73

4.8 Form Perhitungan Apriori - Langkah-langkah Perhitungan Apriori

74

4.9 Form Perhitungan Apriori - Pemilihan Data Dari Database

75

4.10 Form Perhitungan Apriori - Pemilihan Data Dari Database Sistem dan Preprosesing/Cleaning Data

76

4.11 Form Perhitungan Apriori - Pemilihan Data Dari Database di Luar Sistem dan Preprosesing/Cleaning

Data

78

4.12 Form Perhitungan Apriori - Pemilihan Data Dari Database di Luar Sistem dan Preprosesing/Cleaning

Data

79

4.13 Form Perhitungan Apriori - Pencarian Pola Asosiasi Barang

80

4.14 Form Perhitungan Apriori - Menganalisa Aturan Asosiasi

99

4.15 Form Perhitungan Apriori - Pembacaan Grafik Support 100 4.16 Form Perhitungan Apriori - Pembacaan Grafik

Confidence

(23)

xxiii

DAFTAR TABEL

Tabel Keterangan Halaman

2.1 Tabel Data Transaksi AllElectronic 15

2.2 Tabel Candidate Itemset C1 16

2.3 Tabel Large 1-itemset L1 16

2.4 Tabel Candidate Itemset C2 17

2.5 Tabel Large 2-temset L2 17

2.6 Tabel Candidate Itemset C3 18

2.7 Tabel Large 3-itemset L3 18

2.8 Tabel Hasil Aturan Asosiasi 19

3.1 Tabel Barang 52

3.2 Tabel Transaksi 53

3.3 Tabel Cleaning 53

3.4 Table Rule 53

3.5 Tabel Largeitem 54

3.6 Tabel Candidate 54

3.7 Tabel Staff 55

3.8 Tabel Login 55

5.1 Tabel Pengujian 1 102

5.2 Tabel Pengujian 2 103

5.3 Tabel Pengujian 3 104

(24)

xxiv

DAFTAR RUMUS

Rumus Keterangan Halaman

2.1 Nilai Support (AB) 12

(25)

1

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Dewasa ini teknologi informasi berkembang pesat seiring dengan peningkatan kebutuhan pengolahan data untuk memperoleh informasi yang lebih berguna. Penelitian dari berbagai disiplin ilmu dilakukan untuk menemukan metode dalam rangka memenuhi kebutuhan tersebut. Salah satu cabang ilmu teknologi informasi yang dikembangkan sebagai metode adalah data mining. Data mining merupakan ilmu yang mempelajari tentang penggalian pengetahuan baru

dari suatu data di dalam database agar lebih bermanfaat. Dalam cakupannya data mining memiliki keterkaitan dengan berbagai disiplin ilmu yang lain, seperti

statistik, Artificial Intellegence (AI), dan pengolahan citra gambar. Sehingga dapat diterapkan di berbagai bidang yang menggunakan peran teknologi informasi sebagai pendukungnya. Beberapa penerapan tersebut diantaranya adalah untuk analisa dibidang pemasaran, telekomunikasi, asuransi, keuangan, astronomi, kedokteran, dan lain-lain.

(26)

ukurannya bisa mencapai ribuan bahkan jutaan byte dan biasanya data transaksi tersebut hanya dibiarkan menumpuk begitu saja sebagai data yang tidak berguna. Maka dari itu perlu adanya suatu cara untuk memanfaatkan data transaksi tersebut agar lebih berguna. Salah satu cara yang bisa digunakan untuk pemanfaatan data transaksi tersebut adalah dengan menerapkan konsep data mining. Data mining digunakan untuk menganalisa pola penjualan barang dari data transaksi penjualan sehingga akan diperoleh suatu pengetahuan baru mengenai pola asosiasi penjualan suatu barang dengan barang lain. Atau dapat dijelaskan sebagai cara untuk mengetahui hubungan barang apa saja yang dibeli pelanggan secara bersamaan dalam sekian banyak transaksi. Hal ini merupakan pengetahuan yang bermanfaat bagi pemilik toko swalayan untuk mengatur strategi penjualan barang di tokonya, yang tidak lain adalah sebagai pendukung keputusan untuk pengembangan usaha.

Pada penelitian analisa keranjang belanja yang telah dilakukan, digunakan teknik Association Rules dengan algoritma FP Growth1. Hasil yang diperoleh berupa pengetahuan mengenai hubungan antara penjualan suatu barang dengan barang lain untuk rekomendasi pembeli dan penjual pada suatu situs e-commerce. Maka pada tugas akhir ini akan dilakukan penelitian analisa keranjang belanja menggunakan teknik Association Rules dengan algoritma Apriori yang diaplikasikan pada sebuah sistem pencarian pola asosiasi barang. Hasil penelitian diharapkan dapat memberikan pengetahuan kepada pemilik toko swalayan untuk mengatur strategi penjualan.

1

(27)

1.2. Rumusan Masalah

Bagaimana menerapkan algoritma Apriori pada data mining untuk analisa data transaksi penjualan sehingga dapat diketahui pola asosiasi penjualan suatu barang terhadap barang lain?

1.3. Batasan Masalah

Batasan masalah pada tugas akhir ini adalah sebagai berikut :

1. Proses analisa data dilakukan berdasarkan data transaksi secara keseluruhan atau periodik untuk data dari database sistem dan secara keseluruhan untuk data dari database di luar sistem dengan menggunakan database MySQL. 2. Sistem tidak menangani data dalam bentuk file, misal file Microsoft Office

Excel (*.xls) atau file dalam format Comma Separated Values (*.csv).

3. Hasil analisa berupa pengetahuan pola asosiasi penjualan antar barang yang disajikan dalam bentuk file cetak, grafik, dan tabel.

4. Proses pencarian kandidat itemset dibatasi sampai dengan kombinasi 10 barang.

(28)

1.4. Tujuan Penelitian

Penelitian dalam Tugas Akhir ini memiliki tujuan, yaitu menerapkan algoritma Apriori sebagai metode pada data mining untuk menganalisa data transaksi penjualan, sehingga dapat diperoleh pengetahuan mengenai hubungan penjualan suatu barang dengan barang lain.

1.5. Manfaat Penelitian

Manfaat dari penelitian ini lebih difokuskan bagi pemilik swalayan. Adapun manfaat tersebut adalah sebagai berikut :

1. Memperoleh pengetahuan mengenai hubungan penjualan suatu barang terhadap barang lain dari transaksi penjualan.

2. Dari pengetahuan tersebut, pemilik swalayan dapat mengatur strategi penjualan tentang barang-barang yang terjual bersamaan dalam beberapa transaksi.

1.6. Metodologi Penelitian

Metodologi penelitian yang digunakan untuk membuat aplikasi ini adalah : 1. Menerapkan metodologi pemrograman berorientasi objek dalam

pengembangan sistem.

2. Menerapkan metode data mining, yaitu :

(29)

b. Melakukan data cleaning and preprocessing, yaitu dengan cara merestrukturisasi field yang tidak sesuai dengan target data.

c. Mengubah data menjadi bentuk yang sesuai untuk di-mining, atau disebut juga dengan transformasi data.

d. Mengaplikasikan teknik data mining, berupa pencarian hubungan penjualan suatu barang dengan barang lain menggunakan algoritma Apriori.

e. Mengevaluasi pola yang ditemukan dari hasil aplikasi teknik data mining untuk menemukan pengetahuan yang bermanfaat.

f. Melakukan presentasi pengetahuan yang didapatkan.

1.7. Sistematika Penulisan

BAB I PENDAHULUAN

Bab ini menjelaskan latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, serta sistematika penulisan laporan dari penelitian yang akan dilakukan. BAB II LANDASAN TEORI

Bab ini berisi penjelasan tentang teori-teori yang digunakan untuk memecahkan masalah yang akan diteliti.

BAB III ANALISIS DAN PERANCANGAN SISTEM

(30)

BAB IV IMPLEMENTASI SISTEM

Bab ini berisi penjelasan mengenai implementasi sistem sesuai dengan analisis dan rancangan sistem ke dalam bentuk program. BAB V ANALISIS HASIL IMPLEMENTASI

Bab ini merupakan analisis dari implementasi sistem yang telah dibuat.

BAB VI PENUTUP

(31)

7 BAB II LANDASAN TEORI

2.1. Data Mining

Data mining atau sering disebut sebagai Knowledge Discovery in Database (KDD) didefinisikan sebagai suatu proses nontrivial untuk mengidentifikasi keabsahan, potensi bermanfaat, dan pola akhir yang dapat dimengerti dari data2. Data mining adalah proses secara otomatis untuk menemukan informasi yang bermanfaat di dalam gudang data yang besar3.

Dari pengertian tersebut data mining mempunyai tujuan untuk memperoleh pengetahuan baru yang lebih berarti dari proses penggalian data yang tersimpan didalam database. Secara umum data mining mempunyai 2 tujuan, yaitu :

1. Deskriptif

Data mining dilakukan untuk mencari pola-pola yang dapat dipahami manusia yang menjelaskan karakteristik data. Beberapa metode yang digunakan untuk tujuan ini adalah :

1.1. Association Rules

Metode untuk mencari pola asosiasi yang sering muncul dalam data. Teknik yang digunakan misalnya algoritma Apriori dan FP-Growth.

2

Fayyad, U. M., G. Piatetsky-Shapiro, P. Smyth, R. Uthurusamy, editor, Advances in Knowledge Discovery and Data Mining, MIT Press, Menlo Park, CA, 1996.

http://www2.cs.uregina.ca/~dbd/cs831/notes/kdd/ - akses terakhir tanggal 23 Oktober 2008, 23:35. 3

(32)

1.2. Summarization

Metode untuk memetakan data ke dalam subset yang lebih ringkas dari keseluruhan atau sebagian data.

1.3. Clustering

Proses untuk mengelompokkan data ke dalam sebuah cluster berdasarkan kemiripannya. Prinsipnya adalah memaksimalkan kemiripan dalam sebuah cluster, dan meminimalisasikan kemiripan antar cluster. Beberapa teknik

yang digunakan misalnya k-means, k-medoids.

2. Prediktif

Data mining dilakukan untuk membentuk sebuah model pengetahuan yang akan digunakan untuk melakukan prediksi. Adapun metode yang digunakan adalah sebagai berikut :

2.1. Classification

Classification adalah proses untuk menemukan model atau fungsi yang

menjelaskan atau membedakan konsep atau kelas data, dengan tujuan untuk dapat memperkirakan kelas dari suatu objek yang labelnya tidak diketahui. Beberapa teknik yang termasuk dalam metode ini antara lain Decission Tree, Neural Network, Bayesian Network, dan k-nearest Neighbour.

2.2. Regression

(33)

2.2. Proses Data Mining

Data mining mengacu pada aplikasi algoritma untuk mendapatkan pola dari data tanpa langkah-langkah tambahan dalam proses KDD. Proses KDD diilustrasikan pada gambar 2.1 berikut4:

Gambar 2.1. Proses KDD

Proses KDD pada gambar 2.1 dapat dijelaskan sebagai berikut :

1. Mengembangkan pemahaman mengenai aplikasi yang menyangkut pengetahuan terlebih dahulu serta tujuan dari proses KDD bagi pengguna akhir.

2. Menciptakan suatu set target data melalui pemilihan suatu data set, atau memusatkan pada suatu subset variabel, atau contoh data, dimana proses penemuan dilakukan.

4

Fayyad, U. M., G. Piatetsky-Shapiro, P. Smyth, R. Uthurusamy, editor, Advances in Knowledge Discovery and Data Mining, MIT Press, Menlo Park, CA, 1996.

(34)

3. Data cleaning and preprocessing merupakan proses untuk menghilangkan noise, mengumpulkan informasi yang dibutuhkan untuk pemodelan atau

perhitungan bagi noise, menentukan strategi untuk menangani field data yang hilang, dan menghitung informasi berdasarkan urutan waktu dan perubahan yang ditemukan.

4. Data reduction and projection adalah proses menemukan corak yang bermanfaat untuk menyajikan data yang sesuai dengan tujuan dari tugas. Serta menggunakan pengurangan dimensi atau perubahan bentuk metode untuk mengurangi jumlah variabel yang efektif atau untuk menemukan penyajian yang sama dari data dalam pembahasan.

5. Menganalisa task data mining untuk memutuskan tujuan dari proses KDD, apakah itu berupa classification, regression, clustering, atau task lainnya. 6. Memilih algoritma data mining melalui pemilihan metode untuk digunakan

dalam mencari pola dari data, memutuskan parameter dan model yang sesuai, serta mencocokan metode khusus dari data mining dengan keseluruhan proses KDD.

7. Melakukan data mining itu sendiri, yaitu mencari pola yang sesuai dari bentuk representasi tertentu atau suatu set representasi tersebut, seperti association rules, regression, clustering, dan sebagainya.

(35)

9. Penerapan dari pengetahuan yang ditemukan, baik itu dengan menggunakan pengetahuan secara langsung, menggabungkan pengetahuan tersebut ke dalam sistem yang lain untuk langkah lebih lanjut, atau melakukan dokumentasi sederhana dan membuat laporan untuk pihak yang tertarik.

Meskipun demikian, proses KDD tersebut tidak selalu digunakan sepenuhnya pada penerapannya. Hal tersebut lebih disesuaikan pada kebutuhan aplikasi dan karakteristik data.

2.3. Association Rules

Association Rules merupakan suatu metode data mining untuk mencari

pola asosiasi yang sering muncul dalam data. Metode ini menjadi popular karena sering digunakan untuk menganalisa keranjang belanja (Market Basket Analysis). Aturan asosiasi yang terbentuk adalah sebuah implikasi atau “if-then-rule” yang didukung oleh data. Bentuk dasar dari aturan asosiasi adalah Α⇒Β. Didefinisikan jika A terjadi dalam transaksi, maka B pun terjadi dalam transaksi yang sama.

Istilah penting dalam Association Rules yaitu : 1. Item, Itemset, dan k-Itemset

Sebuah nilai atribut disebut dengan item, sedangkan kumpulan dari beberapa item disebut dengan itemset. k-Itemset merupakan itemset yang berisi k item.

2. Support

(36)

tuple

Confidence merupakan persentasi banyaknya A pada transaksi yang

mengandung B.

Support dan confidence merupakan parameter yang digunakan untuk mengukur aturan asosiasi. Sehingga aturan asosiasi dapat diperoleh dari itemset yang mempunyai support dan confidence lebih besar dari minimum support (disebut minsup) dan minimum confidence (disebut minconf).

Permasalahan mendasar dalam Association Rules dibagi menjadi dua, yaitu5:

1. Menemukan seluruh itemset yang memiliki support >= minsup.

Itemset yang memilki support lebih besar atau sama dengan minsup disebut

dengan large itemset (l-itemset), sedangkan itemset yang memiliki support lebih kecil dari minimum support disebut dengan small itemset.

2. Menggunakan large itemset untuk menghasilkan aturan asosiasi yang diinginkan.

5

Rakesh Agrawal and Ramakrishnan Srikant, Fast Algorithms for Mining Association Rules : Article, IBM Almaden Research Center, 1996.

(37)

Untuk setiap large itemset l, harus dapat ditemukan seluruh subset yang tidak

Algoritma yang digunakan dalam teknik Association Rules antara lain: 1. Apriori

Algoritma ini mencari frequent itemset dari database transaksi melalui beberapa tahap iterasi.

2. Frequent Pattern Growth (FP Growth)

Berbeda dengan Apriori, algoritma FP Growth tidak perlu melakukan pencarian kandidat. Data direpresentasikan menggunakan Frequent Patttern Tree melalui pendekatan devide and conquer untuk memperoleh frequent

itemset.

2.4. Algoritma Apriori

Secara umum kinerja dari algoritma ini adalah mencari frequent itemset dari database transaksi melalui beberapa tahap iterasi6. Prinsipnya adalah jika sebuah itemset infrequent, maka itemset yang infrequent tidak perlu lagi dicari

(38)

superset-nya sehingga jumlah kandidat yang harus diperiksa menjadi berkurang.

Berikut adalah algoritma Apriori7: 1) L1={large 1-itemset}

2) For {k=2;Lk-1≠0;k++}do begin

3) Ck = apriori-gen(Lk-1);//new candidate 4) Forall transaction t D do begin

5) Ct = subset(Ck,t);//candidate contained in t 6) Forall candidates c Ct do

Langkah pertama algoritma ini adalah menghitung kejadian item untuk menentukan large 1-itemset atau frequent itemset kemudian disimpan pada L1. Langkah berikutnya untuk large itemset sebesar Lk-1 terdiri dari (k-1) langkah yang digunakan untuk menghasilkan kandidat itemset Ck menggunakan fungsi Apriori-gen8. Adapun fungsi Apriori-gen terdiri dari 2 tahap yaitu penggabungan Lk-1 (Lk-1 p) dengan Lk-1 (Lk-1 q) dan penghapusan kandidat itemset yang tidak terdapat pada Lk-1. Algoritma untuk melakukan penggabungan Lk-1 (Lk-1 p) dengan Lk-1 (Lk-1 q) adalah sebagai sebagi berikut :

7 Rakesh Agrawal and Ramakrishnan Srikant, Fast Algorithms for Mining Association Rules : Article, IBM Almaden Research Center, 1996.

http://rakesh.agrawal-family.com/papers/vldb94apriori.pdf - akses terakhir tanggal 17 Oktober 2008, 23:19. 8

Rakesh Agrawal and Ramakrishnan Srikant, Fast Algorithms for Mining Association Rules : Article, IBM Almaden Research Center, 1996.

(39)

Kemudian dicari semua subset (k-1) dari semua kandidat itemset pada Ck dan menghapus beberapa (k-1)-subset dari kandidat itemset pada Ck yang tidak termasuk dalam Lk-1. Tahap penghapusan atau disebut juga prune step menggunakan algoritma sebagai berikut :

1) forall itemsets c ∈Ck do 2) forall (k-1)-subsets s of c do 3) if (s Lk-1) then

4) delete c from Ck;

Selanjutnya dilakukan scan database untuk menghasilkan kandidat Ck yang memenuhi syarat support dan hasilnya disimpan pada Lk. Sehingga hanya kandidat itemset yang memenuhi support yang akan diolah pada proses selanjutnya. Demikian langkah pencarian kandidat dilakukan melalui iterasi hingga tidak mungkin lagi diperoleh kandidat baru. Kemudian untuk memperoleh aturan asosiasinya digunakan syarat confidence seperti pada rumus 2.2 diatas.

Untuk lebih jelasnya berikut ini merupakan contoh penerapan algoritma Apriori untuk pencarian Association Rules. Sebagai contoh terdapat data transaksi

AllElectronic9 seperti pada tabel 2.1 dibawah ini.

(40)

Tabel 2.1 Data Transaksi AllElectronic

TID List_Item

T100 I1, I2, I5

T200 I2, I4

T300 I2, I3

T400 I1, I2, I4

T500 I1, I3

T600 I2, I3

T700 I1, I3

T800 I1, I2, I3, I5

T900 I1, I2, I3

Dari tabel data transaksi tersebut akan dicari pola asosiasi dengan minsup 22% (kemunculan 2 dari 9 transaksi). Maka penyelesaian dengan menggunakan algoritma Apriori adalah sebagai berikut :

Langkah pertama menentukan C1={candidate 1-Itemset} dengan scan database. Hasil pembentukan C1 disajikan pada tabel 2.2 berikut :

Tabel 2.2 Candidate Itemset C1

Itemset Sup.Count

{I1} 6

{I2} 7

{I3} 7

{I4} 2

{I5} 2

(41)

Tabel 2.3 Large 1-itemset L1

Itemset Sup.Count

{I1} 6

{I2} 7

{I3} 7

{I4} 2

{I5} 2

Langkah selanjutnya adalah implementasi dari algoritma Apriori-gen, yaitu menggabungkan masing-masing itemset pada L1 dengan itemset pada L1 untuk menghasilkan candidate itemset C2. Hasil dari penggabungan tersebut disajikan pada tabel 2.4 Candidate Itemset C2 dibawah ini.

Tabel 2.4 Candidate Itemset C2

Itemset Sup.Count

{I1, I2} 4

{I1, I3} 4

{I1, I4} 1

{I1, I5} 2

{I2, I3} 4

{I2, I4} 2

{I2, I5} 2

{I3, I4} 0

{I3, I5} 1

{I4, I5} 0

Setelah C2 terbentuk, kemudian dilakukan perbandingan nilai candidate support count dengan nilai minsup. Hasilnya berupa Large 2-itemset L2 seperti pada tabel

(42)

Tabel 2.5 Large 2-temset L2

Itemset Sup.Count

{I1, I2} 4

{I1, I3} 4

{I1, I5} 2

{I2, I3} 4

{I2, I4} 2

{I2, I5} 2

Pada langkah selanjutnya dilakukan penggabungan masing-masing itemset pada L2 dengan itemset pada L2 untuk menghasilkan candidate itemset C3. Hasil dari penggabungan tersebut disajikan pada tabel 2.6 Candidate Itemset C3 dibawah ini

Tabel 2.6 Candidate Itemset C3

Itemset Sup.Count

{I1, I2, I3} 2

{I1, I2, I5} 2

Seperti langkah sebelumnya, setelah candidate itemset C3 terbentuk, maka dilakukan perbandingan nilai candidate support count dengan nilai minsup yang menghasilkan Large 3-itemset L3 seperti disajikan pada tabel 2.7 dibawah ini.

Tabel 2.7 Large 3-itemset L3

Itemset Sup.Count

{I1, I2, I3} 2

{I1, I2, I5} 2

(43)

Karena nilai candidate support count lebih kecil dari 2, maka pembentukan frequent itemset dihentikan.

Untuk mencari aturan asosiasi digunakan nilai confidence, yaitu dengan

menghitung nilai

) (

) (

A Support

B A Support

. Asosiasi yang akan dibentuk berasal dari

Large 3-itemset L3 atau dengan kata lain berasal dari large itemset Lk terbanyak. Misal diberikan nilai minconf sebesar 70%, maka hasil aturan asosiasi yang mungkin terbentuk dari large 3-itemset {I1, I2, I5} adalah seperti disajikan dalam tabel 2.8 dibawah ini.

Tabel 2.8 Hasil Aturan Asosiasi

Aturan Assosiasi (AB) Support (AB) Support(A) Confidence

I1 ^ I2 ⇒ I5 2 4 50%

I1 ^ I5 ⇒ I2 2 2 100%

I2 ^ I5 ⇒ I1 2 2 100%

I1 ⇒ I2 ^ I5 2 6 33%

I2 ⇒ I1 ^ I5 2 7 29%

(44)

20 BAB III

ANALISIS DAN PERANCANGAN SISTEM

2.2. Analisis Sistem

Tahap analisis sistem merupakan tahap penyelesaian masalah (problem solving) dengan cara membagi sistem ke dalam bagian dari komponennya dengan

tujuan agar bagian dari komponen tersebut dapat bekerja dan berinteraksi dengan baik untuk melengkapi tujuan sistem.

3.1.1. Gambaran Umum Sistem

Gambaran umum sistem yang akan dibuat adalah sistem yang dapat menangani pencatatan transaksi penjualan, manipulasi data barang, manipulasi data user, dan menangani data transaksi penjualan, serta sistem untuk melakukan proses data mining dari data transaksi penjualan sebagai tujuan utama sistem. Adapun user yang terlibat dalam sistem ini terdiri dari kasir dan admin. Maka dari itu sistem akan dibagi menjadi 2 bagian, yaitu sistem kasir yang menangani pencatatan transaksi penjualan dan sistem admin yang menangani manipulasi data barang, data user, data transaksi, dan pencarian pola asosiasi dengan metode data mining.

Alur kerja sistem dapat dijelaskan sebagai berikut: 1. Sistem Kasir

(45)

ke dalam form transaksi. Kasir dapat melakukan pencatatan transaksi penjualan barang melalui form transaksi dan menyimpan data transaksi tersebut ke dalam database.

2. Sistem Admin

Admin login ke dalam sistem. Jika login berhasil, maka sistem akan menampilkan form yang berisi menu-menu yang disediakan untuk admin. Admin dapat melakukan manipulasi data user, data barang, dan data transaksi, serta melakukan proses pencarian asosiasi barang. Pada menu user, admin dapat melakukan penambahan, pengubahan, dan penghapusan data user. Selanjutnya admin dapat melakukan penambahan, pengubahan, dan penghapusan data barang. Pada menu daftar transaksi, admin dapat menampilkan data transaksi yang tersimpan di dalam database secara keseluruhan maupun secara periodik. Selanjutnya dapat mencetak data transaksi yang ditampikan ke bentuk file cetak.

Admin dapat melakukan pencarian pola asosiasi barang dengan masuk ke dalam menu pencarian asosiasi. Pada menu ini terdapat beberapa langkah yang dikerjakan. Pertama, admin mengambil data transaksi dari tabel transaksi di dalam database sistem atau mengambil data transaksi dari tabel di luar database sistem.

Langkah selanjutnya adalah melakukan preprosesing terhadap data, jika diperlukan, dan melakukan proses cleaning data sehingga diperoleh data yang sesuai untuk di proses pada pencarian pola asosiasi barang, disebut dengan data cleaning. Dari data cleaning tersebut, maka dapat dilakukan proses pencarian pola

(46)

Pada BAB II Landasan Teori telah disebutkan mengenai proses KDD yang terdiri dari beberapa tahap. Adapun analisis dari proses KDD tersebut pada penerapan pencarian pola asosiasi barang didalam penelitian ini adalah sebagai berikut :

10.Mempelajari kebutuhan untuk menerapkan data mining dalam penggalian pengetahuan mengenai hubungan penjualan antar barang di swalayan.

11.Memilih data yang akan digunakan dalam proses penggalian pengetahuan tersebut. Data yang dimaksud adalah data yang mengandung field nomor transaksi/faktur/nota dan field nama barang, yaitu berupa data transaksi penjualan.

12.Mengubah data transaksi penjualan menjadi bentuk data yang sesuai dengan kebutuhan sistem.

13.Dari data transaksi penjualan tersebut digunakan algoritma Apriori dengan teknik Association Rules untuk menemukan pola asosiasi penjualan antar barang.

14.Selanjutnya dilakukan proses pencarian pola asosiasi penjualan antar barang dengan menggunakan algoritma Apriori . Langkah-langkah yang dikerjakan adalah sebagai berikut :

a. Memasukkan nilai minsup dan minconf sebagai syarat dari nilai asosiasi barang yang akan dicari.

(47)

diperoleh C1 >= minsup, maka kandidat tersebut dimasukkan ke dalam tabel largeitemset. Jika tidak diperoleh hasil, maka proses pencarian dihentikan. Pada tahap selanjutnya proses tersebut dilakukan dengan menaikkan nilai k menjadi k+1. Sebagai contoh, jika diperoleh hasil C1 >= minsup, maka C1 yang memenuhi syarat tersebut dimasukkan ke dalam

tabel largeitemset dan menaikkan nilai k menjadi k+1 untuk pembentukan C2 dan L2. Demikian proses tersebut dilakukan sampai tidak ditemukan lagi kandidat yang memenuhi syarat Ck >= minsup.

c. Setelah diperoleh large k-itemset (Lk), kemudian diambil nilai Lk tertinggi dari tabel largeitemset. Dari Lk yang diambil tersebut, dilakukan analisa dengan menerapkan aturan asosiasi sesuai dengan rumus confidence. Hasil dari analisa tersebut adalah nilai support dan confidence dari asosiasi barang yang memenuhi syarat lebih besar atau sama dengan minsup dan minconf.

(48)

3.1.2. Use Case Diagram

Use case diagram sistem disajikan seperti pada gambar 3.1 dibawah ini.

Mengedit data barang

Mencetak data user Mencetak data barang

Melakukan pencarian pola

Gambar 3.1 Use Case Diagram

3.1.3. Class Diagram

(49)

3.1.4. Activity Diagram

3.1.4.1. Activity Diagram Sistem Kasir 3.1.4.1.1. Activity Diagram Login Kasir

Mulai

Verifikasi Usename dan Password

Memasukkan Username dan Password

Tampilan Form Login

Tampilan Halaman Form Kasir

Seles ai

( salah )

( benar )

(50)

3.1.4.1.2. Activity Diagram Mencatat Data Transaksi

Uang yang dibayarkan lebih besar atau sama dengan jumlah uang total transaksi? Mengubah jumlah

uang yang

Menambah, mengubah atau

menghapus data barang lagi? (ya)

Memasukkan nilai jumlah uang yang dibayarkan

(tidak)

Tampilan pesan jumlah uang yang dibayarkan kurang

(ya) (tidak)

(51)

3.1.4.1.3. Activity Diagram Logout Kasir

Gambar 3.5 Activity Diagram Logout Kasir

3.1.4.2. Activity Diagram Sistem Admin 3.1.4.2.1. Activity Diagram Login Admin

Mulai

(52)

3.1.4.2.2. Activity Diagram Menambah Data Barang

Mulai

Selesai

Memilih Menu Daftar Barang

Menekan tombol Tambah Barang

Menyimpan Data Barang Baru Memasukkan Data

Barang Baru

ID Barang Sudah Ada?

( Belum )

Tampilan Pesan ID

Barang Sudah Ada ( Ada ) Mengubah ID

Barang

Konfirmasi Menambah Data Barang

( ya )

Membatalkan Menambah Data Barang ( tidak )

Selesai

(53)

3.1.4.2.3. Activity Diagram Mengedit Data Barang

(54)

3.1.4.2.4. Activity Diagram Menghapus Data Barang

Gambar 3.9 Activity Diagram Menghapus Data Barang

3.1.4.2.5.Activity Diagram Mencetak Data Barang

Mulai

(55)

3.1.4.2.6.Activity Diagram Menambah Data User

Mulai

Memilih menu User

Memasukkan Data User

Menekan Tombol Tambah

Selesai

Konfirmas i Menambah Data User ID User Sudah Ada?

( tidak )

Menyimpan Data User Baru

( ya )

Tampilan Pesan ID User Sudah Ada ( ya )

Mengubah ID User

Membatalkan Menambah Data User ( tidak )

Selesai

(56)

3.1.4.2.7. Activity Diagram Mengedit Data User

Data Tidak Lengkap ( tidak ) Menambah

Kelengkapan Data

Selesai

(57)

3.1.4.2.8. Activity Diagram Menghapus Data User

Gambar 3.13 Activity Diagram Menghapus Data User

3.1.4.2.9. Activity Diagram Mencetak Data User

Mulai

(58)

3.1.4.2.10.Activity Diagram Melihat Data Transaksi

Mulai

Memilih Menu Transaksi

Memasukkan Periode Transaksi yang akan Diambil Datanya

Tampilan Data Transaksi

Seles ai

Menekan tombol OK

Gambar 3.15 Activity Diagram Melihat Data Transaksi

3.1.4.2.11.Activity Diagram Mencetak Data Transaksi

Mulai

Selesai

Memilih menu daftar transaksi

Memilih periode data transaksi

Menekan tombol cetak

Menekan tombol OK

Tampilan Data Transaksi

(59)

3.1.4.2.12.Activity Diagram Melakukan Pencarian Pola Asosiasi Barang

Mulai

Melakukan Proses Preprosesing dan Cleaning Data

Memilih Menu Perhitungan Apriori

Mengambil Data Transaksi yang akan Diproses

Memasukkan Nilai Support dan Confidence

Melakukan Proses Pencarian Pola Asosiasi Menggunakan Algoritma Apriori

Selesai Cek data transaksi Ada

Memperoleh Hasil Asosiasi Tampilan Pesan

Data Tidak Ada

Tidak

Menganalisa Hasil Asosiasi

(60)

3.1.4.2.13.Activity Diagram Mencetak Data Asosiasi Barang

Mulai

Selesai

Melakukan pencarian pola asosiasi barang Memperoleh hasil

asosiasi barang

Menekan tombol cetak

Gambar 3.18 Activity Diagram Mencetak Data Asosiasi Barang

3.1.4.2.14.Activity Diagram Logout Admin

Mulai

Selesai Menekan Tombol Logout

Keluar Dari Sistem

Konfirmasi Logout

Tampilan Halaman Sistem

Selesai ( ya )

( tidak )

(61)

3.1.5. Sequence Diagram

3.1.5.1. Sequence Diagram Sistem Kasir 3.1.5.1.1. Sequence Diagram Login Kasir

: halamanTransaksiKasir : Kasir : halamanLogin : kontrolLogin : dataKasir

masukkan username, password

username, password

cek username, password

status username, password

username, password benar

username, password salah

pesan username, password salah

tampilan hal aman sistem kasir

(62)

3.1.5.1.2. Sequence Diagram Mencatat Data Transaksi

: Kasir : halamanTransaksiKasir : kontrolDataBarang : dataBarang : kontrolDataTransaksi : dataTransaksi

masukkan data barang

data barang

cek data barang

data barang ada pesan data barang tidak ada

menekan tombol tambah

data barang

queri menambah data barang ke data transaksi

menekan tombol ubah

data barang

queri mengubah data barang di dalam data transaksi

menekan tombol hapus

data barang

queri menghapus data barang di dalam data t ransaksi data transaksi bertambah tampilan f orm transaksi kosong

(63)

3.1.5.1.3. Sequence Diagram Logout Kasir

: Kasir : halamanSistemKasir : kontrolLogout

menekan tombol logout

menutup si stem

mematikan koneksi

Gambar 3.22 Sequence Diagram Logout Kasir

3.1.5.2. Sequence Diagram Sistem Admin 3.1.5.2.1. Sequence Diagram Login Admin

: Admin : halamanLogin : kontrolLogin : dataAdmin : halamanSistemAdmin

masukkan username, password

username, password

cek username, password

status username, password

username, password benar

username, password salah

pesan username, password salah

tampil an hal am an sistem adm in

(64)

3.1.5.2.2. Sequence Diagram Menambah Data Barang

: Admin : halamanMenuBarang : kontrolDataBarang : dataBarang

masukkan data barang

data barang

queri menambah data barang

data barang sudah ada

pesan data barang sudah ada

data barang belum ada

data barang bert ambah

tampilan data barang pada tabel

(65)

3.1.5.2.3. Sequence Diagram Mengedit Data Barang

: Admin : halamanMenuBarang : kontrolDataBarang : dataBarang

masukkan id barang

id barang

queri data barang

data barang tidak ada

pesan data barang tidak ada

data barang ada

tampilan data barang pada f orm

masukkan perubahan data barang

data barang

queri mengubah data barang

data barang berubah

tampilan data barang pada tabel

(66)

3.1.5.2.4. Sequence Diagram Menghapus Data Barang

: Admin : halamanMenuBarang : kontrolDataBarang : dataBarang

masukkan id barang

id barang

queri data barang

data barang tidak ada

pesan data barang tidak ada

data barang ada

tampilan data barang pada f orm

menghapus data barang

data barang

queri menghapus data barang

data barang terhapus

tampilan data barang pada tabel

(67)

3.1.5.2.5. Sequence Diagram Mencetak Data Barang

: Admin : halamanMenuBarang : kontrolDataBarang : dataBarang

menekan tombol cet ak

data barang

queri data barang

prev iew data barang

mencetak data barang

(68)

3.1.5.2.6. Sequence Diagram Menambah Data User

: Admin : halamanMenuUser : kontrolDataUser : dataUser

masukkan data user

data user

queri menambah data user

data user sudah ada

data user belum ada

pesan data user sudah ada

tampilan data user pada tabel

data user bertambah

(69)

3.1.5.2.7. Sequence Diagram Mengedit Data User

: Admin : halamanMenuUser : kontrolDataUser : dataUser masukkan i d user

id user

queri data user

data user ti dak ada

pesan data user tidak ada

data user ada

tampilan data user pada f orm

masukkan perubahan data user

data user

queri mengubah data user

data user berubah

tampilan data user pada tabel

(70)

3.1.5.2.8. Sequence Diagram Menghapus Data User

: Admin : halamanMenuUser : kontrolDataUser : dataUser

masukkan id user

id user

queri data user

data user ti dak ada

pesan data user tidak ada

data user ada

tampilan data user pada f orm

menghapus data user

data user

queri menghapus data user

data user terhapus

tampilan data user pada tabel

(71)

3.1.5.2.9. Sequence Diagram Mencetak Data User

: dataUser : Admin : halam anMenuUser : kontrolDataUser

menekan tombol cetak

data user

queri data user

preview data user

mencetak data user

(72)

3.1.5.2.10.Sequence Diagram Melihat Data Transaksi

: Admin : halamanMenuTransaksi : kontrolDataTransaksi : dataTransaksi

masukkan periode transaksi

periode transaksi

queri data transaksi berdasarkan periode

data transaksi tidak ada

pesan data transaksi tidak ada

data transaksi ada

tampilan data transaksi

(73)

3.1.5.2.11.Sequence Diagram Mencetak Data Transaksi

: Admin : halamanMenuTransaksi : kontrolDataTransaksi : dataTransaksi

masukkan periode transaksi

periode transaksi

queri data transaksi berdasarkan periode

menekan tombol cetak

data transaksi

queri data transaksi untuk dicetak

prev iew data transaksi

mencetak data transaksi

(74)

: halamanPemil ihanDatabase

: Adm in : hal amanLangkahPencarian : kontrol DataT ransaksi : dataT ransaksi : kontrolDataCleani ng : dataCl eaning : hal amanCl eani ng : halamanPencarianAsosiasi : kontrol Pencari anAsosiasi : dataAsosi asiBarang menekan tombol lanjut

memilih sumber database

database data transaksi

queri data transaksi

data transaksi tampilan data transaksi

menekan tombol cleaning

data transaksi

q ueri data transaksi

data transaksi hasil cleaning

data cleaning

tampilan data cleaning pada tabel

menekan tombol lanjut

data c leaning

masukkan minsup dan minconf menekan tombol hitung

minsup dan minconf

queri pembentukan pola asosias i hasil pencarian asosiasi

data asosiasi

tampilan data asosiasi

(75)

3.1.5.2.13.Sequence Diagram Mencetak Data Asosiasi Barang

: dataAsosiasiBarang : Admin : halamanPencarianAsosiasi : kontrolDataAsosiasi

menekan tombol cetak

data asosiasi barang

queri data asosiasi barang

prev iew data asosiasi barang

mencetak data asosiasi barang

Gambar 3.35 Sequence Diagram Mencetak Data Asosiasi Barang

3.1.5.2.14.Sequence Diagram Logout Admin

: Admin : halamanSistemAdmin : kontrolLogout

menekan tombol logout

menutup sistem

mematikan koneksi

(76)

3.2. Desain Sistem 3.2.1. ER Diagram

Gambar 3.37 ER Diagram

3.2.2. Desain Database

Desain database berisi tabel-tabel yang digunakan didalam sistem,yaitu : 1. Tabel Barang

Tabel barang digunakan untuk menyimpan data barang yang dijual di swalayan tersebut. Struktur tabelnya adalah sebagai berikut :

Tabel 3.1 Tabel Barang

Nama Field Tipe Data Size Keterangan

id_barang VARCHAR 15 ID untuk barang

nama_barang VARCHAR 50 Nama barang

jumlah_stock DOUBLE Jumlah stock barang

harga_beli DOUBLE Harga beli barang

(77)

2. Tabel Transaksi

Tabel transaksi digunakan untuk menyimpan transaksi yang terjadi. Tabel 3.2 Tabel Transaksi

Nama Field Tipe Data Size Keterangan

id_nota VARCHAR 10 ID untuk transaksi

id_barang VARCHAR 15 ID untuk barang

nama_barang VARCHAR 50 Nama barang

jumlah DOUBLE Jumlah barang yang dibeli

harga_total DOUBLE Harga total transaksi

tanggal DATE Tanggal transaksi dilakukan

3. Tabel Cleaning

Tabel cleaning merupakan tabel untuk menyimpan data cleaning. Tabel 3.3 Tabel Cleaning

Nama Field Tipe Data Size Keterangan

id_nota INTEGER 6 ID untuk transaksi

id_barang VARCHAR 15 ID untuk barang

nama_barang VARCHAR 50 Nama Barang

4. Tabel Rule

Tabel rule digunakan untuk menyimpan asosiasi barang hasil pencarian pola asosiasi.

Tabel 3.4 Tabel Rule

Nama Field Tipe Data Size Keterangan

id_rule INTEGER 11 ID untuk rule yang terbentuk

subset INTEGER 11 Nilai jumlah kombinasi

support DOUBLE Nilai support Lk-1 itemset

confidence DOUBLE Nilai confidence Lk-1 itemset

nama_barang1 VARCHAR 200 Nama barang ke-1 asosiasi

(78)

5. Tabel Largeitem

Tabel ini digunakan untuk menyimpan data large itemset yang diperoleh selama proses pencarian asosiasi.

Tabel 3.5 Tabel Largeitem

Nama Field Tipe Data Size Keterangan

subset INTEGER 6 Nilai jumlah kombinasi

support DOUBLE 6 Nilai support Lk-1 itemset

nama_barang1 VARCHAR 200 Nama barang ke-1 kombinasi

nama_barang2 VARCHAR 200 Nama barang ke-2 kombinasi

nama_barangN VARCHAR 200 Nama barang ke-n kombinasi

6. Tabel Candidate

Tabel ini digunakan untuk menyimpan kandidat itemset yang diperoleh selama proses pencarian asosiasi.

Tabel 3.6 Tabel Candidate

Nama Field Tipe Data Size Keterangan

subset INTEGER 6 Nilai jumlah kombinasi

support DOUBLE 6 Nilai support Lk-1 itemset

nama_barang1 VARCHAR 200 Nama barang ke-1 kombinasi

nama_barang2 VARCHAR 200 Nama barang ke-2 kombinasi

(79)

7. Tabel Staff

Tabel staff digunakan untuk menyimpan data user. Tabel 3.7 Tabel Staff

Nama Field Tipe Data Size Keterangan

nik VARCHAR 10 ID untuk user

username VARCHAR 20 Nama login user

password VARCHAR 20 Password login user

jabatan VARCHAR 20 Jabatan kerja user (Admin/Kasir)

nama VARCHAR 30 Nama user

alamat VARCHAR 100 Alamat user

no_telepon VARCHAR 15 Nomor telepon user

8. Tabel Login

Tabel login digunakan untuk menyimpan data user yang melakukan login ke dalam sistem.

Tabel 3.8 Tabel Login

Nama Field Tipe Data Size Keterangan

id_login VARCHAR 10 ID login

nik VARCHAR 20 Nik user

tanggal DATE 20 Tanggal user melakukan login

(80)

3.2.3. Desain Antar Muka (User Interface Design) 3.2.3.1. Form Login

Gambar 3.38 Form Login

3.2.3.2. Form Utama Sistem Kasir

(81)

3.2.3.3. Form Transaksi

Gambar 3.40 Form Transaksi

3.2.3.4. Form Utama Sistem Admin

(82)

3.2.3.5. Form Daftar User

Gambar 3.42 Form Daftar User

3.2.3.6. Form Daftar Barang

(83)

3.2.3.7. Form Daftar Transaksi

Gambar 3.44 Form Daftar Transaksi

3.2.3.8. Form Utama Perhitungan Apriori

(84)

3.2.3.9. Form Perhitungan Apriori – Mengambil Data Transaksi

Gambar 3.46 Form Perhitungan Apriori – Mengambil Data Transaksi

(85)

Gambar 3.47 Form Perhitungan Apriori – Mengambil Data Transaksi

3.2.3.11.Form Perhitungan Apriori – Cleaning Data

(86)

3.2.3.12.Form Perhitungan Apriori – Pencarian Pola Asosiasi Barang

Gambar 3.49 Form Perhitungan Apriori – Pencarian Pola Asosiasi Barang

3.2.3.13.Form Perhitungan Apriori – Hasil Analisa

(87)

63

BAB IV

IMPLEMENTASI SISTEM

Setelah melakukan analisis dan perancangan sistem, maka tahap selanjutnya adalah mengimplementasikan hasil perancangan tersebut ke dalam sebuah sistem untuk pencarian pola asosiasi penjualan antar barang. Sistem ini dapat melakukan pencarian pola asosiasi penjualan antar barang yang berasal dari data transaksi didalam database sistem dan data transaksi di luar database sistem. Hasil dari pencarian tersebut berupa pengetahuan pola asosiasi penjualan antar barang yang disajikan dalam tabel, grafik dan file cetak.

5.1.Spesifikasi hardware dan software yang Digunakan

Sistem dibuat dengan menggunakan hardware dan software sebagai berikut :

5.3.2 Spesifikasi hardware

1. Prosesor Intel Pentium Dual Core 1,86GHz 2. Memori 1 GB

3. Hardisk 80 GB 5.3.2 Spesifikasi software

1. Sistem Operasi Microsoft Windows XP Profesional Service Pack 2 2. Kompiler IDE NetBeans 5.5

3. Basis data MySQL 5.0

(88)

5.1.Pembuatan Database

Pada bagian ini dilakukan pembuatan database baru pada MySQL yang berisi tabel-tabel untuk menyimpan data yang diperlukan di dalam sistem. Adapun pembuatan database tersebut terdiri dari langkah-langkah sebagai berikut :

1. Membuat database baru dengan nama apriori.

2. Dari database apriori selanjutnya dibuat tabel-tabel, baik melalui perintah create new table pada MySQL Query Browser, eksekusi perintah create table

dengan sintak SQL, atau create table pada SQLyog. Tabel-tabel yang dibuat pada sistem ini adalah :

1. Tabel staff 2. Tabel barang 3. Tabel transaksi 4. Tabel cleaning 5. Tabel candidate 6. Tabel largeitemset 7. Tabel rule

8. Tabel login

5.1.Koneksi Java dan MySQL

Untuk menangani komunikasi Java dengan MySQL digunakan JDBC (Java Databases Connectivity), sehingga sistem dapat mengakses data di dalam database. Adapun langkah-langkah untuk membuat koneksi antara Java dengan

(89)

1. Menambahkan driver (mysql-connector-java-5.0.4-bin.jar) pada library Java. 2. Membuat file untuk menangani koneksi yaitu file koneksi.java.

package tools; import java.sql.*;

public class koneksi { public Connection con;

Dalam file koneksi.java tersebut terdapat 2 buah fungsi, yaitu : 1. Fungsi cekDriver()

Fungsi cekDriver() digunakan untuk melakukan pengecekan terhadap driver mysql.

2. Fungsi cekKoneksi()

Fungsi cekKoneksi() digunakan untuk mendefinisikan letak dari database server. Isi dari definisi tersebut adalah letak alamat server, port mysql, nama

(90)

5.1.Pembuatan Antar Muka (User Interface)

Dalam pembuatan Antar Muka ini sistem dibagi menjadi 2 bagian, yaitu : 5.3.2 Form Login User

Gambar 4.1. Form Login User

Pada Gambar 4.1. Form Login User terdapat 2 field masukan, yaitu text area untuk memasukkan nama username dan password field untuk memasukkan

password. User mengetikkan username kemudian menekan tombol ENTER pada

keyboard, jika username tersebut ada di dalam daftar user, maka field ID Check akan menampilkan NIK dari username user tersebut. Jika username tidak terdaftar di dalam database user, maka field ID Check tidak akan menampilkan NIK dari username user tersebut. Kemudian user memasukkan password pada password

field, dan menekan tombol LOGIN.

(91)

password yang diketikkan user salah, maka akan muncul pesan bahwa login gagal dan user diminta untuk mengulangi login.

5.3.2 Form Utama Sistem Kasir

Gambar 4.2. Form Utama Sistem Kasir

(92)

5.3.2 Form Transaksi Kasir

Gambar 4.3. Form Transaksi Kasir

Gambar 4.3. diatas merupakan Form Transaksi Kasir, yaitu form yang digunakan untuk mencatat transaksi penjualan. Mekanisme pencatatan transaksi adalah user mengetikkan kode barang di dalam field Kode Barang dan menekan tombol ENTER pada keyboard. Jika kode barang tersebut terdapat didalam database barang, maka field Harga Satuan akan menampilkan harga satuan dari

(93)

dibeli konsumen tersebut ke dalam tabel transaksi, maka nilai pada field Rupiah (Rp) akan berubah dengan menambahkan nilai yang sudah ada dengan nilai harga baru dari jumlah harga satu barang yang di catat. Setelah semua barang yang dibeli konsumen selesai dicatat, user memasukkan jumlah uang yang dibayarkan konsumen pada field Tunai dan menekan tombol OK untuk memasukkan data transaksi tersebut ke dalam database.

User dapat merubah jumlah barang yang dibeli konsumen atau menghapus

(94)

5.3.2 Form Utama Sistem Admin

Gambar 4.4. Form Utama Sistem Admin

Gambar 4.4. merupakan tampilan Form Admin, yaitu form utama jika user yang melakukan login mempunyai jabatan sebagai admin. Pada form tersebut, user dapat memilih untuk masuk ke menu-menu sistem dengan menekan

masing-masing tombol. Sebagai contoh jika user akan masuk ke menu perhitungan apriori, maka user menekan tombol PERHITUNGAN APRIORI dan sistem akan

(95)

5.3.2 Form Daftar User

Gambar 4.5. Form Daftar User

(96)

5.3.2 Form Daftar Barang

Gambar 4.6. Form Daftar Barang

(97)

5.3.2 Form Daftar Transaksi

Gambar 4.7. Form Daftar Transaksi

(98)

5.3.2 Form Perhitungan Apriori – Langkah-langkah Perhitungan Apriori

Gambar 4.8. Form Perhitungan Apriori – Langkah-langkah Perhitungan Apriori

(99)

5.3.2 Form Perhitungan Apriori – Pemilihan Data Dari Database

Gambar 4.9. Form Perhitungan Apriori – Pemilihan Data Dari Database

(100)

5.3.2 Form Perhitungan Apriori – Pemilihan Data Dari Database Sistem dan Preprosesing/Cleaning Data

Jika user memilih untuk mengambil data transaksi dari database sistem, maka akan ditampilkan Form Perhitungan Apriori – Pemilihan Data Dari Database Sistem dan Preprosesing/Cleaning Data seperti Gambar 4.10 dibawah

ini.

Gambar 4.10. Form Perhitungan Apriori – Pemilihan Data Dari Database Sistem

dan Preprosesing/Cleaning Data

(101)

backup dan menekan tombol OK. Maka tabel data akan menampilkan isi dari

tabel yang diketikkan user tersebut dan secara bersamaan field preprosesing akan di aktifkan. Dalam hal ini user terlebih dahulu harus melakukan preprosesing terhadap data dari tabel backup sebelum melakukan proses cleaning. User mengetikkan nama kolom yang menyatakan id transaksi/nota/faktur dan nama barang pada field yang disediakan. Selanjutnya user dapat melanjutkan untuk melakukan proses cleaning dengan menekan tombol CLEANING.

Jika user memilih mengambil data dari tabel transaksi, sistem menyediakan 2 buah pilihan untuk pengambilan data. Data dapat diambil secara keseluruhan atau secara periodik berdasarkan periode waktu yang dipilih user pada kalender waktu yang disediakan. Selanjutnya user menekan tombol OK dan sistem akan menampilkan data ke dalam tabel data.

Gambar

Tabel 2.1 Data Transaksi AllElectronic
Gambar 3.24 Sequence Diagram Menambah Data Barang
Gambar 3.25 Sequence Diagram Mengedit Data Barang
Gambar 3.26 Sequence Diagram Menghapus Data Barang
+7

Referensi

Dokumen terkait

BUPATI INTAN JAYA CAP/TTD NATALIS TABUNI KEPALA DINAS KELOMPOK JABATAN FUNGSIONAL SEKRETARIAT SUB BAGIAN UMUM

Penelitian ini dilakukan untuk mengetahui pengaruh ekstrak Tanaman Tambalepen pada ekstrak batang etanol dan ekstrak daun etanol dengan konsentrasi KHM yang efektif untuk

Dari data pada Tabel 3, ekstrak intraseluler mampu menghambat pertumbuhan jamur uji Candida albicans dengan konsentrasi 1000 – 5000 ppm.. Semakin tinggi konsentrasi semakin

Primer adalah bagian pendek, untai tunggal dari DNA yang melekat dengan urutan komplementer pada templat DNA target.. Sepasang primer akan mengikat kedua sisi

Selain nilai-nilai budaya tersebut ada factor lain yang mendorong masyarakat Hindu Bali dapat berintergrasi dengan baik dengan masyarakat Tionghoa penganut Buddha, yaitu

Lansia penerima manfaat pada masa pandemi dalam kurun waktu Maret-Juli 2020 menerima paket sembako yang diberikan sebanyak satu kali dari Kementerian Sosial,

Didapatkan ukuran terbesar dari komponen makeup yang dibutuhkan juru rias, untuk panjang dan lebar didapatkan 8,4 cm dan tinggi 18 cm. pembulatan keatas dilakukan bertujuan untuk

Iverson (1996) juga berpendapat bahwa komitmen organisasional adalah prediktor terbaik dalam perubahan organisasi dibandingkan dengan kepuasan kerja dimana karyawan