Penerapan Data Mining Menggunakan Metode Association Rules pada Data Transaksi di CV Bukit Manikam

(1)

(2)

(3)

(4)

BIODATA

DATA PRIBADI

Nama : Rizal Syaiful Rakhman Tempat, Tgl Lahir : Bandung, 12 Mei 1993 Email : rizllsr@gmail.com

Dengan ini penulis menyatakan bahwa semua informasi yang diberikan dalam dokumen ini adalah benar

Bandung, 30 Agustus 2016 Penulis


(5)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

RIZAL SYAIFUL RAKHMAN

10111616

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

2016


(6)

iii

menyelesaikan penyusunan skripsi yang berjudul “PENERAPAN DATA

MINING MENGGUNAKAN METODE ASSOCIATION RULE PADA DATA

TRANSAKSI DI CV. BUKIT MANIKAM” ini dengan baik.

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

Penulis menyadari bahwa dalam proses penulisan skripsi ini banyak mengalami kendala, namun berkat bantuan, bimbingan, kerjasama dari berbagai pihak dan berkah dari Allah SWT sehingga kendala-kendala yang dihadapi dapat diatasi. Untuk itu penulis menyampaikan rasa hormat dan terima kasih sebesar-besarnya kepada :

1. Allah Subhannahu wa Ta’ala yang telah mencurahkan rahmat dan karunia -Nya hingga saat ini.

2. Bapak Alif Finandhita, S.Kom., M.T. selaku dosen pembimbing yang telah meluangkan waktu, pikiran, memberikan motivasi, arahan, dan saran serta ilmu pengetahuannya kepada penulis dalam penyusunan skripsi ini.

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

4. Ibu Gentisya Tri Mardiani, S.Kom., M.Kom. selaku dosen wali yang telah memberikan banyak masukan dan kritikannya terhadap penyusunan tugas akhir ini.

5. Ibu Ken Kinanti Purnamasari, S.Kom., M.T. selaku dosen penguji yang telah memberikan masukkan pada saat sidang skripsi.


(7)

iv

7. Ibu Iim Rohimah selaku supervisor Cv. Bukit Manikam yang telah bersedia diwawancara dan membimbing selama penelitian di perusahaan.

8. Teman - teman IF-14 angkatan 2011.

9. Teman – teman satu bimbingan Pak Alif Finandhita, S.Kom., M.T.

10. Sahabat yang tak terlupakan Uji Kliwon, Dados, Ami, Gejod, Babeh Blader, Uwa, Koco, A Wewen atas dukungan dan kebersamaanya selama ini, penulis tidak akan pernah melupakan masa-masa indah bersama kalian.

11. Teman – teman seperjuangan Keling, Temon, Lukmen, Eza, Egi, Wita, Sisil Kiki dan Mukti yang rela bertukar pendapat dan berjuang bersama hingga akhir dalam mentuntaskan tugas akhir ini.

12. Semua pihak yang tidak dapat penulis sebut satu persatu yang telah membantu dalam penyelesaian penulisan skripsi ini.

Keterbatasan kemampuan, pengetahuan dan pengalaman penulis dalam pembuatan skripsi ini masih jauh dari kesempurnaan. Untuk itu penulis akan selalu menerima segala masukan yang ditujukan untuk menyempurnakan skripsi ini. Akhir kata penulis mengharapkan semoga skripsi ini dapat bermanfaat serta menambah wawasan pengetahuan baik bagi penulis sendiri maupun bagi pembaca pada umumnya.

Bandung, 30 Juli 2016


(8)

v

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... xi

DAFTAR SIMBOL ... xiv

DAFTAR LAMPIRAN ... xvii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 2

1.3 Maksud Dan Tujuan ... 2

1.3.1 Maksud ... 2

1.3.2 Tujuan ... 2

1.4 Batasan Masalah ... 3

1.5 Metodologi Penelitian ... 3

1.5.1 Metode Pengumpulan Data... 3

1.5.2 Metode Penelitian Data mining ... 4

1.6 Sistematika Penulisan ... 6

BAB 2 TINJAUAN PUSTAKA ... 7

2.1 Profil Perusahaan ... 7

2.1.1 Sejarah Perusahaan ... 7

2.1.2 Struktur Organisasi ... 7

2.1.3 Visi dan Misi ... 9

2.2 Landasan Teori ... 10

2.2.1 Data ... 10

2.2.2 Basis Data ... 10


(9)

vi

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 27

3.1 Analisis Sistem ... 27

3.1.1 Analisis Masalah ... 27

3.1.2 Analisis Crisp-DM ... 27

3.1.3 Analisis Kebutuhan Non Fungsinal ... 75

3.1.4 Analisis Kebutuhan Fungsional ... 77

3.2 Perancangan Sistem ... 99

3.2.1 Perancangan Kelas ... 99

3.2.2 Perancangan Struktur Menu ... 103

3.2.3 Perancangan Antar Muka ... 104

3.2.4 Perancangan Pesan... 109

3.2.5 Jaringan Semantik ... 110

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 111

4.1 Implementasi Sistem ... 111

4.1.1 Perangkat keras yang digunakan ... 111

4.1.2 Perangkat lunak yang digunakan ... 112

4.1.3 Implementasi Basis Data ... 112

4.2 Pengujian Sistem ... 114

4.2.1 Skenario Pengujian ... 114

4.2.2 Pengujian Fungsional ... 115

4.2.3 Kesimpulan Pengujian Fungsional ... 118

4.2.4 Pengujian Hasil ... 119

4.2.5 Kesimpulan Pengujian Hasil... 122

BAB 5 KESIMPULAN DAN SARAN ... 123

5.1 Kesimpulan ... 123


(10)

(11)

124

[2] Sucahyo Y G, and Gopalan R P (2004) “CTPRO: A bottom-up Non Recursive Frequent Itemset Mining Algorithm using Compressed FP-Tree

data structure” Proceedings of the IEEE ICDM Workshop on Frequent

Itemset Mining Implementations. Brighton, 1-4 November, 2004. CEUR-WS.org 126.

[3] P. Chapman, J. Clinton, R. Keber, T. Khabaza, T. Reinartz, C. Shearer and R. Wirth, CRISP-DM 1.0, Step-by-step data mining guide, 2000.

[4] F. Buku Teks Komputer: “Basis Data”, 5th ed., Bandung: Informatika, 2004.

[5] W. Sistem Basis Data, “Analisis dan Pemodelan Data”, 1st ed., Yogyakarta: Graha Ilmu, 2003.

[6] Fathansyah, “Basis Data”, Bandung: Informatika 2012.

[7] B. Santoso, Data mining: “Teknik Pemanfaatan Data Untuk Keperluan Bisnis”, Yogyakarta: Graha Ilmu, 2007.

[8] J. Han and M. Kamber, Data mining: Concepts and Techniques, 2nd ed., San Francisco: Morgan Kaufmann Publishers, 2006.

[9] Perdana Adhitya, “Penerapan Metode Association Rule untuk Pembentukan Paket Penjualan Barang di PT. Celebes”, Bandung, 2013.

[10] D. T. Larose, Discovering Knowledge In Data: “An Introduction To Data mining”, New Jersey: Wiley Interscience, 2005.

[11] Rohmania Putri Nurlaili, Sari Widya Sihwi dan Meiyanto Eko Sulistyo, “Implementasi Algoritma CT-Pro untuk menemukan pola pada data siswa SMA”, Sesindo, 2014.

[12] Prabowo P. Widodo dan Herlawati. “Menggunakan UML”. Informatika Bandung. Bandung, 2011.


(12)

1 BAB 1

PENDAHULUAN

1.1 Latar Belakang Masalah

CV. Bukit Manikam yang berlokasi di Komp. Kopo Elok Jl.Cakrawala No. 4 Kabupaten Bandung merupakan perusahaan yang bergerak dibidang penjualan

parts dan aksesoris motor, berbagai barang yang dijual sudah tersedia untuk berbagai tipe motor yang beredar di Indonesia. CV. Bukit Manikam dalam memasarkan barangnya tidak menjual kepada perorangan tetapi hanya menjual kepada bengkel-bengkel tertentu. CV. Bukit Manikam melakukan strategi bisnis dengan mengadakan paket penjualan barang pada pertengahan dan akhir tahun, paket penjualan tersebut berupa barang yang dijual secara bersamaan dalam bentuk paket dengan harga yang lebih murah. Dengan adanya penjualan paket tersebut pelanggan mendapat keuntungan dari harganya yang lebih murah bila dibandingkan dengan membeli barang secara satuan.

Namun dari hasil wawancara langsung pada pihak di CV. Bukit Manikam, diketahui bahwa sering terjadinya penumpukan stok barang yang kurang laku terjual digudang. Pihak perusahaan mempaketkan berdasarkan barang yang sering terjual dan yang kurang laku terjual dilihat dari data transaksi, tetapi dengan menggunakan cara tersebut pelanggan kurang meminati untuk membeli paket tersebut. Dilihat dari data transaksi yang sangat banyak dan pola pembelian pelanggan yang berbeda-beda membuat pihak perusahaan sulit dalam menemukan dan menentukan pasangan barang yang dinginkan. Maka dari itu pihak perusahaan harus terlebih dahulu mengetahui pasangan barang yang sering dibeli oleh pelanggan secara bersamaan. Untuk menjalankan strategi bisnisnya, pihak CV. Bukit Manikam membutuhkan banyak informasi untuk membuat suatu keputusan bisnis yang dapat membantu meningkatkan dan mencapai target penjualan produknya.

Berdasarkan penjelasan di atas, untuk mendapatkan informasi tersebut secara lebih efisien perlu adanya suatu bantuan teknologi informasi, dalam hal ini dengan menggunakan metode data mining. Data mining memiliki banyak metode


(13)

salahsatunya association rule. Metode ini sering juga dinamakan dengan market basket analysis [1]. Association rule adalah metode untuk mencari hubungan antara barang dalam suatu kumpulan data yang ditentukan. Dengan mengetahui barang apa saja yang sering dibeli secara bersamaan, dapat dibuat sebuah dasar keputusan untuk menentukan barang apa saja yang efektif bila dibuat sebagai paket barang.

Dari masalah yang dihadapi, maka perlu dilakukan suatu Penerapan Data mining menggunakan metode Association Rules dengan algoritma CT-Pro agar dapat membantu CV. Bukit Manikam dalam memberikan informasi yang bisa digunakan untuk mengambil keputusan menentukan barang apa saja yang bisa dijadikan sebuah paket penjualan barang yang akan ditawarkan ke pelanggan.

1.2Perumusan Masalah

Berdasarkan penjelasan dari latar belakang disimpulkan perumusan masalah yaitu bagaimana Menerapkan Data mining Dengan Menggunakan Metode Association Rules Pada Data Transaksi Di CV. Bukit Manikam dalam menentukan barang apa saja yang akan dijual dalam satu paket di CV. Bukit Manikam.

1.3 Maksud Dan Tujuan

1.3.1 Maksud

Maksud dari penelitian ini adalah untuk membuat aplikasi Data mining menggunakan metode Association Rules dengan algoritma CT-Pro pada data transaksi penjualan untuk pembentukan paket barang parts dan di CV. Bukit Manikam.

