• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN

3.3. Activity Diagrams

3.3.1. Activity Diagram Register

Interface Sistem

Pengguna

Masukkan username, password,

dan retype password pengecekan username di dlm database

Menampilkan pesan gagal, username sudah ada

Username sudah ada

simpan username dan password ke dalam database pengecekan password dan retype password

Username belum ada

Menampilkan pesan gagal, password tidak sama

Password sama

Password tidak sama

Menampilkan pesan berhasil register Menampilkan form registrasi Klik tombol register

Gambar 3.2 Activity Diagram Register

Gambar 3.2 menggambarkan aktivitas-aktivitas apa saja yang berlangsung ketika pengguna melakukan registrasi di dalam Sistem Rekomendasi artikel publikasi

ilmiah. Tahap awal adalah pengecekan terlebih dahulu apakah username yang

diinputkan oleh pengguna sudah ada di dalam database dan pengecekan apakah

password dan retype password yang diinputkan sama. Apabila username yang

diinputkan oleh pengguna belum ada di dalam database dan pengecekan password

dan retype password sama maka username dan password akan di masukkan ke

3.3.2. Activity Diagram Logout

Interface Sistem

Pengguna

Masukkan username dan password pengecekan username di dlm database

Menampilkan pesan gagal, username tidak ditemukan

Username tidak ada

beralih ke halaman utama pengecekan password dengan

password database Username ada

Menampilkan pesan gagal, password salah

Password salah

Password benar

Menampilkan halaman utama Menampilkan Form login

session dimulai Klik Tombol Login

Gambar 3.3Activity Diagram Login

Dari Gambar 3.3 dapat dijelaskan bahwa proses login pada sistem rekomendasi artikel Publikasi ilmiah terdiri dari beberapa proses. Pada awalnya pengguna akan mengklik tombol login. Kemudian sistem akan menampilkan form login kepada pengguna. Setelah form login ditampilkan pengguna memasukkan username dan password pada form. Kemudian sistem akan validasi username dan password yang dimasukkan oleh pengguna apabila username dan password terdapat dalam database maka halaman utama dari sistem rekomendasi artikel publikasi akan ditampilkan.

3.3.3. Activity Diagram Halaman Utama

Pengguna Interface sistem

ambil data 5 artikel publikasi terakhir yang baru disubmit,

Tampilkan data artikel

Ambil 5 author publikasi popular

ambil data 5 tag Popular minggu ini

ambil data 5 tag Popular bulan ini

Tampilkan data artikel

Tampilkan data tag

Tampilkan data tag

Gambar 3.4 Activity Diagram Halaman Utama

Gambar 3.4 merupakan activity diagram dari halaman utama dari sistem rekomendasi artikel publikasi ilmiah. Sistem akan mengambil lima data artikel publikasi terakhir yang disubmit oleh pengguna, data popular author artikel, data lima tag popular minggu ini, data lima tag popular bulan ini. Kemudian data artikel publikasi yang terakhir disubmit oleh pengguna, data tag yang paling populer minggu ini dan data tag populer bulan ini akan ditampilkan pada halaman utama.

3.3.4 Activity Diagram Halaman submit artikel

sistem Interface

Pengguna

Cek Session

Mengisi Informasi artikel

Menampilkan Halaman Utama

Menampilkan Form Submit artikel

Insert informasi artikel ke Database

Pesan Sukses insert kedatabase

Ada Tidak ada

Klik link submit artikel

Gambar 3.5 Activity Diagram Halaman submit artikel

Gambar 3.5 menjelaskan tentang submit sebuah artikel pada sistem. Sistem akan mengecek session yang ada. Apabila tidak terdapat session maka akan diarahkan ke halaman utama. Jika terdapat session maka pengguna mengklik submit artikel dan sistem akan menampilkan form untuk mengisi informasi dari artikel. Kemudian pengguna mengisi informasi artikel publikasi dan kemudian sistem akan memasukkan

3.3.5. Activity Diagram Halaman Rekomendasi Interface sistem Pengguna cek session menampilkan rekomendasi artikel

Tampilkan halaman login

Hitung rekomendasi dengan cosine based similarity Tidak ada session

ada session

Gambar 3.5 Activity Diagram Halaman Rekomendasi

