3.1.2 SOFTWARE REQUIREMENT ANALYSIS
Seperti yang sudah dijelaskan pada pendahuluan, bahwa Sistem Rekomendasi Penjualan Obat Menggunakan Pendekatan Content Based
Filtering Berbasis Mobile Android akan berjalan hanya pada ponsel yang memiliki sistem operasi Android.
3.2. PERANCANGAN SISTEM
3.2.1 ARSITEKTUR SISTEM
Web server
Pengguna
Gambar 3.1 Arsitektur Sistem
Pada gambar diatas dapat dijelaskan bahwa pengguna dapat menggunakan aplikasi yang dapat diakses melalui device mobile yang
terkoneksi dengan internet. Untuk penyimpanan data dan proses rekomendasi yaitu perhitungan vector space model terdapat di web server.
Proses perhitungan yang terjadi dalam web server dapat dijelaskan pada gambar 3.2 arsitektur aplikasi dibawah ini.
Input data obat, kelas, resep dokter
Data Corpus kelas, dokter
Vektor Space Model
Cosine Similarity
List rekomendasi MedRep
Masukkan profile kelas
Gambar 3.2 Arsitektur aplikasi
Pada gambar diatas terdapat beberapa langkah yang harus dilakukan untuk mendapatkan list rekomendasi dokter. Langkah pertama, inputan
untuk sistem merupakan data resep dari dokter yang telah di rekap berupa data obat yang sering diresepkan dalam waktu 1 bulan. Data Corpus
merupakan data yang sudah diolah yang dapat digunakan untuk pembentukan rekomendasi pada sistem. Data corpus ini berisi data dokter,
kelas dan bobot. Jumlah bobot di dapat dari jumlah frekuensi setiap obat
yang diresepkan dokter dan memiliki kelas yang sama. Kemudian data corpus disimpan dalam table vektor. Masukkan profil medrep berupa nama
kelas dari obat yang dibawa oleh medrep. Kemudian data tersebut akan diproses menggunakan pendekatan VSM yang akan direpresentasikan
dalam bentuk vektor. PendekatanVSM ini akan membandingkan 2 profil yaitu profil query dan profil item pembanding. Kemudian dari kedua profil
tersebut akan membentuk vektor yang akan dihitung kemiripannya menggunakan Cosine Similarity. Semakin dekat dua vektor di dalam VSM
semakin mirip 2 profil yang diwakili oleh vektor tersebut. Berdasarkan urutan kemiripan dari hasil perhitungan maka sistem akan menampilkan
list rekomendasi sesuai dengan hasil perhitungannya. Hasil yang mendekati angka 1 merupakan rekomendasi yang paling mendekati
dengan query profil. Berikut adalah contoh perhitungan manual untuk proses rekomendasi
pada sistem yang akan dibuat. Ada dua profil yang masing-masing akan dibandingkan, yang pertama adalah profil query yang isinya adalah profil
item dari pengguna atau MedRep. Yang kedua adalah profil item pembanding yaitu profil item dari dokter yang terbentuk dari data vektor.
Kemudian dari perhitungan di bawah ini akan dicari nilai kecocokan antara masing-masing profil yang dibandingkan kemudian diurutkan
berdasarkan nilai tertinggi yang mendekati angka 1.
Tabel 3.1 Tabel Data profil
MedRep Dokter 1
Dokter 2 Dokter 3
Dokter 4 Dokter 5
Kelas A 5
9 2
9 Kelas B
3 Kelas C
6 4
Kelas D 1
9 10
8 Kelas E
3 7
5 Kelas F
1 6
2 3
2 Kelas G
1 7
7 6
Kelas H 3
7 2
Pada tabel diatas berisi profil dokter dan profil medrep. Setiap profil ditunjukkan dalam bentuk vektor. Saat pembentukan rekomendasi, bobot pada
dokter tidak akan diperhitungkan sehingga setiap dokter yang memiliki bobot akan diubah menjadi 1, dan nilai 0 jika tidak memiliki bobot. Berikut adalah
tabel data vektor yang sudah diubah menggunakan nilai 1 dan 0.
Tabel 3.2 Tabel Data vektor
MedRep Dokter 1
Dokter 2 Dokter 3
Dokter 4 Dokter 5
Kelas A 1
1 1
1 Kelas B
1 Kelas C
1 1
Kelas D 1
1 1
1 Kelas E
1 1
1 Kelas F
1 1
1 1
1 Kelas G
1 1
1 1
Kelas H 1
1 1
Tabel diatas dapat dijelaskan bahwa profil medrep yang terbentuk berisi obat dengan kelas D, F dan G. Kemudian profil dokter1 yang terbentuk berisi
obat dengan kelas A, B, F dan G. Kedua profil tersebut akan dibandingkan dan dihitung menggunakan rumus CosSim. Berikut adalah langkah-langkah yang
dilakukan untuk menghasilkan nilai cosim.
Tabel 3.3 Tabel Data perkalian
w
Qj
dan
w
ij
MedRep Dokter 1
Dokter 2 Dokter 3
Dokter 4 Dokter 5
Kelas A Kelas B
Kelas C Kelas D
1 1
1 1
Kelas E 1
1 1
Kelas F 1
1 1
1 1
Kelas G 1
1 1
1 Kelas H
Sum 2
1 1
3 3
Tabel diatas menjelaskan perkalian dari bobot dokter
w
ij dengan bobot
medrep
w
Qj dan menjumlahkan untuk setiap bobot dokter.
Tabel 3.4 Tabel Data kuadrat
w
Qj
dan
w
ij
MedRep Dokter 1
Dokter 2 Dokter 3
Dokter 4 Dokter 5
Kelas A 1
1 1
1 Kelas B
1 Kelas C
1 1
Kelas D 1
1 1
1 Kelas E
1 1
1 Kelas F
1 1
1 1
1 Kelas G
1 1
1 1
Kelas H 1
1 1
Sum 3
4 4
4 6
5 Sqrtsum 1.732051
2 2
2 2.44949
2.236068 Cosin
0.57735 0.288675 0.288675 0.707107 0.774597
Tabel diatas menjelaskan kuadrat dari bobot dokter
w
ij dan kuadrat
bobot medrep
w
Qj . Kemudian penjumlahan untuk setiap bobot dokter dan
mendapatkan hasil akhir yaitu nilai cosin untuk setiap dokter.
Perhitungan ini menggunakan rumus Cosine Similarity yaitu :
CosSimQ,D
i
=
t j
t j
t j
w w
w w
ij Qj
ij Qj
1 1
2 2
1
dimana
w
ij merupakan bobot dari profil dokter dan
w
Qj merupakan
bobot dari profil medrep. Sebagai contoh hasil perhitungan di atas, akan dijelaskan sebagai berikut :
1. Profil Dokter 4 akan dihitung nilai kemiripannya dengan profil MedRep.
2. Jika dimasukkan ke dalam rumus : Cosin = sumdokter4MedRep sqrtdokter42sqrtMedRep2
Cosin= 1
1 1
1 +
1 +
1 +
1 +
1 +
+ +
1 +
1 +
1 +
+ 1
+ +
+
Cosin =
3 6
3
Cosin = 0.707107
Dari hasil perhitungan di atas ditunjukkan bahwa hasil query yang mendekati dengan profil item yang dicari adalah Dokter5 dan Dokter4.
Hal ini ditunjukkan dengan nilai Cosin yang mendekati nilai 1 yaitu
0.774597
untuk Dokter5 dan 0.707107 untuk Dokter4. Selanjutnya profil
yang direkomendasikan akan diurutkan berdasarkan nilai cosin yang terbesar. Sehingga urutan profil yang akan direkomendasikan adalah
Dokter5, Dokter4, Dokter1, Dokter2 dan Dokter3.
3.3. DESAIN MODEL SECARA UMUM