1.3.2 Tujuan

Sedangkan tujuan dari penelitian ini adalah untuk membantu pihak di CV. Bukit Manikam dalam menentukan kombinasi barang apa saja yang bisa dijadikan paket penjualan barang yang akan ditawarkan ke pelanggan.


(14)

1.4 Batasan Masalah

1. Data yang dianalisa merupakan data transaksi penjualan di CV. Bukit Manikam periode Januari 2016.

2. Format data yang akan di-mining yaitu fromat data excel.xlsx. 3. Metode Data mining yang digunakan yaitu Asociation Rules.

4. Algoritma yang digunakan dalam Data mining yaitu algoritma CT-Pro[2]. 5. Analisis pembangunan aplikasi ini menggunkan pendekatan analisis OOP 6. Aplikasi yang dibuat berbasis dekstop

7. Informasi yang dihasilkan berupa penentuan paket barang parts dan aksesoris yang akan ditawarkan ke pelanggan.

1.5 Metodologi Penelitian

Metodologi penelitian yang digunakan adalah metode penelitian deskriptif, yaitu metode yang menggambarkan fakta-fakta dan informasi dalam situasi atau kejadian dimasa sekarang secara sistematis, faktual dan akurat. Metodologi penelitian ini terdiri dari 2 tahap, yaitu metode pengumpulan data dan metode penelitian data mining. Adapun metode pengumpulan data dan metode penelitian data mining sebagai berikut :

1.5.1 Metode Pengumpulan Data

Metode Metode pengumpulan data dapat diperoleh secara langsung dari objek penelitian dan referensi-referensi yang telah diperoleh. Cara-cara yang digunakan untuk mendapatkan data adalah sebagai berikut:

1. Studi Literatur

Studi Literatur merupakan metode pengumpulan data dengan cara

mengumpulkan jurnal, paper yang berkaitan dengan dengan topik yang sedang diteliti, seperti metode Acossiation Rules dan Algoritma CT-pro.


(15)

2. Studi Lapangan

Studi lapangan adalah metode pengumpulan data yang dilakukan dengan mengadakan penelitian ke CV. Bukit Manikam. Studi lapangan ini dilakukan dengan dua cara, yaitu:

a. Observasi

Observasi merupakan metode pengumpulan data dengan mengadakan penelitian dan peninjauan langsung ke CV. Bukit Manikam.

b. Wawancara

Wawancara merupakan metode pengumpulan data yang dilakukan dengan mengadakan tanya jawab secara langsung kepada supervisor di CV. Bukit Manikam.

1.5.2 Metode Penelitian Data mining

CRISP-DM (CRoss-Industry Standard Process for Data mining) merupakan suatu konsorsium perusahaan yang didirikan oleh Komisi Eropa pada tahun 1996 dan telah ditetapkan sebagai proses standar dalam data mining yang dapat diaplikasikan di berbagai sektor industri[3]. Penjelasan tentang siklus hidup pengembangan data mining yang telah ditetapkan dalam CRISP-DM diacu pada gambar 1.1.


(16)

Berikut ini adalah penjelasan mengenai enam tahap siklus hidup pengembangan data mining berdasarkan gambar 1.1

1. Business Understanding

Tujuan bisnis CV. Bukit Manikam yaitu memasarkan barang secara langsung untuk memenuhi permintaan pelanggan. Kebutuhan dari CV. Bukit Manikam adalah informasi mengenai pola pembelian pelanggan yang sering terjadi yang akan dijadikan dasar dalam penentuan pembuatan paket barang. 2. Data Understanding

Pada tahap pemahaman data ini dimulai dengan pengumpulan data yang diperlukan yaitu data transaksi CV. Bukit Manikam pada bulan Januari 2016. 3. Data Preparation

Pada tahap ini meliputi proses pengolahan data (yaitu data transaksi CV. Bukit Manikam bulan Januari 2016) untuk membangun dataset akhir yang akan diproses pada tahap pemodelan. Pada tahap ini mencakup pemilihan tabel, record, dan atribut-atribut data, termasuk proses pembersihan dan transformasi data.

4. Modeling

Untuk tahapan pemodelan ini akan digunakan teknik Data Mining dengan metode Association Rule menggunakan algoritma CT-Pro, yang nantinya akan menghasilkan aturan asosiatif atau pola kombinasi barang parts dan aksesoris motor berdasarkan hasil dari data transaksi. Sehingga dapat diketahui informasi barang apa saja yang dapat dijadikan kombinasi dalam paket barang parts dan aksesoris motor yang akan dijual.

5. Evaluation

Pada tahap ini dilakukan evaluasi terhadap keefektifan dan kualitas model yang digunakan, apakah dengan metode Association Rule dengan algoritma CT-Pro telah mencapai tujuan yang ditetapkan pada tahap awal.

6. Deployment

Pada tahap ini program yang telah dibuat akan dipresentasikan dalam bentuk laporan dan diimplementasikannya di CV. Bukit Manikam.


(17)

1.6 Sistematika Penulisan

Sistematika penulisan dalam tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut:

BAB 1 PENDAHULUAN Bab ini membahas tentang latar belakang permasalahan, perumusan

masalah, maksud dan tujuan, batasan masalah, metodologi penelitian dan sistematika penulisan.

BAB 2 TINJAUAN PUSTAKA

Bab ini membahas tentang profile umum CV. Bukit Manikam, struktur organisasi CV. Bukit Manikam, visi dan misi CV. Bukit Manikam, struktur organisasi dan deskripsi jabatan serta berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Bab ini menganalisis masalah dari data hasil penelitian, kemudian dilakukan pula proses perancangan sistem yang akan dibangun sesuai dengan analisa yang telah dilakukan.

BAB 4 IMPLEMENTASI SISTEM DAN PENGUJIAN

Bab ini membahas tentang hasil implementasi dari hasil analisis dan perancangan sistem yang telah dibuat disertai juga hasil pengujian sistem yang dilakukan di CV. Bukit Manikam untuk memperlihatkan sejauh mana system yang dibangun layak digunakan.

BAB 5 KESIMPULAN DAN SARAN

Bab ini berisi tentang kesimpulan dari hasil penelitian yang telah dilakukan dan saran-saran pengembangan lebih lanjut dari sistem yang dibangun.


(18)

7

2.1.1 Sejarah Perusahaan

Cv. Bukit Manikam yang berlokasi di Komp. Kopo Elok Jl.Cakrawala No. 4 Kab. Bandung merupakan perusahaan yang bergerak dibidang penjualan produk parts dan aksesoris motor, berbagai produk yang dijual sudah tersedia untuk berbagai tipe motor yang beredar di Indonesia. Cv. Bukit Manikam telah berdiri sejak bulan Juni tahun 2001. Hingga saat ini perusahaan telah memasarkan produknya ke seluruh wilayah Bandung, namun semakin berkembangnya perusahaan dengan dukungan armada distribusi yang memadai, gudang yang representatif dan SDM yang profesional, Cv. Bukit Manikam optimis untuk terus tumbuh dan berkembang untuk memasarkan ke wilayah Jawa Barat hingga menjadi yang terdepan.

2.1.2 Struktur Organisasi

Berikut ini adalah struktur organisasi Cv. Bukit Manikam yang dapat dilihat pada gambar 2.1

ADM SPV

Sales Kurir Gudang

Kepala Cabang


(19)

Deskripsi pekerjaan :

1. Kepala cabang memiliki tanggung jawab dan wewenang sebagai berikut; a. Monitor proses bisnis perusahaan cabang

b. Menyusun dan menetapkan tujuan perusahaan cabang c. Mengelola dan mengembangkan SDM

2. Administrasi memiliki tanggung jawab dan wewenang sebagai berikut; a. Menerima tagihan pembayaran yang sudah dilakukan oleh sales

b. Memeriksa absensi karyawan untuk penentuan besarnya gaji yang harus dibayar.

c. Membuat laporan keuangan dan perpajakan.

3. Supervisor memiliki tanggung jawab dan wewenang sebagai berikut; a. Mengatur kerjanya para staf bawahannya

b. Bertanggung jawab atas hasil kerja staf

c. Memberi motivasi kerja kepada staf bawahannya d. Memberikan breafing bersama staf

e. Membuat planing pekerjaan harian, mingguan, bulanan, dan tahunan. f. Menyelesaikan masalah sebisanya tanpa harus ditangani oleh atasan g. Penghubung antara staf dan kepala cabang

h. Membantu tugas staf bawahan

i. Menampung segala keluhan dari customer yang disampaikan melalui staf untuk disampaikan ke kepala cabang.

4. Sales memiliki tugas dan fungsi sebagai berikut;

a. Dapat mengarahkan sasaran mana dan kepada siapa produk akan ditawarkan dan dijual.

b. Dapat meyakinkan calon pelanggan atas manfaat dan kelebihan produk yang ditawarkan.

c. Dapat meyakinkan calon pelanggan yang diketahui ragu-ragu dalam mengambil keputusan atau menentukan pilihan.


(20)

5. Kurir memiliki tugas dan fungsi mengantarkan barang dengan penuh tanggung jawab dan tepat waktu.

6. Bagian gudang memiliki tugas dan fungsi sebagai berikut; a. Memeriksa barang – barang yang tersedia.

b. Menyiapkan barang - barang dengan benar dan cepat sesuai dengan Sales Order ( SO ) dan Surat Pengantar ( SP ) yang diterima.

c. Packing barang - barang yang akan dikirim dengan benar.

d. Membantu cek perlengkapan, jumlah, kondisi atas barang - barang yang akan dikirim.

e. Turut menjaga kebersihan, keselamatan kerja dan keutuhan barang di dalam gudang.

2.1.3 Visi dan Misi

Visi Cv. Bukit Manikam adalah menjadi perusahaan distribusi sparepart kendaraan roda dua yang bertumbuh kembang, handal dan tepercaya. Sedangkan misi dari Cv. Bukit Manikam adalah sebagai berikut;

1. Melaksanakan bisnis distribusi sparepart yang berorientasi kepada pelanggan, karyawan dan rekanan

2. Meningkatkan profesionalisme SDM

3. Menjadi perusahaan pembelajar yang terus tumbuh dan berkembang

4. Dengan dukungan Armada distribusi yang memadai, gudang yang representatif dan SDM yang profesional, kami optimis untuk terus tumbuh dan menjadi yang terdepan.


(21)

2.2 Landasan Teori

Landasan teori membahas mengenai materi atau teori apa saja yang digunakan sebagai acuan dalam membuat tugas akhir ini. Landasan teori yang di uraikan merupakan hasil studi literatur, baik dari buku, maupun situs internet. 2.2.1 Data

Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang direkam dalam bentuk angka, huruf, simbol teks, gambar, bunyi, atau kombinasinya [4]. Dalam pendekatan basis data tidak hanya berisi basis data itu sendiri tetapi juga termasuk definisi atau deskripsi dari data yang disimpan. Definisi data disimpan dalam sistem katalog, yang berisi informasi tentang struktur tiap berkas, tipe dan format penyimpanan tiap item data, dan berbagai konstrin dari data. Semua informasi yang disimpan dalam katalog ini biasa disebut meta-data [5].