Gambar 3.5 menjelaskan tentang halaman rekomendasi artikel publikasi ilmiah yang sesuai dengan minat dari pengguna. Pengguna harus login atau masuk kedalam sistem untuk melihat artikel yang direkomendasikan kepada pengguna tersebut.

3.3.6. Activity Diagram lihat daftar artikel publikasi oleh pengguna

Pengguna Interface sistem

Cek Session

Menampilkan Halaman Utama

Menampilkan artikel Yang telah disubmit

oleh user

Ada Tidak ada

Klik Link My Favourite article

Gambar 3.6 Activity Diagram Lihat artikel Yang disubmit pengguna

Gambar 3.6 menjelaskan tentang proses pengguna untuk melihat artikel yang telah diinputkan oleh pengguna. Pada awalnya sistem akan mengecek session pengguna jika session ada maka pengguna akan masuk kedalam sistem dan kemudian pengguna mengklik link my favourite article dan sistem akan menampilkan daftar artikel yang telah di inputkan oleh pengguna.

3.3.7. Activity Diagram Logout

Sistem

Pengguna Interface

cek session

Tampilkan Halaman Login

Session ada Session tdk ada

Hapus session

Gambar 3.7 Activity diagram logout

Gambar 3.7 Menjelaskan bahwa sistem akan menghapus session ketika proses logout dan akan diarahkan kehalaman login.

3.4. Flowchart

Terdapat beberapa flowchart yang ada di dalam Sistem Rekomendasi artikel publikasi berbasis tagging. Flowchart tersebut antara lain adalah :

Flowchart proses rekomendasi keseluruhan.

Flowchart perhitungan raw data pengguna

Flowchart perhitungan normalized vector pengguna

Flowchart perhitungan raw data jurnal

Flowchart perhitungan normalized vector jurnal • Flowchart perhitungan dot product / cosine similarity.

3.4.1. Flowchart Keseluruhan Rekomendasi

START

$Id_user

Ambil semua tag dari database, kemudian simpan dalam array $tag

Ambil semua jurnal yang belum pernah ditag oleh user, kemudian simpan

dalam array $jurnal

Ambil data user, kemudian simpan dalam

array $user

selesai Pembentukan raw data

untuk jurnal

Pembentukan normalized vector untuk jurnal

Pembentukan raw data user

Pembentukan normalized vector untuk user

Dot Product user x jurnal

$dot_product Urutkan hasil dot

product $dot_product dari

besar - kecil

Flowchart sistem rekomendasi dengan menggunakan dot product dapat dilihat pada gambar 3.5. Perhitungan dengan dot product dapat dijelaskan menjadi lima buah sub proses, yaitu perhitungan raw data pengguna, perhitungan normalized vector pengguna, perhitungan raw data jurnal, perhitungan normalized vector jurnal dan dot product antara pengguna dengan jurnal.

2. Flowchart Perhitungan Raw Data Pengguna

$normalizer = array(); $jlh_jurnal = array();

Untuk setiap user dalam array $user

$jlh_jurnal[$id_user] = array(); $temp = 0;

Untuk setiap tag dalam array $tag yes

$jlh_jurnal[$id_user][$id_t ag] = hitung jumlah jurnal yang dibuat oleh user

$id_userdengan tag $id_tag $normalizer[$id_user] =sqrt[$temp]; yes no no start Array $user Array $tag $normalizer $jlh_jurnal end

Menghitung jumlah jurnal yang pernah diberikan oleh

suatu user terhadap suatu tag

Gambar 3.6 Flowchart Perhitungan Raw Data Pengguna

Pada tahap ini, sistem akan membangun array yang berisi informasi tentang jumlah artikel yang telah di-tag pengguna untuk setiap tag yang ada. Jika u1 adalah pengguna yang akan dihitung kedekatannya dan t adalah tag yang tersedia di dalam sistem,

kemudian sistem akan menghitung nilai normalizer atau jarak antar vektor dengan menggunakan rumus 2.2. Berikut ini merupakan raw data pengguna sebagaimana dijelaskan dalam tabel 3.1.

Tabel 3.1 Raw Data Pengguna u1

T1 T2 T3 T4 T5 T6 Normalizer

U1 2 0 1 4 2 0 5

3. Flowchart Perhitungan Normalized Vector Pengguna

$normalized_user=array();

Untuk setiap user dalam array $user

