• Tidak ada hasil yang ditemukan

BAB V IMPLEMENTASI DAN PENGUJIAN

IV- 7 Berdasarkan hasil data pertanyaan yang diperoleh, langkah selanjutnya

adalah melakukan analisa terhadap informasi apa yang ingin diambil dari pertanyaan mahasiswa untuk setiap kategori. Informasi ini bisa menjadi kata kunci yang digunakan untuk menjawab pertanyaan mahasiswa. Berdasarkan analisa yang telah dilakukan, maka informasi yang ingin dicari dalam setiap pertanyaan untuk setiap kategori dapat dilihat pada Tabel 4.2.

Tabel 4.2 Kategori pertanyaan berdasarkan Kata Kunci

Kategori pertanyaan Kata Kunci

Penawaran Mata Kuliah

1. wajib 2. semester 10 3. pilihan

4. pilihan kurikulum 2015 5. wajib kurikulum 2015 Persyaratan Mata Kuliah 1. TA

2. metnum kurikulum 2011

Dosen Mata Kuliah 1. jst

Bidang Keahlian Dosen 1. rahmad

2. sistem pakar Deskripsi Mata Kuliah 1. aljabar linear Saran Mata Kuliah Pilihan 1. []

2. minat rpl

Berdasarkan hasil analisa di atas, maka dapat disimpulkan beberapa informasi yang ingin dicari adalah kata wajib, nama semester, kata pilihan, nama kurikulum, nama mata kuliah, nama minat, dan nama dosen. Tanda ‘[]’ pada analisa di atas adalah pertanyaan yang ditanyakan tidak memiliki informasi yang spesifik karena pertanyaan tersebut bersifat umum dalam kategori saran mata kuliah pilihan.

Nama semester, nama kurikulum, nama dosen, nama mata kuliah, dan nama minat memiliki berbagai macam penyebutan tekstual, sehingga diperlukan pengenalan entitas (NER) yang bertujuan untuk mengidentifikasi berbagai macam frasa dari kelompok named entity. Hasil analisa untuk pengenalan entitas dapat dilihat pada Tabel 4.3.

Tabel 4.3 Pengenalan Entitas

Tipe Named Entity Contoh

Semester Semester 1, semester 2, semester 3, dan

seterusnya

IV-8

Tipe Named Entity Contoh

Mata Kuliah Database, Jaringan syaraf tiruan, algoritma genetika, sistem informasi, dan seterusnya

Dosen Muhammad Fikry, Muhammad Affandes,

Muhammad Irsyad, dan seterusnya

Minat Teknologi informasi, rekayasa perangkat

lunak, sistem cerdas

Setelah didapat pengenalan entitas, maka selanjutnya membuat sebuah aturan jawaban (rule) yang digunakan chatbot untuk menjawab pertanyaan. Rule tersebut merupakan pencocokan antara kategori pertanyaan dan kata kunci. Kata kunci ini berupa informasi apa yang ingin dicari lebih spesifik yaitu bisa berupa kata atau entitas yang ingin dicari. Jika tidak ada terdapat kata atau entitas yang ingin dicari, maka kata kunci bisa dikosongkan. Analisa aturan jawaban (rule) dapat dilihat pada Tabel 4.4.

Tabel 4.4 Aturan (rule) jawaban

Kategori pertanyaan Kata Kunci Rule

Penawaran mata kuliah wajib K1R1

Penawaran mata kuliah Semester [semester] K1R2

Penawaran mata kuliah Pilihan K1R3

Penawaran mata kuliah Pilihan kurikulum

[kurikulum] K1R4

Penawaran mata kuliah Wajib kurikulum

[kurikulum] K1R5

Persyaratan Mata Kuliah [matkul] K2R1

Persyaratan Mata Kuliah [matkul] kurikulum

[kurikulum] K2R2

Dosen Mata Kuliah [matkul] K3R1

Bidang Keahlian Dosen [dosen] K4R1

Bidang Keahlian Dosen [matkul] K4R2

Deskripsi Mata Kuliah [matkul] K5R1

Saran Mata Kuliah Pilihan K6R1

IV-9

4.1.3 Analisa Data Keluaran

Tahapan ini menjelaskan bagaimana cara analisa data informasi jawaban berdasarkan pengumpulan data yang telah dilakukan dan bagaimana cara mengolah data tersebut untuk menjadi acuan chatbot dalam memberikan jawaban.

Data informasi jawaban berasal dari database sistem Sekretaris Jurusan dan data tersebut menjadi basis pengetahuan (knowledge

base) untuk chatbot dalam memberikan jawaban. Karena data informasi jawaban yang didapat dalam bentuk database, sehingga untuk

mengambil informasi di dalam database harus dilakukan analisa query database berdasarkan aturan jawaban (rule). Analisa data keluaran (jawaban) berdasarkan query database dapat dilihat pada tabel 4.5.

Tabel 4.5 Jawaban berdasarkan query database Rule

Jawaban Query Database Jawaban

K1R1

SELECT DISTINCT courses.name,courses.semester,courses.year FROM courses INNER JOIN classrooms ON classrooms.courses_id=courses.id WHERE compulsory = 1 AND year =[kurikulum] AND semester = [semester] ORDER BY semester

Mata Kuliah wajib yang tersedia berdasarkan semester dan kurikulum kamu sekarang adalah [matkul]/semester [semester]/kurikulum [kurikulum]

K1R2

SELECT DISTINCT courses.name,courses.semester,courses.year FROM courses INNER JOIN classrooms ON classrooms.courses_id=courses.id WHERE year =[kurikulum] AND semester = [semester] ORDER BY courses.name