2.2.2 Basis Data

Basis Data terdiri atas 2 kata, yaitu Basis dan Data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Sedangkan Data adalah representasi fakta dunia nyata mewakili suatu objek seperti manusia 9pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep,keadaan, dan sebagainya, yang diwujudkan dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya. Sebagai satu kesatuan istilah, Basis Data (Database) sendiri dapat didefenisikan dalam sejumlah sudut pandang seperti [6] : a. Himpunan kelompok data 9arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.

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

c. Kumpulan file/ tabel/ arsip yang saling berhubungan yang disimpan dalam media penyimpan elektronik.


(22)

2.2.2.1Operasi Dasar Basis Data

Di dalam sebuah disk, basis data dapat diciptakan dan dapat pula ditiadakan. Di dalam sebuah disk, kita dapat pula menempatkan beberapa (lebih dari satu) basisdata. Sementara dalam sebuah basis data, kita dapat menempatkan satu atau lebih file/tabel. Pada file/tabel inilah sesungguhnya data disimpan/ditempatkan. Setiap basis data umumnya dibuat untuk mewakili sebuah semesta data yang spesifik. Misalnya, ada basis data kepegawaian, basis data akademik, basis data inventori (Pergudangan), dan sebagainya. Sementara dalam basis data akademik, misalnya, kita dapat menempatkan file mahasiswa, file mata_kuliah, file dosen, file jadwal, file kehadiran, file nilai, dan seterusnya. Karena itu, operasi-operasi dasar yang dapat kita lakukan berkenaan dengan basis data dapat meliputi [6] :

1. Pembuatan basis data baru (create database), yang identik dengan pembuatanlemari arsip yang baru.

2. Penghapusan basis data (drop database), yang identik dengan perusakan lemari arsip (sekaligus beserta isinya, jika ada).

3. Pembuatan file/tabel dari suatu basis data (create table), yang identik dengan penambahan map arsip baru ke sebuah lemari sarsip yang telah ada.

4. Penghapusan file/tabel dari suatu basis data (drop table), yang identik dengan perusakan map arsip lama yang ada di sebuah lemari arsip.

5. Penambahan/pengisian data baru ke sebuah file/tabel di sebuah basis data (insert), yang identik dengan penambahan ke lemari arsip ke sebuah map arsip. 6. Pengambilan data dari sebuah file/tabel (retrieve/search) yang identik dengan

pencarian lembaran arsip dari sebuah map arsip.

7. Pengubahan data dari sebuah file/tabel (update), yang identik dengan perbaikan isi lembaran arsip yang ada di sebuah map arsip.

8. Penghapusan data dari sebuah file/tabel (delete), yang identik dengan penghapusan sebuah lembaran arsip yang ada di sebuah map arsip. Operasi yang berkenaan dengan pembuatan objek (basis data dan tabel) merupakan operasi awal yang hanya dilakukan sekali dan berlaku seterusnya. Sedang operasi-operasi yang berkaitan dengan isi tabel (data) merupakan operasi rutin


(23)

yang akan berlangsung berulang-ulang dan karena itu operasi-operasi inilah yang lebih tepat mewakili aktivitas pengelolaan (management) dan pengolahan (processing) data dalam basis data [6].

2.2.2.2Objektif Basis Data

Telah disebutkan di awal bahwa tujuan awal dan utama dalam pengelolaan data dalam sebuah basis data adalah agar kita dapat memperoleh/menemukan kembali data (yang kita cari) dengan mudah dan cepat. Di samping itu, pemanfaatan basis data untuk pengelolaan data, juga memiliki tujuan-tujuan lain [6].

Secara lebih lengkap, pemanfaatan basis data dilakukan untuk memenuhi sejumlah tujuan (objektif) seperti buku ini [6] :

1. Kecepatan dan Kemudahan (Speed) Pemanfaatan basis data memungkinkan kita untuk dapat menyimpan data atau melakukan perubahan/manipulasi terhadap data atau menampilkan kembali data tersebut dengan lebih cepat dan mudah, daripada jika kita menyimpan data secara manual (non elektronis) atau secara elektronis (tetapi tidak dalam bentuk penerapan basis data, misalnya dalam bentuk spread sheet atau dokumen teks biasa).

2. Efisiensi Ruang Penyimpanan (Space) Karena keterkaitan yang erat antar kelompok data dalam sebuah basis data, maka redundansi (pengulangan) data pasti akan selalu ada. Banyaknya redundansi ini tentu akan memperbesar ruang penyimpanan (baik di memori utama maupun memori sekunder) yang harus disediakan. Dengan basis data, efisiensi/optimalisasi penggunaan ruang penyimpanan dapat dilakukan, karena kita dapat melakukan penekanan jumlah redundansi data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-relasi (dalam bentuk file) antar kelompok data yang saling berhubungan.

3. Keakuratan (Accuracy) Pemanfaatan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint) tipe data, domain data, keunikan data, dan sebagainya, yang seara ketat dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekan ketidakakuratan pemasukan/penyimpanan data.


(24)

4. Ketersediaan (Availability) Pertumbuhan data (baik dari sisi jumlah maupun jenisnya) sejalan dengan waktu akan semakin membutuhkan ruang penyimpanan yang besar. Padahal tidak semua data itu selalu kita gunakan/butuhkan. Karena itu kita dapat memilah adanya data utama/master/referensi, data transaksi, data histori hingga data kadaluwarsa. Data yang sudah jarang atau bahkan tidak pernah lagi kita gunakan, dapat kita atur untuk dilepaskan dari sistem basis data yang sedang aktif (menjadi off-line) baik dengan cara penghapusan atau dengan memindahkannya ke media penyimpanan off-line (seperti removable disk atau tape). Di sisi lain, karena kepentingan pemakaian data, sebuah basis data dapat memiliki data yang disebar di banyak lokasi geografis. Data nasabah sebuah bank, misalnya, dipisah-pisah dan disimpan di lokasi yang sesuai dengan keberadaan nasabah. Dengan pemanfaatan teknologi jaringan komputer, data yang berada di suatu lokasi/cabang, dapat juga diakses (menjadi tersedia/available) bagi lokasi/cabang lain.

5. Kelengkapan (Completenes) Lengkap/tidaknya data yang kita kelola dalam sebuah basis data bersifat relatif (baik terhadap kebutuhan pemakai maupun terhadap waktu). Bila seorang pemakai sudah menganggap bahwa data yang dipelihara sudah lengkap, maka pemakai yang lain belum tentu berpendapat sama. Atau, yang sekarang dianggap sudah lengkap, belum tentu di masa yang akan datang juga demikian. Dalam sebuah basis data, di samping data kita juga harus menyimpan struktur (baik yang mendefinisikan objek-objek dalam basis data maupun definisi dari tiap objek, seperti struktur file/tabel atau indeks). Untuk mengakomodasi kebutuhan kelengkapan data yang semakin berkembang, maka kita tidak hanya dapat menambah record- record data, tetapi juga dapat melakukan perubahan struktur dalam basis data, baik dalam bentuk penambahan objek baru (tabel) atau dengan penambahan field-field baru pada suatu tabel.

6. Keamanan (Security) Memang ada sejumlah (aplikasi) pengelola basis data yang tidak menerapkan aspek keamanan dalam penggunaan basis data. Tetapi untuk sistem yang besar dan serius, aspek keamanan juga dapat diterapkan


(25)

dengan ketat. Dengan begitu kita dapat menentukan siapa-siapa (pemakai) yang boleh menggunakan basis data beserta objek-objek di dalamnya dan menentukan jenis-jenis operasi apa saja yang boleh dilakukannya.

7. Kebersamaan Pemakaian (Sharability) Pemakai basis data sering kali tidak terbatas pada satu pemakai saja, atau di satu lokasi saja atau oleh satu sistem/aplikasi saja. Data pegawai dalam basis data kepegawaian, misalnya, dapat digunakan oleh banyak pemakai, dari sejumlah departemen dalam perusahaan atau oleh banyak sistem (sistem penggajian, sistem akuntansi, sistem inventori, dan sebagainya). Basis data yang dikelola oleh sistem (aplikasi) yang mendukung lingkungan multiuser, akan dapat memenuhi kebutuhan ini, tetapi tetap dengan menjaga/menghindari (karena data yang sama diubah oleh banyak pemakai pada saat yang bersamaan) atau kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data).

2.2.3 DatabaseManagement System

Kumpulan atau gabungan database dengan perangkat lunak aplikasi yang berbasis database tersebut dinamakan Database Management System (DBMS). DBMS merupakan koleksi terpadu dari database dan program–program komputer (utilitas) yang digunakan untuk mengakses dan memelihara database. Program- program tersebut menyediakan berbagai fasilitas operasi untuk memasukan, melacak, dan memodifikasi data ke dalam database, mendefinisikan data baru, serta mengolah data menjadi informasi yang dibutuhkan (DBMS = Database + Program Utilitas) [4]. Perangkat lunak yang termasuk DBMS seperti dBase, FoxBase, Rbase, Microsoft-Access (sering juga disingkat Ms-Access) dan Borland Pradox (untuk DBMS yang sederhana) atau Borland-Interbase, MS-Sql, Sever, Oracle Database, IBM, DB2, Informix, Sybase, MySql, PostgreSQL (untuk DBMS yang lebih kompleks dan lengkap) [6].


(26)

2.2.4 Data Mining

Data mining, sering juga disebut knowledge discovery in database (KDD), adalah kegiatan yang meliputi pengumpulan, pemakaian data historis untuk menemukan keteraturan, pola atau hubungan dalam set data berukuran besar. Keluaran dari data mining ini bisa dipakai untuk memperbaiki pengambilan keputusan di masa depan. Sehingga istilah pattern recognition sekarang jarang digunakan karena ia termasuk bagian dari data mining [7]. Data mining adalah suatu istilah yang digunakan untuk menguraikan penemuan pengetahuan di dalam database. Data mining adalah proses yang menggunakan teknik statistik, matematika, kecerdasan buatan, dan machine learning untuk mengekstrasi dan mengidentifikasi informasi yang bermanfaat dan pengetahuan yang terkait dari berbagai database besar.

2.2.4.1Tahapan-Tahapan Data Mining

CRISP-DM (CRoss-Industry Standard Process for Data mining) merupakan suatu konsorsium perusahaan yang didirikan oleh Komisi Eropa pada tahun 1996 dan telah ditetapkan sebagai proses standar dalam data mining yang dapat diaplikasikan di berbagai sektor industri [3]. Penjelasan tentang siklus hidup pengembangan data mining yang telah ditetapkan dalam CRISP-DM diacu pada gambar 2.2.


(27)

Berikut ini adalah penjelasan mengenai enam tahap siklus hidup pengembangan data mining berdasarkan gambar di atas :

1. Business understanding

a. Penentuan tujuan objek dan kebutuhan secara detail dalam lingkup bisnis atau unit penelitian secara keseluruhan.

