Post on 06-Mar-2019
13
BAB III
ANALISA DAN PERANCANGAN
3.1. Analisa
Pada bab analisa dan perancangan ini akan dibahas tentang analisa kebutuhan
dan desain antarmuka (interface) fitur analisis kedekatan matakuliah pada sistem
Lective. Modul atau fitur untuk menganalisis kedekatan matakuliah dipilih
dikarenakan dibutuhkan oleh mahasiswa, dosen maupun pihak program studi yang
menggunakan sistem Lective untuk mendesain kurikulum dan mendesain RPS
untuk mengetahui matakuliah apa saja yang materinya berdekatan. Pada bab
sebelumnya (BAB II) telah dijelaskan RPS memiliki beberapa komponen yang
salah satunya yang termasuk dalam komponen penting dalam RPS, adalah materi
pembelajaran atau materi pokok, materi pembelajaran atau materi pokok adalah
materi yang akan disampaikan oleh dosen kepada mahasiswa disetiap
pertemuannya.
Dengan dikembangkannya fitur analisis kedekatan matakuliah yang
berdasarkan materi pokok diharapkan dapat menjadi referensi bagi stackholder
(mahasiswa, dosen, program studi) untuk kepentingan masing-masing. Selain itu
dilakukan juga analisa terhadap sistem Lective, Lective adalah sistem utamanya
maka juga perlu dianalisa jika hendak mengembangkan suatu fitur untuk
sistem Lective. Lective adalah sebuah tools berbasis website yang dibangun
menggunakan bahasa pemrograman PHP dan menggunakan basis data MYSQL.
Pada basis data Lective terdapat tabel matakuliah, materi_pembelajaran dan
program_studi yang nantinya akan digunakan untuk proses analisa kedekatan
matakuliah yang berdasarkan pada tiap-tiap program studi.
3.2. Sumber Data
Pada fitur analisis kedekatan matakuliah ini data yang digunakan bersumber
dari basis data sistem Lective yaitu pada tabel matakuliah, materi_pembelajaran
dan program_studi. Berikut ini adalah potongan diagram entitas sistem Lective
14
Gambar 3. 1: Potongan Diagram Entitas Sistem Lective
3.3. Flowchart Rancangan Fitur
Pada tahap perancangan ini dibuatlah alur dari fitur analisis kedekatan
matakuliah. Dimulai dari query atau pengambilan data dari basis data sistem
Lective lalu dilakukan pre-processing, pembobotan dengan TF-IDF dan
menghitung jarak kedekatan dengan Cosine Similarity sampai dengan
menampilkan hasil dan visualisasi.
Gambar 3. 2: Flowchart Rancangan Fitur
15
3.4. Rancangan Desain Interface
Pada fitur analisis kedekatan matakuliah berdasarkan materi pokok ini
nantinya agar lebih menarik dan mudah dipahami oleh pengguna maka dilakukan
rancangan terlebih dahulu desain interface-nya. Rancangan desain interface atau
hasil dan visualisasi yang disebutkan pada poin sebelumnya adalah sebagai berikut
:
Gambar 3. 3: Rancangan Desain Interface
Pada rancangan desain interface diatas ditampilkan berupa visualisasi
kedekatan matakuliah dan dibawahnya ada tabel yang bertindak sebagai detail dari
hasil visualisasi dengan menunjukkan nilai kedekatan masing-masing matakuliah.
3.5. Desain Database Sistem Lective
Pada poin sebelumnya disebutkan bahwa data bersumber dari basis data sistem
Lective yang sudah ada, agar tidak terlalu banyak melakukan query melalui bahasa
pemrograman maka diputuskan untuk membuat sebuah view pada basis data sistem
Lective, berikut adalah rancangan view-nya :
16
Gambar 3. 4: Rancangan View di Basis Data Lective
Selain menambahkan view, ditambahkan pula sebuah tabel
(lective_analisis_kedekatan_mk) yang nantinya digunakan untuk menampung hasil
analisis, berikut ini adalah rancangan tabelnya dan berelasi dengan tabel matakuliah
dan programstudi yang saat ini sudah ada pada basis data sistem Lective :
Gambar 3. 5: Rancangan Desain Database
17
3.6. Pre-processing
Berdasarkan flowchart rancangan fitur yang telah dibuat pada poin sebelumnya
pada tahapan awal adalah melakukan pre-processing. Pre-processing yang akan
digunakan pada penelitian kali ini adalah menggunakan Tokenizing dan Stopword
Removal.
3.6.1. Tokenizing
Pada proses tokenizing ini melakukan penghilangkan simbol-simbol atau
tanda baca yang tidak penting pada dokumen, atau yang ada pada kasus penelitian
ini adalah data materi pokok atau materi pembelajaran pada RPS. Tanda baca yang
tidak penting seperti (.,*&%$#@!`~:;’”<>/?^{[]}|\=+-_) akan dihilangkan atau
diganti dengan spasi. Berikut adalah flowchart dari proses pre-processing
tokenizing :
Gambar 3. 6: Flowchart Proses Tokenizing
18
3.6.2. Stopword Removal
Setelah dilakukan tokenisasi (Tokenizing), rancangan langkah selanjutnya
adalah proses penghilangan atau penghapusan kata-kata yang dianggap tidak
penting dalam materi pembelajaran, seperti kata dan, adalah, bagaimana, yang dan
masih banyak lagi. Berikut adalah alur atau flowchart proses dilakukannya
stopword removal :
Gambar 3. 7: Flowchart Proses Stopword Removal
3.7. Pembobotan Kata Dengan Term Frequency - Inverse Document
Frequency (TF-IDF)
Pada penelitian ini semua materi pembelajaran yang didapatkan dari basis data
Lective dan telah dilakukan pre-processing akan dijadikan satu string atau kalimat
dan dikelompokkan berdasarkan masing-masing matakuliah. Pembobotan kata
19
perlu dilakukan untuk mengetahui tingkat penting atau tidaknya suatu kata dalam
materi pembelajaran, dan nilai dari hasil perhitungan pembobotan ini (tf-idf) akan
diteruskan ke perhitungan kedekatan (cosine similarity). Berikut adalah flowchart
proses tf-idf :
Gambar 3. 8: Flowchart Proses TF-IDF
Pada bagian ini selain perancangan yang menghasilkan flowchart juga
dilakukan perhitungan pembobotan kata dengan TF-IDF dengan studi kasus
sebagai contoh adalah materi pembelajaran dari matakuliah jaringan komputer,
manajemen jaringan dan komunikasi data.
Tabel 3. 1: Materi Pembelajaran
Matakuliah Materi
Jaringan Komputer (D1) Konsep dasar switching dan
konfigurasi. VLANs. Konsep
Mekanisme Routing. Inter-VLAN
20
Matakuliah Materi
Routing. Mekanisme Routing Static.
Mekanisme Routing Dynamic.
Routing Static dan Dynamic. Access
Control Lists. Dynamic Host
Configuration Protocol. Network
Address Translation (NAT)
Manajemen Jaringan (D2) Konsep Manajemen Jaringan dan
Pengenalan Router Mikrotik.
Dynamic Host Configuration
Protocol (DHCP). Bridging. Routing.
Wireless. Firewall. Quality of
Service (QoS). Tunelling. Packet
Flow Diagram. Web proxy
Komunikasi Data (3) Model komunikasi, komunikasi data,
jaringan data. Protokol layer stack,
arsitektur protokol layer, fungsi
pelayeran protokol. Konsep, prinsip
kerja, dan fungsi physical layer,
teknik encoding decoding, teknik
modulasi demodulasi. konsep, fungsi
dan prinsip kerja dari data link layer,
data link control protocol (control
flow & error control), HDLC.
konsep, fungsi dan prinsip kerja dari
medium access layer, Multiplexing,
Multiple access, topology (LAN dan
WAN), congestion control.
Setelah dilakukan pre-processing pada kedua materi pada matakuliah diatas
akan menghasilkan seperti tabel dibawah ini :
21
Tabel 3. 2: Materi Hasil Pre-processing
Matakuliah Materi
Jaringan Komputer (D1) switching konfigurasi vlans
mekanisme routing inter vlan routing
mekanisme routing static mekanisme
routing dynamic routing static
dynamic access control lists
dynamic host configuration protocol
network address translation nat
Manajemen Jaringan (D2) manajemen jaringan pengenalan
router mikrotik dynamic host
configuration protocol dhcp
bridging routing wireless firewall
quality service qos tunelling
packet flow diagram web proxy
Komunikasi Data (D3) model komunikasi komunikasi data
jaringan data protokol layer stack
arsitektur protokol layer fungsi
pelayeran protokol prinsip kerja
fungsi physical layer teknik encoding
decoding teknik modulasi
demodulasi fungsi prinsip kerja
data link layer data link control
protocol control flow error control
hdlc fungsi prinsip kerja medium
access layer multiplexing multiple
access topology lan wan
congestion control
22
3.7.1. Term Frequency (TF)
Setelah dilakukan pre-processing langkah selanjutnya adalah melakukan
perhitungan term frequency (tf), yaitu proses perhitungan banyaknya kemunculan
(frequecny) kata term (t) pada masing-masing dokumen (d) dalam kasus ini adalah
materi matakuliah
3.7.2. Document Frequency (DF)
Selanjutnya adalah menghitung berapa jumlah dokumen (materi) dimana
suatu term (kata) muncul
3.7.3. Inverse Document Frequency (IDF)
Setelah didapatkan nilai df maka selanjutnya adalah dilakukan inverse
terhadap nilai df yaitu dengan rumus : 𝒊𝒅𝒇 = 𝒍𝒐𝒈 𝒅𝒅𝒇
dimana d adalah jumlah
dokumen atau materi, sedangkan df adalah nilai df masing-masing term (kata) yang
telah dihitung pada poin sebelumnya.
3.7.4. Term Frequency - Inverse Document Frequency (TF-IDF)
Setelah mendapatkan masing-masing nilai tf dan nilai idf langkah
selanjutnya adalah menghitung bobot masing-masing term (kata) dengan rumus :
𝒘 = 𝒕𝒇×𝒊𝒅𝒇 dimana w adalah bobot masing-masing term (kata)
Tabel 3. 3: Term Frequency – Inverse Document Frequency
Term TF Idf TF x IDF D1 D2 D3 D1 D2 D3
switching 1 0 0 0.477121255 0.477121255 0 0
konfigurasi 1 0 0 0.477121255 0.477121255 0 0
vlans 1 0 0 0.477121255 0.477121255 0 0
mekanisme 3 0 0 0.477121255 1.431363764 0 0
routing 5 1 0 0.176091259 0.880456295 0.176091259 0
inter 1 0 0 0.477121255 0.477121255 0 0
vlan 1 0 0 0.477121255 0.477121255 0 0
static 2 0 0 0.477121255 0.954242509 0 0
dynamic 3 1 0 0.176091259 0.528273777 0.176091259 0
access 1 0 2 0.176091259 0.176091259 0 0.352182518
23
Term TF Idf TF x IDF D1 D2 D3 D1 D2 D3
control 1 0 4 0.176091259 0.176091259 0 0.704365036
lists 1 0 0 0.477121255 0.477121255 0 0
host 1 1 0 0.176091259 0.176091259 0.176091259 0
configuration 1 1 0 0.176091259 0.176091259 0.176091259 0
protokol 1 1 4 0 0 0 0
network 1 0 0 0.477121255 0.477121255 0 0
address 1 0 0 0.477121255 0.477121255 0 0
translation 1 0 0 0.477121255 0.477121255 0 0
nat 1 0 0 0.477121255 0.477121255 0 0
manajemen 0 1 0 0.477121255 0 0.477121255 0
jaringan 0 1 1 0.176091259 0 0.176091259 0.176091259
pengenalan 0 1 0 0.477121255 0 0.477121255 0
router 0 1 0 0.477121255 0 0.477121255 0
mikrotik 0 1 0 0.477121255 0 0.477121255 0
dhcp 0 1 0 0.477121255 0 0.477121255 0
bridging 0 1 0 0.477121255 0 0.477121255 0
wireless 0 1 0 0.477121255 0 0.477121255 0
firewall 0 1 0 0.477121255 0 0.477121255 0
quality 0 1 0 0.477121255 0 0.477121255 0
service 0 1 0 0.477121255 0 0.477121255 0
qos 0 1 0 0.477121255 0 0.477121255 0
tunelling 0 1 0 0.477121255 0 0.477121255 0
packet 0 1 0 0.477121255 0 0.477121255 0
flow 0 1 1 0.176091259 0 0.176091259 0.176091259
diagram 0 1 0 0.477121255 0 0.477121255 0
website 0 1 0 0.477121255 0 0.477121255 0
proxy 0 1 0 0.477121255 0 0.477121255 0
model 0 0 1 0.477121255 0 0 0.477121255
komunikasi 0 0 2 0.477121255 0 0 0.954242509
data 0 0 4 0.477121255 0 0 1.908485019
layer 0 0 5 0.477121255 0 0 2.385606274
stack 0 0 1 0.477121255 0 0 0.477121255
arsitektur 0 0 1 0.477121255 0 0 0.477121255
fungsi 0 0 4 0.477121255 0 0 1.908485019
pelayeran 0 0 1 0.477121255 0 0 0.477121255
prinsip 0 0 3 0.477121255 0 0 1.431363764
kerja 0 0 3 0.477121255 0 0 1.431363764
physical 0 0 1 0.477121255 0 0 0.477121255
24
Term TF Idf TF x IDF D1 D2 D3 D1 D2 D3
teknik 0 0 2 0.477121255 0 0 0.954242509
encoding 0 0 1 0.477121255 0 0 0.477121255
decoding 0 0 1 0.477121255 0 0 0.477121255
modulasi 0 0 1 0.477121255 0 0 0.477121255
demodulasi 0 0 1 0.477121255 0 0 0.477121255
link 0 0 2 0.477121255 0 0 0.954242509
error 0 0 1 0.477121255 0 0 0.477121255
hdlc 0 0 1 0.477121255 0 0 0.477121255
medium 0 0 1 0.477121255 0 0 0.477121255
multiplexing 0 0 1 0.477121255 0 0 0.477121255
multiple 0 0 1 0.477121255 0 0 0.477121255
topology 0 0 1 0.477121255 0 0 0.477121255
lan 0 0 1 0.477121255 0 0 0.477121255
wan 0 0 1 0.477121255 0 0 0.477121255
congestion 0 0 1 0.477121255 0 0 0.477121255
3.8. Cosine Similarity
Untuk mengetahui berapa jarak kedekatan berdasarkan materi pembelajaran
perlu dihitung yang pada penelitian ini menggunakan metode cosine similarity.
Berikut ini adalah flowchart dari proses perhitungan dengan cosine similarity :
Gambar 3. 9: Flowchart Cosine Similarity
25
Metode cosine similarity sendiri memiliki rumus sebagai berikut : 𝑺𝑫𝒊𝑫𝒋 =
(𝒘𝒆𝒊𝒈𝒉𝒕𝒊𝒌𝒘𝒆𝒊𝒈𝒉𝒕𝒋𝒌)𝑳𝒌5𝟏
𝒘𝒆𝒊𝒈𝒉𝒕𝒊𝒌𝟐 𝑳
𝒌5𝟏 × 𝒘𝒆𝒊𝒈𝒉𝒕𝒋𝒌𝟐𝑳
𝒌5𝟏
agar lebih mudah maka pada perhitungan bagian ini
akan dibagi menjadi dua langkah
a. Langkah pertama
Pada rumus (𝒘𝒆𝒊𝒈𝒉𝒕𝒊𝒌𝒘𝒆𝒊𝒈𝒉𝒕𝒋𝒌)𝑳𝒌8𝟏 diartikan sebagai bobot term pada
dokumen ke i dan dikali dengan bobot dokumen ke j lalu hasil perkalian tersebut
nantinya dijumlahkan, pada langkah ini dilakukan konversi rumus menjadi
𝑻𝑭. 𝑰𝑫𝑭𝒊×𝑻𝑭. 𝑰𝑫𝑭𝒋 yang maksudnya adalah sama.
Tabel 3. 4: Perhitungan Cosine Similarity Langkah Pertama
Term D1 x D2 D1 x D3 D2 x D3
switching 0 0 0
konfigurasi 0 0 0
vlans 0 0 0
mekanisme 0 0 0
routing 0.155040658 0 0
inter 0 0 0
vlan 0 0 0
static 0 0 0
dynamic 0.093024395 0 0
access 0 0.062016263 0
control 0 0.124032526 0
lists 0 0 0
host 0.031008132 0 0
configuration 0.031008132 0 0
protokol 0 0 0
network 0 0 0
address 0 0 0
translation 0 0 0
nat 0 0 0
manajemen 0 0 0
jaringan 0 0 0.031008132
pengenalan 0 0 0
router 0 0 0
mikrotik 0 0 0
dhcp 0 0 0
26
Term D1 x D2 D1 x D3 D2 x D3
bridging 0 0 0
wireless 0 0 0
firewall 0 0 0
quality 0 0 0
service 0 0 0
qos 0 0 0
tunelling 0 0 0
packet 0 0 0
flow 0 0 0.031008132
diagram 0 0 0
website 0 0 0
proxy 0 0 0
model 0 0 0
komunikasi 0 0 0
data 0 0 0
layer 0 0 0
stack 0 0 0
arsitektur 0 0 0
fungsi 0 0 0
pelayeran 0 0 0
prinsip 0 0 0
kerja 0 0 0
physical 0 0 0
teknik 0 0 0
encoding 0 0 0
decoding 0 0 0
modulasi 0 0 0
demodulasi 0 0 0
link 0 0 0
error 0 0 0
hdlc 0 0 0
medium 0 0 0
multiplexing 0 0 0
multiple 0 0 0
topology 0 0 0
lan 0 0 0
wan 0 0 0
congestion 0 0 0
JUMLAH 0.310081315 0.186048789 0.062016263
27
b. Langkah Kedua
Pada rumus 𝒘𝒆𝒊𝒈𝒉𝒕𝒊𝒌𝟐 𝑳𝒌8𝟏 × 𝒘𝒆𝒊𝒈𝒉𝒕𝒋𝒌𝟐𝑳
𝒌8𝟏 diartikan sebagai bobot term
ke i dan bobot term ke j, lalu masing-masing dipangkatkan lalu dijumlahkan,
setelah dijumlahkan bobot tersebut dikali lalu terakhir diakarkan. Pada langkah ini
dilakukan juga konversi rumus menjadi 𝑻𝑭. 𝑰𝑫𝑭𝒊𝟐 × 𝑻𝑭. 𝑰𝑫𝑭𝒋𝟐 yang
maksudnya sama.
Tabel 3. 5: Perhitungan Cosine Similarity Langkah Kedua
Term D1 D2 D3
switching 0.227644692 0 0
konfigurasi 0.227644692 0 0
vlans 0.227644692 0 0
mekanisme 2.048802225 0 0
routing 0.775203288 0.031008132 0
inter 0.227644692 0 0
vlan 0.227644692 0 0
static 0.910578767 0 0
dynamic 0.279073184 0.031008132 0
access 0.031008132 0 0.124032526
control 0.031008132 0 0.496130104
lists 0.227644692 0 0
host 0.031008132 0.031008132 0
configuration 0.031008132 0.031008132 0
protokol 0 0 0
network 0.227644692 0 0
address 0.227644692 0 0
translation 0.227644692 0 0
nat 0.227644692 0 0
manajemen 0 0.227644692 0
jaringan 0 0.031008132 0.031008132
pengenalan 0 0.227644692 0
router 0 0.227644692 0
mikrotik 0 0.227644692 0
dhcp 0 0.227644692 0
bridging 0 0.227644692 0
28
Term D1 D2 D3
wireless 0 0.227644692 0
firewall 0 0.227644692 0
quality 0 0.227644692 0
service 0 0.227644692 0
qos 0 0.227644692 0
tunelling 0 0.227644692 0
packet 0 0.227644692 0
flow 0 0.031008132 0.031008132
diagram 0 0.227644692 0
website 0 0.227644692 0
proxy 0 0.227644692 0
model 0 0 0.227644692
komunikasi 0 0 0.910578767
data 0 0 3.642315067
layer 0 0 5.691117293
stack 0 0 0.227644692
arsitektur 0 0 0.227644692
fungsi 0 0 3.642315067
pelayeran 0 0 0.227644692
prinsip 0 0 2.048802225
kerja 0 0 2.048802225
physical 0 0 0.227644692
teknik 0 0 0.910578767
encoding 0 0 0.227644692
decoding 0 0 0.227644692
modulasi 0 0 0.227644692
demodulasi 0 0 0.227644692
link 0 0 0.910578767
error 0 0 0.227644692
hdlc 0 0 0.227644692
medium 0 0 0.227644692
multiplexing 0 0 0.227644692
multiple 0 0 0.227644692
topology 0 0 0.227644692
lan 0 0 0.227644692
wan 0 0 0.227644692
congestion 0 0 0.227644692
JUMLAH 6.414136907 3.828363856 24.58487152
AKAR 2.532614638 1.956620519 4.958313375
29
c. Terapkan rumus Cosine Similarity
𝑺𝑫𝒊𝑫𝒋 adalah hasil dari perhitungan antara dokumen ke i dan dokumen ke j. Pada
contoh rancangan kasus di atas terdapat 3 dokumen yang berarti masing-masing
dihitung kedekatannya antara D1 – D2, D1 – D3 dan D2 – D3 sehingga didapatkan
nilai seperti dibawah ini :
Tabel 3. 6: Perhitungan Cosine Similarity
Dokumen D1 - D2 D1 - D3 D2 - D3
Similarity 0.062574859 0.014815754 0.006392416
Dari hasil perhitungan Cosine Similarity diatas didapatkan hasil (tabel 3.6)
dimana matakuliah jaringan komputer (D1) memiliki kedekatan sebesar
0.062574859 dengan matakuliah manajemen jaringan (D2), sedangkan matakuliah
jaringan komputer (D1) dan komunikasi data (D3) memiliki kedekatan sebesar
0.014815754, dan yang terakhir matakuliah manajemen jaringan (D2) memiliki
kedekatan sebesar 0.006392416 dengan matakuliah komunikasi data (D3).