SISTEM REKOMENDASI PADA INFORMAL E-LEARNING
MENGGUNAKAN METODE COLLABORATIVE FILTERING DENGAN
ALGORITMA SLOPE ONE
SKRIPSI
ANDRYAN SITUNGKIR
081402047
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
SISTEM REKOMENDASI PADA
INFORMAL E-LEARNING
MENGGUNAKAN
METODE
COLLABORATIVE FILTERING
DENGAN ALGORITMA
SLOPE ONE
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul
: SISTEM REKOMENDASI PADA INFORMAL
E-LEARNING
MENGGUNAKAN
METODE
COLLABORATIVE
FILTERING
DENGAN
ALGORITMA SLOPE ONE.
Kategori
: SKRIPSI
Nama
: ANDRYAN SITUNGKIR
Nomor Induk Mahasiswa
: 081402047
Program Studi
: SARJANA (S1) TEKNOLOGI INFORMASI
Departemen
: TEKNOLOGI INFORMASI
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
(FASILKOMTI) UNIVERSITAS SUMATERA UTARA
Diluluskan di:
Medan, Februari 2014
Komisi Pembimbing :
Pembimbing 2
Pembimbing 1
Drs. Marihat Situmorang, M.Si.
Dr. Mahyuddin K. M. Nasution, M.IT.
NIP 196312141989031001
NIP 196712251998021001
Diketahui/Disetujui oleh
Program Studi S1 Teknologi Informasi
Ketua,
PERNYATAAN
SISTEM REKOMENDASI PADA
INFORMAL E-LEARNING
MENGGUNAKAN
METODE
COLLABORATIVE FILTERING
DENGAN ALGORITMA
SLOPE ONE
SKRIPSI
Saya mengakui bahwa Skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan
dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, April 2014
UCAPAN TERIMA KASIH
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala kasih dan
karunia-Nya yang telah memberikan kesehatan dan kekuatan kepada penulis sehingga skripsi ini
dapat diselesaikan dengan baik. Skripsi ini diajukan sebagai salah satu syarat untuk
memperoleh gelar Sarjana Teknologi Informasi di Fakultas Ilmu Komputer dan Teknologi
Informasi Universitas Sumatera Utara.
Dalam kesempatan ini, penulis menyampaikan ucapan terima kasih banyak kepada
Bapak Dr. Mahyuddin K. M. Nasution, M.IT sebagai pembimbing I dan Drs. Marihat
Situmorang, M.Si sebagai pembimbing II yang telah memberikan bimbingan, motivasi, kritik
dan saran-saran kepada penulis sejak awal penelitian sampai dengan selesainya penulisan
skripsi ini. Terima kasih juga kepada Bapak Drs. Sawaluddin, M.IT dan Bapak M. Fadly
Syahputra, B.Sc, M.Sc.IT atas kesediaan menjadi dosen penguji untuk memberikan kritik dan
saran yang baik. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program
Studi Teknologi Informasi, Prof. Dr. Opim Salim Sitompul, M.Sc. dan Drs. Sawaluddin,
M.IT, Dekan dan Pembantu Dekan Fasilkom-TI USU, semua dosen pengajar di Program
Studi S1 Teknologi Informasi atas ilmu yang penulis dapatkan selama mengikuti perkuliahan.
Terima kasih yang sangat istimewa buat kedua orang tua yang sangat penulis cintai,
Ayahanda M.Situngkir, S.Pd dan Ibunda S. br. Simarmata yang telah terlibat banyak dalam
setiap langkah kehidupan saya. Terima kasih atas pengorbanan, kasih sayang, doa, semangat,
motivasidan dukungan dalam bentuk materi maupun moril yang sungguh luar biasa nilainya.
Terima kasih buatabang-abang dan kakak saya (Bang Dika, Bang Andos dan Kak Meyrist)
yang selalu memberi semangat, doa, dukungan dan nasehat kepada penulis.Terima kasih yang
sebesar-besarnya buat Tulang L. Simarmata dan Nantulang D. br. Sihaloho yang sangat
penyayang, juga buat Bang Riris, Kak Sheylin, Kak Sica, Kak David, Bang Iyan, beserta
keluarga dan yang teristimewa Kak Rut dan Bang Haye, yang telah banyak mengorbankan
waktu dan perasaan dalam membantu pembentukan karakter penulis sejak tiba di Kota
Medan, juga kepada keluarga besar Op. Ruspal Simarmata, terima kasih atas doa, dukungan,
nasehat dan keteladanan yang diberikan.
Terima kasih buat teman-teman masa kecil yang sangat saya rindukan, Irpan, Jumadin
dan Johanson, juga buat teman-teman dari R-NHKBP Simarmata, terima kasih atas
masa-masa kebersamaan yang kita lalui, terima kasih atas dukungan dan semangat yang kalian
berikan. Terima kasih juga buat teman-teman SMP dan SMA saya, atas candaan dan hari-hari
yang menjadi salah satu kenangan terindah yang masih mengisi memori saya, terima kasih
atas dukungannya. Terima kasih juga buat teman-
teman seperjuangan TIâ08 yang sangat
menginspirasi, teristimewa buat teman saya Tulus dan Sakti terima kasih atas kebersamaan
kita selama kuliah di Teknologi Informasi, semoga kesuksesan segera menghampiri kita
semua.
ABSTRAK
Penelitian ini dilakukan untuk menghasilkan rekomendasi pada informal e-learning. Teknik
rekomendasi yang digunakan adalah item-based collaborative filtering. Item-based
collaborative filtering akan bekerja dengan cara mempelajari pola rating dari pengguna,
kemudian memberikan rekomendasi. Tugas akhir ini menggunakan algoritma Slope One
dalam implementasinya. Parameter yang digunakan dalam penelitian ini adalah rating yang
diberikan pengguna terhadap item tertentu. Akurasi prediksi yang dihasilkan oleh algoritma
Slope One akan semakin meningkat dengan bertambahnya jumlah user yang memberikan
rating terhadap item yang tersedia. Hasil rekomendasi pada algoritma Slope One
menunjukkan ketidaksesuaian antara tipe item hasil rekomendasi dengan tipe item yang telah
diberi rating oleh pengguna aktif. Hal ini disebabkan proses prediksi rating pada algoritma
Slope One tidak memperhatikan tipe atau konten dari item, tetapi lebih memperhatikan
kemiripan pola rating.
RECOMMENDATION SYSTEM IN INFORMAL E-LEARNING USING
COLLABORATIVE FILTERING WITH SLOPE ONE ALGORITHM
ABSTRACT
This study was conducted to generate recommendations on informal e-learning. The
recommendation technique used is the item-based collaborative filtering. Item-based
collaborative filtering will work by studying the patterns of user ratings, and then provide
recommendations. This final project using Slope One algorithm implementation. The
parameters used in this research is the rating given by user to a particular item. Accuracy of
predictions generated by Slope One algorithm will increase with increasing number of users
who give ratings to the items available. The recommendations on the Slope One algorithm
shows a mismatch between the type of item based on the recommendation with the type of
items that have been rated by the active user. This is due to the predicted rating on Slope One
algorithm does not pay attention to the type or content of the items, but pays more attention to
the similarity rating pattern.
Daftar Isi
Halaman
Halaman Judul
i
Persetujuan
ii
Pernyataan
iii
Ucapan Terima Kasih
iv
Abstrak
v
Abstract
vi
Daftar Isi
vii
Daftar Tabel
ix
Daftar Gambar
x
Bab 1 Pendahuluan
1
1.1. Latar Belakang
1
1.2. Rumusan Masalah
2
1.3. Batasan Masalah
2
1.4. Tujuan dan Manfaat Penelitian
2
1.5. Metodologi Penelitian
3
1.6. Sistematika Penulisan
4
Bab 2 Landasan Teori
5
2.1.E-Learning
5
2.1.1. Pengertian E-learning
5
2.1.2. Sejarah E-Learning
5
2.1.3. Fungsi E-Learning
6
2.1.4. Keunggulan dan Kekurangan
8
2.1.5. Informal E-learning
9
2.2. Sistem Rekomendasi (
Recommendation System
)
9
2.2.1. Pengertian Sistem Rekomendasi
9
2.2.2. Collaborative Filtering Recommendations
10
2.3. Algoritma Slope One
12
2.4. Unified Model Language
14
2.4.1. Diagram Use Case
16
2.4.2. Use Case Spesification
17
2.4.3. Sequence Diagram
17
2.4.4. Activity Diagram
19
2.5. Bahasa Pemrograman PHP
20
Bab 3 Analisis dan Perancangan Sistem
22
3.1. Analisis Kebutuhan
22
3.1.1. Deskripsi Sistem
22
3.1.2. Item
24
3.1.3. User
24
3.1.4. Transaksi dan Input
25
3.2. Perancangan Sistem
25
3.2.1. Use Case Diagram
25
3.2.2. Model Spesifikasi Use Case
26
3.2.4. Kelas Diagram
33
3.2.5. Activity Diagram
34
3.3. Perancangan Interface
36
3.3.1. Struktur Menu
36
3.3.2. Perancangan Tampilan
37
3.4. Proses Algoritma Slope One
39
3.4.1. Flowchart Algoritma Slope One
41
Bab 4 Implementasi dan Pengujian Sistem
42
4.1. Implementasi Sistem
42
4.2. Pengujian Sistem
43
4.3. Tampilan Halaman Sistem
53
4.3.1. Halaman Utama
53
4.3.2. Halaman Menu Register
54
4.3.3. Halaman Login
55
4.3.4. Halaman Tampilan List Artikel Berdasarkan Kategori
56
4.3.5. Halaman Detail Artikel
57
Bab 5 Kesimpulan dan Saran
59
5.1. Kesimpulan
59
5.2. Saran
59
Daftar Pustaka
60
DAFTAR TABEL
Halaman
Tabel 2.1. Contoh implementasi Slope One
13
Tabel 2.2. Elemen-elemen dari sequence diagram
18
Tabel 2.3. Simbol Aktivitas Diagram
20
Tabel 3.1. Spesifikasi
use case
26
Tabel 3.2. Contoh Algoritma Slope One
40
Tabel 4.1. Pengujian Sistem
43
Tabel 4.2. Pengujian Register
44
Tabel 4.3. Pengujian Login
46
Tabel 4.4. Hasil pengujian melihat daftar artikel
47
Tabel 4.5. Hasil pengujian melihat isi artikel
48
Tabel 4.6. Hasil pengujian memberi/meng-update rating
50
Tabel 4.7. Hasil pengujian memberikan rekomendasi
51
DAFTAR GAMBAR
Halaman
Gambar 2.1. Skema dasar Slope One
13
Gambar 2.2. Aktor-aktor
use case
16
Gambar 2.3. Aktor dan
use case
16
Gambar 2.4. Aktor,
use case
dan keterhubungan
17
Gambar 3.1. Arsitektur dasar sistem
23
Gambar 3.2. Arsitektur mesin rekomendasi
24
Gambar 3.3. Use case diagram
26
Gambar 3.4. Sequence Diagram: Lihat Artikel
30
Gambar 3.5. Sequence Diagram: Login
31
Gambar 3.6. Sequence Diagram Register
31
Gambar 3.7. Sequence Diagram Rekomendasi
32
Gambar 3.8. Sequence Diagram Pencarian
33
Gambar 3.9.
Class Diagram
33
Gambar 3.10.
Activity Diagram
Login
34
Gambar 3.11. Diagram
Activity Register
35
Gambar 3.12.
Diagram Activity
Pencarian
35
Gambar 3.13.
Activity Diagram
Rekomendasi
36
Gambar 3.14. Struktur Menu
37
Gambar 3.15. Halaman depan
37
Gambar 3.16. Register
38
Gambar 3.17. Login
38
Gambar 3.18. Halaman isi artikel
39
Gambar 3.19. Flowchart Algoritma Slope One
41
Gambar 4.1. Tampilan halaman register
45
Gambar 4.2. Halaman depan muncul setelah berhasil mendaftar
45
Gambar 4.3. Daftar database anggota terdaftar
46
Gambar 4.4. Gambar tampilan
login
47
Gambar 4.4. Tampilan setelah proses login berhasil
47
Gambar 4.5. Tampilan daftar artikel pada kategori jQuery
48
Gambar 4.6. Tampilan detail/isi artikel
49
Gambar 4.7. Tampilan database daftar artikel
49
Gambar 4.8. Gambar form rating
50
Gambar 4.9. Database rating pengguna
51
Gambar 4.10. Daftar rekomendasi diurutkan berdasarkan nilai prediksi
52
Gambar 4.11. Tampilan Form Pencarian
52
Gambar 4.12. Tampilan Hasil Pencarian
53
Gambar 4.13. Halaman depan sistem rekomendasi
53
Gambar 4.14. Tampilan halaman register
54
Gambar 4.15. Pesan error ditampilkan ketika data tidak valid
55
Gambar 4.16. Tampilan halaman login
55
Gambar 4.17. Menampilkan pesan error saat data login tidak valid
56
Gambar 4.18. Daftar artikel berdasarkan kategori
56
Gambar 4.19. Halaman isi artikel
57
ABSTRAK
Penelitian ini dilakukan untuk menghasilkan rekomendasi pada informal e-learning. Teknik
rekomendasi yang digunakan adalah item-based collaborative filtering. Item-based
collaborative filtering akan bekerja dengan cara mempelajari pola rating dari pengguna,
kemudian memberikan rekomendasi. Tugas akhir ini menggunakan algoritma Slope One
dalam implementasinya. Parameter yang digunakan dalam penelitian ini adalah rating yang
diberikan pengguna terhadap item tertentu. Akurasi prediksi yang dihasilkan oleh algoritma
Slope One akan semakin meningkat dengan bertambahnya jumlah user yang memberikan
rating terhadap item yang tersedia. Hasil rekomendasi pada algoritma Slope One
menunjukkan ketidaksesuaian antara tipe item hasil rekomendasi dengan tipe item yang telah
diberi rating oleh pengguna aktif. Hal ini disebabkan proses prediksi rating pada algoritma
Slope One tidak memperhatikan tipe atau konten dari item, tetapi lebih memperhatikan
kemiripan pola rating.
Kata kunci: Algoritma
Slope One
,
Collaborative Filtering
,
Informal E-learning,
Sistem
Rekomendasi
RECOMMENDATION SYSTEM IN INFORMAL E-LEARNING USING
COLLABORATIVE FILTERING WITH SLOPE ONE ALGORITHM
ABSTRACT
This study was conducted to generate recommendations on informal e-learning. The
recommendation technique used is the item-based collaborative filtering. Item-based
collaborative filtering will work by studying the patterns of user ratings, and then provide
recommendations. This final project using Slope One algorithm implementation. The
parameters used in this research is the rating given by user to a particular item. Accuracy of
predictions generated by Slope One algorithm will increase with increasing number of users
who give ratings to the items available. The recommendations on the Slope One algorithm
shows a mismatch between the type of item based on the recommendation with the type of
items that have been rated by the active user. This is due to the predicted rating on Slope One
algorithm does not pay attention to the type or content of the items, but pays more attention to
the similarity rating pattern.
Keyword:
Slope One Algorithm
,
Collaborative Filtering
,
Informal E-Learning,
Recommendation System.
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Seiring perkembangan teknologi informasi yang sangat pesat, kebutuhan akan
teknologi dalam berbagai bidang menjadi tidak terelakkan lagi. Berbagai bidang
profesi menggunakan media teknologi informasi untuk meningkatkan kemampuan dan
keahlian dari karyawan perusahaan maupun masyarakat umum yang ingin mengasah
kemampuan dan keahlian secara mandiri. Media yang digunakan disebut sebagai
informal e-learning
berupa blog,
e-newsletter
,
mailing list
, website pribadi, organisasi
dan perusahaan dll yang ingin mensosialisasikan jasa, program, pengetahuan atau
keterampilan tertentu pada masyarakat luas (biasanya tanpa memungut biaya).
Pada penelitian ini, penulis membuat sebuah alat rekomendasi pada
informal
e-learning
. Algoritma yang digunakan adalah algoritma
Slope One
untuk menghasilkan
rekomendasi dalam sistem
informal
e-learning
. Rekomendasi yang dihasilkan berupa
judul dari artikel, yang disesuaikan dengan persamaan pola rating pengguna lainnya.
Dengan adanya sistem rekomendasi ini, penulis berharap pengguna memperoleh
rekomendasi konten yang sesuai dengan minat dan kebutuhannya, sehingga membantu
1.2 Rumusan Masalah
E-learning
yang tersedia sekarang ini pada umumnya menyediakan
content
dengan
model yang semi-terstruktur, sehingga pengguna harus mengikuti alur yang disediakan
oleh sistem, tidak sesuai minat pengguna. Sistem
informal e-learning
ini akan
menyediakan
tool
yang dapat membantu pengguna dalam mempelajari sebuah objek
pengetahuan, yaitu alat rekomendasi yang menghasilkan rekomendasi berdasarkan
kesamaan minat dengan pengguna lain.
Dalam penelitian ini, permasalahan yang akan diselesaikan adalah:
1.
Bagaimana membangun sebuah sistem
informal
e-learning.
2.
Bagaimana menerapkan Algoritma Slope One
pada sistem
informal
e-learning
sehingga sistem dapat menghasilkan rekomendasi kepada pengguna
.
1.3 Batasan Masalah
Ruang lingkup penelitian adalah:
1.
Sistem
e-learning
yang dibuat berbasis web.
2.
Sistem yang dibangun bersifat
informal e-learning
.
3.
Metode yang digunakan adalah
collaborative filtering
dengan menggunakan
algoritma
Slope One.
4.
Kontennya berupa artikel yang berisi teks dan gambar.
5.
Bahasa yang digunakan adalah PHP dengan framework CodeIgniter, dan MySQL
sebagai databasenya.
1.4 Tujuan dan Manfaat Penelitian
Tujuan penelitian adalah membangun sebuah sistem
informal e-learning
yang mampu
menyajikan rekomendasi judul artikel dengan menggunakan algoritma Slope One.
Manfaat penelitian adalah membantu pengguna dalam mempelajari suatu objek
1.5 Metodologi Penelitian
Langkah-langkah dalam penelitian yang dilakukan oleh penulis adalah sebagai
berikut:
1.
Studi Literatur
Penulis mencari referensi yang mendukung penelitian ini. Referensi bisa berupa
jurnal-jurnal, buku, sumber online, dan berbagai sumber yang berhubungan
dengan pemrograman web, database dan sistem rekomendasi menggunakan
collaborative filtering
beserta algoritma yang digunakan.
2.
Analisis dan Perancangan
Pada tahap ini penulis melakukan analisis mengenai hal-hal apa saja yang
dibutuhkan dalam implementasi. Melakukan analisis terhadap studi literatur
dalam penerapan algoritma Slope One ke dalam sistem
informal e-learning.
Selain itu, penulis juga akan membuat desain arsitektur, database dan antarmuka
sebagai lanjutan dari tahap analisis.
3.
Implementasi
Pada tahap ini dilakukan implementasi/pengkodean program dalam aplikasi
komputer menggunakan bahasa pemrograman yang telah dipilih yang sesuai
dengan analisis dan perancangan yang sudah dilakukan.
4.
Pengujian aplikasi
Pada tahap ini dilakukan proses pengujian dan percobaan terhadap sistem, sesuai
dengan kebutuhan yang ditentukan dalam tahap analisis dan perancangan serta
memastikan program yang dibuat berjalan seperti yang diharapkan.
5.
Penyusunan Laporan
Hasil dari studi literatur, perancangan, implementasi dan pengujian ditulis ke
1.6 Sistematika Penulisan
Sistematika penulisan skripsi ini terdiri dari 5 bagian utama sebagai berikut:
BAB 1: PENDAHULUAN
Bab ini berisi tentang latar belakang masalah, rumusan masalah, batasan masalah,
tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan.
BAB 2: LANDASAN TEORI
Bab ini berisi tentang teori-teori pendukung yang digunakan untuk memahami
permasalahan yang menjadi dasar penulisan skripsi ini.
BAB 3: ANALISIS DAN PERANCANGAN
Dalam bab ini akan dibahas mengenai analisis kebutuhan dan perancangan sistem
untuk menyelesaikan masalah yang dirumuskan dalam perumusan masalah.
BAB 4: IMPLEMENTASI DAN PENGUJIAN
Bab ini membahas tentang implementasi hasil analisis dan desain ke dalam bentuk
kode program untuk dieksekusi. Kemudian dilakukan pengujian untuk mengetahui
kinerja dari aplikasi apakah sesuai dengan kebutuhan.
BAB 5: KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan yang diperoleh dari uraian-uraian dari bab-bab sebelumnya
BAB 2
LANDASAN TEORI
2.1 E-Learning
2.1.1 Pengertian E-Learning
E-learning
atau pembelajaran elektronik, merupakan salah satu bentuk dari aplikasi
Teknologi Informasi dan Komunikasi (TIK) dalam kegiatan pembelajaran. Ada beberapa
definisi
e-learning
yang dikemukakan oleh para ahli. Definisi-definisi tersebut memiliki
cakupan yang berbeda, tergantung dari perspektif yang digunakan oleh ahli yang
bersangkutan.
E-learning
merupakan suatu jenis belajar mengajar yang memungkinkan
tersampaikannya bahan ajar ke siswa dengan menggunakan media internet, intranet
atau media jaringan komputer lain (Hartley, 2001 ).
2.1.2
Sejarah E-Learning
E-learning
pertama kali diperkenalkan oleh Universitas Illionis di Urbana-Champaign
dengan menggunakan sistem instruksi berbasis komputer (
computer-assisted
instruction
) dan komputer bernama PLATO. Sejak saat itu, perkembangan
e-learning
dari masa ke masa adalah sebagai berikut:
a.
Tahun 1990 : Pada masa CBT (
Computer-Based Training
) di mana mulai
bermunculan aplikasi
e-learning
yang berjalan dalam PC
standalone
ataupun
berbentuk kemasan CD-ROM. Isi materi dalam bentuk tulisan maupun
b.
Tahun 1994 : Seiring dengan diterimanya CBT oleh masyarakat sejak tahun 1994
CBT muncul dalam bentuk paket-paket yang lebih menarik dan diproduksi secara
massal.
c.
Tahun 1997 : LMS (
Learning Management System
). Seiring dengan
perkembangan teknologi internet, masyarakat dunia mulai terkoneksi dengan
internet. Kebutuhan akan informasi yang dapat diperoleh dengan cepat mulai
dirasakan sebagai kebutuhan mutlak dan jarak serta lokasi bukanlah halangan lagi.
Dari sinilah munculnya LMS. Perkembangan LMS yang semakin pesat membuat
pemikiran baru untuk mengatasi masalah interoperabilitas antara LMS yang satu
dengan lainnya secara standar. Bentuk standar muncul misalnya standar yang
dikeluarkan oleh AICC (
Airline Industry CBT Comittee
), IMS, IEEE LOM,
ARIADNE, dsb.
d.
Tahun 1999 sebagai tahun aplikasi
e-learning
berbasis web
.
Perkembangan LMS
menuju aplikasi e-learning berbasis web berkembang secara total, baik untuk
pembelajar (
learner
) maupun administrasi belajar mengajarnya. LMS mulai
digabungkan dengan dengan situs-situs informasi, majalah dan surat kabar. Isinya
juga semakin kaya dengan perpaduan multimedia, video streaming serta
penampilan interaktif dalam berbagai pilihan format yang lebih standar dan
berukuran kecil.
2.1.3 Fungsi E-learning
Ada 3 fungsi pembelajaran elektronik terhadap kegiatan pembelajaran, yaitu sebagai
suplemen yang sifatnya opsional (pilihan), komplemen (pelengkap), atau pengganti
(substitusi) (Siahaan, 2002).
a.
Suplemen
Dikatakan berfungsi sebagai suplemen (tambahan), apabila peserta didik
mempunyai kebebasan memilih, apakah akan memanfaatkan materi pembelajaran
elektronik atau tidak. Dalam hal ini, tidak ada kewajiban/keharusan bagi peserta
didik untuk mengakses materi pembelajaran elektronik. Sekalipun sifatnya
opsional, peserta didik yang memanfaatkannya tentu akan memiliki tambahan
b.
Komplemen (Tambahan)
Dikatakan berfungsi sebagai komplemen (pelengkap) apabila materi pembelajaran
elektronik diprogramkan untuk melengkapi materi pembelajaran yang diterima
siswa di dalam kelas. Sebagai Komplemen berarti materi pembelajaran elektronik
diprogramkan untuk menjadi materi
reinforcement
(pengayaan) atau remedial bagi
peserta didik di dalam mengikuti kegiatan pembelajaran konvensional. Materi
pembelajaran elektronik dikatakan sebagai
enrichment,
apabila kepada peserta
didik yang dapat dengan cepat menguasai / memahami materi pelajaran yang
disampaikan guru secara tatap muka (
fast learners
) diberikan kesempatan untuk
mengakses materi pembelajaran elektronik yang memang secara khusus
dikembangkan untuk mereka. Tujuannya agar semakin memantapkan tingkat
penguasaan peserta didik terhadap materi pelajaran yang disajikan guru didalam
kelas. Dikatakan sebagai program remedial, apabila kepada peserta didik yang
kesulitan memahami materi pelajaran yang disajikan guru secara tatap muka di
kelas (
slow learners
)
diberikan kesempatan untuk memanfaatkan materi
pembelajaran elektronik yang memang secara khusus dirancang untuk mereka.
c.
Pengganti (Substitusi)
Beberapa perguruan tinggi di negara-negara maju memberikan beberapa
alternative model
kegiatan pembelajaran / perkuliahan kepada para mahasiswanya.
Tujuannya agar para mahasiswa dapat secara fleksibel mengelola kegiatan
perkuliahannya sesuai dengan waktu dan aktifitas lain sehari-hari mahasiswa.
E-learning
bisa mencakup pembelajaran secara formal maupun informal.
E-learning
secara formal, misalnya adalah pembelajaran dengan kurikulum, silabus,
mata pelajaran dan tes yang telah diatur dan disusun berdasarkan jadwal yang telah
disepakati pihak-pihak terkait (pengelola e-learning dan pembelajar sendiri).
Pembelajaran seperti ini biasanya tingkat interaksinya tinggi dan diwajibkan oleh
perusahaan pada karyawannya, atau pembelajaran jarak jauh yang dikelola oleh
universitas dan perusahaan-perusahaan (biasanya perusahan konsultan) yang memang
bergerak di bidang penyediaan jasa
e-learning
untuk umum.
E-learning
bisa juga
dilakukan secara informal dengan interaksi yang lebih sederhana, misalnya melalui
ingin mensosialisasikan jasa, program, pengetahuan atau keterampilan tertentu pada
masyarakat luas (biasanya tanpa memungut biaya).
2.1.4 Keunggulan dan Kekurangan
Keuntungan menggunakan
e-learning
(Wahono, 2005) diantaranya adalah sebagai
berikut:
a.
Menghemat waktu proses belajar mengajar.
b.
Mengurangi biaya transportasi.
c.
Menghemat biaya pendidikan secara keseluruhan.
d.
Menjangkau wilayah geografis yang lebih luas.
e.
Melatih pembelajaran lebih mandiri dalam mendapatkan ilmu pengetahuan.
Pemanfaatan internet untuk pembelajaran atau e-learning juga tidak terlepas dari
berbagai kekurangan. Berbagai kekurangan (Bullen, 2001 dan Beam, 1997), antara
lain:
a.
Kurangnya interaksi antara guru dan siswa atau bahkan antar siswa itu sendiri.
b.
Kecenderungan mengabaikan aspek akademik atau aspek sosial dan sebaliknya
mendorong tumbuhnya aspek bisnis / komersial.
c.
Proses belajar dan mengajarnya cenderung kearah pelatihan daripada
pendidikan.
d.
Berubahnya peran guru dari yang semula menguasai teknik pembelajaran
konvensional, juga dituntut mengetahui teknik pembelajaran menggunakan
ICT.
e.
Siswa yang tidak mempunyai motivasi belajar yang tinggi cenderung gagal.
f.
Tidak semua tempat tersedia fasilitas internet.
g.
Kurangnya tenaga yang mengetahui dan memiliki keterampilan internet.
2.1.5 Informal E-learning
1.
Aspek Lingkungan Pembelajaran:
a.
Bergantung pada aplikasi komputer, layanan web atau teknologi.
b.
Tidak bergantung pada kurikulum.
c.
Belajar bisa dilakukan dimana saja dan kapan saja selagi terhubung dengan
internet.
d.
Tidak terdapat penilaian atau sertifikat kepada pengguna untuk pencapaian
tertentu.
2.
Aspek Personal:
a.
Bersifat mandiri sesuai kebutuhan pribadi.
b.
Proses belajar yang koperatif.
Adapun aplikasi, teknologi dan layanan yang digunakan dalam
informal
e-learning
adalah:
a.
Aplikasi:
web browser
.
b.
Layanan:
search engines (Google, Bing, Yahoo), social bookmarking
(delicious), social networks (facebook, XING, eduspaces.net), RSS.
c.
Konten:
Wikipedia, Youtube, micro-publishing.
d.
Teknologi:
e-portfolios, wikis, podcasts, weblogs.
2.2 Sistem Rekomendasi (
Recommendation System
)
2.2.1 Pengertian Sistem Rekomendasi
Sistem rekomendasi merupakan model aplikasi dari hasil observasi terhadap keadaan
dan keinginan pengguna. Oleh karena itu, sistem rekomendasi memerlukan model
rekomendasi yang tepat agar hasil rekomendasi sesuai dengan kebutuhan pengguna.
Menurut Sebastia,
L et. al
(2009) sistem rekomendasi merupakan sebuah alat
personalisasi yang menyediakan sebuah informasi daftar item-item yang sesuai dengan
keinginan pengguna. Sistem rekomendasi menyimpulkan preferensi pengguna dengan
menganalisis ketersediaan data pengguna dan lingkungannya. Oleh karena itu, sistem
rekomendasi akan menawarkan kemungkinan dari penyaringan informasi personal
sehingga hanya informasi yang sesuai dengan kebutuhan dan preferensi pengguna
yang akan ditampilkan di sistem dengan menggunakan sebuah teknik atau model
Sistem rekomendasi dikelompokkan kedalam metode berikut ini, berdasarkan
bagaimana rekomendasi dibuat:
a.
Content-based Recommendations:
item yang direkomendasikan kepada
pengguna disesuaikan dengan minat pengguna di masa lalu.
b.
Collaborative Filtering Recommendations:
item yang direkomendasikan
kepada pengguna disesuaikan dengan minat dan penilaian pengguna lainnya di
masa lalu.
c.
Hybrid Approaches:
metode ini menggabungkan metode
collaborative filtering
dengan
content-based
filtering.
2.2.2 Collaborative Filtering Recommendations
Collaborative filtering
adalah salah satu teknik yang digunakan dalam sistem
rekomendasi.
Collaborative filtering
memiliki 2 pengertian, yang khusus dan yang
lebih umum (Herlocker,
et. al
, 2001). Secara umum,
collaborative filtering
adalah
proses penyaringan informasi atau pola menggunakan teknik yang melibatkan
kolaborasi antara
multiple agents,
sudut pandang, sumber data, dll. Aplikasi dalam
collaborative filtering
biasanya melibatkan kumpulan data yang sangat besar. Secara
khusus,
collaborative filtering
adalah sebuah metode dalam membuat prediksi
otomatis tentang minat pengguna dengan mengumpulkan informasi pilihan dan selera
dari banyak pengguna. Asumsi yang mendasari pendekatan
collaborative filtering
adalah jika individu A dan individu B memiliki opini tentang sesuatu, A lebih
sependapat dengan B tentang hal tersebut dibandingkan dengan orang lain yang dipilih
secara acak. Misalnya, sistem rekomendasi
collaborative filtering
untuk pilihan acara
televisi bisa membuat prediksi tentang acara televisi mana yang mungkin disukai oleh
pengguna, diberikan dalam bentuk
list
berdasarkan selera pengguna (suka atau tidak
suka).
a.
Pengantar
Collaborative Filtering
Pertumbuhan internet telah menjadikan proses ekstraksi informasi secara efektif dari
besar membutuhkan semacam mekanisme untuk menyaring informasi secara efisien.
Salah satu teknik yang digunakan untuk menangani masalah ini adalah
collaborative
filtering.
Motivasi penggunaan metode
collaborative filtering
berasal dari sebuah ide
dimana seseorang sering memperoleh rekomendasi dari seseorang yang memiliki
minat yang sama.
Collaborative filtering
mengeksplorasi kesesuaian minat dan
membuat rekomendasi kesamaan berdasarkan minat tersebut.
Collaborative filtering
biasanya membutuhkan:
a.
Partisipasi pengguna aktif
b.
Cara yang mudah untuk merepresentasikan minat pengguna ke sistem.
c.
Algoritma yang bisa menyesuaikan pengguna yang memiliki selera yang sama.
Biasanya, alur kerja
collaborative filtering
adalah:
1.
Pengguna mengungkapkan pilihannya dengan memberi
rate
pada
item
dalam
sistem
.
Rating
ini bisa dilihat kurang lebih sebagai gambaran minat pengguna
terhadap.
2.
Sistem menyesuaikan
rating
pengguna dengan pengguna lainnya dan
menemukan pengguna yang memiliki minat paling mirip.
3.
Sistem merekomendasikan
item
yang diberi
rating
tertinggi oleh pengguna
lain, kepada pengguna yang belum memberikan rating terhadap item tersebut.
b.
Metodologi
Collaborative filtering
memiliki banyak metode, tetapi pada umumnya hanya
digunakan 2 metode:
1.
User-based collaborative filtering
a.
Mencari pengguna yang memberikan pola
rating
yang sama dengan
pengguna aktif.
b.
Menggunakan
rating
dari pengguna yang sependapat yang ditemukan pada
langkah 1 untuk menghitung prediksi bagi pengguna aktif.
a.
Membangun matriks item-item yang menentukan hubungan antara pasangan
item.
b.
Menggunakan matriks, dan data pada pengguna aktif, untuk menyimpulkan
minat pengguna.
Sistem rekomendasi berbasis
collaborative filtering
dibuat untuk mengatasi
kelemahan dari sistem rekomendasi
content-based filtering
yaitu:
a.
Pendekatan
collaborative
dapat bekerja dalam domain dimana terdapat
sedikit
content
yang berasosiasi dengan item atau ditempat dimana
content
sulit
dianalisis menggunakan komputer seperti ide, masukan atau opini sehingga
menjadi
reliable
.
b.
Pendekatan
collaborative
mempunyai kemampuan untuk menyediakan
rekomendasi yang tidak terduga atau tidak disengaja, misalnya dapat
merekomendasikan item yang relevan kepada pengguna sekaligus tidak
mengandung
content
dari profil pengguna tersebut.
2.3 Algoritma Slope One
Algoritma
Slope One
merupakan salah satu algoritma yang digunakan dalam metode
collaborative filtering,
yang diperkenalkan dalam sebuah karya tulis oleh Daniel
Lemire dan Anna Mclachlan pada tahun 2005. Algoritma
Slope One
digunakan untuk
mengurangi
overfitting,
meningkatkan kinerja dan implementasi yang lebih mudah.
Slope One
didasarkan pada â
popularity differential
â yang dihitung dengan
mengurangkan
rating
rata-rata dari dua buah item (Lemere dan McGrath, 2005).
Algoritma Slope One memiliki persamaan seperti berikut:
Dimana
Cij
dalam persamaan tersebut adalah jumlah pengguna yang memberikan
rate
terhadap item
i
dan item
j.
Semakin besar nilai
Cij,
maka hasil prediksi (
r
uj+
Gambar 2.1.
Skema dasar Slope One
Misalkan:
1.
Pengguna A memberikan 1 terhadap item
I
dan 1,5 terhadap item
J
.
2.
Pengguna B memberikan 2 terhadap item
I
.
3.
Bagaimana pengguna B menilai item
J
?
4.
Jawaban dari
Slope One
adalah 2,5 (1,5-1+2 = 2,5)
Untuk contoh yang lebih nyata, perhatikan table berikut:
Tabel 2.1.
Contoh implementas Slope One
Pelanggan
Item 1
Item 2
Item 3
John
5
3
2
Mark
3
4
-
Lucy
-
2
5
Dalam hal ini, perbedaan rating rata-rata antara item 1 dan 2 adalah (2+(-1))/2 =
0.5. Oleh karena itu, berdasarkan rata-rata, item 1 di-
rate
diatas item 2 sebesar 0.5.
Demikian pula, perbedaan rata-rata antara item 3 dan 1 adalah 3. Oleh karena itu, jika
kita mencoba memprediksi penilaian Lucy terhadap item 1 menggunakan penilaiannya
terhadap item 2, kita memperoleh 2+0.5=2.5. Demikian pula, jika kita mencoba untuk
memprediksi penilaiannya terhadap item 1 menggunakan penilaiannya terhadap item
3, kita memperoleh 8 (5+3 = 8).
adalah jumlah pengguna yang memberi
rate
terhadap kedua item. Pada contoh diatas,
kita akan memprediksi
rating
untuk Lucy:
2.4 Unified Modeling Language (UML)
Unified Modeling Language (UML) adalah sebuah
âbahasaâ
yang telah menjadi
standard industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti
lunak (Dharwiyanti dan Wahono, 2003). Dengan menggunakan UML, pemodelan
informal e-learning
menjadi lebih terstruktur sebelum diimplementasikan ke bahasa
pemrograman tertentu. Unified Modeling Language (UML) bukanlah :
1.
Bahasa pemrograman visual, tetapi bahasa pemodelan visual.
2.
Spesifikasi kakas, tetapi spesifikasi bahasa pemodelan.
3.
Proses, tetapi yang memungkinkan proses-proses.
Tujuan perancangan UML adalah:
1.
Menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai untuk
mengembangkan dan pertukaran model-model yang berarti. Dalam penelitian
ini, UML digunakan dalam pemodelan interaksi antara komponen dari
informal e-learning
seperti: user dan konten.
2.
Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas
konsep-konsep inti.
3.
Mendukung spesifikasi independen bahasa pemrograman dan pengembangan
tertentu.
4.
Menyediakan basis formal untuk pemahaman bahasa pemodelan.
5.
Mendukung konsep-konsep pengembangan level lebih tinggi seperti
komponen, kolaborasi, framework dan pattern.
menggambarkan pemodelan berorientasi objek yang dilakukan. UML membagi
diagram menjadi dua tipe yaitu :
1.
Diagram Struktur
Diagram
ini
untuk
memvisualisasi,
menspesifikasi,
membangun
dan
mendokumentasikan aspek statik dari sistem. Diagram struktur di UML terdiri dari:
a.
Diagram Kelas (
Class diagram
)
b.
Diagram Objek (
Object diagram
)
c.
Diagram komponen (
Component diagram
)
d.
Diagram deployment (
Deployment Diagram
)
2. Diagram perilaku
Diagram
ini
untuk
memvisualisasi,
menspesifikasi,
membangun
dan
mendokumentasikan aspek dinamis dari sistem. Diagram struktur di UML terdiri dari:
a.
Diagram
use-case
(
Use case diagram
)
b.
Diagram sekuen (
sequence diagram
)
c.
Diagram kolaborasi (
collaboration diagram
)
d.
Diagram statechart (
Statechart diagram
)
e.
Diagram aktivitas (
Activity diagram
)
2.4.1 Diagram Use Case
Diagram
use case
merupakan salah satu diagram untuk memodelkan aspek perilaku
sistem atau digunakan untuk mendeskripsikan apa yang seharusnya dilakukan oleh
sistem (Hariyanto, 2004). Diagram use case terdiri dari beberapa elemen yaitu:
1.
Aktor
Aktor adalah pemakai sistem, dapat berupa manusia atau sistem terotomatisasi lain.
Aktor adalah sesuatu atau seseorang yang berinteraksi dengan sistem, yaitu siapa dan
apa yang menggunakan sistem. Aktor adalah tipe (kelas) bukan instan. Aktor
mempresentasikan peran bukan pemakai individu dari sistem. Aktor memiliki nama,
Gambar 2.2.
Aktor-aktor
use case
2.
Use Case
Use case
adalah cara spesifik penggunaan sistem oleh aktor.
Use case
melibatkan
interaksi antara aktor-aktor dan sistem.
Use case
mengemukakan suatu kerja yang
tampak.
Gambar 2.3.
Aktor dan
use case
3.
Keterhubungan
Keterhubungan antara
use case
dengan
use case
lain berupa generalisasi antara
use
case
yaitu :
Gambar 2.4.
Aktor,
use case
dan keterhubungan
2.4.2 Use Case Spesification
Spesifikasi
use case
memberikan gambaran lengkap spesifikasi tekstual pada use case.
Spesifikasi
use case
sistem rekomendasi dilakukan berdasarkan case yang ada pada
use case
diagram. Spesifikasi
use case
biasanya terdiri dari :
a.
Deskripsi singkat
case
, yang menjelaskan apa yang terjadi pada case.
b.
Pra kondisi yaitu keadaan apa yang terjadi sebelum
case
berlangsung.
c.
Karakteristik yang dimiliki oleh
case
.
d.
Skenario (
flow of event
) yaitu menjelaskan cara kerja case mulai dari awal
hingga akhir.
e.
Pasca kondisi yaitu keadaan apa atau output apa yang dihasilkan setelah case
berlangsung.
2.4.3 Diagram Sekuen (Sequence Diagram)
Diagram sekuen (sequence diagram) menggambarkan interaksi antar objek di dalam
dan di sekitar sistem (termasuk pengguna, display dan sebagainya) berupa message
(pesan) yang digambarkan terhadap waktu.
Diagram sekuen digunakan untuk memodelkan scenario penggunaan. Skenario
penggunaan adalah barisan kejadian yang terjadi selama satu eksekusi sistem.
Diagram sekuen menunjukkan objek sebagai garis vertical dan tiap kejadian sebagai
panah horizontal dari objek pengirim ke objek penerima. Waktu berlalu dari atas ke
Diagram sekuen (sequence diagram) memeiliki beberapa elemen yang terdiri dari:
Tabel 2.1.
Elemen-elemen dari sequence diagram
Nama
Penjelasan
Gambar
1
Objek lifeline Menggambarkan
batasan objek
2
Boundary
Berhubungan
dengan proses input
output ataupun
interface.
3
Controller
Berhubungan
dengan proses
4
Entity
Berhubungan
dengan input-output
data
5
Massage
Arrow
6
Aktivasi
Menggambarkan
aktifitas objek
7
Actor
Menggambarkan
actor sebagai objek
2.4.4
Diagram Aktivitas (Activity Diagram)
Diagram aktivitas adalah diagram
flowchart
yang diperluas untuk menunjukkan aliran
kendali satu aktivitas ke aktivitas lain. Diagram aktivitas digunakan untuk
memodelkan aspek dinamis sistem. Diagram aktivitas berupa operasi-operasi dan
aktivitas-aktivitas di
use case
(Hariyanto, 2004). Diagram aktivitas dapat digunakan
untuk:
1.
Pandangan dalam yang dilakukan di operasi.
2.
Pandangan dalam bagaimana objek-objek bekerja.
3.
Pandangan dalam aksi-aksi dan pengaruhnya pada objek-objek.
4.
Pandangan dalam dari suatu use case.
5.
Logik dari proses bisnis.
Diagram aktivitas merupakan state diagram khusus, dimana sebagian besar state
adalah action dan sebagian besar transisi di-
trigger
oleh state sebelumnya (
internal
processing
). Oleh karena itu diagram aktivitas tidak menggambarkan
behaviour
internal
sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih
menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.
Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas
menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana
aktor menggunakan sistem untuk melakukan aktivitas (Dharwiyanti dan Wahono,
Tabel 2.2
Simbol Aktivitas Diagram
2.5. Bahasa Pemrograman PHP
PHP (
Hypertext Preprocessor
) adalah bahasa komputer yang dibuat untuk
pengembangan web dinamis. Pada umumnya PHP digunakan di server namun juga
dapat berdiri sendiri sebagai aplikasi graphical (www.php.net, 2008).
Pada sistem rekomendasi
informal e-learning
ini digunakan bahasa
pemrograman PHP dalam membangun sistem dan database MySQL sebagai
penyimpanan data dan basis pengetahuan. Penggunanan PHP dan MySQL dipilih
karena PHP dan MySQl memiliki beberapa kelebihan seperti dinyatakan oleh
Nugroho, B (2008) kelebihannya sebagai berikut:
1.
Bahasa pemrograman PHP adalah sebuah bahasa
script
yang tidak melakukan
sebuah kompilasi dalam penggunaanya.
2.
Web Server yang mendukung PHP sangat mudah ditemukan, mulai dari IIS
sampai dengan Apache, dengan konfigurasi yang relatif mudah.
3.
Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan
4.
Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah
karena referensi yang banyak.
5.
PHP adalah bahasa open source yang dapat digunakan di berbagai mesin
(Linux, Unix, Windows) dan dapat dijalankan secara runtime melalui
console
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Kebutuhan Sistem
Sistem
rekomendasi
merupakan
suatu
sistem
yang
digunakan
untuk
merekomendasikan informasi bagi penggunanya. Sistem rekomendasi dibangun
dengan memperhatikan tiga objek utama yaitu:
item
(objek yang akan
direkomendasikan oleh sistem),
user
(pengguna yang menggunakan sistem),
transaksi
(aktifitas yang terjadi antara
user
dan
item
).
3.1.1 Deskripsi Sistem
Pada penelitian ini, algoritma
Slope One
digunakan untuk menghasilkan rekomendasi
dalam sistem
informal
e-learning
. Sistem rekomendasi
informal elearning
dimplementasikan dalam bentuk web. Alasan pengimplementasian perangkat lunak
berbasis web adalah untuk membuat aplikasi bisa diakses dari berbagai penjuru
dimana tersedia koneksi internet.
Bentuk sistem rekomendasi yang dibangun menggunakan arsitektur
client-server
.
Pada sisi
client
, aplikasi antarmuka pada website digunakan
user
untuk melakukan
login, mengakses konten dan mendapatkan rekomendasi, sedangkan sisi server
dilakukan perhitungan rating oleh algoritma
Slope One
dan memberikan rekomendasi
Gambar 3.1.
Arsitektur dasar sistem.
Mesin rekomendasi menerima input dari pengguna dan menentukan preferensi
tersebut berdasarkan data yang telah tersedia dan menyimpan data dalam database
sebagai data
history
pengguna, kemudian sistem akan melakukan perhitungan rating
menggunakan Algoritma Slope One terhadap preferensi pengguna yang tersimpan di
database.
Mesin rekomendasi akan menampilkan beberapa hasil rekomendasi berdasarkan
kemiripan dari preferensi pengguna sebelumnya melalui perhitungan Algoritma Slope
One.
Sistem akan menampilkan
content
beserta
rating
dan komentar/opini yang
diberikan
pengguna
sebelumnya.
Pengguna
juga
dapat
memberikan
Gambar 3.2.
Arsitektur mesin rekomendasi
3.1.2 Item
Item
merupakan objek yang akan direkomendasikan pada sistem rekomendasi.
Item
ditandai dengan kompleksitas, nilai dan kegunaan. Nilai (
value
) dari suatu item dapat
dipresentasikan dalam bentuk angka misalnya: 1 sampai 5.
Item dapat direpresentasikan menggunakan berbagai informasi. Pada sistem
rekomendasi
e-learning
ini, item direpresentasikan dalam beberapa tipe data seperti:
artikel yang memuat gambar dan teks.
3.1.3 User
Pengguna (
user
) pada sistem rekomendasi juga disebut sebagai pelanggan adalah
seseorang yang menggunakan sistem rekomendasi untuk memberikan pendapatnya
mengenai berbagai macam item dan menerima rekomendasi suatu item baru.
a.
Member
Pengguna jenis ini harus mendaftar terlebih dulu ke dalam sistem kemudian
melakukan berbagai aktifitas didalamnya, termasuk menerima rekomendasi,
menyimpan hasil rekomendasi dan mengubah profil pengguna.
b.
Tamu
Tamu pada sistem rekomendasi adalah pengguna yang memiliki keterbatasan akses
atau tidak melakukan registrasi. Pengguna tamu hanya bisa melihat isi atau
item
yang terdapat pada sistem
e-learning
berupa konten.
3.1.4. Transaksi dan Input
Pada metode
Collaborative Filtering
,
rating
adalah bentuk data transaksi sekaligus
input yang digunakan pada sistem rekomendasi. Pada sistem ini,
rating
digunakan
sebagai transaksi antara sistem dan pengguna dalam memberikan informasi dan opini
terhadap suatu item. Rating yang digunakan berbentuk numerik dengan
range
1-5.
Bentuk input lain yang bisa diberikan oleh pengguna member adalah memberi
komentar melalui kolom komentar yang disediakan pada tiap-tiap konten.
3.2 Perancangan Sistem
3.2.1
Use Case Diagram
Diagram
use case
merupakan diagram yang memodelkan aspek perilaku sistem.
Masing-masing diagram
use case
memiliki
actor, use case
dan hubungannya.
Aktor dibagi menjadi 2 bagian: admin, member dan tamu. Admin adalah pengguna
yang berhak mengubah isi dari sistem, termasuk data item dan data member. Member
merupakan pengguna yang telah melakukan registrasi ke dalam sistem. Tamu adalah
pengguna yang hanya mengunjungi sistem, tanpa melakukan registrasi ataupun login.
Member Guest Melihat judul dan
preview artikel
Melihat isi artikel
Login «uses»
«uses»
«uses»
Melakukan pencarian artikel «uses»
Memberi rating
Memberi komentar «extends»
«extends»
«include»
«include»
«uses»
«uses»
Register
«uses» «uses»
«uses»
Gambar 3.3.
Use case diagram
3.2.2 Model Spesifikasi Use Case
Spesifikasi
use case
memberikan gambaran lengkap spesifikasi tekstual pada
use case
.
Spesifikasi
use case
sistem rekomendasi dilakukan berdasarkan kasus yang ada pada
[image:39.595.114.509.85.398.2]use case
diagram yang telah digambarkan pada gambar diatas. Berikut adalah
spesikasi
setiap
use case
:
Tabel 3.1.
Spesifikasi
use case
1.
Penjelasan
singkat
Use case ini digunakan oleh member untuk melihat daftar
Pra-kondisi
User tidak harus login dulu ke dalam sistem
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan
Skenario (
flow
of events
)
Skenario dasar (
Basic Flow
):
Use case
akan dimulai saat
user member membuka portal sistem rekomendasi
e-learning.
Pasca kondisi
User
dapat melihat
content
dari sebuah item/artikel dalam
e-learning
.
2.
Penjelasan
singkat
Use case ini digunakan oleh user untuk melakukan
pencarian judul content tertentu.
Pra-kondisi
User tidak harus login dulu ke dalam sistem
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan.
Skenario (
flow
of events
)
Skenarion dasar (
Basic Flow
):
Use case
akan dimulai saat
user melakukan pencarian melalui pemberian input pada
kolom pencarian dan tombol cari.
3.
Penjelasan
singkat
Use case ini digunakan oleh member untuk melihat
content
e-learning
dan member rating.
Pra-kondisi
User harus login dulu ke dalam sistem
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan.
Skenario (
flow
of events
)
Skenario dasar (
Basic Flow
):
Use case
akan dimulai saat
user melakukan membuka link judul content tersebut.
Pasca kondisi
User (member)
dapat memberi rating.
4.
Penjelasan
singkat
Use case ini digunakan oleh member untuk melihat
content
e-learning
dan memberi komentar.
Pra-kondisi
User harus login dulu ke dalam sistem
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan.
Skenario (
flow
of events
)
Pasca kondisi
User (member)
dapat memberi komentar.
5.
Penjelasan
singkat
Use case ini digunakan oleh member untuk login
Pra-kondisi
-
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan.
Skenario (
flow
of events
)
Skenario dasar (
Basic Flow
):
Use case
akan dimulai saat
user membuka sistem.
Pasca kondisi
User (guest)
akan masuk ke sistem sebagai member dengan
hak akses tertentu.
6.
Penjelasan
singkat
Use case ini digunakan oleh user untuk mendaftar ke sistem
menjadi
member.
Pra-kondisi
-
Karakteristik
Tindakan dan eksekusi tergantung dari permintaan
pelanggan.
Skenario (
flow
of events
)
Skenario dasar (
Basic Flow
):
Use case
akan dimulai saat
user masuk ke sistem dan memilih menu âregisterâ.
3.2.3 Model Interaksi Sequence Diagram
Berikut merupakan diagram sequence yang menggambarkan interaksi antar objek di
dalam dan sekitar sistem:
a.
Diagram Sequence User: Lihat Artikel
Diagram sequence user Lihat Artikel menggambarkan perilaku sistem dalam
[image:43.595.134.498.271.528.2]melakukan proses melihat daftar artikel dan kemudian melihat artikel.
Gambar 3.4.
Sequence diagram: Lihat Artikel
b.
Diagram Sequence: Login
Diagram sequence login menggambarkan alur sistem untuk melakukan login ke
dalam sistem. Sequence dimulai ketika user memilih menu login, kemudian
mengisi username dan password. Kemudian sistem akan memeriksa apakah
Gambar 3.5.
Sequence Diagram: Login
c.
Diagram Sequence: Registrasi
Diagram sequence registrasi menggambarkan alur sistem untuk melakukan
pendaftaran ke dalam sistem. Sequence dimulai ketika user memilih menu register.
User memasukkan data registrasi, dan kemudian sistem akan memberitahu bahwa
pendaftaran berhasil sesudah data tersimpan.
[image:44.595.139.461.542.746.2]d.
Diagram Sequence Rekomendasi
Diagram sequence rekomendasi dimulai ketika user yang berhasil login melihat
sebuah artikel dari daftar artikel yang ditampilkan di halaman awal sistem. User
memberikan rating terhadap artikel tersebut, dan sistem akan menampilkan
beberapa rekomendasi.
User
Login
Masukkan username dan password
Send Validasi
Lihat daftar artikel
Pilih artikel
Berikan rating
Berikan Komentar Simpan Rating/Komentar
Tampilkan Rekomendasi Login(Boundary) Validasi User(Controller) Kontroller Daftar Artikel(
Controller)
[image:45.595.141.551.213.532.2]Kontroller Artikel(Controller)Rekomendasi(Boundary)
Gambar 3.7.
Sequence Diagram Rekomendasi
e.
Diagram Sequence Pencarian
Diagram sequence pencarian dimulai saat user memasukkan sebuah kata kunci.
Sistem kemudian menampilkan daftar artikel yang terurut berdasarkan kesamaan
User
Masukkan kata kunci
Send
Daftar artikel dicari
Tampilkan daftar artikel dicari Pilih data yang ditampilkan oleh sistem
[image:46.595.116.459.489.695.2]Controller Pencarian Controller Utama Tampilan artikel dicari(Boundaries)
Gambar 3.8.
Sequence Diagram Pencarian
3.2.4 Kelas Diagram
Kelas diagram menggambarkan keadaan atribut database pada suatu sistem. Pada
sistem ini terdapat 6 kelas, yaitu: user, rating, komentar, kategori, subjek dan artikel.
3.2.5 Activity Diagram
1. Login
Setelah melakukan pengisian form login, data input akan diperiksa setelah tombol
âLoginâ ditekan. Jika data input valid, maka user berhasil masuk ke sistem sebagai
member. Jika tidak, akan kembali ke halaman login dengan sebuah pesan error.
Gambar 3.10.
Activity Diagram
Login
2. Registrasi
Gambar 3.11.
Diagram
Activity Register
3.
Pencarian
Pencarian dilakukan dengan memasukkan kata kunci, dan sistem akan menampilkan
daftar judul yang sesuai dengan input pencarian tersebut. Jika judul tertentu dipilih,
akan muncul konten judul dan akan muncul beberapa rekomendasi setelah salah satu
judul dibuka.
4.
Rekomendasi
User masuk ke sistem, kemudian sistem akan menampilkan daftar judul berdasarkan
tanggal dibuat secara
default
. User bisa memilih untuk menampilkan urutan artikel
berdasarkan jumlah komentar, rating atau jumlah
view
. User kemudian memilih salah
satu judul artikel untuk dibaca. Memberikan rating terhadap artikel tersebut, dan
[image:49.595.266.366.224.485.2]Algoritma
Slope One
akan bekerja untuk meng-
generate
rekomendasi.
Gambar 3.13.
Activity Diagram
Rekomendasi
3.3 Perancangan Interface
3.3.1 Struktur Menu
Struktur menu dibuat untuk memberikan kemudahan dalam pembangunan sistem.
Menu ini akan digunakan sebagai navigasi untuk membantu pengguna
MENU UTAMA
HOME ARTIKEL
PENCARIAN
REGISTER LOGIN/
[image:50.595.111.455.78.345.2]LOGOUT
Gambar 3.14.
Struktur Menu
3.3.2 Perancangan Tampilan
a.
Halaman utama
Pada halaman utama, akan ditampilkan daftar judul berita terbaru, artikel
berdasarkan jumlah komentar dan berdasarkan rating rata-rata. Di sebelah kanan
ada kolom rekomendasi untuk menampilkan rekomendasi dan juga menampilkan
daftar artikel yang terakhir dikomentari.
[image:50.595.208.426.539.748.2]b.
Halaman Register
Pada halaman register, user yang non-member melakukan registrasi untuk menjadi
[image:51.595.261.401.176.349.2]member dengan melakukan pengisian terhadap form register secara tepat.
Gambar 3.16.
Register
c.
Halaman Login
Pada halaman login, user yang sudah terdaftar melakukan login untuk ke dalam
sistem dengan memasukkan username dan password yang valid.
Gambar 3.16.
Login
Gambar 3.17.
Halaman isi artikel
3.4 Proses Algoritma Slope One
Algoritma
Slope One
merupakan salah satu algoritma yang digunakan dalam
metode
collaborative filtering,
yang diperkenalkan dalam sebuah karya tulis oleh
Daniel Lemire dan Anna Maclachlan pada tahun 2005. Algoritma
Slope One
digunakan untuk mengurangi
overfitting,
meningkatkan kinerja dan implementasi
yang lebih mudah.
Slope One
didasarkan pada â
popularity differential
â yang dihitung
dengan mengurangkan
rating
rata-rata dari dua buah item(Lemire dan McGrath,
2005).
Dimana
C
ijdalam persamaan tersebut adalah jumlah pengguna yang memberikan
rate
terhadap item
i
dan item
j.
Semakin besar nilai
C
ij,
maka hasil prediksi (
r
uj+
dev
ij) semakin akurat.
Contoh:
Tabel 3.2.
Contoh Algoritma Slope One
Item 1
Item 2
Item 3
item 4
User 1
3
4
x
3
User 2
2
3
2
y
User 3
z
3
5
1
x
=
x
=
x
= 16/4 =
4
Prediksi rating
User 1
terhadap
Item
3 adalah 4.
y =
y =
y=
3/4 =
0.75
Prediksi rating
User 2
terhadap
Item
4 adalah
0.75
.
z =
z =
z =
10/4 =
2.5
3.4.1. Flowchart Algoritma Slope One
START
Tampilkan konten
Sudah
di-rating? Update Rating
Buat Rating
Y
N
Simpan Nilai Rating
Cari konten i yang belum di-rating oleh user, dan sudah di-rating oleh pengguna
lain
Cari konten j yang di-rating oleh semua user
Hitung rata-rata selisih rating antara I dan j.
Tambahkan selisih dengan konten j terhadap user u.
Urutkan nilai dari tertinggi ke rendah
sebagai hasil rekomendasi.
[image:54.595.216.417.114.663.2]SELESAI
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Implementasi Sistem
Berikut ini adalah
hardware
dan
software
yang dibutuhkan untuk implementasi sistem
rekomendasi informal
e-learning
ini:
1.
Hardware:
Hardware
adalah komponen atau peralatan yang terdapat pada sebuah komputer
yang diperlukan agar komputer tersebut dapat beroperasi. Adapun spesifikasi yang
direkomendasikan adalah sebagai berikut:
a.
Processor AMD A8-4500M APU
b.
RAM: 4GB
c.
Hardisk 500GB
2.
Software:
Software
adalah program atau instruksi yang terpasang di dalam komputer yang
memiliki fungsi tertentu tujuan utamanya adalah memudahkan pekerjaan manusia.
Software
yang dibutuhkan dalam mengimplementasikan aplikasi ini adalah sebagai
berikut:
a.
Windows 7 Ultimate 64 bit
b.
XAMPP 1.7.7
c.
Netbeans IDE 7.3.1
4.2 Pengujian Sistem
Sistem yang dibuat kemudian diuji dengan menggunakan metode
Black Box
pada
antarmuka.
Pengujian metode
Black-Box
merupakan pengujian yang berfokus pada
spesif