b. Menilai situasi merupakan tahapan untuk menjelaskan sumber daya yang ada.

c. Menerjemahkan tujuan dan batasan menjadi formula dari permasalahan data mining.

2. Data understanding a. Mengumpulkan data.

b. Mendeskripsikan data untuk mengenali lebih lanjut data. c. Mengidentifikasi masalah kualitas data.

3. Data preparation

a. Siapkan dari data awal, kumpulan data yang akan digunakan untuk keseluruhan fase berikutnya. Fase ini merupakan pekerjaan berat yang perlu dilaksanakan secara intensif.

b. Pemilihan atribut-atribut data, termasuk proses pembersihan data c. Lakukan perubahan pada beberapa variabel jika dibutuhkan. d. Siapkan data sehingga siap untuk tahap pemodelan.

4. Modelling

a. Pemilihan dan penerapan teknik pemodelan yang sesuai.

b. Perlu diperhatikan bahwa beberapa teknik mungkin untuk digunakan pada permasalahan data mining yang sama.

c. Jika diperlukan, proses dapat kembali ke fase pengolahan data untuk menjadikan data ke dalam bentuk yang sesuai dengan spesifikasi kebutuhan teknik data mining tertentu.


(28)

5. Evaluation

a. Mengevaluasi satu atau lebih model yang digunakan dalam fase pemodelan untuk mendapatkan kualitas dan efektivitas sebelum disebarkan untuk digunakan.

b. Menetapkan apakah terdapat model yang memenuhi tujuan pada fase awal.

c. Menentukan apakah terdapat permasalahan penting dari bisnis atau penelitian yang tidak tertangani dengan baik.

d. Mengambil keputusan berkaitan dengan penggunaan hasil dari data mining.

6. Deployment

a. Menggunakan model yang dihasilkan. Terbentuknya model tidak menandakan telah terselesaikannya penelitian.

b. Contoh sederhana penyebaran : pembuatan laporan. 2.2.4.2Metode Data mining

Secara garis besar, Han dalam bukunya menjelaskan bahwa metode data mining dapat dilihat dari dua sudut pandang pendekatan yang berbeda, yaitu pendekatan deskriptif dan pendekatan prediktif [8]. Pendekatan deskriptif adalah pendekatan dengan cara mendeskripsikan data inputan. Metode yang termasuk ke dalam pendekatan ini adalah :

1. Metode deskripsi konsep/kelas, yaitu data dapat diasosiasikan dengan kelas atau konsep. Ada tiga macam pendeskripsian yaitu (1) karakteristik data, dengan membuat summary karakter umum atau fitur data suatu kelas target, (2) diskriminasi data, dengan membandingkan class target dengan satu atau sekelompok kelas pembanding, (3) gabungkan antara karakterisasi dan diskriminasi.

2. Metode association rule, yaitu menemukan aturan asosiatif atau pola kombinasi dari suatu item yang sering terjadi dalam sebuah data.

Pendekatan kedua adalah pendekatan prediktif, yaitu pendekatan yang dapat digunakan untuk memprediksi, dengan hasil berupa kelas atau cluster. Metode yang termasuk dalam pendekatan ini adalah :


(29)

1. Metode klasifikasi dan prediksi, yaitu metode analisis data yang digunakan untuk membentuk model yang mendeskripsikan kelas data yang penting, atau model yang memprediksikan trend data. Klasifikasi digunakan untuk memprediksi kelas data yang bersifat kategorial, sedangkan prediksi untuk memodelkan fungsi yang mempunyai nilai kontinu.

2. Metode clustering, mengelompokkan data untuk membentuk kelas-kelas baru atau sering disebut cluster. Metode clustering bertujuan untuk memaksimalkan persamaan dalam satu cluster dan meminimalkan perbedaan antar cluster.

2.2.5 Metode Association Rule

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

Association Rule adalah bentuk jika “kejadian sebelumnya” kemudian “konsekuensinya” (If antecedent, then consequent), yang diikuti dengan perhitungan aturan support dan confidence . Bentuk umum dari association rule adalah Antecedent -> Consequent. Bila kita ambil contoh dalam sebuah transaksi pembelian barang di sebuah minimarket didapat bentuk association rule roti -> selai. Yang artinya bahwa pelanggan yang membeli roti ada kemungkinan pelanggan tersebut juga akan membeli selai, dimana tidak ada batasan dalam jumlah item-item pada bagian antecedent ataupun consequent dalam sebuah rule [9].


(30)

Association rule memiliki dua tahap pengerjaan, yaitu [9]: 1. Mencari frequent itemset.

2. Mendefinisikan Condition dan Result (untuk conditional association rule). Dalam menentukan suatu association rule, terdapat suatu interestingness measure (ukuran kepercayaan) yang didapat dari hasil pengolahan data dengan perhitungan tertentu. Umumnya ada dua ukuran, yaitu :

1. Support : suatu ukuran yang menunjukkan seberapa besar tingkat dominasi suatu item/itemset dari keseluruhan transaksi. Ukuran ini menentukan apakah suatu item/itemset layak untuk dicari confidence -nya (misal, dari keseluruhan transaksi yang ada, seberapa besar tingkat dominasi suatu item yang menunjukkan bahwa item A dan item B dibeli bersamaan).

2. Confidence : suatu ukuran yang menunjukkan hubungan antara 2 item secara conditional (misal, menghitung kemungkinan seberapa sering item B dibeli oleh pelanggan jika pelanggan tersebut membeli sebuah item A). Kedua ukuran ini nantinya berguna dalam menentukan kekuatan suatu pola dengan membandingkan pola tersebut dengan nilai minimum kedua parameter tersebut yang ditentukan oleh pengguna. Bila suatu pola memenuhi kedua nilai minimum parameter yang sudah ditentukan sebelumnya, maka pola tersebut dapat disebut sebagai interesting rule atau strong rule [9].

2.2.5.1Metodologi Dasar Analisis Asosiasi

Metodologi dasar Association Rule terbagi menjadi dua tahap, yaitu : a. Analisa pola frekuensi tinggi

Tahap ini mencari pola item yang memenuhi syarat minimum dari nilai support dalam database. Menurut Larose, kita bebas menentukan nilai minimum support (minsup) dan minimum confidence (mincof) sesuai kebutuhan [10]. Sebagai contoh, bila ingin menemukan data-data yang memiliki hubungan asosiasi yang kuat, minsup dan mincof-nya bisa diberi nilai yang tinggi. Sebaliknya, bila ingin melihat banyaknya variasi data tanpa terlalu mempedulikan kuat atau tidaknya hubungan asosiasi antara item-nya, nilai minsup dan mincofnya dapat diisi rendah [9].


(31)

Untuk rekomendasi dalam menentukan minimum support dapat diambil dari perhitungan rata-rata 1 jenis produk pada data yang digunakan, seperti rumus berikut :

(Persamaan 2-1)

Nilai support sebuah item diperoleh dengan rumus :

(Persamaan 2-2)

Persamaan 2 menjelaskan bahwa nilai support didapat dengan cara membagi jumlah transaksi yang mengandung item A (satu item) dengan jumlah total seluruh transaksi. Sedangkan untuk mencari nilai support dari 2 item menggunakan rumus berikut :

(Persamaan 2-3)

Persamaan 3 menjelaskan bahwa nilai support 2-itemsets didapat dengan cara membagi jumlah transaksi yang mengandung item A dan item B (item pertama bersamaan dengan item yang lain) dengan jumlah total seluruh transaksi.

b. Pembentukan Aturan Asosiatif

Setelah semua pola frekuensi tinggi ditemukan, kemudian mencari aturan asosiatif yang memenuhi syarat minimum untuk confidence dengan menghitung confidence aturan asosiatif A -> B dari support pola frekuensi tinggi A dan B, menggunakan rumus :


(32)

|

(Persamaan 2-4)

Persamaan 4 menjelaskan bahwa nilai confidence diperoleh dengan cara membagi jumlah transaksi yang mengandung item A dan item B (item pertama bersamaan dengan item yang lain) dengan jumlah transaksi yang mengandung item A (item Pertama atau item yang ada di sebelah kiri).

2.2.6 Algoritma CT-Pro

Algoritma ini merupakan pengembangan dari algoritma FP-GROWTH dengan melakukan modifikasi pada tree yang digunakan. Algoritma ini menggunakan struktur Compressed FP-Tree (CFP-Tree ) di mana informasi dari sebuah FP-Tree diringkas dengan struktur yang lebih kecil atau ringan, sehingga baik pembentukan tree maupun frequent itemset mining yang dilakukan menjadi lebih cepat. [11].

Langkah-langkah algoritma CT-PRO adalah sebagai berikut [2]:

1. Menemukan item-item yang frequent

a. Data yang telah dikumpulkan, diseleksi dan pilih data yang relevan (data yang lengkap).

b. Data yang ada, kemudian dilakukan transformasi data.

c. Kemudian masing-masing data diseleksi berdasarkan minimum support yang telah ditentukan, kemudian didapat Item Frequent Table.

d. Masing-masing item dihitung frekuensi kemunculannya sehingga dihasilkan global item table.

e. Data kemudian di-mapping berdasarkan index pada global item table

2. Membuat CFP-Tree

Setelah ditemukan item-item yang frequent kemudian dilakukan pembangunan CFP-Tree . Frequent item yang ada diurutkan sesuai global item dari nilai yang terbesar ke terkecil. CFP-Tree adalah tree dengan properti sebagai berikut :


(33)

a. CFP-Tree terdiri dari tree yang memiliki root yang mewakili index dari item dengan tingkat kemunculan tertinggi dan kumpulan subtree sebagai anak dari root.

b. Jika I = {i1,i2, …, ik} adalah kumpulan dari frequent item dalam transaksi, item dalam transaksi akan dimasukkan ke dalam CFP-Tree dimulai dari root subtree yang merupakan i1 dalam header table.

c. Root dari CFP-Tree merupakan level-0 dari tree .

d. Setiap node dalam CFP-Tree memiliki empat field utama yakni item-id, parentid, count yang merupakan jumlah item pada node tersebut, dan level yang menunjukkan struktur data tree pada node tersebut dimulai dari item yang terdapat pada header table dengan level yang terdapat pada CFP- Tree.

Gambar 2. 3 Struktur CFP-Tree

3. Melakukan penggalian frequent patterns

Setelah tahap pembangunan CFP-Tree dari sekumpulan data transaksi, akan diterapkan algoritma CT-Pro untuk mencari frequent itemset yang signifikan. Berikut adalah langkah-langkah dari algoritma CT-Pro :

a. Lakukan pencarian node yang berkaitan dengan item dimana pencarian dimulai dari global item dengan support count terkecil sampai global item dengan support count terbesar karena CT-Pro bekerja Bottom-Up pada Global CFP-Tree .


(34)

b. Dari semua node yang ditemukan untuk setiap item inilah yang disebut dengan Local Frequent item dan digunakan untuk membuat local item tabel yang pembuatannya dilakukan berdasarkan jumalah minimun support yang telah ditentukan.

c. Selanjutnya dibuat Local CFP-Tree berdasarkan local Item tabel yang terbentuk.