Mata Kuliah wajib semester [semester] yang tersedia semester ini berdasarkan kurikulum kamu adalah [matkul] (kurikulum [kurikulum])

K1R3

SELECT DISTINCT courses.name,courses.year FROM courses RIGHT JOIN classrooms ON classrooms.courses_id=courses.id WHERE year =[kurikulum] AND compulsory = 0 ORDER BY courses.name

Mata Kuliah pilihan hanya bisa diambil di semeter 6 ke atas. Mata kuliah pilihan yang tersedia di semester ini untuk kurikulum kamu adalah [matkul] (kurikulum [kurikulum])

IV-10 Rule

Jawaban Query Database Jawaban

K1R4

SELECT DISTINCT courses.name,courses.year FROM courses RIGHT JOIN classrooms ON classrooms.courses_id=courses.id WHERE year = [kurikulum] AND courses.compulsory = 0 ORDER BY courses.name

Mata Kuliah pilihan kurikulum [kurikulum] semester ini adalah

[matkul]

K1R5

SELECT DISTINCT courses.name,courses.semester,courses.year FROM courses RIGHT JOIN teachingcredits ON

teachingcredits.courses_id=courses.id WHERE year = [kurikulum] AND courses.compulsory = 1 ORDER BY courses.name

Mata Kuliah wajib kurikulum [kurikulum] semester ini adalah [matkul] (semester [semester])

K2R1 SELECT DISTINCT name,year,semester,prerequisite FROM courses WHERE relative_name LIKE "%[matkul]%" AND year =[kurikulum]

Syarat mata kuliah [matkul] untuk kurikulum ([kurikulum]) adalah (syarat). Pastikan kamu lulus syarat untuk mengambilnya

K2R2 SELECT DISTINCT * FROM courses WHERE relative_name LIKE "%[matkul]%" AND year = [kurikulum]

Syarat mata kuliah [matkul] untuk kurikulum ([kurikulum]) adalah (syarat). Pastikan kamu lulus syarat untuk mengambilnya

K3R1

SELECT courses.name,courses.id FROM courses INNER JOIN classrooms ON classrooms.courses_id=courses.id WHERE courses.relative_name LIKE "%[matkul]%"'

SELECT DISTINCT courses.name,educators.name FROM courses INNER JOIN teachingcredits ON teachingcredits.courses_id=courses.id INNER JOIN educators ON teachingcredits.educators_id=educators.id WHERE courses.relative_name LIKE "%[matkul]%"

Dosen yang mengajar mata kuliah [matkul] semester ini adalah [dosen]

IV-11 Rule

Jawaban Query Database Jawaban

K4R2

SELECT DISTINCT

courses.name,courses.relative_name,teachingcredits.educators_id,educator s.name,educators.id FROM teachingcredits RIGHT JOIN courses ON teachingcredits.courses_id=courses.id RIGHT JOIN educators ON

teachingcredits.educators_id=educators.id WHERE courses.relative_name LIKE "%[matkul]%"

SELECT name,relative_field_of_expertise,field_of_expertise FROM educators WHERE relative_field_of_expertise LIKE "%[matkul]%"

Dosen yang mengerti mata kuliah [matkul] adalah [dosen]. kamu bisa berkonsultasi langsung dengan dosen tersebut

K5R1 SELECT DISTINCT description FROM courses WHERE relative_name

LIKE "%[matkul]%" [deskripsi]

K6R1 SELECT DISTINCT group_name FROM courses WHERE group_name LIKE "%minat%"'

Mata kuliah pilihan tergantung minat kamu dan dapat diambil di semester 6 ke atas. Pastikan kamu lulus syarat untuk mengambilnya. Beberapa minat diantaranya [minat]

K6R2 SELECT DISTINCT * FROM courses WHERE courses.relative_group_name LIKE "%[minat]%"

Mata kuliah dari minat [minat] adalah [matkul]. Ambil mata kuliah pilihan yang belum kamu ambil dan pastikan kamu memenuhi syarat

IV-12

4.1.4 Analisa Program Chatbot

Tahapan analisa program chatbot dilakukan dengan menganalisa cara kerja

chatbot dalam memberikan jawaban. Pengguna dapat berinteraksi dengan chatbot

dengan cara memasukan pertanyaan berupa kalimat. Sebelum kategori pertanyaan diketahui, maka akan dilakukan tahapan text preprocessing terlebih dahulu agar pertanyaan tersebut nanti dapat diolah oleh chatbot. Setelah melakukan text

preprocessing, langkah selanjutnya adalah melakukan pembobotan kata dengan

menggunakan TF IDF. Kemudian data tersebut diolah dan dicari kategori pertanyaan dengan menggunakan Naïve Bayes Classifier. Kategori pertanyaan berguna untuk mengetahui kategori pertanyaan (maksud). Setelah kategori pertanyaan didapat, sistem memeriksa kata kunci berdasarkan informasi apa yang ingin dicari dari pertanyaan tersebut. Jika informasi yang dicari berupa frasa dari kelompok entitas, maka sistem akan mengecek entitas apa yang ingin dicari. Setelah itu mencocokan kategori pertanyaan dengan kata kunci. Jika kategori dan kata kunci ditemukan maka akan didapat aturan (rule) jawaban, maka proses selanjutnya adalah mencari jawaban dari pertanyaan tersebut berdasarkan aturan (rule) query

database yang telah ditentukan di dalam database akademik. Setelah jawaban

berdasarkan aturan query database ditemukan, maka chatbot akan menampilkan respon atau jawaban dalam layar sebagai output. Alur analisa program chatbot dapat dilihat pada gambar 4.3.

IV-13

Dokumen terkait