$normalized_user[ $id_user]=array();

Untuk setiap tag dalam array $tag

$normalized_user[$id_user][$id_tag] = $jlh_jurnal[$id_jurnal][$id_tag]/$normalizer[$id_user]; yes yes no no start Array $user Array $tag $normalized_user end Menghitung normalized vector untuk user

Pada tahap ini, sistem akan membangun array normalized vector. Perhitungan

normalize vector untuk pengguna dapat dihitung dengan menggunakan rumus 2.3.

Berikut ini merupakan normalized vector untuk pengguna u1 sesuai dengan tabel 3.2. Tabel 3.2 Normalized Vector Pengguna u1

T1 T2 T3 T4 T5 T6

U1 0.4 0 0.2 0.8 0.2 0

4 Flowchart Perhitungan Raw Data Jurnal

$normalizer = array(); $jlh_user = array();

Untuk setiap jurnal dalam array $jurnal

$jlh_user[$id_jurnal] = array(); $temp = 0

yes

Untuk setiap tag dalam array $tag

$jlh_user[$id_jurnal][$id_tag] = hitung jumlah user yang memberikan tag pada $id_tag pada jurnal

$id_jurnal; $temp += pow($jlh_user[$id_jurnal][$id_tag],2); yes $normalizer[$id_jurnal] = sqrt ($temp); no no start Array $jurnal Array $tag $jlh_user $normalizer end

Menghitung jumlah user yang pernah memberikan satu tag tertentu kepada satu

jurnal tertentu

Menghitung normalizer untuk sebuah jurnal

Pada tahap ini, sistem akan membangun array yang berisi informasi tentang jumlah user yang memberikan tag setiap jurnal untuk setiap tag yang ada. Selain itu, pada tahap ini, sistem juga akan menyimpan normalizer untuk setiap jurnal yang dapat dihitung dengan rumus 2.2.

Jika j adalah jurnal yang akan dihitung kedekatannya dan t adalah tag yang tersedia di dalam sistem, berikut ini merupakan raw data jurnal sebagaimana dijelaskan dalam tabel 3.3.

Tabel 3.3 Raw Data Jurnal

T12 T2 T3 T4 T5 T6 Normalizer

j1 3 0 3 1 0 2 4,79

J2 1 0 1 3 3 3 5.38

5 Flowchart Perhitungan Normalized Vector Jurnal

$normalized_jurnal = array();

Untuk setiap jurnal dalam array $jurnal

$normalized_jurnal [$id_jurnal] =

array();

Untuk setiap tag dalam array $tag

$normalized_jurnal[$id_j urnal][$id_tag]=$jlh_user[ $id_jurnal][$id_tag]/ normalizer[$id_jurnal]; no no yes yes start Array $jurnal Array $tag $normalized_jurnal end

Menghitung normalize vector jurnal

Gambar 3.9 Flowchart Perhitungan Normalized Vector Jurnal

Pada tahap ini, sistem akan membangun array normalized vector untuk jurnal/artikel. Perhitungan normalized vector dihitung dengan menggunakan rumus 2.3. Hasil nilai normalized vector untuk jurnal/artikel dapat dilihat pada tabel 3.4.

Tabel 3.4 Normalized Vector Jurnal

T12 T2 T3 T4 T5 T6

j1 0,62 0 0,62 0,208 0 0,417

J2 0,185 0 0,185 0,557 0,557 0,557

6 Flowchart Dot Product Pengguna dengan Jurnal

$dot_product = array();

Untuk setiap user yang ada dalam

array $user

$dot_product[$id_ user] = array();

Untuk setiap jurnal yang ada di array $jurnal

$temp = 0

Untuk setiap tag yang ada di array

$tag $temp += $normalized_jurnal[$id_jurnal][$id_tag] * $normalized_user[$id_user][$id_tag] $dot_product[$id_user][$id_jurnal] = $temp; yes yes yes no no no start Array $user Array $jurnal Array $tag $dot_product end

Gambar 4.0 Flowchart Dot Product Pengguna dengan Jurnal

Pada tahap ini, sistem akan menghitung nilai dot product dari nilai vektor jurnal dan vektor dari pengguna. Perhitungan nilai dot product setiap vektor dihitung dengan menggunakan rumus 2.4.

Dokumen terkait