d. Dari Local CFP-Tree yang ada, kita dapat membuat frequent patternnya. Dari hasil frequent pattern ini akan dilakukan mining dengan rumus confidence .

2.2.7 Unified Modelling Language (UML)

UML singkatan dari Unified Modeling Languages yang berarti bahasa pemodelan standar. Ketika kita membuat model menggunakan konsep UML ada aturan-aturan yang harus diikuti. Bagaimana elemen pada model-model yang kita buat berhubungan satu dengan yang lainnya harus mengikuti standar yang ada. UML bukan hanya sekedar diagram tetapi juga menceritakan konteksnya[12].

Berikut adalah beberapa model yang digunakan dalam perancangan Data mining pemaketan produk di Cv. Bukit Manikam untuk menggambarkan sistem dalam UML:

1. Diagram Use case 2. Diagram Activity 3. Diagram Sequence 4. Diagram Class

2.2.7.1Use case Diagram

Diagram Use case menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem. Use case menggambarkan fungsi tertentu dalam suatu sistem berupa komponen, kejadian atau kelas. Komponen Pembentuk Use case Diagram adalah sebagai berikut :


(35)

1. Actor

Pada dasarnya Actor bukanlah bagian dari use case diagram, namun untuk dapat terciptanya suatu use case diagram diperlukan beberapa Actor. Actor tersebut mempresentasikan seseorang atau sesuatu (seperti perangkat, sistem lain) yang berinteraksi dengan sistem. Sebuah Actor mungkin hanya memberikan informasi inputan pada sistem, hanya menerima informasi dari sistem atau keduanya menerima, dan memberi informasi pada sistem. Actor hanya berinteraksi dengan use case , tetapi tidak memiliki kontrol atas use case . Actor digambarkan dengan stick man. Actor dapat digambarkan secara secara umum atau spesifik, di mana untuk membedakannya kita dapat menggunakan relationship.

2. Use case

Use case adalah gambaran fungsionalitas dari suatu sistem, sehingga customer atau pengguna sistem paham dan mengerti mengenai kegunaan sistem yang akan dibangun.

Catatan : Use case diagram adalah penggambaran sistem dari sudut pandang pengguna sistem tersebut (user), sehingga pembuatan use case lebih dititikberatkan pada fungsionalitas yang ada pada sistem, bukan berdasarkan alur atau urutan kejadian.

Cara menentukan Use case dalam suatu sistem: a. Pola perilaku perangkat lunak aplikasi. b. Gambaran tugas dari sebuah Actor.

c. Sistem atau “benda” yang memberikan sesuatu yang bernilai kepada Actor.

d. Apa yang dikerjakan oleh suatu perangkat lunak (bukan bagaimana cara mengerjakannya).

Ada beberapa relasi yang terdapat pada use case diagram: a. Association, menghubungkan link antar element.

b. Generalization, disebut juga inheritance (pewarisan), sebuah elemen dapat merupakan spesialisasi dari elemen lainnya.


(36)

c. Dependency, sebuah elemen bergantung dalam beberapa cara ke element lainnya.

d. Aggregation, bentuk association di mana sebuah elemen berisi elemen lainnya.

Tipe relasi/ stereotype yang mungkin terjadi pada use case diagram: a. <<include>> , yaitu kelakuan yang harus terpenuhi agar sebuah event

dapat terjadi, dimana pada kondisi ini sebuah use case adalah bagian dari use case lainnya.

b. <<extends>>, kelakuan yang hanya berjalan di bawah kondisi tertentu seperti menggerakkan alarm.

c. <<communicates>>, mungkin ditambahkan untuk asosiasi yang menunjukkan asosiasinya adalah communicates association. Ini merupakan pilihan selama asosiasi hanya tipe relationship yang dibolehkan antara Actor dan use case .

2.2.7.2Activity Diagram

Activity diagram memiliki pengertian yaitu lebih fokus kepada menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses. Dipakai pada business modeling untuk memperlihatkan urutan aktifitas proses bisnis. Memiliki struktur diagram yang mirip flowchart atau data flow diagram pada perancangan terstruktur. Memiliki pula manfaat yaitu apabila kita membuat diagram ini terlebih dahulu dalam memodelkan sebuah proses untuk membantu memahami proses secara keseluruhan. Dan activity dibuat berdasarkan sebuah atau beberapa use case pada use case diagram.

2.2.7.3Sequence Diagram

Diagram sequence menggambarkan interaksi objek pada use case dengan mendeksripsikan waktu hidup objek dan pesan yang dikirimkan dan di terima antar objek. Oleh karena itu untuk menggambarkan diagram sequence maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode sekuence juga di butuhkan untuk melihat skenario yang ada pada use case. Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah- langkah yang dilakukan sebagai respons dari sebuah event


(37)

untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. 2.2.7.4Class Diagram

Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan di buat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.

a. Atribut merupakan variabel-variabel yang di miliki oleh suatu kelas

b. Oprasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas Diagram kelas dibuat agar pembuat program atau programer membuat kelas-kelas sesuai rancangan di dalam diagram kelas agar antara dokumentasi perancangan dan perangkat lunak sinkron. banyak berbagai kasus, perancangan kelas yang dibuat tidak sesuai dengan kelas-kelas yang dibuat pada perangkat lunak, sehingga tidaklah ada gunanya lagi sebuah perancangan karena apa yang dirancang dan hasil jadinya tidak sesuai .


(38)

27

Analisis sistem (System Analysis) dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya. Dalam analisa sistem ini meluputi beberapa bagian, yaitu:

1. Analisis Masalah 2. Analisis Crisp-DM

3. Analisis Kebutuhan Non Fungsional 4. Analisis Kebutuhan Fungsional 3.1.1 Analisis Masalah

Analisis masalah yang dilakukan adalah mengidentifikasikan permasalahan atau kendala di dalam penelitian yang dilakukan. Masalah dapat didefinisikan sebagai suatu pernyataan yang diinginkan untuk dipecahkan. Perlu ada analisis masalah melalui rumusan masalah yang sudah ditentukan sebelumnya. Berdasarkan hasil pengamatan, diketahui bahwa masalahnya adalah sebagai berikut :

Cv. Bukit Manikam mengalami kendala dalam penentuan paket penjualan yang akan ditawarkan ke pelanggan. Kendala yang terjadi dikarenakan paket yang ditawarkan kurang laku terjual, maka dari permasalahan tersebut Cv. Bukit Manikam membutuhkan informasi penentuan paket barang yang tepat. Berdasarkan penjelasan di atas untuk penyelesaian masalah yang terjadi, perlu adanya penerapan data mining.

3.1.2 Analisis Crisp-DM

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


(39)

3.1.2.1Business Understanding

Business Understanding merupakan tahapan pertama yang dilakukan dalam kerangka kerja CRISP-DM. Dalam tahapan bisnis ini terbagi menjadi dua bagian, yaitu:

1. Identifikasi Tujuan Bisnis

Tujuan bisnis Cv. Bukit Manikam yaitu menjual paket barang untuk mencapai target penjualan paket yang sudah ditentukan.

2. Menilai Situasi Perusahaan

Menilai situasi merupakan tahapan untuk menjelaskan sumber daya, asumsi dan batasan yang terdapat pada Cv. Bukit Manikam.

a. Sumber daya

1. Sumber daya data

Sumber daya data yang terdapat pada Cv. Bukit Manikam meliputi data nota transaksi penjualan dan katalog.

2. Sumber daya perangkat keras

Sumber daya perangkat keras yang terdapat pada Cv. Bukit Manikam meliputi perangkat komputer yang digunakan oleh kepala cabang, supervisor, dan bagian administrasi.

3. Sumber daya personil

Sumber daya personil yang terdapat pada Cv. Bukit Manikam meliputi kepala cabang, supervisor, marketing, sales, kurir dan bagian gudang. b. Asumsi

1. Data yang digunakan dalam penelitian ini adalah data transaksi berupa

file excel periode januari 2016.

2. Hasil dari penelitian ini berupa rules yang difilter sebagai acuan untuk pembentukan paket barang.

c. Batasan

Batasan paket dalam penelitian ini adalah dalam satu paket hanya terdapat satu brand saja, sebagai contoh yamaha dengan yamaha.


(40)

3. Penentuan Sasaran Data mining

Penentuan sasaran penerapan data mining adalah mengetahui pasangan barang untuk dijadikan dasar keputusan Cv. Bukit Manikam dalam menentukan paket penjualan.

3.1.2.2Data Understanding

Tahapan pemahaman data merupakan tahapan kedua yang dilakukan dalam kerangka kerja CRISP-DM. Dalam tahapan pemahaman data ini terbagi menjadi beberapa bagian, yaitu:

1. Mengumpulkan data awal

Tahap pertama dalam pemahaman data dimulai dengan pengumpulan data, sumber data yang didapat dalam penelitian ini adalah berupa data nota transaksi penjualan di Cv. Bukit Manikam, yang dapat dilihat pada gambar 3.1


(41)

Lalu data dari nota penjualan dipindahkan ke dalam file Microsoft Excel

(.xlsx) seperti contoh pada tabel 3.1

Tabel 3. 1 Contoh Data Transaksi Yang Dipakai

Nomor Faktur Tanggal Nama Barang Qty Harga Diskon Total Harga

B16010100001/ 01/01/2016 Seal Valve Steam Beat Hi-Q 40 Rp 7.400 20 Rp 296.000 B16010100001/ 01/01/2016 Ts Gasket Kit Vixion Hi-Q 20 Rp 30.000 20 Rp 600.000 B16010100001/ 01/01/2016 Pac.R.Crank Cover Vega Z R 20 Rp 6.000 20 Rp 120.000

B16010100001/ 01/01/2016 Pac.Muffler Mio 10 Rp 2.100 20 Rp 21.000

B16010100001/ 01/01/2016 Seal Valve Steam Jupiter Mx Hi-Q 30 Rp 6.200 20 Rp 186.000 B16010100002/ 01/01/2016 Ts Gasket Kit Mio / Mio Soul 15 Rp 26.000 20 Rp 390.000 B16010100002/ 01/01/2016 Pac.R.Crank Cover Vega Z R 5 Rp 6.000 20 Rp 30.000

B16010100002/ 01/01/2016 Ts Gasket Kit Vixion Hi-Q 5 Rp 30.000 20 Rp 150.000

B16010100002/ 01/01/2016 Seal Valve Steam Jupiter Mx Hi-Q 60 Rp 6.200 20 Rp 372.000 B16010100003/ 01/01/2016 Seal Valve Steam Jupiter Mx Hi-Q 5 Rp 6.200 20 Rp 31.000 B16010100003/ 01/01/2016 Visor Beat Injection (Abu-Abu) 5 Rp 28.000 20 Rp 140.000

B16010100003/ 01/01/2016 Pac.Muffler Mio 5 Rp 2.100 20 Rp 10.500

B16010100003/ 01/01/2016 Ts Gasket Kit Mio / Mio Soul 10 Rp 26.000 20 Rp 260.000 B16010100003/ 01/01/2016 Pac.R.Crank Cover Vega Z R 40 Rp 6.000 20 Rp 240.000

