i
SISTEM REKOMENDASI PEMASARAN BARANG DAGANG
SALES MENGGUNAKAN METODE
CONTENT BASED
FILTERING
BERBASIS
MOBILE
ANDROID
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh:
Christina Rusma Arishintha 08 5314 002
JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
ii
MARKETING RECOMMENDATION SYSTEM OF
MERCHANDISE WITH CONTENT BASED FILTERING
METHOD ON ANDROID MOBILE DEVICE
A Thesis
Presented as Partial Fulfillment of the Requirements
to Obtain the Sarjana Komputer Degree
in Informatics Engineering
By
Christina Rusma Arishintha 08 5314 002
DEPARTMENT OF INFORMATICS ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
v
HALAMAN PERSEMBAHAN
Skripsi ini saya persembahkan untuk:
Tuhan Yesus dan Bunda Maria,
Keluarga, Sahabat, dan Teman-teman
vii
SISTEM REKOMENDASI PEMASARAN BARANG DAGANG SALES
MENGGUNAKAN METODE CONTENT BASED FILTERING BERBASIS
MOBILE ANDROID
ABSTRAK
Sales sebuah distributor yang bekerja secara mobile atau bergerak dari satu toko ke toko lain, memiliki target pemasaran dalam penjualan produknya. Masalah yang dihadapi sales adalah perusahaan grosir ingin produknya dipasarkan pada setiap toko dan warung. Sales akan lebih efisien dalam pertimbangan untuk memilih informasi tempat sesuai konteks dan informasi yang diperoleh. Skripsi ini menyediakan informasi tentang rekomendasi toko yang memiliki profil yang sama dengan profil sales. Aplikasi mobile ini ditunjukan untuk sales yang akan memasarkan produk ke toko.
Pencarian rekomendasi ini menggunakan algoritma Vector Space Model (VSM) dan pendekatan Content Based Filtering dimana proses rekomendasi suatu item untuk seorang user berdasarkan deskripsi dari item serta profil dari ketertarikan user tersebut. Sales mendapatkan rekomendasi mengenai informasi toko-toko pelanggan tetap dan pelanggan promosi. Pelanggan tetap adalah toko yang memiliki kemiripan dekat dengan profil sales. Sedangkan pelanggan promosi adalah toko yang memiliki kemiripan jauh dengan profil sales.
Pengujian dengan menghitung precision, dimana sales diminta memilih toko yang sesuai menurutnya. Berdasarkan hasil pengujian precision, rekomendasi pelanggan tetap memiliki akurasi yaitu 61% dan promosi pelanggan memiliki akurasi yaitu 62%. Evaluasi sistem ini belum dapat dikatakan baik karena pengujian dilakukan menggunakan variable precision dan tanpa dilakukan pengujian recall.
viii
MARKETING RECOMMENDATION SYSTEM OF
MERCHANDISE WITH CONTENT BASED FILTERING
METHOD ON ANDROID MOBILE DEVICE
ABSTRACT
Salesmen of distributor who work mobile or move from one store to another, have a target to sell their product. The problem they encountered is wholeseller want their product to be marketed in every store and shop. Salesmen would be more efficient in considering to choose information about the place,match with the description and information they get. This essay provides information about recommended store which have the same profile with the salesmen's. This mobile application made for salesmen which would sell their product to stores.
This recommendation searching use Vector Space Model (VSM) algorithm and Content Based Filtering where the recommendation process of an item for user based on description of the item and profile of user interest. Salesmen get recommendations about regular's store information and promoted customers. regulars are stores which has close resemblance with the salesmen profile. Whereas promoted customers are stores which has less resemblance with the salesmen profiles.
Examination by precision counting, where salesmen asked to choose stores which they think fit. Based on precision examination result,regulars recommendations have a accuracy, about 61% and promoted customers have a accuracy, about 62%. This system evaluation couldn't called great, because the examination based on precision variable,not by recall examination.
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa, karena hanya dengan berkat dan karunia-Nya, serta campur tangan-Nya, penulis dapat
menyelesaikan skripsi yang berjudul “Sistem Rekomendasi Pemasaran Barang
Dagang Sales Menggunakan Metode Content Based Filtering Berbasis Mobile Android” dengan baik.
Pada kesempatan ini penulis juga ingin mengucapkan rasa terima kasih kepada:
1. Bapak Puspaningtyas Sanjoyo Adi S.T., M.T., selaku dosen pembimbing yang senantiasa memberikan masukan dan dengan sabar membimbing penulis, sehingga tugas akhir ini dapat diselesaikan dengan baik.
2. Bapak JB Budi Darmawan, S.T., M.Sc. dan Ibu Sri Hartati Wijono, S.Si., M.Kom, selaku dosen penguji atas kritik dan saran yang telah diberikan. 3. Pihak sekretariat dan laboran Fakultas Sains dan Teknologi yang turut
membantu penulis dalam menyelesaikan tugas akhir ini.
4. Kepada kedua orang tua, Bapak Antonius Rusmono dan Ibu FR. Sri Sulami yang selalu memberikan kasih sayang, semangat, dukungan serta doa yang melimpah kepada penulis.
xi
6. Teman – teman kuliah Siska, Putri, Petra, Angga, Reza, Endro, Surya, Tista, Esy, Devi, Laurin, Ilana, Rista, Vava, Bebeth, Ocak, Ade, Wulan serta teman – teman TI 08 lainnya atas kebersamaan dan dukungan yang selalu diberikan kepada penulis.
7. Teman- teman kost yang senatiasa menemani dan memberikan dukungan serta menjadi motivasi bagi penulis dalam menyelesaikan tugas akhir ini. 8. Semua pihak yang tidak dapat disebutkan satu persatu, yang telah
membantu sehingga penulis dapat menyelesaikan skripsi ini.
Akhirnya penulis berharap semoga skripsi ini dapat berguna bagi para pembaca.
Penulis,
xii
DAFTAR ISI
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN ... Error! Bookmark not defined. HALAMAN PENGESAHAN ... Error! Bookmark not defined. HALAMAN PERSEMBAHAN ... v
PERNYATAAN KEASLIAN KARYA ... vi
ABSTRAK ... vii
ABSTRACT ... viii
LEMBAR PERNYATAAN ... ix
KATA PENGANTAR ... x
1.6 Sistematika Penulisan ... 5
BAB II LANDASAN TEORI ... 7
2.1 Sistem Rekomendasi ... 7
2.1.1 Konsep Dasar Sistem ... 7
2.1.2 Sistem Rekomendasi ... 7
2.2 Mobile ... 10
2.3 Pengukuran Performansi ... 13
2.4 Vector Space Model ... 13
2.4.1 Pengertian Vector Space Model ... 14
xiii
2.5 Android ... 16
2.5.1 Arsitektur Android ... 16
2.5.2 Komponen Dasar ... 18
2.5.3 Daur Hidup Activity ... 19
2.5.4 Daur Hidup Service ... 21
2.6 Location Based Service (LSB) ... 22
BAB III ANALISA DAN PERANCANGAN ... 25
3.1 Analisa Sistem ... 25
3.2 Arsitektur Aplikasi ... 26
3.2.1 Arsitektur Aplikasi Admin ... 26
3.2.2 Arsitektur Aplikasi Sales ... 27
3.3 Arsitektur Sistem ... 28
3.3.1 Arsitektur Sistem Admin ... 28
3.3.2 Arsitektur Sistem Sales ... 28
3.4 Permodelan data ... 29
3.5 Desain model secara umum ... 32
3.5.1 Diagram Use Case ... 33
3.5.2 Narasi Use Case ... 34
3.5.3 Diagram Aktifitas ... 35
3.5.4 Model Analisis ... 35
3.5.5 Diagram Kelas ... 35
3.5.6 Desain Basis Data ... 38
3.5.7 Desain Basis Data ... 38
3.5.8 Model Desain ... 42
BAB IV IMPLEMENTASI DAN ANALISIS SISTEM ... 43
4.1 Tahap Implementasi ... 43
4.1.1 Spesifikasi Perangkat Keras dan Perangkat Lunak ... 43
4.1.2 Implementasi Diagram Kelas ... 43
4.2 Pengujian ... 44
4.2.1 Item Query yang tersedia ... 44
xiv
4.2.3 Perhitungan Precision... 58
4.2.4 Perhitungan Average Precision ... 60
4.2.5 Kelebihan dan kekurangan sistem ... 62
BAB V PENUTUP ... 63
5.1 Kesimpulan ... 63
5.2 Saran ... 64
DAFTAR PUSTAKA ... 65
Lampiran 1 ... 67
1.1 Rekomendasi Web Server ... 67
1.2 Rekomendasi Mobile ... 72
Lampiran 2 ... 80
2.1 Rekomendasi Web Server ... 80
2.2 Rekomendasi Mobile ... 92
Lampiran 3 ... 100
3.1 Rekomendasi Web Server (Admin) ... 100
3.2 Rekomendasi Mobile ... 110
Lampiran 4 ... 119
4.1 Rekomendasi Web Server ... 119
4.2 Rekomendasi Mobile ... 122
Lampiran 5 ... 128
5.1 Rekomendasi Web Server ... 128
5.2 Rekomendasi Mobile ... 138
Lampiran 6 ... 148
6.1 Rekomendasi Web Server ... 148
xv
DAFTAR GAMBAR
Gambar 2.1 Contoh Model Ruang Vektor (VSM) ... 15
Gambar 2.2 Arsitektur Android ... 17
Gambar 2.3 Diagram komponen dari LBS ... 23
Gambar 3.1 Arsitektur Aplikasi Admin ... 26
Gambar 3.2 Arsitektur Aplikasi Sales ... 27
Gambar 3.3 ArsitekturSistem berbasis Admin... 28
Gambar 3.4 Arsitektur Sistem berbasis Sales ... 28
Gambar 3.5 Use Case Diagram untuk Admin ... 33
Gambar 3.6 Use Case Diagram untuk Sales ... 34
Gambar 3.7 Diagram Kelas Rekomendasi Web Server (Admin) ... 36
Gambar 3.8 Diagram Kelas Rekomendasi Mobile (Sales) ... 37
xvi
DAFTAR TABEL
Tabel 3.1 Contoh Perhitungan Martik Bobot ... 29
Tabel 3.2 Contoh Perhitungan Data Nilai Vektor ... 30
Tabel 3.3 Contoh Perhitungan Perkalian Kueri ... 31
Tabel 3.4 Contoh Hasil Perhitungan Cosines Similarity ... 32
Tabel 3.5 Struktur Tabel Produk ... 38
Tabel 3.6 Struktur Tabel Sales ... 39
Tabel 3.7 Struktur Tabel Toko ... 39
Tabel 3.8 Struktur Tabel Transaksi Sales` ... 40
Tabel 3.9 Struktur Tabel Transaksi Toko ... 40
Tabel 3.10 Struktur Tabel Admin ... 41
Tabel 3.11 Struktur Tabel Toko Distance ... 41
Tabel 3.12 Struktur Tabel Transaksi Toko Indeks ... 42
Tabel 4.1 Darftar Kode dan Nama Produk... 44
Tabel 4.2 Perhitungan Precision Pelanggan Tetap ... 58
Tabel 4.3 Perhitungan Precision Pelanggan Promosi ... 59
Tabel 4.4 Perhitungan Average Precision Pelanggan Tetap ... 60
1
BAB I
PENDAHULUAN
1.1Latar Belakang Masalah
Dalam beberapa tahun terakhir teknologi mengalami peningkatan jumlah perhatian dari para pengguna. Setiap orang membutuhkan perantara untuk mempermudah mencari informasi berdasarkan kebutuhan atau kegiatan yang sering dilakukan. Pengguna yang memiliki kegiatan di luar sangat membutuhkan perangkat yang mudah dibawa serta berfungsi untuk menunjang keperluannya. Begitu juga bagi para sales atau tenaga pemasaran sebuah distributor yang bekerja secara mobile atau bergerak dari satu toko ke toko yang lain, memiliki target pemasaran dalam menjual produknya, mereka harus memiliki informasi tempat memasaran seperti waktu pemberian barang ke toko, berapa banyak barang yang akan dijual. Maka spesifikasi aplikasi tersebut meliputi :
a. memberikan informasi kepada sales dalam sebuah perusahaan grosir, b. perusahaan grosir ingin produknya dijual atau dipasarkan pada semua
toko dan warung,
c. serta membantu sales yang bersifat independen dan biasanya merangkap sebagai tenaga pemasaran atau yang menawarkan barang. d. pemasaran barang yang tepat sasaran dan pemeliharaan pelanggan
2
Berdasarkan spesifikasi tersebut dibangunlah aplikasi untuk mencatat data-data penjualan kepada toko dan warung serta menginformasikan tempat-tempat yang berpotensi untuk memasarkan produk seorang sales tersebut. Diharapkan para sales akan lebih efisien dalam pertimbangan untuk memilih informasi tempat sesuai konteks dan informasi yang didapat. Pada pendekatan Content Based Filtering, proses rekomendasi suatu item untuk seorang user berdasarkan deskripsi dari item serta profil dari ketertarikan user tersebut. Dengan menggunakan content based filtering diharapkan dapat merekomendasikan item berdasarkan pada kemiripan dari profil sales terhadap deskripsi dari item yang menjadi solusi dari permasalahan seorang sales tersebut dalam memasarkan produk. Profil sales mencakup produk-produk yang dibawa serta lokasi letak sales berada untuk mencari lokasi toko terdekat.
3
1.2Rumusan Masalah
Berdasarkan latar belakang yang disampaikan, maka permasalahan yang ingin diselesaikan, yaitu :
Bagaimana metode content based filtering mampu memberikan informasi pemasaran barang kepada sales?
1.3Batasan Masalah
Dalam penulisan laporan tugas akhir ini penulis memberikan batasan-batasan masalah :
1. Kasus berlokasi di wilayah Yogyakarta.
2. Dikembangkan dalam mobile berbasis Android.
3. Diasumsikan data terpusat pada server sebuah distributor.
1.4Tujuan dan Manfaat
Dalam penulisan laporan tugas akhir ini penulis memiliki tujuan dan berharap ada manfaat yang dapat diperoleh.
1.4.1 Tujuan Penelititan
4
penggunaan teori context-aware computing dalam pertimbangan dalam memilih informasi secara mobile dimana sales akan memasarkan produknya. Aplikasi ini juga membuat para sales lebih efisien dalam mengakses informasi tersebut.
1.4.2 Manfaat Penelitian
Hasil penelitian ini diharapkan dapat bermanfaat bagi seorang sales dalam pemasaran produknya agar lebih tepat waktu dan tepat sasaran kepada konsumen sesuai dengan profil yang dimiliki oleh setiap sales.
1.5Metode Penelitian
Metode penelitian yang ditempuh oleh penulis adalah : 1. Referensi ( Literatur )
Metode yang dilakuakan untuk membaca dokumen, maupun referensi buku yang telah ada, atau sumber lain yang berkenaan dengan objek yang sedang dibutuhkan.
2. Analisis kebutuhan perangkat lunak.
5
untuk sistem maupun perangkat lunak didokumentasikan, dan dilihat lagi dengan pelanggan.
3. Pengujian unjuk kerja.
Mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan. Dengan melakukan uji precesion.
1.6Sistematika Penulisan
Secara umum dalam penelitian ini, sistematika penulisan yang akan digunakan adalah sebagai berikut :
BAB I : PENDAHULUAN
Bab ini membahas latar belakang masalah, rumusan masalah, tujuan penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini membahas teori-teori yang digunakan dalam pembuata sistem
BAB III : ANALISA DAN PERANCANGAN SISTEM
6
BAB IV : IMPLEMENTASI DAN ANALISIS SISTEM
Bab ini membahas implementasi dalam bentuk aplikasi berdasarkan analisa dan perancangan yang telah dilakukan.
BAB V : PENUTUP
7
BAB II
LANDASAN TEORI
Pada bab ini membahas uraian teori yang digunakan untuk penulisan tugas akhir, yaitu mengenai Sistem rekomendasi, Pengukuran Performansi, Mobile, Context-Aware Computing, Vector Space Model, Android, dan Location based Service.
2.1 Sistem Rekomendasi
2.1.1 Konsep Dasar Sistem
Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu.
Jerry FithGerald (2006) Sistem merupakan suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau menyelesaikan suatu sasaran tertentu.
2.1.2 Sistem Rekomendasi
8
si penerima. Dalam beberapa kasus, transformasi utama ada di dalam proses agregasi. Kasus lainnya nilai sistem terletak pada kemampuannya untuk mencocokkan dua hal yaitu bagian yang dijadikan rekomendasi, dan yang mencari rekomendasi secara baik.
Sistem rekomendasi ini dihitung menggunakan sejumlah model prediktif yang memiliki karakteristik umum, yaitu mengeksploitasi evaluasi atau penilaian yang diberikan oleh pengguna untuk transaksi yang sebelumnya telah dilihat. Berdasarkan teknik prediksi tertentu yang sedang digunakan, sistem rekomendasi telah diklasifikasikan ke dalam empat kategori utama [Burke, 2007]: collaborative-based, content-based, knowledge-based, hybrid. Pada sistem yang menggunakan pendekatan collaborative-based paling sederhana menghitung korelasi antara pengguna, memprediksi peringkat produk untuk pengguna saat ini didasarkan pada peringkat yang diberikan oleh pengguna lain, yang sangat berhubungan dengan preferensi pengguna saat ini [Herlocker et al, 1999]. Sedangkan sistem dengan pendekatan content-based hanya menggunakan preferensi dari pengguna saat ini, memprediksi peringkat untuk item yang tak terlihat berdasarkan seberapa banyak deskripsinya atau isinya mirip dengan pengguna [Pazzani dan Billsus, 2007].
9
rekomendasi merupakan model aplikasi dari hasil observasi terhadap keadaan dan keinginan pelanggan (User). Sistem rekomendasi memanfaatkan opini seseorang terhadap suatu barang dalam domain atau kategori tertentu, untuk membantu seseorang dalam memilih produk. Untuk mempermudah pelanggan mengambil keputusan yang tepat dalam menentukan produk yang akan dibelinya [McGinty dan Smyth, 2006].
Terdapat dua pendekatan pada information filtering, yaitu collaborative filtering dan content-based filtering, yaitu :
1. Collaborative Filtering
Pada pendekatan Collaborative Filtering, proses rekomendasi berdasarkan kemiripan antara user yang memilih dalam sistem. Pendekatan ini dibagi menjadi 2 yaitu:
a. User-Based Collaborative Filtering
Sistem ini mencari user-user yang memiliki korelasi yang tinggi, dan merekomendasikan item-item yang disukai user-user sebelumnya. Contoh: toko A menyukai roti, aqua, buah dan toko B menyukai roti, aqua, biskuit. Maka rekomendasi yang diberikan terhadap toko A adalah biskuit dan toko B adalah buah.
10
Sistem ini mencari item-item based yang disukai user, item yang berkorelasi tinggi kemudian direkomendasikan kepada user lainnya.
2. Content Based Filtering
Pada pendekatan Content Based Filtering, proses rekomendasi suatu item untuk seorang user berdasarkan deskripsi dari item serta profil dari ketertarikan user tersebut. Profil pengguna dibuat dari koleksi fitur-fitur item yang disukai/tak disukai sebelumnya oleh pengguna. Sehingga item-item baru yang deskripsinya cukup mirip dengan profil seorang pengguna akan direkomendasikan ke pengguna tersebut.
Metode ini memiliki kelebihan merekomendasikan item yang sifatnya baru bagi user, karena prinsip kerjanya dengan melihat deskripsi content yang dikandung oleh item yang pernah diberi nilai rating tinggi sebelumnya oleh user.
2.2Mobile
2.2.1 Pengertian Mobile
11
2.2.2 Karakteristik Perangkat Mobile
Perangkat mobile memiliki banyak jenis dalam hal ukuran, desain dan layout, tetapi mereka memiliki kesamaan karakteristik yang sangat berbeda dari sistem desktop.
a. Ukuran yang kecil
Perangkat mobile memiliki ukuran yang kecil. Konsumen menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitas mereka.
b. Memori yang terbatas
Perangkat mobile juga memiliki memory yang kecil, yaitu primary (RAM) dan secondary (disk). Dengan pembatasan jumlah dari memory, pertimbangan-pertimbangan khusus harus diambil untuk memelihara pemakaian dari sumber daya yang mahal ini.
c. Daya proses yang terbatas
Sistem mobile tidaklah setangguh desktop. Ukuran, teknologi dan biaya mrupakan beberapa faktor yang mempengaruhi status dari sumber daya ini.
d. Mengkonsumsi daya yang rendah
12 e. Kuat dan dapat diandalkan
Perangkat mobile selalu dibawa kemana saja, maka mereka harus cukup kuat untuk menghadapi benturan-benturan, gerakan.
f. Konektivitas yang terbatas
Perangkat mobile memiliki bandwith rendah, beberapa dari mereka bahkan tidak tersambung. Kebanyakan dari mereka menggunakan koneksi wireless.
2.2.3 Context Aware Computing
Context adalah lokasi, identitas orang terdekat disekitar pengguna dan perubahan objek. Context sebagai kondisi emosional pengguna, perhatian fokus, lokasi dan orientasi, tanggal dan waktu, serta benda-benda dan orang-orang di lingkungannya.
Context aware computing adalah perangkat lunak yang menyesuaikan menurut lokasi penggunanya, orang atau objek terdekat serta perubahan objek-objek. Context aware systems akan menyesuaikan dengan lokasi penggunaan, kumpulan orang-orang terdekat, dan lain-lain. Tiga aspek penting dalam konteks adalah : where you are, who you are with, dan what resources are nearby. (Bill Schilit, Columbia University).
Ada 4 kategori context aware computing, (Bill Schilit,1994) :
13
b. Automatic contextual reconfiguration, sebuah proses penambahan komponen baru, menghapus komponen yang ada, atau mengubah hubungan antara komponen karena konteks perubahan.
c. Contextual information and commands, menghasilkan hasil yang berbeda sesuai dengan konteks.
d. Context-triggered actions, aturan yang digunakan untuk menentukan bagaimana context aware system harus beradaptasi.
2.3Pengukuran Performansi
Keefektifitasan dari pemerolehan informasi dapat diukur. Dalam pemerolehan informasi terdapat banyak metode yang digunakan untuk melakukan pengukuran. [Nugraha & Adi : 2010]. Mengukur performansi sistem dengan menggunakan parameter performansi, yaitu :
2.3.1 Precision
Precision adalah proporsi jumlah dokumen yang ditemukan dan dianggap
relevan untuk kebutuhan sipencari informasi.
Precision = jumlah dokumen relevan yang berhasil ditemukan jumlah seluruh dokumen yang relevan
2.4Vector Space Model
14
2.4.1 Pengertian Vector Space Model
Dalam sebuah Information Retrieval (IR) System, menentukan kemiripan antar dokumen yang didefinisikan berdasarkan representasi bag-of-word yang mengabaikan urutan kata dalam dokumen. Terdapat beberapa metode yang digunakan dalam searching salah satunya dengan menggunakan Vector Space Model [ Salton, 1983 ].
Vector space model adalah model sistem untuk mengukur kemiripan antara suatu dokumen dengan query sebagai sebuah vektor n-dimensi. Tiap dimensi pada vector tersebut diwakili oleh satu term. Term disimpan dalam database pencarian sebagai sebuah inverted index. Index merupakan konversi dari dokumen asli dari sekumpulan kata ke dalam daftar kata yang berasosiasi dengan dokumen terkait dimana kata-kata tersebut muncul. Contoh dari model ruang vektor tiga dimensi untuk dokumen D1 dan D2,
satu query pengguna Q1, dan tiga term T1, T2, T3 . Setiap sel dalam matriks
15
Gambar 2.1 Contoh Model Ruang Vektor (VSM)
2.4.2 Ukuran Kesamaan (similarity measure)
16
ini memungkinkan perangkingan rekomendasi sesuai dengan kemiripan relevansinya terhadap query. Setelah rekomendasi dirangking, top-scoring dikembalikan kepada pengguna.
Salah satu ukuran kemiripan teks yang popular adalah cosine
Android merupakan sistem operasi yang dikembangkan untuk perangkat mobile berbasis Linux. Dengan software Development kits (SDK) yang dilengkapi dengan emulator untuk membantu menguji coba aplikasi yang dibuat.
2.5.1 Arsitektur Android
Sistem operasi Android dibangun berdasarkan kernel Linux dan memiliki arsitektur seperti gambar 2.2 berikut :
17
Gambar 2.2 Arsitektur Android
Application
Serangkaian lapisan aplikasi yang terdapat pada perangkat mobile. Aplikasi inti yang telah terdapat pada Android termasuk kalender, kontak, SMS, dan lain sebagainya. Aplikasi-aplikasi ini ditulis dengan bahasa pemrograman Java.
Application Framework
Lapisan aplikasi ini memiliki akses penuh ke Android dan memudahkan dalam mengakses informasi lokasi, mengatur alarm, menambahkan pemberitahuan ke status bar dan lain sebagainya.
Libraries
18
Android Runtime
Libraries inti yang menyediakan sebagian besar fungsi yang tersedia di libraries inti dari bahasa pemrograman Java. Setiap aplikasi akan berjalan sebagai proses sendiri pada Dalvik Virtual Machine (VM).
Linux Kernel
Android bergantung pada Linux versi 2.6 untuk layanan sistem inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver. Kernel juga bertindak sebagai lapisan antara hardware dan seluruh software.
2.5.2 Komponen Dasar
Aplikasi Android ditulis dalam bahasa pemrograman Java. Java mengompilasi kode bersama dengan data resource dan file yang dibutuhkan oleh aplikasi dibundel ke dalam paket Android, file arsip ditandai dengan .apk. Komponen aplikasi pada Android terdiri dari 4 komponen utama, yaitu
a.Activities
Activities merupakan potongan kode executable yang menyajikan UI secara visual dimulai oleh pengguna maupun sistem operasi dan berjalan selama diperlukan.
19
Service tidak memiliki visual UI, melainkan berjalan di latar belakang untuk waktu yang tidak terbatas.
c.Broadcast Receiver
Broadcast Receiver merupakan komponen yang menerima dan bereaksi untuk menyiarkan pengumuman.
d.Content Provider
Content Provider diciptakan untuk berbagi data dengan Activities lain atau Service. Sebuah Content Provider menggunakan antarmuka standar dalam bentuk URI untuk memenuhi permintaan data dari aplikasi lain.
2.5.3 Daur Hidup Activity
Activity memiliki tiga status dasar : 1.Active atau Running
Status ini ketika Activity berjalan di foreground (di bagian atas stack untuk task ini). Activity yang berkaitan aktif dengan pengguna. 2.Pause
20
mempertahankan semua informasi dan tetap melekat pada Windows Manager hingga akhirnya dapat dimatikan oleh sistem ketika memori sangat rendah.
3.Stop
Activity benar-benar dihentikan karena ada Activity lain yang memenuhi layar. Semua informasi dipertahankan tetapi tidak dapat dilihat oleh pengguna sehingga jendela tersembunyi dan dapat dimatikan oleh sistem ketika memori dibutuhkan.
Metode yang terdapat pada Activity : onCreate()
Dipanggil ketika Activity pertama kali dibuat. Biasanya merupakan metode di mana View yang ingin ditampilkan dibuat, membuka data file, maupun menginisialisasi Activity. Saat memanggil OnCreate, kerangka Android melewati sebuah Bundel objek yang mengandung state activity yang disimpan ketika Activity pertama berjalan.
onStart()
21 onResume()
Dipanggil setelah OnStart() apabila Activity dapat menjadi foreground. Saat ini, Activity dapat bereaksi dengan pengguna. OnResume() juga akan dipanggil ketika Activity ini tidak menjadi foreground karena ada Activity lain lalu Activity lain akhirnya selesai dan Activity kembali menjadi foreground.
onPause()
Dipanggil ketika Activity lain dibawa ke foreground. Pada status ini Activity tidak memiliki akses ke layar.
onStop()
Dipanggil ketika Activity tidak lagi terlihat karena adanya Activity lain yang dibawa ke foreground atau Activity ini dimatikan.
OnDestroy()
Dipanggil terakhir sebelum Activity dimatikan ketika Android membutuhkan resources yang digunakan oleh Activity.
2.5.4 Daur Hidup Service
Daur hidup Service hapir sama dengan Activity tetapi memiliki beberapa perbedaan untuk detailnya.
22
Dipanggil apabila seseorang klien memanggil Context.startService(Intent). Jika service belum berjalan maka Android akan membuatnya dan memanggil OnCreate() diikuti method OnStart(). Apabila service telah berjalan, Android hanya akan memanggil OnStart().
OnBind()
Ketika klien membutuhkan koneksi ke service maka akan dipanggil Context.bind. Pemanggilan ini akan mengakibatkan pembuatan service apabila service tidak sedang berjalan tanpa memanggil OnStart().
OnDestroy()
Sama dengan Activity, method ini akan dipanggil ketika service akan dimatikan. Android akan mematikan service apabila telah tidak ada lagi klien yang memulai atau bind ke service ini.
2.6Location Based Service (LSB)
23
bagaimana teknologi smartphone dapat diterapkan untuk generasi LBS. LBS mengandung beberapa komponen termasuk peta dan informasi Sistem Informasi Geografis (SIG), layanan lokasi pengumpulan. Ada dua elemen LBS yaitu :
a.Location Manager :menyediakan pengait ke Location Based Service. Fungsi dari Location Manager yaitu mendapatkan lokasi saat ini, melacak perpindahan dan mengatur tanda kedekatan untuk mendeteksi gerakan masuk dan keluar dari area tertentu.
b.Location Providers :masing-masing mewakili teknologi lokasi-temuan yang berbeda yang digunakan untuk menentukan lokasi perangkat.
Arsitektur dari LBS dapat di generalisasikan seperti gambar di bawah ini.
24
25
BAB III
ANALISA DAN PERANCANGAN
3.1Analisa Sistem
26
3.2Arsitektur Aplikasi
3.2.1 Arsitektur Aplikasi Admin
Sistem ini memiliki gambaran arsitektur sistem sales seperti gambar dibawah ini :
Admin
Gambar 3.1 Arsitektur Aplikasi Admin
Pada alur pertama dilakukan pengumpulan dokumen dari produk yang akan dipasarkan, kemudian dilakukan perubahan data berupa penambahan, pengeditan, dan penghapusan. Setelah perubahan data dilakukan oleh admin maka data yang baru akan disimpan di database.
Data Toko, Produk, Sales yang ada
Perubahan Database
27
3.2.2 Arsitektur Aplikasi Sales
Sistem ini memiliki gambaran arsitektur sistem sales seperti gambar dibawah ini :
Sales
Gambar 3.2 Arsitektur Aplikasi User (Sales)
Data yang sudah dipindah ke database selanjutnya melalui proses vector space model untuk mengukur kemiripan antara user profil dengan query. Semakin dekat dua vektor di dalam suatu VSM maka semakin mirip. Pada proses similarity dihitung nilai cosinus sudut dari dua vektor, lalu akan dipilih query mana yang cocok dengan profil user, yang kemudian menjadi sebuah daftar rekomendasi.
Data Corpus
VSM
(Vector Space Model)
Input Profil
Similarity Process
28
3.3Arsitektur Sistem
3.3.1 Arsitektur Sistem Admin
Admin
Web Server internet Database server
Gambar 3.3 Arsitektur Sistem Admin
Pada arsitektur sistem berbasis web, admin mengakses sistem dari web server menggunakan komputer untuk mengelola data produk, toko, seles, melakukan reindeks serta memonitor transaksi penjualan produk. Dalam mengakses data yang ada di database server diperlukan koneksi internet.
3.3.2 Arsitektur Sistem Sales
Web Server Database server internet
Sales
Reksa Mobile
Gambar 3.4 Arsitektur Sistem Sales
29
yang mendekati profil setiap sales. Dalam mengakses data yang ada di web server diperlukan koneksi internet, web server berfungsi untuk menyimpan data produk, toko, sales, transaksi toko, dan transaksi sales. Hasil pencatatan terakhir akan digunakan untuk saran jumlah yang akan dibawa oleh sales di hari berikutnya. Perekaman data dan perhitungan cosinus similarity dilakukan pada server untuk memudahkan mengakses data dan pemantauan pemasaran oleh distributor.
3.4Permodelan data
Pada tabel di bawah ini terdapat satu kolom query sales, delapan toko, dan lima belas produk. Seorang sales membawa enam jenis produk yang akan dipasarkan kepada delapan toko. Dimana bobot atau banyaknya produk setiap toko didapatkan dari transaksi sebelumnya. Matriks bobot setiap produk dapat dilihat pada tabel 3.1 berikut ini :
Tabel 3.1 Contoh perhitungan matriks bobot
30
Setelah matriks bobot terbentuk, kemudian menghitung nilai bobot (w) dengan mengkuadratkan nilai setiap toko. Langkah berikutnya menjumlahkan nilai disetiap kolom dan hasil penjumlahan setiap kolom tersebut diakarkan. Matriks perhitungan nilai vektor seperti tabel 3.2.
31
Pada tabel 3.3 matriks perhitungan dari bobot di tabel 3.1 dengan mengkalikan setiap baris dikolom sales dengan setiap kolom toko. Dengan
rumus :
terhadap produk dan Wi,j merupakan bobot data (toko) terhadap produk. Tabel 3.3 Contoh perhitungan perkalian kueri
32
Selanjutnya menghitung nilai cosinus sudut antara dua vektor dengan setiap kueri dengan rumus cosine similarity, untuk :
Keterangan : Wij : bobot produk dalam data (toko)
WQj : bobot produk dalam kueri (sales)
Tabel 3.4 Contoh hasil perhitungan cosines similarity
67 Prapti Prima
Sumber
Rejeki Cendana KFE Dewi Sri Enny
0.503115 0.39 0.64846 0.135582 0.916564 0.689202 0.547723 0.803219
Dari perhitungan Tabel 3.4 data diatas, toko yang memenuhi syarat untuk direkomendasikan pada sales adalah Toko Cendana karena memiliki tingkat similaritas mendekati profil sales kemudian Toko Enny, Toko KFE, Toko Prima, Toko Dewi Sri, Toko 67, Toko Prapti, Toko Sumber Rejeki. Toko yang memiliki similaritas jauh dari profil sales akan direkomendasikan sebagai pelanggan promosi.
3.5Desain model secara umum
Desain model berisi analisis kebutuhan sistem secara umum yang terdiri dari use case diagram dan Diagram Arus Data Logika (DADL).
33
3.5.1 Diagram Use Case
Diagram use case merupakan diagram yang menggambarkan interaksi antara sistem dengan sistem eksternal dan pengguna.
Admin
Login
Kelola Produk Depends on
Kelola Sales Kelola Toko
reindeks
34 Sales
Login
Profil Sales Depends on
Rekomendasi Pelanggan Tetap
Rekomendasi Promosi Pelanggan
Kelola Toko
Gambar 3.6 Use Case Diagram untuk Sales
3.5.2 Narasi Use Case
35
3.5.3 Diagram Aktifitas
Merupakan diagram yang menjelaskan aktivitas antara sales dan admin dengan sistem. Secara lebih rinci tahap diagram aktifitas dapat dilihat pada lampiran 2.
3.5.4 Model Analisis
Merupakan suatu proses untuk menterjemahkan skenario use case menjadi kelas analisis. Dalam kelas analisis terdapat tiga jenis, yaitu form/boundary, controller, dan entity. Setiap use case dicari kelas analisisnya sehingga dapat menentukan kebutuhan kelas. Hasil analisis kelas dapat dilihat pada lampiran 3.
3.5.5 Diagram Kelas
36
37
38
3.5.6 Desain Basis Data
Perancangan diagram E-R menggambarkan relasi antar entitas (entity) yang digunakan untuk sistem.
produk
lokasi longitudelatitude harga_karton nama_produk
N
frek_sales
distance id_sales
Gambar 3.9 ERD Sistem
3.5.7 Desain Basis Data
Berikut ini adalah desain fisik dari basis data yang dirancang berdasarkan struktur tabel:
1. Tabel Produk
Tabel 3.5 Struktur Tabel Produk
No Nama Kolom Tipe Fungsi
1 id_produk Int(4) Sebagai primary key dari tabel produk. 2 Kode Varchar(10) Menyimpan kode produk
3 nama_produk Varchar(30) Menyimpan nama produk 4 Satuan Varchar(10) Menyimpan satuan produk
39 2. Tabel Sales
Tabel 3.6 Struktur tabel Sales
3. Tabel Toko
Tabel 3.7 Struktur tabel toko
No Nama Kolom Tipe Fungsi
1 id_sales Int(4) Sebagai primary key dari tabel sales. 2 nama_lengkap Varchar(30) Menyimpan nama lengkap sales 3 User Varchar(10) Menyimpan user sales
4 Pass Varchar(15) Menyimpan password sales 5 Alamat Varchar(30) Menyimpan alamat sales 6 Telepon Int(15) Menyimpan telepon sales
7 Lokasi Varchar(15) Menyimpan lokasi pemasaran sales 8 Longitude Varchar(20) Menyimpan longitude lokasi sales 9 Latitude Varchar(20) Menyimpan latitude lokasi sales
No Nama Kolom Tipe Fungsi
1 id_toko Int(4) Sebagai primary key dari tabel toko. 2 nama_toko Varchar(30) Menyimpan nama toko
3 alamat Varchar(30) Menyimpan alamat toko 4 telepon Int(15) Menyimpan telepon toko 5 longitude Varchar(15) Menyimpan longitude toko 6 latitude Varchar(15) Menyimpan latitude toko
7 cosim Double Menyimpan hasil perhitungan vsm
40 4. Tabel Transaksi Sales
Tabel 3.8 Struktur tabel Transaksi Sales
5. Tabel Transaksi Toko
Tabel 3.9 Struktur tabel Transaksi Toko
No Nama Kolom Tipe Fungsi
1 id_trans_sales Int(4) Sebagai primary key dari tabel transaksi sales.
2 id_sales Int(4) Menyimpan primary key dari tabel sales 3 id_produk Int(4) Menyimpan primary key dari tabel
produk.
4 frek_sales Int(15) Menyimpan bobot produk yang dibawa sales.
No Nama Kolom Tipe Fungsi
1 id_trans_toko Int(4) Sebagai primary key dari tabel transaksi toko.
2 id_toko Int(4) Menyimpan primary key dari tabel toko 3 id_produk Int(4) Menyimpan primary key dari tabel
produk
41 6. Tabel Admin
Tabel 3.10 Struktur tabel Admin
7. Tabel Toko Distance
Tabel 3.11 Struktur tabel toko distance
No Nama Kolom Tipe Fungsi
1 id_admin Int(4) Sebagai primary key dari tabel admin. 2 nama_lengkap Varchar(30) Menyimpan nama lengkap admin 3 User Varchar(10) Menyimpan user admin
4 Pass Varchar(15) Menyimpan password admin 5 Alamat Varchar(30) Menyimpan alamat admin 6 Telepon Int(15) Menyimpan telepon admin 7 Email Varchar(15) Menyimpan alamat email admin
No Nama Kolom Tipe Fungsi
1 id_toko Int(4) Sebagai primary key dari tabel toko. 2 nama_toko Varchar(30) Menyimpan nama toko
3 alamat Varchar(30) Menyimpan alamat toko 4 telepon Int(15) Menyimpan telepon toko 5 longitude Varchar(15) Menyimpan longitude toko 6 latitude Varchar(15) Menyimpan latitude toko
7 cosim Double Menyimpan hasil perhitungan vsm
42 8. Tabel Transaksi toko indeks
Tabel 3.12 Struktur tabel Transaksi Toko Indeks
3.5.8 Model Desain
Pada desain antarmuka sistem ini akan ditampilkan desain dari tiap halaman yang akan dibentuk. Desain antarmuka akan dijelaskan lebih lengkap pada lampiran 4. Sedangkan antarmuka implementasi usecase pada lampiran 5.
No Nama Kolom Tipe Fungsi
1 id_trans_toko Int(4) Sebagai primary key dari tabel transaksi toko.
2 id_toko Int(4) Menyimpan primary key dari tabel toko 3 id_produk Int(4) Menyimpan primary key dari tabel
produk
43
BAB IV
IMPLEMENTASI DAN ANALISIS SISTEM
4.1Tahap Implementasi
Penelitian ini telah di implemetasikan untuk menjadi sebuah aplikasi dengan tahap-tahap seperti berikut :
4.1.1 Spesifikasi Perangkat Keras dan Perangkat Lunak
Perangkat keras yang dipakai untuk membangun sistem adalah sebagai berikut:
Processor : Pentium ( R ) Dual CPU 1,73 GHz
Memori : 2 GB
Hard Disk : 120 GB
Perangkat lunak yang dipakai untuk membangun sistem adalah sebagai berikut:
Editor program : Eclipse Helios dan Netbeans 6.9
DBMS : MySql 5.0
4.1.2 Implementasi Diagram Kelas
4.2Pengujian
Pengujian sistem merupakan tahap akhir dalam membangun aplikasi ini. Sistem ini dibangun memanfaatkan Eclipse dan Netbeans 6.9. Sistem ini dapat diakses secara langsung apabila terdapat koneksi internet. Analisis sistem akan dibagi kedalam beberapa bagian, yaitu penyelesaian rumusan masalah, pengukuran kinerja sistem, kelebihan, serta kekurangan sistem yang telah dibangun. Pengujian dilakukan untuk mencari rekomendasi pelanggan tetap dan pelanggan promosi yang paling relevan, relevan adalah toko yang dipilih oleh sales yang memiliki kemiripan dengan profil sales. Pengujian dilakukan dengan menghitung precision, dengan rumus :
Precision = Jumlah item toko yang dipilih sales Jumlah item toko yang dipilih oleh sistem
4.2.1 Item Query yang tersedia
Tabel 4.1 Daftar Kode dan Nama Produk
NO KODE PRODUK NAMA PRODUK
1 AJB2B Atom BBQ 20gr
2 AJC2 Katom Ayam Bawang
3 AJT2B3 Katom Manis Ball 16 gr 500an 4 AJTS Katom Jatim 70 gr 2000an 5 APD Atom Pedas Garuda 100 gr 6 BIC4 Cereal Snack BISA 15 gr
9 BPG Kacang Kulit Rasa Bawang 80 gr 10 BSM4/BSW4 Bismart Coklat / Susu
11 CSP40/H2 Gerry Salut ORI/Hagel nut
12 CWG1/CWT1 Wafelatos 20gr / Chocolate Toping 13 CWG4 Wafelatos Chocolate 10 gr
14 DEC Gerry Dip stik Colek Mini 15 ECS4 Gerry Toya corn 11 gr
16 ESB4/ESP4 Gerry Toya Stick Salut / Berry 100 gr 17 ESW4 Gerry Toya Stick Salut Pisang
18 ETG4 Ting Ting Garuda 3 gr 19 ETG5 Ting Ting Garuda 14 gr
20 GC Kacang Kulit Garuda Merah 250 gr 21 GD3 Kacang Kulit Garuda Premium 80 gr 22 GE Kacang Kulit Garuda Semi 20 gr 23 GF2B Kacang Kulit Garuda Semi 24 gr 24 JACKO/JATOP O donut / Donut Choco Milk
25 JBC4/6/7 Koko Dring Leci/ Straw/ Fruity 190 ml 26 JCO3 Jelly Jumbo cup isi 2-50 gr
27 JDO1 Jelly Drink Rasa Jeruk 190 ml 28 JDO3 Jelly Drink Rasa Jambu 190 ml 29 JDO5 Jelly Drink Rasa Mangga 190 ml 30 JDO7 Jelly Drink Rasa Anggur 190 ml 31 JDO9 Jelly Drink Rasa Apel 190 ml
32 KSCO Cappucino Kopyes
33 KSTO1 Okky Keiko Sticks 40 ml
36 LPBF Leo Kentang Rasa sapi Panggang 16 gr 37 LPGF Leo Kentang Rasa rumput Laut 16 gr
38 MC2 Mayo Kid 240 ml cup
39 MCC4R Messes, Renteng
40 MCP/MCOK4 Pasta Choco / Keju 15,5 gr 41 MCB4 Pasta Bery 15,5 gr
42 MCP4K Pasta Choco in pack 15,5 gr
43 MTA2 Mounte Apel 190 ml
44 MTB2 Mounte Black 190 ml
45 MTG2 Mounte Guava/jambu 190 ml 46 MTJ2 Mounte Jasmine 190 ml
47 MTL2 Mounte Leci 190 ml
48 MTM2 Mounte Mangga 190 ml
49 MTS2 Mounte Strawberry 190 ml 50 ORB1 Garuda rosta 23 gr
51 PG7D Pilus Garuda Premium 95 gr 52 PGC2B Pilus Garuda Sapi Panggang 18 gr 53 PGC7 Pilus Garuda Sapi Panggang 95 gr 54 PGG2B Pilus Garuda Rumput Laut 18 gr 55 PGP2 Pilus Garuda original 18 gr
56 PGS2/PGX2 Pilus Garuda pedas / Campur 18 gr 57 PGS7D Pilus Garuda Pedas 95 gr
58 PIRA4 Gerry Piramid 12 gr 59 PKL2B Pilus Kapsul 17 gr
60 SACO ½ Clevo Botol Anggur / Fruity 70 ml 61 SCO1O Jelly super cup isi 10-10 gr
63 SJU2 Space Bulir Jambu 330 ml 64 STIK4 Mini stick 10 gr
65 SUCO 1 /2 / 3 Susu Clevo 125ml/coklat/straw/plain 66 TGFB Katom Telor Garuda 37 gr
67 TGPEB Katom Telor Garuda 20 gr 68 TWC4R Cheese Latos 11 gr
69 W.BERRY 4 Berry Good 12 gr
70 WCD4 Chocolatos mocca
71 WCG1 Mini Chocolaos 30 gr 72 WCG4/WCP4 Chocolatos/ Chocolatos II
73 WES4 Cokluut 15 gr
4.2.2 Sample Profil
Pada sample profil sistem akan menampilkan 15 toko terbaik atau teratas untuk rekomendasi pelanggan tetap dan 15 toko terbawah untuk rekomendasi pelanggan promosi. Toko yang memiliki nilai cosim sama dengan 0 tidak ditampilkan.
a. Rekomendasi Pelanggan Tetap
Query 1
Query AJT2B3(20), BPD(30), BPF(35), ECS4(40), ESW4(45)
Toko pilihan sales Urutan sistem Dewi Sri
Ikasari Pitu
Casha
Query BPD(10), ETG4(15), GD3(10), GE(20), MCB4(20), PGP2(30), PKL2B(25), SJU2(25), STIK4(35) Toko pilihan sales Urutan sistem
Satria
Noval
Toko pilihan sales Urutan sistem Al Husna
Query AJB2B(10), AJTS(20), CWG4(15)
Medikom
Query BPF(10), CSP4O(20), ETG4(20), JDO3(30), JDO5(30), MTA2(20)
Query 7
Query AJC2(15), BPD(15), BSM4(30), LPBF(25), LPGF(25), ORB7(25), PG7D(25), SCS4(25) Toko pilihan sales Urutan sistem
Prima
Query JDO5(25), JDO9(30), LPBF(15), LPGF(25), LPGC7(20), PGG2B(20), W.BERRY 4(15) Toko pilihan sales Urutan sistem
Jaya Mulya 13
Query 9
Query JCO3(25), KSCO(25), LASF(20), MC2(20) Toko pilihan sales Urutan sistem
Kaffa II
Query MTA2(45), MTB2(50)
b. Rekomendasi Pelanggan Promosi
Query 1
Query AJT2B3(20), BPD(30), BPF(35), ECS4(40), ESW4(45)
Toko pilihan sales Urutan sistem Kaffa II
Query BPD(10), ETG4(15), GD3(10), GE(20), MCB4(20), PGP2(30), PKL2B(25), SJU2(25), STIK4(35) Toko pilihan sales Urutan sistem
Imam
Toko pilihan sales Urutan sistem Cendana
Query 5
Query AJB2B(10), AJTS(20), CWG4(15)
Toko pilihan sales Urutan sistem Fortuna II
Query BPF(10), CSP4O(20), ETG4(20), JDO3(30), JDO5(30), MTA2(20)
Query 7
Query AJC2(15), BPD(15), BSM4(30), LPBF(25), LPGF(25), ORB7(25), PG7D(25), SCS4(25) Toko pilihan sales Urutan sistem
Jaya Mulya
Query JDO5(25), JDO9(30), LPBF(15), LPGF(25), LPGC7(20), PGG2B(20), W.BERRY 4(15) Toko pilihan sales Urutan sistem
Fortuna II
Query JCO3(25), KSCO(25), LASF(20), MC2(20) Toko pilihan sales Urutan sistem
New Mut
Query MTA2(45), MTB2(50)
Toko pilihan sales Urutan sistem Fortuna I
KFE
Prima
4.2.3 Perhitungan Precision
a. Rekomendasi Pelanggan Tetap
R : Relevan
Dari perhitungan Tabel 4.2, untuk query 1 dihasilkan sebagai berikut : Toko Dewi Sri, Toko Ikasari, Toko Pitu, Toko Casha, Toko Tres, Toko New Mut, Toko Sidik, Toko Tutik, Toko Sumber Rejeki dan Toko 67. Maka untuk query 1 hasil yang relevan adalah index 1,2,3,4,5,8, dan 9.
b. Rekomendasi Pelanggan Promosi
Dari perhitungan Tabel 4.3, untuk query 1 dihasilkan sebagai berikut :
Toko Kaffa II, Toko Rifika, Toko Prasetya, Toko Dero, Toko Aribia, Toko 67 Toko Prima. Maka untuk query 1 hasil yang relevan adalah index 1,2,3,4,5,6,7,9,10, dan 11.
4.2.4 Perhitungan Average Precision
a. Rekomendasi Pelanggan Tetap
Tabel 4.4 Perhitungan Average Precision Pelanggan Tetap
Dari Tabel 4.4 dilihat bahwa tingkat relevansi rekomendasi toko yang diberikan sistem untuk sales sebagai berikut :
Query Relevan Not relevan Hasil sistem
Precision
1 10 5 15 0.67
2 7 8 15 0.47
3 9 6 15 0.60
4 12 3 15 0.80
5 9 6 15 0.60
6 11 4 15 0.73
7 12 3 15 0.80
8 7 8 15 0.47
9 9 6 15 0.60
10 5 10 15 0.33
Rata-rata 0.61
Dari 10 kueri rata-rata yang dihasilkan yaitu 61% maka sistem ini memiliki akurasi yang cukup baik. Nilai precision tertinggi dalam persen pada query 4 dan 7 yaitu 80% dan terendah pada query 10 yaitu 33%.
b. Rekomendasi Pelanggan Promosi
Tabel 4.5 Perhitungan Average Precision Pelanggan Promosi
Dari Tabel 4.5 dilihat bahwa tingkat relevansi rekomendasi toko yang diberikan sistem untuk sales sebagai berikut :
Dari 10 kueri rata-rata yang dihasilkan yaitu 62% maka sistem ini memiliki akurasi yang cukup baik. Nilai precision tertinggi dalam persen pada query 2 dan 7 yaitu 80% dan terendah pada query 4 yaitu 33%.
Query Relevan Not relevan Jumlah produk
Precision
1 7 8 15 0.47
2 12 3 15 0.80
3 9 6 15 0.60
4 5 10 15 0.33
5 10 5 15 0.67
6 8 7 15 0.53
7 12 3 15 0.80
8 11 4 15 0.73
9 11 4 15 0.73
10 8 7 15 0.53
Rata-rata 0.62
4.2.5 Kelebihan dan kekurangan sistem
Kelebihan sistem yang dibagun adalah :
1. Dapat memberikan informasi toko dengan jarak terdekat dengan sales saat itu.
2. Memberikan gambar letak lokasi toko yang ada dalam list atau daftar rekomendasi.
3. Berdasarkan hasil pengujian precision, rekomendasi pelanggan tetap memiliki akurasi cukup baik yaitu 61% dan promosi pelanggan memiliki akurasi yang cukup baik, yaitu 62%
Kekurangan sistem yang dibangun adalah :
1. Sistem tidak dapat memberikan rekomendasi berdasarkan data per hari, minggu, bulan, atau tahun.
63
BAB V
PENUTUP
5.1 Kesimpulan
Pembangunan sistem Rekomendasi Sales ini menggunakan content based filtering. Terdapat 50 toko dan 73 produk yang digunakan sebagai data dalam sistem Rekomendasi Sales ini. Kesimpulan yang didapat adalah :
1. Sales mendapatkan rekomendasi mengenai informasi toko-toko pelanggan tetap dan pelanggan promosi. Pelanggan tetap adalah toko yang memiliki kemiripan dekat dengan profil sales. Sedangkan pelanggan promosi adalah toko yang memiliki kemiripan jauh dengan profil sales.
2. Admin dapat mengelola data yang diperlukan pada web Rekomendasi Sales untuk menunjang sistem Rekomendasi Sales berbasi web maupun mobile.
3. Pengujian dengan menghitung precesion, dimana sales diminta memilih toko yang sesuai menurutnya. Berdasarkan hasil pengujian precision,
5.2Saran
Saran yang dapat penulis berikan dari penelitian ini adalah 1. Bagi user
Sistem Rekomendasi mobile melakukan perhitungan komputasi pada php di server. Apabila terdapat banyak data toko, produk, maupun transaksi yang akan dihitung maka aplikasi ini akan berjalan lambat. Agar hasil komputasi dapat berjalan dengan baik penulis menyarankan user menggunakan handphone yang memiliki RAM besar dan prosesor yang cepat dan koneksi yang baik.
2. Bagi peneliti selanjutnya
Sistem ini masih banyak kekurangan. Sebaiknya bagi peneliti selanjutnya dapat memperbaiki kualitas dan kinerja sistem, diantaranya :
a. Sistem dapat memberikan rekomendasi berdasarkan data per hari, minggu, bulan, atau tahun.
DAFTAR PUSTAKA
Billsus, D. Pazzani, M. J. “A Personal News Agent that Talks, Learns and Explains”, In Autonomous Agents 98, Minneapolis MN USA.
Burke, R. (2007). Hybrid web recommender systems. In The Adaptive Web, pages 377–408. Springer Berlin / Heidelberg.
Herlocker, J.L., Konstan, J.A., Terveen, L.G. & Riedl, J.T. Evaluating collaborative filtering recommender systems. ACM Transactions on Information Systems, 22(1), 5-53.
Hermawan, Stephanus. 2011. Mudah Membuat Aplikasi Android. Yogyakarta : Andi Offset.
Kushwaha, Amit., & Kushwaha, Vineet. (2011). Location Based Service using Android Mobile Operating System. Internasional Journal of Advances in Engineering & Technology 2011, India.
Lee, Dik Lun., Chuang, Huei., & Seamons, Kent E. (1997). Document Rangking and the Vector-Space Model. IEEE March-April 1997
Lowongan Pekerjaan Berbahasa Indonesia. Prosiding Seminar Nasional Aplikasi Teknologi Informasi 2010, Yogyakarta.
Resnick, Paul dan Varian, Hal R. (1997). Recommender systems. Communications of the ACM, Vol. 40, No. 3, 56-58.
67
Lampiran 1
1.1Rekomendasi Web Server
1.1.1 Login
Nama Use Case Login
Aktor Admin
Deskripsi Use
Case
Use case ini menggambarkan proses Admin melakukan login sebelum masuk ke sistem, dengan memasukkan user dan password.
Kondisi awal Admin memiliki password.
Pemicu Use case ini digunanakan apabila Admin ingin masuk ke dalam
sistem.
Langkah Umum Kegiatan aktor Respon sistem
Langkah 1:
Admin memasukan user dan password.
Langkah 2:
Kemudian mengeklik tombol
“Login”.
Langkah 3:
Sistem akan memanggil query Login.
Langkah 4:
Sistem akan memproses query Login.
Langkah 5:
Sistem mengecek validasi di database.
Langkah 6:
Langkah Alternatif
Langkah 2 :
Admin mengklik tombol “Cancel”, maka kolom nama dan kata
sandi akan dikosongkan.
Kesimpulan Use case berhenti apabila Admin telah berhasil masuk kedalam halaman produk atau user membatalkan masuk ke sistem.
1.1.2 Kelola Produk
Nama Use Case Kelola Produk
Aktor Admin
Deskripsi Use
Case
Use case ini menggambarkan proses Admin melakukan penambahan dan perubahan data dari produk/barang.
Kondisi Awal Admin telah berhasil masuk menu Admin
Pemicu Use case ini digunakan apabila ingin menambah atau merubah
data barang
Langkah Umum Kegiatan aktor Respon sistem
Langkah 1:
Admin memilih menu tab
“Produk”.
Langkah 4:
Admin memasukkan data
“kode produk”, “nama
produk”, “satuan”,”harga per karton”, dan “harga per pak”
yang akan ditambahkan lalu mengklik tombol simpan.
Langkah 2:
Sistem akan menggambil field data produk dari database.
Langkah 3:
Sistem akan menampilkan data produk.
Langkah 5:
Sistem akan memanggil query tambahProduk.
Langkah 6:
produk yang telah berubah.
Langkah 7:
Sistem akan menampilkan pesan data berhasil ditambah.
Langkah Alternatif
Langkah 4 :
Admin mengklik tombol “Ubah”, sehingga sistem akan
menampilkan halaman ubah data produk yang akan diubah.
Kesimpulan Use case ini berhenti apabila Admin berhasil memasukkan
produk barang yang baru.
1.1.3 Kelola Toko
Nama Use Case Kelola Toko
Aktor Admin
Deskripsi Use
Case
Use case ini menggambarkan proses Admin melakukan penambahan dan perubahan data dari toko
Kondisi Awal Admin telah berhasil masuk menu Admin
Pemicu Use case ini digunakan apabila ingin menambah atau merubah
data toko
Langkah Umum Kegiatan actor Respon sistem
Langkah 1:
Admin memilih menu tab
“Toko”.
Langkah 4:
Admin memasukkan data
“nama toko”, “alamat toko”, “telepon”, ”longitude”, dan
“latitude” yang akan
ditambahkan lalu mengklik tombol simpan.
Langkah 2:
Sistem akan menggambil field data toko dari database.
Langkah 3:
Sistem akan menampilkan data toko
Langkah 5:
Langkah 6:
Sistem akan menyimpan data toko yang telah berubah.
Langkah 7:
Sistem akan menampilkan pesan data berhasil ditambah.
Langkah Alternatif
Langkah 4 :
Admin mengklik tombol “Ubah”, sehingga sistem akan
menampilkan halaman ubah data toko.
Langkah 4 :
Admin mengklik tombol “Hapus”, sehingga sistem akan
menghapus data toko.
Langkah 4 :
Admin mengklik tombol “Lihat”, sehingga sistem akan
menampilkan transaksi toko.
Kesimpulan Use case ini berhenti apabila Admin berhasil memasukkan data toko yang baru, merubah dan menghapus data toko
1.1.4 Kelola Sales
Nama Use Case Kelola Sales
Aktor Admin
Deskripsi Use
Case
Use case ini menggambarkan proses Admin melakukan penambahan dan perubahan data dari sales
Kondisi Awal Admin telah berhasil masuk menu Admin
Pemicu Use case ini digunakan apabila ingin menambah atau merubah
data sales
Langkah Umum Kegiatan aktor Respon sistem
Langkah 1:
Admin memilih menu tab
“Sales”.
Langkah 4:
Langkah 2:
Sistem akan menggambil field data sales dari database.
Langkah 3:
Admin memasukkan data “nama
sales”, “password sales”,
“alamat sales”, ”telepon” yang
akan ditambahkan lalu mengklik
tombol simpan. Langkah 5:
Sistem akan memanggil query tambahSales.
Langkah 6:
Sistem akan menyimpan data sales yang telah berubah.
Langkah 7:
Sistem akan menampilkan pesan data berhasil ditambah.
Langkah Alternatif
Langkah 4 :
Admin mengklik tombol “Ubah”, sehingga sistem akan
menampilkan halaman ubah data sales.
Langkah 4 :
Admin mengklik tombol “Hapus”, sehingga sistem akan
menghapus data sales.
Langkah 4 :
Admin mengklik tombol “Lihat”, sehingga sistem akan
menampilkan transaksi sales.
Kesimpulan Use case ini berhenti apabila Admin berhasil memasukkan data sales yang baru, menghapus atau merubah data sales.
1.1.5 Reindeks
Nama Use Case Reindeks
Aktor Admin
Deskripsi Use
Case
Use case ini menggambarkan proses Admin melakukan reindeksing
Kondisi Awal Admin telah berhasil masuk menu Admin
Pemicu Use case ini digunakan untuk melakukan reindeks transaksi toko
agar dapat digunakan sales untuk mencari rekomendasi.
Langkah Umum Kegiatan aktor Respon sistem
Admin memilih menu tab
“Toko”.
Langkah 4:
Admin mengklik tombol
“Reindeks“.
Langkah 2:
Sistem akan menggambil field data sales dari database.
Langkah 3:
Sistem akan menampilkan data sales.
Langkah 5:
Sistem akan memanggil query reindeks.
Langkah 6:
Sistem akan memproses query reindeks.
Langkah 7:
Sistem akan menyalinkan data
transaksi_toko ke
transaksi_toko_indeks.
Langkah 8:
Sistem akan menampilkan pesan tabel transaksi_toko_indeks telah dibentuk.
Kesimpulan Use case ini berhenti apabila Admin berhasil memasukkan data sales yang baru, menghapus atau merubah data sales.
1.2Rekomendasi Mobile
1.2.1 Login
Nama Use Case Login
Aktor Sales
Deskripsi Use
Case
Use case ini menggambarkan proses Sales melakukan login sebelum masuk ke sistem, dengan memasukkan nama dan password.
Kondisi awal Sales memiliki nama dan password yang sudah terdaftar.
sistem.
Langkah Umum Kegiatan aktor Respon sistem
Langkah 1:
Sales memasukan user dan password.
Langkah 2:
Kemudian mengeklik tombol
“Login”. Langkah 3:
Sistem akan memanggil query Login.
Langkah 4:
Sistem akan memproses query Login.
Langkah 5:
Sistem mengecek validasi di database.
Langkah 6:
Sistem menampilkan Halaman Menu Kelola.
Langkah Alternatif
Langkah 3 :
jika user dan password tidak sesuai maka sistem akan memberikan peringatan.
Kesimpulan Use case berhenti apabila Sales telah berhasil masuk kedalam menu utama atau user membatalkan masuk ke sistem.
1.2.2 Profil Sales
Nama Use Case Profil Sales
Aktor Sales
Deskripsi Use
Case
Use case ini menggambarkan proses sales melakukan penambahan produk/barang dan jumlah produk yang dibawa.
Kondisi Awal Sales telah berhasil masuk halaman profil sales.
Pemicu Use case ini digunakan apabila ingin menambah daftar list
Langkah Umum Kegiatan aktor Respon sistem
Langkah 1:
Sales memilih atau menambahkan produk yang dibawa kedalam list.
Langkah 5:
Sales mengklik nama produk.
Langkah 2:
Sistem akan melakukan query tambah-profil
Langkah 3:
Sistem akan memproses query tambah-profil kedalam database produk.
Langkah 4:
Sistem akan menampilkan list produk ke halaman profil sales.
Langkah 6:
Sistem akan melakukan query detail-profilsales.
Langkah 7:
Sistem akan memproses query detail-profilsales kedalam database transaksi_sales.
Langkah 8:
Sistem akan menampilkan detail transaksi sales.
Langkah Alternatif
Langkah 5:
Sales Mengklik menu “Lokasi Sales”, sehingga menampilkan peta lokasi sales.
Langkah 9 :
Sales memasukkan jumlah barang yang dibawa. Kemudian klik
“Simpan” Langkah 9:
Sales memilih menu “Hapus”, kemudian transaksi di tabel
transaksi_sales dihapus.
barang yang akan dipasarkan.
1.2.3 Kelola Toko
Nama Use Case Kelola Toko
Aktor Sales
Deskripsi Use
Case
Use case ini menggambarkan proses sales melakukan penambahan data transaksi penjualan produk pada toko ke dalam database.
Kondisi Awal Sales telah berhasil masuk ke halaman Kelola Toko
Pemicu Use case ini digunakan jika sales ingin menambah data toko
Langkah Umum Kegiatan actor Respon sistem
Langkah 1:
Sales memilih menu
“Kelola Toko”.
Langkah 5:
Sales mengklik nama toko.
Langkah 9:
Langkah 2:
Sistem akan melakukan query list-toko.
Langkah 3:
Sistem akan memproses query list-toko kedalam database toko.
Langkah 4:
Sistem akan menampilkan list-toko ke halaman ListToko.
Langkah 6:
Sistem akan melakukan query detail-toko.
Langkah 7:
Sistem akan memproses query detail-toko kedalam database toko.
Langkah 8:
Sistem akan menampilkan detail-toko ke halaman DetailListToko.