Untuk pemaketan sendiri, dibutuhkan kode barang dan brand yang akan dibutuhkan dalam tahap selanjutnya. Untuk kode barang dan brand didapat dari katalog, contoh dari katalog barang dapat dilihat pada gambar 3.2


(42)

Selanjutnya, barcode dan brand dimasukan dan disatukan ke dalam file

data transaksi yang telah tersedia, berikut hasil setelah barcode dan brand yang telah dimasukkan dapat dilihat pada tabel 3.2

Tabel 3. 2 Data Transaksi

Nomor Faktur Tanggal Barcode Brand Nama Barang Qty Harga Diskon Total Harga

B16010100001/ 01/01/2016 991204500461 Honda

Seal Valve Steam Beat

Hi-Q 40 Rp 7.400 20 Rp 296.000

B16010100001/ 01/01/2016 981313000980 Yamaha

Ts Gasket Kit Vixion

Hi-Q 20 Rp 30.000 20 Rp 600.000

B16010100001/ 01/01/2016 989337900010 Yamaha

Pac.R.Crank Cover

Vega Z R 20 Rp 6.000 20 Rp 120.000

B16010100001/ 01/01/2016 989307500160 Yamaha Pac.Muffler Mio 10 Rp 2.100 20 Rp 21.000

B16010100001/ 01/01/2016 991307700461 Yamaha

Seal Valve Steam

Jupiter Mx Hi-Q 30 Rp 6.200 20 Rp 186.000

B16010100002/ 01/01/2016 880100102212 Yamaha

Ts Gasket Kit Mio /

Mio Soul 15 Rp 26.000 20 Rp 390.000

B16010100002/ 01/01/2016 989337900010 Yamaha

Pac.R.Crank Cover

Vega Z R 5 Rp 6.000 20 Rp 30.000

B16010100002/ 01/01/2016 981313000980 Yamaha

Ts Gasket Kit Vixion

Hi-Q 5 Rp 30.000 20 Rp 150.000

B16010100002/ 01/01/2016 991307700461 Yamaha

Seal Valve Steam

Jupiter Mx Hi-Q 60 Rp 6.200 20 Rp 372.000

B16010100003/ 01/01/2016 991307700461 Yamaha

Seal Valve Steam

Jupiter Mx Hi-Q 5 Rp 6.200 20 Rp 31.000

B16010100003/ 01/01/2016 880203101146 Honda

Visor Beat Injection

(Abu-Abu) 5 Rp 28.000 20 Rp 140.000

B16010100003/ 01/01/2016 989307500160 Yamaha Pac.Muffler Mio 5 Rp 2.100 20 Rp 10.500

B16010100003/ 01/01/2016 880100102212 Yamaha

Ts Gasket Kit Mio /

Mio Soul 10 Rp 26.000 20 Rp 260.000

B16010100003/ 01/01/2016 989337900010 Yamaha

Pac.R.Crank Cover


(43)

2. Mendeskripsikan data

Tahap kedua dalam pemahaman data adalah mendeskripsikan data, yaitu data transaksi. Adapun detail informasi mengenai data yang digunakan dapat dilihat pada tabel 3.3.

Tabel 3. 3 Informasi Struktur Data

3. Mengidentifikasi masalah kualitas data

Dari data transaksi yang didapat terdapat noise, noise yaitu data transaksi yang hanya memiliki 1 barang dalam sekali transaksi sehingga data tersebut perlu dihilangkan karena akan mempengaruhi proses mining.

Dokumen Keterangan

Detail Data Transaksi

Deskripsi Data ini berisi mengenai data transaksi yang terbentuk

Format Microsoft Excel (.xlsx)

Atribut Nomor Faktur Nomor pembelian Tanggal Tanggal pembelian Brand Nama brand motor

Barcode Kode dari setiap barang Nama Barang Nama barang yang dibeli Qty Jumlah barang yang dibeli Harga Harga barang yang dibeli

Diskon Pemotongan harga yang diberikan Total Harga Total harga barang yang dibeli


(44)

3.1.2.3Data Preparation

Persiapan data merupakan tahap di mana akan dilakukan pemilihan tabel dan field yang akan digunakan dalam proses mining. Persiapan data dilakukan dengan sebutan Preprocessing Data. Preprocessing merupakan hal yang harus dilakukan dalam proses data mining, karena tidak semua data atau atribut data dalam data digunakan dalam proses data mining. Proses ini dilakukan agar data yang digunakan sesuai dengan kebutuhan. Adapun tahapan-tahapan preprocessing

data dalam penelitian ini adalah sebagai berikut : 1. Pemilihan Atribut

Proses pemilihan atribut atau selection data adalah proses di mana atribut data akan dipilih dan diproses sesuai dengan kebutuhan data mining. Sebelum melakukan proses pembersihan data akan dilakukan proses selection atau pemilihan atribut terlebih dahulu. Karena dari data transaksi di Cv. Bukit Manikam memiliki 9 atribut, sedangkan yang dibutuhkan untuk data mining

hanya 2 atribut, maka akan dilakukan proses seleksi dengan menyeleksi atribut yang tidak dibutuhkan, proses ini akan memudahkan pada proses pembersihan data nanti. Dalam penelitian ini, 2 atribut yang akan digunakan adalah atribut Nomor Faktur dan Nama Barang. Kedua atribut ini digunakan untuk memenuhi tujuan awal di mana akan dicari pola pembelian pelanggan berdasarkan barang yang dibeli. Atribut Nomor Faktur digunakan untuk membedakan satu transaksi dengan transaksi lainnya, dan atribut Nama Barang digunakan untuk mengetahui barang apa saja yang dibeli dalam satu transaksi. Contoh pemilihan atribut dapat dilihat pada tabel 3.4

Tabel 3. 4 Contoh Pemilihan Atribut

Nomor Faktur Nama Barang

B16010100001/ Seal Valve Steam Beat Hi-Q B16010100001/ Ts Gasket Kit Vixion Hi-Q B16010100001/ Pac.R.Crank Cover Vega Z R B16010100001/ Pac.Muffler Mio

B16010100001/ Seal Valve Steam Jupiter Mx Hi-Q B16010100002/ Ts Gasket Kit Mio / Mio Soul B16010100002/ Pac.R.Crank Cover Vega Z R


(45)

3. Pembersihan Data

Proses pembersihan data atau cleaning data adalah proses menghilangkan noise. Noise di sini yaitu data transaksi yang hanya memiliki 1 barang dalam sekali pembelian. Dalam data transaksi ini akan dilakukan pengeleminasian terhadap transaksi yang memiliki jumlah barang kurang dari 2 dalam satu kali transaksinya, karena syarat ini diperlukan dalam Association Rules untuk melihat keterhubungan antar 2 barang atau lebih. Setelah melakukan proses pembersihan data, dari data transaksi yang awalnya sebanyak 19 transaksi dengan jumlah record 85 dicleaning menjadi 17 transaksi dengan jumlah record 17. Contoh sebelum dan sesudah pembersihan data dapat dilihat pada tabel 3.5 dan 3.6

Tabel 3. 5 Contoh data yang akan dibersihkan Nomor Faktur Nama Barang

B16010100003/ Seal Valve Steam Jupiter Mx Hi-Q B16010100003/ Visor Beat Injection (Abu-Abu) B16010100003/ Pac.Muffler Mio

B16010100003/ Ts Gasket Kit Mio / Mio Soul B16010100003/ Pac.R.Crank Cover Vega Z R B16010100004/ Pac.Muffler Mio

B16010100005/ Seal Valve Steam Beat Hi-Q B16010100005/ Pac.Muffler Mio

B16010100005/ Pac.Muffler Beat / Scoopy / Spacy / Vario

Tabel 3. 6 Contoh data yang telah dibersihkan Nomor Faktur Nama Barang

B16010100003/ Seal Valve Steam Jupiter Mx Hi-Q B16010100003/ Visor Beat Injection (Abu-Abu) B16010100003/ Pac.Muffler Mio

B16010100003/ Ts Gasket Kit Mio / Mio Soul B16010100003/ Pac.R.Crank Cover Vega Z R B16010100005/ Seal Valve Steam Beat Hi-Q B16010100005/ Pac.Muffler Mio


(46)

3.1.2.4Modelling

Pemodelan merupakan tahap untuk membangun model. Adapun tahapannya sebagai berikut :

1. Memilih Teknik Modelling

Penelitian ini bertujuan untuk mendapatkan informasi mengenai pola pembelian pelanggan yang nantinya akan digunakan oleh pihak Cv. Bukit Manikam sebagai dasar pengambilan keputusan untuk menentukan barang apa saja yang bisa dijadikan sebuah paket penjualan barang. Maka dari itu teknik pemodelan yang digunakan adalah dengan menerapkan Data mining,

data transaksi akan diolah dengan Metode Association Rule dengan menggunakan algoritma CT-Pro untuk menemukan pola-pola pembelian barang yang sering dibeli oleh pelanggan.

2. Membangun Model

Setelah memilih model yang digunakan tahap selanjutnya adalah membangun model sesuai dengan yang ditentukan berikut merupakan tahapan pembangunan model menggunakan metode association rules. Metodologi dasar Association Rule terbagi menjadi dua tahap, yaitu mencari

frequent itemset dan mendefinisikan condition dan result. Algoritma yang digunakan dalam penelitian ini adalah algoritma CT-Pro. Berikut ini adalah langkah-langkah proses pengerjaan algoritma CT-Pro :


(47)

1. Mencari FrequentItemset

Langkah pertama adalah menghitung jumlah kemunculan tiap barang, sebelumnya akan ditentukan nilai minimum support untuk melihat batasan terendah munculnya barang. Dalam menentukan nilai minimum support dapat berubah sesuai kebutuhan user. Hal ini juga diperkuat dengan pernyataan pakar data mining Daniel T. Larose, yang menerangkan bahwa user bebas menentukan nilai minimum support (minsup) dan minimum confidence

(mincof) sesuai kebutuhan[13]. Minimum supporrt yang diambil pada penelitian ini adalah 4, maka batasan barang yang muncul harus sebanyak >= 4 kali. Maka pada data transaksi, masing-masing barang dihitung jumlah kemunculan berdasarkan barangnya. Hasil dari penghitungan kemunculan barang dapat dilihat pada tabel 3.7.

Tabel 3. 7 Hasi Jumlah Kemunculan Item

Nama Barang Support

Count

Pac.Muffler Mio 11

Pac.R.Crank Cover Vega Z R 10

Seal Valve Steam Beat Hi-Q 10

Ts Gasket Kit Mio / Mio Soul 8

Ts Gasket Kit Vixion Hi-Q 8

Seal Valve Steam Jupiter Mx Hi-Q 7

Pac.Cyl Jupiter Mx 6

Pac.Muffler Beat / Scoopy / Spacy / Vario 5

Pac.Cyl Mio / Mio Soul 4

Mirror Assy Aero Yamaha (Hitam) 4 Spakbor Dpn Vario Techno 125 (Hitam) 3 Mirror Assy Elipso Hnd (White) 3

Spakbor Dpn Mio Soul (Hitam) 2

Leg Shield Container Vario (Hitam) 1 Visor Beat Injection (Abu-Abu) 1


(48)

Karena minimum support-nya 4, maka barang yang tidak memenuhi batas minimum support akan dieliminasi. Berikut adalah tabel hasil eliminasi kemunculan barang yang tidak memenuhi minimun suport yang diacu pada tabel 3.8.

Tabel 3. 8 Hasil Eliminasi Jumlah Kemunculan Item

Nama Barang Support

Count

Pac.Muffler Mio 11

Seal Valve Steam Beat Hi-Q 10

Pac.R.Crank Cover Vega Z R 10

Ts Gasket Kit Vixion Hi-Q 8

Ts Gasket Kit Mio / Mio Soul 8

Seal Valve Steam Jupiter Mx Hi-Q 7

Pac.Cyl Jupiter Mx 6

Pac.Muffler Beat / Scoopy / Spacy / Vario 5

Pac.Cyl Mio / Mio Soul 4

Mirror Assy Aero Yamaha (Hitam) 4

Begitu juga pada data transaksi untuk barang yang frequent-nya tidak memenuhi batas minimum support dieliminasi dan hasilnya dapat dilihat pada tabel 3.9

Tabel 3. 9 Data Transaksi yang Frequent

Nomor Faktur Nama Barang Nomor Faktur Nama Barang

B16010100001/ Seal Valve Steam Beat Hi-Q B16010200011/ Seal Valve Steam Jupiter Mx Hi-Q

B16010100001/ Ts Gasket Kit Vixion Hi-Q B16010100011/ Pac.Cyl Jupiter Mx

B16010100001/ Pac.R.Crank Cover Vega Z R B16010200011/ Seal Valve Steam Beat Hi-Q B16010100001/ Pac.Muffler Mio B16010200011/ Pac.R.Crank Cover Vega Z R

B16010100001/ Seal Valve Steam Jupiter Mx

Hi-Q B16010200013/ Ts Gasket Kit Mio / Mio Soul B16010100002/ Ts Gasket Kit Mio / Mio Soul B16010200013/ Ts Gasket Kit Vixion Hi-Q


(49)

Nomor Faktur Nama Barang Nomor Faktur Nama Barang

B16010100002/ Pac.R.Crank Cover Vega Z R B16010200013/ Seal Valve Steam Jupiter Mx Hi-Q

B16010100002/ Ts Gasket Kit Vixion Hi-Q B16010300014/ Ts Gasket Kit Vixion Hi-Q

B16010100002/ Seal Valve Steam Jupiter Mx

Hi-Q B16010300014/ Pac.Cyl Jupiter Mx

B16010100003/ Seal Valve Steam Jupiter Mx

Hi-Q B16010300014/

Pac.Muffler Beat / Scoopy / Spacy / Vario

B16010100003/ Pac.Muffler Mio B16010300014/ Pac.Muffler Mio

B16010100003/ Ts Gasket Kit Mio / Mio Soul B16010300015/ Ts Gasket Kit Vixion Hi-Q B16010100003/ Pac.R.Crank Cover Vega Z R B16010300015/ Pac.Muffler Mio

B16010100005/ Seal Valve Steam Beat Hi-Q B16010300015/ Seal Valve Steam Jupiter Mx Hi-Q

B16010100005/ Pac.Muffler Mio B16010300015/ Ts Gasket Kit Mio / Mio Soul

B16010100005/ Pac.Muffler Beat / Scoopy /

Spacy / Vario B16010300015/

Mirror Assy Aero Yamaha (Hitam)

B16010100006/ Seal Valve Steam Beat Hi-Q B16010300016/ Pac.Muffler Mio

B16010100006/ Pac.Cyl Mio / Mio Soul B16010300016/ Seal Valve Steam Beat Hi-Q B16010100006/ Pac.R.Crank Cover Vega Z R B16010300016/ Pac.Cyl Mio / Mio Soul

B16010100006/ Mirror Assy Aero Yamaha

(Hitam) B16010300016/ Pac.Cyl Jupiter Mx

B16010100007/ Pac.R.Crank Cover Vega Z R B16010300016/ Mirror Assy Aero Yamaha (Hitam)

B16010100007/ Pac.Muffler Mio B16010300016/ Pac.R.Crank Cover Vega Z R

B16010100007/ Ts Gasket Kit Vixion Hi-Q B16010300016/ Pac.Muffler Beat / Scoopy / Spacy / Vario

B16010200008/ Pac.Muffler Beat / Scoopy /

Spacy / Vario B16010300017/ Pac.Cyl Mio / Mio Soul B16010200008/ Seal Valve Steam Beat Hi-Q B16010300017/ Pac.Cyl Jupiter Mx

B16010200008/ Pac.R.Crank Cover Vega Z R B16010300017/ Seal Valve Steam Beat Hi-Q B16010200008/ Pac.Cyl Jupiter Mx B16010300017/ Pac.Muffler Mio

B16010200008/ Pac.Muffler Mio B16010300018/ Seal Valve Steam Jupiter Mx Hi-Q

B16010200009/ Seal Valve Steam Beat Hi-Q B16010300018/ Ts Gasket Kit Mio / Mio Soul B16010200009/ Pac.R.Crank Cover Vega Z R B16010300018/ Ts Gasket Kit Vixion Hi-Q B16010200010/ Pac.Cyl Jupiter Mx B16010300019/ Pac.Cyl Mio / Mio Soul B16010200010/ Seal Valve Steam Beat Hi-Q B16010300019/ Seal Valve Steam Beat Hi-Q B16010200010/ Ts Gasket Kit Mio / Mio Soul B16010300019/ Pac.Muffler Mio

B16010200010/ Ts Gasket Kit Vixion Hi-Q B16010300019/ Ts Gasket Kit Mio / Mio Soul B16010200010/ Pac.Muffler Mio B16010300019/ Pac.R.Crank Cover Vega Z R


(50)

Nomor Faktur Nama Barang Nomor Faktur Nama Barang

B16010200010/ Pac.Muffler Beat / Scoopy /

Spacy / Vario B16010300019/

Mirror Assy Aero Yamaha (Hitam)

B16010100011/ Ts Gasket Kit Mio / Mio Soul

Selanjutnya untuk setiap barang diberikan id global item yaitu penomoran secara ascending dari jumlah support count terbesar ke terkecil. Berikut adalah tabel global item table yang dapat dilihat pada tabel 3.10

Tabel 3. 10 Global Item Table

Nama Barang Support

Count

Id global item

Pac.Muffler Mio 11 1

Pac.R.Crank Cover Vega Z R 10 2

Seal Valve Steam Beat Hi-Q 10 3

Ts Gasket Kit Mio / Mio Soul 8 4

Ts Gasket Kit Vixion Hi-Q 8 5

Seal Valve Steam Jupiter Mx Hi-Q 7 6

Pac.Cyl Jupiter Mx 6 7

Pac.Muffler Beat / Scoopy / Spacy / Vario 5 8

Pac.Cyl Mio / Mio Soul 4 9


(51)

Selanjutnya dilakukan mapping data yaitu memetakan data transaksi dari tabel 3.9 terhadap global item table pada tabel 3.10, di mana nama barang pada tabel 3.9 digantikan oleh id global item sesuai dengan id global item yang ada pada tabel 3.10. Data transaksi kemudian diurutkan dari id global item

terkecil ke terbesar dari setiap nomor fakturnya. Berikut adalah hasil mapping

data transaksi tabel 3.9 yang dapat dilihat pada tabel 3.11. Tabel 3. 11 Tabel Mapping

Nomor Faktur Id Global Item

B16010100001/ 1, 2, 3, 5, 6 B16010100002/ 2, 4, 5, 6 B16010100003/ 1, 2, 4, 6 B16010100005/ 1, 3, 8 B16010100006/ 2, 3, 9, 10 B16010100007/ 1, 2, 5 B16010200008/ 1, 2, 3, 7, 8 B16010200009/ 2, 3

B16010200010/ 1, 3, 4, 5, 7, 8 B16010200011/ 2, 3, 4, 6, 7 B16010200013/ 4, 5, 6 B16010300014/ 1, 5, 7, 8 B16010300015/ 1, 4, 5, 6, 10 B16010300016/ 1, 2, 3, 7, 8, 9, 10 B16010300017/ 1, 3, 7, 9

B16010300018/ 4, 5, 6


(52)

2. Membuat CFP-Tree

Setelah ditemukan frequent itemset kemudian dilakukan pembentukan CFP-Tree . Pada pembentukan Global CFP-Tree dimulai dengan membuat

left most branch yang dapat dilihat pada gambar 3.3.

Gambar 3. 3 Left Most Branch

1 2 3 4 5 6

Level 0 0 0

0 0 1 0 0 0 1 0 2 0 3 0 4 0 0 0 1 0 2 0 3 0 4 0 5 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 0 0 1 0 2 0 7 0 0 1 0 2 0 3 0 Level 1 Level 4 Level 5 0 0 1 0 2 0 3 0 4 0 5 0 6 0 8 7 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 9 7 0 8 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 Level 3 Level 2 Level 6 Level 7 Level 8 Level 9


(53)

Tahap selanjutnya yaitu memasukkan setiap data transaksi ke dalam tree.

Berikut langkah langkah membuat CFP-Tree :

1. Dimulai dari root yaitu barang yang pertama kali muncul dari nomor faktur pertama yang telah di-mapping, barang tersebut akan menjadi

currnode.

2. Tambahkan count = 1 pada barang yang pertama muncul sesuai dengan levelnya.

3. Jika currnode sudah memiliki anak, dan barang yang muncul sama dengan anak tersebut maka tambahkan count = 1 pada level yang sama

currnode.

4. Jika currnode sudah memiliki anak, tetapi data yang muncul berbeda dengan anak dari currnode, buat node baru dan tambahkan count = 1 pada level yang sama dengan currnode, hubungkan node baru tersebut pada


(54)

a. Nomor Faktur B16010100001/ dengan index : 1, 2, 3, 5 dan 6 merupakan data awal yang akan diproses. Pembentukan CFP-Tree yang dapat dilihat pada gambar 3.4

Gambar 3. 4 CFP-Tree Nomor Faktur B16010100001/

1

2

3

4

5

6 Level 0

7 Level 1

Level 4

Level 5

8

9

10 Level 3 Level 2

Level 6

Level 7

Level 8

Level 9

5

6 0 1

0 1

0 1

0 1 0 1


(55)

b. Nomor Faktur B16010100002/ dengan index : 2, 4, 5 dan 6 akan membentuk CFP-Tree yang dapat dilihat pada gambar 3.5

Gambar 3. 5 CFP-Tree Nomor Faktur B16010100002/

1

2

3

4

5

6

Level 0

7

Level 1

Level 4

Level 5

8

9

10

Level 3 Level 2

Level 6

Level 7

Level 8

Level 9

5

6

0 1

0 1

0 1

0 1

0 1

4

5

6 1 1

1 1

1 1


(56)

c. Nomor Faktur B16010100003/ dengan index : 1, 2, 4 dan 6 akan membentuk CFP-Tree yang dapat dilihat pada gambar 3.6

Gambar 3. 6 CFP-Tree Nomor Faktur B16010100003/

Berikut adalah Global CFP-Tree yang terbentuk dari seluruh transaksi, yang diacu pada gambar 3.7.

1

2

3

4

5

6

Level 0

7

Level 1

Level 4

Level 5

8

9

10

Level 3 Level 2

Level 6

Level 7

Level 8

Level 9

5

6

0 2

0 2

0 1

0 1 0 1

4

5

6 1 1

1 1 1 1 1 1

6 0 1


(57)

1 2 3 5 6 Level 0 7 Level 1 Level 4 Level 5 8 9 10 Level 3 Level 2 Level 6 Level 7 Level 8 Level 9 0 11 0 6

1 4 3

8 0 1 0 3 4 5 7 1 6

5 0 1

5

7

8 0 1

0 1

4

5 0 1

0 1

6

10 0 1 0 1 0 1

9 0 1

8 0 1 1

7 1 1

5 0 1

6 9 1 1 7 0 2

9

10

0 1 0 2

6 0 1

8 0 1 5 1 1 1 1 3 2 0 1 4 1 1

0 1 0 1 7

0 1 0 1

101 1 9

10

0 1

4 10 11

0 1 6 0 1 3 2 3 2 0 4 1 3 G a m b ar 3. 7 G lob al C F P -Tr e e


(58)

3. Melakukan penggalian frequent patterns

Setelah tahap pembangunan global CFP-Tree dari sekumpulan data transaksi, tahap selanjutnya adalah membangun local CFP-Tree untuk mencari

frequent itemset. Berikut adalah langkah-langkah dari algoritma CT-Pro : 1. Lakukan penelusuran node yang berkaitan untuk mencari node yang

memenuhi minimum support count, di mana pencarian dimulai dari support count terkecil sampai dengan support count terbesar karena CT-Pro bekerja

Bottom-Up pada Global CFP-Tree. Dalam pencarian Local Frequent Pattern Tree berisikan lintasan prefix dan suffic pattern (pola akhiran). Untuk setiap pencarian suffix dilakukan dengan mencari lintasan prefix dari suffix yang dicari.

2. Selanjutnya masukan setiap item yang memenuhi minimum support ke

local item table.

3. Berikan index baru pada node yang ada di local item table secara ascending

dari support count terbesar ke terkecil.

4. Setelah local item table terbentuk lakukan pemetaan index baru terhadap

node di local item table.

5. Setelah dilakukan pemetaan lakukan pembentukan Local CFP-Tree dengan aturan yang sama saat pembentukan Global CFP-Tree.

6. Lakukan pembentukan Local CFP-Tree projection yaitu di mana index (x) akan menjadi root dan index yang ada di localCFP-Tree menjadi anaknya, lakukan penelusuran di local CFP-Tree secara bottom-up dari node ke-i dengan menghitung count dari setiap node, jika node k memenuhi minimum

support jadikan k menjadi anak dari node ke-i. Berikut penggalian frequent patternnya :


(59)

a. Pencarian local Frequent Pattern Tree untuk index 10. Lakukan penelusuran secara bottom-up pada Global CFP-Tree yang hanya berakhiran index 10, untuk jelasnya dapat dilihat pada gambar 3.8

Gambar 3. 8 CFP-Tree Berakhiran index 10

Berikut hasil penelusuran untuk index 10 pada Global CFP-Tree yang dapat dilihat pada tabel 3.12

1 2 3 5 6 Level 0 7 Level 1 Level 4 Level 5 8 9 10 Level 3 Level 2 Level 6 Level 7 Level 8 Level 9 0 3 0 2 0 2 1 1 1 1 4

5 0 1

0 1

6

10 0 1

0 1

7 0 1

9 10 0 1 0 1 8 4 0 1 9 10 0 1 0 1

10 1 1


(60)

Tabel 3. 12 Penelusuran CFP-Tree index 10

Dari tabel 3.12 didapat jumlah support count dari setiap node yaitu 1(3), 2(3), 3(3), 4(2), 5(1), 6(1), 7(1), 8(1), 9(3) Pada node tersebut tidak ada yang memenuhi minimum support 4, maka tidak terbentuk local item table sehingga untuk local CFP-Tree dan frequent patternnya juga tidak akan terbentuk. b. Pencarian local Frequent Pattern Tree untuk index 9. Lakukan penelusuran

secara bottom-up pada Global CFP-Tree yang hanya berakhiran index 9, untuk jelasnya dapat dilihat pada gambar 3.9

Gambar 3. 9 CFP-Tree Berakhiran index 9

No Lintasan

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

1 2 3 5 6 Level 0 7 Level 1 Level 4 Level 5 8 9 Level 3 Level 2 Level 6 Level 7 Level 8 0 3 0 2

1 1 3 0 1

9 0 1

9 1 1 7

9 0 1 0 1 8

0 1 7

9 0 1 4 0 1

0 2 1 1


(1)

1.

Pengujian Pemaketan

Tabel di bawah ini merupakan

scenario

pengujian yang dilakukan pada

bagian pemaketan.

Kasus dan hasil uji (data normal)

Data masukan Yang diharapkan Pengamatan Kesimpulan

Filter Brand : Yamaha

Dapat menampilkan paket hasil filter sesuai yang dipilih

Dapat menampilkan paket hasil filter sesuai yang dipilih

[√] Diterima [ ] Ditolak

Kasus dan hasil uji (data salah)

Data masukan Yang diharapkan Pengamatan Kesimpulan

Filter brand : China

Tidak menampilkan paket hasil filter karena tidak ada brand china dan

menampilkan pesan “Paket Tidak Ditemukan!”

Tidak menampilkan paket hasil filter karena tidak ada brand china dan

menampilkan pesan “Paket Tidak Ditemukan!”

[ √]Diterima [ ] Ditolak

4.4.3

Kesimpulan Pengujian Fungsional

Berdasarkan hasil pengujian fungsional

black box

menyatakan bahwa

aplikasi yang dibangun berjalan dengan baik dan secara fungsional mengeluarkan

hasil yang sesuai dengan yang diharapkan.


(2)

4.2.4

Pengujian Hasil

Pengujian hasil ini menguji perangkat lunak yang telah dibangun apakah

menghasilkan data yang diinginkan dengan masukan minimum

support

= 4 dan

minimum

confidence

yang berbeda-beda. Berikut pengujiannya :

1.

Pengujian Manual dan Pengujian Program

a.

Pengujian Manual

Pencarian

rules

dengan perhitungan manual pada uji kasus

minimum

support

= 4 ,

minimum

confidence

= 50 %

Tabel 4. 7 Pengujian Manual

Frequent

Pattern Rules Confidence

9→1 Pac.Cyl Mio / Mio Soul → Seal Valve Steam Beat

Hi-Q (4/4)*100% = 100 %

8→3 Pac.Muffler Beat / Scoopy / Spacy / Vario →

Pac.Cyl Jupiter Mx (4/5)*100% = 80 % 8→3,1 Pac.Muffler Beat / Scoopy / Spacy / Vario →

Pac.Cyl Jupiter Mx, Pac.Muffler Mio (4/5)*100% = 80 % 8→2 Pac.Muffler Beat / Scoopy / Spacy / Vario → Seal

Valve Steam Beat Hi-Q (4/5)*100% = 80 % 8→2,1 Pac.Muffler Beat / Scoopy / Spacy / Vario → Seal

Valve Steam Beat Hi-Q, Pac.Muffler Mio (4/5)*100% = 80 % 8→1 Pac.Muffler Beat / Scoopy / Spacy / Vario → Pac.

Muffler Mio (5/5)*100% = 100 %

7→2 Pac.Cyl Jupiter Mx → Seal Valve Steam Beat Hi-Q (4/6)*100% = 66,67 % 7→2,1 Pac.Cyl Jupiter Mx → Seal Valve Steam Beat Hi-Q,

Pac.Muffler Mio (4/6)*100% = 66,67 % 7→1 Pac.Cyl Jupiter Mx → Pac.Muffler Mio (5/6)*100% = 83,33 % 6→3 Seal Valve Steam Jupiter Mx Hi → Pac.R.Crank

Cover Vega Z R (4/7)*100% = 57,14 % 6→2 Seal Valve Steam Jupiter Mx Hi → Ts Gasket Kit

Vixion Hi-Q (5/7)*100% = 71,42 %

6→2,1 Seal Valve Steam Jupiter Mx Hi → Ts Gasket Kit


(3)

b.

Pengujian Program

Pencarian rules dengan program pada uji kasus

minimum

support

= 4 ,

minimum

confidence

= 50 %

Gambar 4. 1 Hasil Pengujian 1

Frequent

Pattern Rules Confidence

6→1 Seal Valve Steam Jupiter Mx Hi → Ts Gasket Kit

Mio / Mio Soul (5/7)*100% = 71,42 % 5→2 Ts Gasket Kit Vixion Hi-Q → Ts Gasket Kit Mio /

Mio Soul (5/8)*100% = 62,50 %

5→1 Ts Gasket Kit Vixion Hi-Q → Pac.Muffler Mio (5/8)*100% = 62,50 % 4→1 Ts Gasket Kit Mio / Mio Soul → Pac.Muffler Mio (4/8)*100% = 50 % 3→2 Seal Valve Steam Beat Hi-Q → Pac.R.Crank Cover

Vega Z R (7/10)*100% = 70 %

3→1 Seal Valve Steam Beat Hi-Q → Pac.Muffler Mio (7/10)*100% = 70 % 2→1 Pac.R.Crank Cover Vega Z R → Pac.Muffler Mio (6/10)*100% = 60 %


(4)

2.

Pencarian rules dengan program pada uji kasus

minimum

support

= 4,

minimum

confidence

= 60%


(5)

3.

Pencarian rules dengan program dengan uji kasus

minimum

support

= 4,

minimum

confidence

= 70%

Gambar 4. 3 Hasil Pengujian 3

4.2.5

Kesimpulan Pengujian Hasil

Dari hasil pengujian yang telah dilakukan dengan minimum

support

4 dan

minimum

confidence

yang berbeda

beda disimpulkan bahwa hasil pengujian

pada program sama dengan hasil pengujian manual dan juga dengan minimum

support

4 dan minimum

confidence

70% dapat menghasilkan paket yang sesuai

dengan ketentuan perusahaan.


(6)

123

Berdasarkan hasil implementasi dan pengujian yang telah dilakukan pada

aplikasi yang dibangun,

maka disimpulkan aplikasi tersebut dapat membantu

pihak perusahaan untuk mengetahui kombinasi barang apa saja yang bisa

dijadikan paket penjualan yang akan dipasarkan.

5.2

Saran

Perbandingan algoritma

CT-Pro

dengan algoritma yang lain perlu

diterapkan pada penelitian selanjutnya agar dapat diketahui apakah hasilnya sama

atau tidak dan juga untuk mengetahui algoritma mana yang lebih efisien dalam

menentukan

frequent pattern

.