BAB II TINJAUAN PUSTAKA

dokumen-dokumen yang mirip
BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN 1.1 Latar Belakang

PEMBANGUNAN APLIKASI PENCATATAN PENANGANAN GANGGUAN PT. TELKOM REGIONAL BANDUNG

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

DAFTAR SIMBOL. Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor.

BAB II LANDASAN TEORI

RANCANG BANGUN SISTEM PENCARIAN DOKUMEN JURNAL MENGGUNAKAN METODE BM25+

BAB I PENDAHULUAN 1.1 Latar Belakang

PENGEMBANGAN WEBSITE KOMUNITAS STUDI KASUS : KOMUNITAS FOTOGRAFI

PEMBUATAN APLIKASI PENERIMAAN OUTSOURCING BERBASIS WEB

DAFTAR SIMBOL. Simbol-simbol pada Usecase. No Simbol Nama Keterangan. Fungsionalitas yang disediakan. sistem sebagai unit-unit yang.

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III METODOLOGI PENELITIAN

BAB I PENDAHULUAN 1.1 Latar Belakang

SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL

PEMBUATAN APLIKASI PENERIMAAN KARYAWAN BERBASIS WEB

BAB II TINJAUAN PUSTAKA. lebih berarti bagi yang menerimanya. Definisi atau pengertian sistem secara

BAB II LANDASAN TEORI

6 Bab II Tinjauan Pustaka

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN Latar Belakang

BAB II LANDASAN TEORI

OOAD (Object Oriented Analysis and Design) UML part 2 (Activity diagram, Class diagram, Sequence diagram)

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB II. KAJIAN PUSTAKA

BAB II TINJAUAN PUSTAKA. uang, dan informasi. Sumber daya tersebut bekerjasama menuju

BAB II LANDASAN TEORI. bekerjasama untuk memproses masukan (input) yang ditunjukan kepada sistem

Sistem Temu Kembali Informasi pada Dokumen Teks Menggunakan Metode Term Frequency Inverse Document Frequency (TF-IDF)

BAB II LANDASAN TEORI

BAB I PENDAHULUAN I-1


BAB I PENDAHULUAN 1.1. Latar Belakang

Diagram Use Case. Pertemuan 3

PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL

BAB II LANDASAN TEORI

BAB III METODOLOGI PENELITIAN

1.5 Metode Penelitian

BAB 3 LANDASAN TEORI

BAB 1 PENDAHULUAN UKDW

BAB II TINJAUAN PUSTAKA

Tugas Makalah. Sistem Temu Kembali Informasi (STKI) TI Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System

BAB II LANDASAN TEORI

DAFTAR ISI. ABSTRAK... i. ABSTRACT... ii. KATA PENGANTAR... iii. DAFTAR ISI... v. DAFTAR GAMBAR... xvi. DAFTAR TABEL... xxiii. DAFTAR SIMBOL...

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB 3 ANALISIS MASALAH DAN PERANCANGAN

BAB II TINJAUAN PUSTAKA

HALAMAN JUDUL HALAMAN PERSETUJUAN

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

Tugas Makalah. Sistem Temu Kembali Informasi (STKI) TI Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System

SISTEM MONITORING PENGANTARAN OBAT PADA PT. XYZ DENGAN PEMROGRAMAN JAVA ANDROID DAN WEB

BAB III METODOLOGI PENELITIAN

Pengujian Perangkat Lunak

1. Pendahuluan 1.1 Latar belakang 1.2 Perumusan masalah

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

DAFTAR ISTILAH. Activity Diagram

BAB 1 PENDAHULUAN. masyarakat dengan Kuliah Kerja Nyata (KKN) merupakan suatu bentuk kegiatan

BAB III METODOLOGI PENELITIAN

Algoritme Pencocokan String (String Matching) Menurut Black (2016), string adalah susunan dari karakter-karakter (angka, alfabet, atau karakte

Notasi dalam UML. Actor

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PERSYARATAN PRODUK

BAB I PENDAHULUAN. penunjang Al-Quran untuk memudahkan untuk mempelajarinya, yang bisa

PEMANFAATAN ARDUINO DALAM PENGEMBANGAN SISTEM RUMAH PINTAR BERBASIS MOBILE DAN WEB (Studi Kasus : Penjadwalan Lampu Rumah)

Yuli Purwati, M.Kom USE CASE DIAGRAM

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

BAB I PENDAHULUAN. pendidikan, perbankan, perencanaan dan sebagainya. Dengan adanya teknologi komputer

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN. Pada umumnya pembaca ingin mendapatkan rangkuman suatu artikel dengan cepat

BAB I. Pendahuluan. 1. Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA

INFORMATION RETRIEVAL SYSTEM PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS DENGAN METODE VECTOR SPACE MODEL DAN ALGORITMA ECS STEMMER

BAB I PENDAHULUAN. bagaimana membuat mesin (komputer) dapat melakukan pekerjaan seperti dan

BAB 2 LANDASAN TEORI

DAFTAR ISI. KATA PENGANTAR... i. DAFTAR ISI... iii. DAFTAR GAMBAR... xi. DAFTAR TABEL... xvii. DAFTAR SIMBOL... xx BAB I PENDAHULUAN...

Citra Noviyasari, S.Si, MT SI - UNIKOM


BAB 1 PENDAHULUAN UKDW

BAB III METODELOGI PENELITIAN

BAB I PENDAHULUAN. sebagai sumber pertama dan utama yang banyak memuat ajaran-ajaran yang

BAB II LANDASDAN TEORI

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN. domain & Web Hosting. Untuk lebih jelas mengenai gambaran umum perusahaan,

ABSTRAK. Kata kunci : Information Retrieval system, Generalized Vector Space Model. Universitas Kristen Maranatha

BAB II TINJAUAN PUSTAKA

Unified Modelling Language UML

Bab III METODOLOGI PENELITIAN. Pada penelitian ini menggunakan ala penelitian berupa perangkat keras

BAB IV METODOLOGI PENELITIAN. Penelitian ini dilakukan dengan melalui empat tahap utama, dimana

BAB II TINJAUAN PUSTAKA. yang sudah ada. Beberapa alasan sistem yang lama perlu diperbaiki atau diganti

BAB II TINJAUAN PUSTAKA

Transkripsi:

BAB II TINJAUAN PUSTAKA 2.1. Sistem Temu Kembali Informasi Sistem Temu Kembali Informasi atau Information Retrieval (IR) adalah kegiatan untuk menemukan suatu material (dokumen) dari data yang tidak terstruktur (berbentuk teks) yang dapat memenuhi kebutuhan informasi yang dicari dalam koleksi dokumen yang besar. Informasi yang dikembalikan oleh IR berupa tumpukan dokumen yang relevan terhadap query yang dimasukkan oleh pengguna (Manning et al, 2008). Banyak pihak menggunakan IR untuk menyediakan informasi ke organisasinya sendiri atau publik, informasi tersebut bisa berupa buku, jurnal ataupun dokumen lain. Salah satu aplikasi umum dari sistem IR adalah search engine atau mesin pencarian yang terdapat pada jaringan internet. Pengguna dapat mencari halamanhalaman web yang dibutuhkannya melalui search engine. Sistem IR terutama berhubungan dengan pencarian informasi yang isinya tidak memiliki struktur. Demikian pula ekspresi kebutuhan pengguna yang disebut query, juga tidak memiliki struktur. Hal ini yang membedakan sistem temu kembali informasi dengan sistem basis data. Dokumen adalah contoh informasi yang tidak terstruktur. Isi dari suatu dokumen sangat tergantung pada pembuat dokumen tersebut. Sebagai suatu sistem, sistem temu kembali informasi memiliki beberapa bagian yang membangun sistem secara keseluruhan. Gambaran bagian-bagian yang terdapat pada suatu sistem temu kembali informasi digambarkan pada Gambar 2.1. 12

13 Query Ranked Documents Document Collection Text Operations Query formulation 1. Dok1 2. Dok2 3. Dok3.. Text Operations Indexing Terms Index Ranking Collection Index Gambar 2.1. Bagian-bagian Sistem Temu Kembali Informasi (Mandala & Setiawan, 2009) Dari ilustrasi pada gambar 2.1, terlihat bahwa secara umum cara kerja dari sistem IR terbagi menjadi 2 alur kerja yaitu dari sisi query dan koleksi dokumen dimana alur koleksi dokumen dijalankan terlebih dahulu. Alur pertama yaitu pemrosesan terhadap koleksi dokumen menjadi basis data indeks tidak tergantung pada alur kedua. Sedangkan alur kedua tergantung dari keberadaan basis data indeks yang dihasilkan pada alur pertama. Bagian-bagian dari Sistem Temu Kembali Informasi menurut gambar 2.1. meliputi: 1. Text Operations (operasi terhadap teks) yang meliputi pemilihan kata-kata dalam query maupun dokumen (term selection) dalam pentransformasian dokumen atau query menjadi terms index (indeks dari kata-kata). 2. Query formulation (formulasi terhadap query) yaitu memberi bobot pada indeks kata-kata query. 3. Ranking (perangkingan), mencari dokumen-dokumen yang relevan terhadap query dan mengurukan dokumen tersebut berdasarkan kesesuaiannya dengan query.

14 4. Indexing (pengindeksan), membangun basis data indeks dari koleksi dokumen. Dilakukan terlebih dahulu sebelum pencarian dokumen dilakukan. Sistem temu kembali informasi menerima query dari pengguna, kemudian melakukan perangkingan terhadap dokumen pada koleksi berdasarkan kesesuaiannya dengan query. Hasil perangkingan yang diberikan kepada pengguna merupakan dokumen yang menurut sistem relevan dengan query. Namun relevansi dokumen terhadap suatu query merupakan penilaian pengguna yang subjektif dan dipengaruhi banyak faktor seperti topik, pewaktuan, sumber informasi mapun tujuan pengguna. Model sistem temu kembali informasi menentukan detail sistem temu kembali informasi yaitu meliputi representasi dokumen maupun query, fungsi pencarian (retrieval function) dan notasi kesesuaian (relevance notation) dokumen terhadap query. 2.2. Text Preprocessing Dalam sistem IR sebelum dokumen siap digunakan perlu dilakukan tahap text preprocessing yang terdiri dari case folding, tokenizing, filtering, stemming yang dilakukan secara berurutan. 2.2.1. Case Folding Case folding adalah proses pertama kali yang dilakukan dalam rangkaian perancangan klasifikasi dokumen teks. Proses ini merupakan proses dimana kata - kata di dalam dokumen atau kalimat akan di ubah menjadi huruf kecil (a sampai z) dan menghilangkan tanda baca. Karakter lain selain huruf akan dianggap delimiter sehingga karakter tersebut akan dihilangkan atau dihapus. Hal ini dilakukan untuk mencegah terjadinya noise pada saat pengambilan informasi. Untuk selanjutnya, hasil dari case folding nantinya akan digunakan pada proses tokenisasi.

15 Gambar 2.2. Contoh Case Folding 2.2.2. Tokenizing Proses tokenisasi adalah proses pemotongan string input berdasarkan tiap kata yang menyusunnya. Hasil pemrosesan akan berupa kata yang disebut dengan token/term. Term ini nantinya akan disimpan ke dalam database untuk dilakukan indexing saat melakukan pencarian. Gambar 2.3. Contoh Tokenisasi 2.2.3. Filtering Filtering merupakan proses mengambilan kata-kata penting dari hasil tokenisasi. Tahap filtering dapat dilakukan menggunakan algoritma stoplist / stopword. Stopword adalah kata-kata yang sering muncul pada teks dalam jumlah besar dan dianggap tidak memiliki makna dan akan dihilangkan. Stopword ini dapat berupa kata penghubung, kata depan, dan kata pengganti, contohnya seperti yang,

16 di, dan, ke, dari dan lain sebagainya. Tujuan dari proses ini adalah untuk mengurangi jumlah term sehingga hanya kata-kata penting saja yang terdapat pada dictionary. Kumpulan kata yang termasuk stopwords diambil dari penelitian (Asian, 2007). Gambar 2.4. Contoh Filtering 2.2.4. Stemming Proses stemming merupakan proses untuk kata dasar dari kata yang sudah mengalami proses stopword. Pencarian kata dasar dapat memperkecil hasil indeks tanpa harus menghilangkan makna. Proses stemming dilakukan dengan menghilangkan semua imbuhan baik yang terdiri dari awalan (prefix), akhiran (surfix), sisipan (infix), bentuk perulangan dan kombinasi antara awalan dan akhiran (confix). Tujuan dari proses ini adalah untuk mengurangi variasi kata yang mempunyai kata dasar yang sama. Algoritma Stemming yang akan digunakan pada penelitian ini adalah Stemming Nazief & Adriani karena algoritma ini memiliki tingkat keakuratan (presisi) yang baik (Agusta, 2009).

17 Gambar 2.5. Contoh Stemming 2.3. BM25+ Pada model peluang, banyak terdapat fungsi-fungsi kesamaan yang digunakan, yaitu fungsi Best Match (BM). BM25 adalah metode yang dikembangkan oleh (Robertson & Jones, 1976) dan merupakan hasil dari percobaan beberapa variasi fungsi Best Match pada model peluang. BM25 memiliki fungsi yang sesuai dengan 3 prinsip pembobotan yang baik, yaitu memiliki inverse document frequecy (IDF), term frequency (TF), dan memiliki fungsi normalisasi dari panjang dokumen (document length normalization). TF merupakan jumlah kemunculan suatu term pada suatu dokumen. IDF dapat diartikan sebagai nilai keinformatifan dari sebuah term. Semakin jarang sebuah term muncul dalam koleksi dokumen atau dengan kata lain jumlah dokumen (document frequency) yang mengandung term tersebut sedikit, maka term tersebut akan semakin informatif, begitu pula sebaliknya. Sehingga nilai DF akan di-inverse untuk memberikan bobot yang besar pada term langka dan memberikan bobot yang lebih kecil untuk term yang sering muncul dalam koleksi, dimana hal ini disebut dengan bobot IDF. IDF dihitung dengan membagi jumlah koleksi dokumen dengan DF dari sebuah term. Jadi semakin kecil nilai DF dari suatu term, bobot IDF term tersebut akan semakin besar. Nilai IDF ini akan di-logaritma-kan ( log ) untuk memperkecil efek dari IDF (Manning et al, 2008). Fungsi BM25 sampai saat ini masih terus dikembangkan oleh beberapa peneliti. Salah satu pengembangan dari BM25 adalah BM25+ yang dikembangkan oleh (Lv & Zhai, 2011) dimana dalam penelitian tersebut dikatakan bahwa normalisasi TF berdasarkan panjang dokumen tidak dibatasi (lower-bounded)

18 dengan benar yang dapat menyebabkan dokumen yang memiliki jumlah kata yang banyak atau document length yang panjang bisa terabaikan. Oleh karena itu dikembangkan fungsi BM25+ dengan penambahan parameter yang digunakan sebagai TF semu untuk mengatur nilai batas bawah dari normalisasi TF terhadap panjang dokumen. Untuk lebih jelasnya persamaan BM25+ ditunjukkan pada persamaan 2.1 (Lv & Zhai, 2011): BM 25 ( Q, D) t Q 1 tf ( t) N 1 log (2.1) D df ( t) k1 1 b b tf ( t) avdl k 1 qtf ( t) k 1 3 k 3 qtf ( t) Dimana: 1. tf (t) adalah frekuensi kemunculan term t pada dokumen D 2. 3. qtf (t) N adalah frekuensi kemunculan term t pada query Q adalah jumlah total dokumen pada koleksi 4. df (t) adalah jumlah dokumen yang mengandung term t 5. 6. D avdl adalah panjang dokumen D, dinormalisasi oleh panjang rata-rata dari seluruh dokumen di koleksi atau average document length (avdl) b, k 1 dan k 3 adalah parameter bebas dari BM25, dimana b diberikan nilai antara 0 0,8, k 1 antara 1,0 2,0 dan k 3 = 1000 (Zhang et al, 2013). Pada penelitian (Robertson & Walker, 1999) disebutkan nilai standar masing-masing parameter tersebut adalah b = 0,75, k 1 = 1,2 dan k 3 = 1000 untuk query panjang dan k 3 = 1 untuk query pendek. Namun dalam penelitian ini, nilai yang akan digunakan untuk k 3 adalah 1 karena jenis query yang akan digunakan pada pengujian adalah query pendek 7. Parameter digunakan untuk mengatur nilai batas bawah dari normalisasi TF terhadap panjang dokumen dimana pada hasil penelitian (Lv & Zhai, 2011) nilai yang direkomendasikan adalah 1.

19 Pada persamaan 2.1 terdapat beberapa tuning parameter BM25+ yaitu b, k 1 dan k 3. Parameter k 1 digunakan untuk mengkalibrasi skala term frequency tf (t) atau dengan kata lain mengatur seberapa efektif nilai tf (t) pada hasil dari BM25+. Parameter k 3 digunakan untuk mengkalibrasi skala term frequency pada query qtf (t) atau dengan kata lain mengatur seberapa efektif nilai qtf (t) pada hasil dari BM25+. Parameter b untuk mengkalibrasi normalisasi term frequency terhadap document length atau dengan kata lain mengatur seberapa efektif nilai dari document length untuk menormalisasi term frequency (Manning et al, 2008). Nilai parameter ini sewaktu-waktu dapat diubah pada rentang nilai yang ditentukan sesuai kebutuhan untuk mendapatkan hasil akurasi yang lebih baik. Algoritma dari fungsi BM25+ secara garis besar adalah sebagai berikut (Saputra, 2013). 1. Input query q. 2. Lakukan proses tokenisasi query q menjadi q1 qn. 3. Proses q1 dengan mencari nilai IDF, TF dokumen, dan TF query sesuai dengan fungsi BM25+. 4. Kalikan IDF, TF query, dan TF yang didapatkan pada q1 tersebut sehingga didapatkan skor kesamaan untuk satu kata query. 5. Ulangi langkah 3 sampai 4 untuk q yang lain. 6. Jumlahkan setiap hasil yang didapatkan dari q1 qn tergantung banyaknya jumlah kata pada query, sehingga didapatkan skor keseluruhan untuk 1 query pencarian. 7. Didapatkan skor kesamaan untuk suatu query, sehingga dapat ditentukan dokumen hasil pencarian yang dianggap relevan dengan query tersebut. 8. Urutkan dokumen hasil pencarian berdasarkan skor tertinggi ke skor terendah. 9. Dokumen yang telah diurutkan dapat ditampilkan pada sistem.

20 2.4. Model Proses Waterfall Model proses perangkat lunak merupakan deskripsi sederhana dari proses perangkat lunak yang menyajikan suatu pandangan dari proses tersebut. Model proses mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat dalam rekayasa perangkat lunak. Model waterfall merupakan model proses klasik yang bersifat sistematis, berurutan dari satu tahap ke tahap lain dalam membangun software (Sommerville, 2011). Model ini mengusulkan sebuah pendekatan kepada pengembangan software yang sistematik dan sekuensial yang mulai dari tingkat kemajuan sistem pada seluruh analisis, desain, implementasi, pengujian dan pemeliharaan. Model waterfall memiliki tahapan-tahapan dalam prosesnya, setiap tahapan tersebut harus diselesaikan sebelum berlanjut ke tahap berikutnya. Tahapan yang terdapat pada model proses waterfall ditunjukkan pada gambar 2.6. Gambar 2.6. Model Proses Waterfall (Sommerville, 2011) Berikut merupakan penjelasan dari masing-masing tahapan di atas (Sommerville, 2011).

21 1. Requirements analysis and definition Layanan sistem, kendala, dan tujuan yang ditetapkan dengan berkonsultasi dengan pengguna sistem. Kemudian didefinisikan secara rinci dan dijadikan sebagai spesifikasi sistem. 2. System and software design Software desain meliputi mengidentifikasi dan merancang abstraksi sistem perangkat lunak yang mendasar. 3. Implementation and unit testing Pada tahap ini, perancangan perangkat lunak diimplementasikan ke dalam bentuk kode program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya. 4. Integration and system testing Tahapan dimana unit program individu atau program yang terintegrasi diuji sebagai sistem yang lengkap untuk memastikan bahwa persyaratan perangkat lunak telah dipenuhi. Setelah pengujian, sistem perangkat lunak disampaikan kepada pengguna. 5. Operation and maintenance Tahap ini merupakan tahapan dengan masa waktu paling lama. Pemeliharaan meliputi kesalahan mengoreksi yang tidak ditemukan pada awal tahap siklus hidup, meningkatkan implementasi unit sistem dan meningkatkan pelayanan sistem sebagai kebutuhan baru ditemukan. 2.5. Unified Modeling Language (UML) Unified Modeling Language (UML) merupakan sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan teknik pemrograman berorientasi objek (Yulianto dkk, 2009). Berikut adalah penjelasan diagram UML yang digunakan sebagai model perancangan untuk sistem yang akan dibuat.

22 2.5.1 Use Case Diagram Use Case merupakan pemodelan untuk merepresentasikan kelakuan (behavior) dari suatu sistem yang akan dibuat (Yulianto dkk, 2009). Dengan kata lain use case tersebut mendeskripsikan sebuah interaksi antara satu atau lebih actor dengan sistem informasi yang akan dibuat. Kegunaan dari diagram ini untuk mengetahui fungsi apa saja yang aka nada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi fungsi tersebut. Syarat penamaan pada use case adalah nama yang didefinisikan sesimpel mungkin dan dapat dipahami. Terdapat dua hal utama pada use case yaitu pendefinisian apa yang disebut actor dan use case, yaitu: 1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri. Oleh karena itu walaupun simbol dari aktor ada adalah gambar orang, tetapi belum tentu hal tersebut merupakan orang. 2. Use Case merupakan fungsionalitas yang disediakan sistem sebagai unit unit yang saling bertukar pesan antar unit atau aktor. Simbol-simbol pada Use Case ditunjukkan pada tabel 2.1. Tabel 2.1. Simbol Use Case Diagram No. Simbol Deskripsi 1. Use Case Fungsionalitas yang disediakan sistem sebagai unit unit yang saling bertukar pesan antar unit atau aktor; biasanya dinyatakan dengan menggunakan kata kerja di awal di awal frase nama use case 2. Aktor / actor Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya

23 dinyatakan menggunakan kata benda di awal frase nama aktor 3. Asosiasi / association Komunikasi antara aktor dan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan actor 4. Ekstensi / extend Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu; mirip dengan prinsip inheritance pada pemrograman berorientasi objek; biasanya use case tambahan memiliki nama depan yang sama dengan use case yang ditambahkan, misalnya : Arah panah mengarah pada use case yang ditambahkan 5. Generalisasi / generalization Hubungan generalisasi dan spesialisasi (umum - khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya, misalnya :

24 Arah panah mengarah pada use case yang menjadi generalisasinya (umum) 6. Menggunakan / include Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat dijalankan use case ini. Include berarti use case yang tambahan akan selalu melakukan pengecekan apakah use case yang ditambahkan telah dijalankan sebelum use case tambahan dijalankan, misal pada kasus berikut : Arah panah include mengarah pada use case yang dipakai 2.5.2 Class Diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas kelas yang akan dibuat untuk membangun sistem (Yulianto

25 dkk, 2009). Kelas memiliki apa yang disebut atribut dan metode atau operasi. Berikut ialah penjelasannya yaitu: 1. Atribut merupakan variabel variabel yang dimiliki oleh suatu kelas. 2. Operasi atau metode adalah fungsi fungsi yang dimiliki oleh suatu kelas. Simbol-simbol pada Class Diagram ditunjukkan pada tabel 2.2. Tabel 2.2. Simbol Class Diagram No. Simbol Deskripsi 1. Package Package merupakan sebuah bungkusan dari satu atau lebih kelas 2. Kelas Kelas pada struktur sistem 3. Antarmuka / interface Sama dengan konsep interface dalam pemrograman berorientasi objek 4. Asosiasi / association Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity 5. Asosiasi berarah / directed association Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity

26 6. Generalisasi Relasi antar kelas dengan makna generalisasispesialisasi (umum khusus) 7. Kebergantungan / dependency Relasi antar kelas dengan makna kebergantungan antar kelas 8. Agregasi / aggregation Relasi antar kelas dengan makna semua bagian (whole-part) Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsifungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis-jenis kelas berikut yaitu: 1. Kelas main Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan. 2. Kelas yang menangani tampilan sistem Kelas yang mendefinisikan dan mengatur tampilan ke pemakai 3. Kelas yang diambil dari pendefinisian use case Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case 4. Kelas yang diambil dari pendefinisian data Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Jenis-jenis kelas di atas juga dapat digabungkan satu sama lain sesuai dengan pertimbangan yang dianggap baik asalkan fungsi fungsi yang sebaiknya ada pada struktur kelas tetap ada. Susunan kelas juga dapat ditambahkan kelas utilitas seperti koneksi ke basis data, membaca file teks, dan lain sebagainya sesuai kebutuhan.

27 2.5.3 Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis (Yulianto dkk, 2009). Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut yaitu: 1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan 2. Urutan atau pengelompokan tampilan dari sistem atau user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan 3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya Simbol-simbol pada Activity Diagram ditunjukkan pada tabel 2.3. Tabel 2.3. Simbol Activity Diagram No. Simbol Deskripsi 1. Status awal Status awal aktivitas sistem, sebuah diagram aktivitas memiliki sebuah status awal 2. Aktivitas Aktivitas yang dilakukan sistem, aktivitas biasanya diawali dengan kata kerja 3. Percabangan / decision Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu

28 4. Penggabungan / join Asosiasi penggabungan dimana lebih dari satu aktivitas digabungkan menjadi satu 5. Status akhir Status akhir yang dilakukan sistem, sebuah diagram aktivitas memiliki sebuah status akhir 6. Swimlane Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi Atau 2.5.4 Sequence Diagram Sequence Diagram menggambarkan kelakuan/perilaku objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek (Yulianto dkk, 2009). Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu.

29 Banyaknya diagram sekuen yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sekuen sehingga semakin banyak use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak. Simbol-simbol pada Sequence Diagram ditunjukkan pada tabel 2.4. Tabel 2.4. Simbol Sequence Diagram No. Simbol Deskripsi 1. Aktor Atau Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar system informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya dinyatakan menggunakan kata benda di awal frase nama aktor 2. Garis hidup/ Lifeline Menyatakan kehidupan suatu objek 3. Objek Menyatakan objek yang berinteraksi pesan 4. Waktu aktif Menyatakan objek dalam keadaan aktif dan berinteraksi pesan

30 5. Pesan tipe create Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat 6. Pesan tipe call Menyatakan suatu objek memanggil operasi/metode yang ada pada objek lain atau dirinya sendiri, arah panah mengarah pada objek yang memiliki operasi/metode, karena ini memanggil operasi/metode maka operasi/metode yang dipanggil harus ada pada diagram kelas sesuai dengan kelas objek yang berinteraksi 7. Pesan tipe send Menyatakan bahwa suatu objek mengirimkan data/ masukan/ informasi ke objek lainnya, arah panah mengarah pada objek yang dikirimi 8. Pesan tipe return Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian 9. Pesan tipe destroy Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada create maka ada destroy

31 2.6. Teknik Pengujian Perangkat Lunak Pengujian perangkat lunak dilakukan pada tiap fase pengembangan perangkat lunak mulai dari fase definisi kebutuhan sampai implementasi. Terdapat 4 teknik pengujian, yaitu Static Testing, White Box Testing, Black Box Testing, dan Performance Testing (Everett & McLeod Jr., 2007). 2.6.1. Static Testing Static Testing merupakan pengujian yang dilakukan terhadap dokumentasi yang dilakukan pada tahap pengembangan sistem. Dokumentasi ini berasal dari tiap fase pengembangan sistem yaitu definisi kebutuhan, desain, implementasi, pengujian, dan pemeliharaan. Pengujian terhadap dokumentasi tersebut dilakukan dengan 3 cara yaitu 1. Desk checking merupakan pengujian dokumentasi yang dilakukan oleh pembuat dokumen itu sendiri. 2. Inspections merupakan pengujian dokumentasi yang dilakukan oleh 2 orang dalam 1 tim pengembangan sistem, yaitu penulis dokumen sendiri dan misalnya anggota senior dari tim pengembang. 3. Walk-throughs merupakan pengujian dokumentasi yang dilakukan oleh beberapa tim pengembang, misalnya fasilitator, penulis dokumen, staf bisnis, atau technical staf senior. 2.6.2. White Box Testing White Box Testing merupakan sebuah pengujian yang dilakukan terhadap source code dari program. White Box Testing dilakukan oleh tester dengan cara melakukan pengujian terhadap setiap fungsi code. Salah satu metode yang digunakan dalam White Box Testing adalah pengujian basis path testing atau disebut dengan Cylomatic Complexity. Dalam pelaksanaan White Box Testing, berikut langkah yang dilakukan (Pressman, 2010): a. Menggambar flowgraph yang ditransfer oleh flowchart. b. Menghitung Cylomatic Complexity V (G) untuk flowgraph yang telah dibuat. V(G) untuk flowgraph dapat dihitung dengan rumus:

32 V(G) = E N + 2 Keterangan: E = Jumlah edge pada flowrgaph N = Jumlah node pada flowrgaph c. Menentukan jalur pengujian dari flowgraph yang berjumlah sesuai dengan Cyclomatic Complexity yang telah ditentukan. Cyclomatic complexity yang tinggi menunjukkan prosedur kompleks yang sulit untuk dipahami, diuji dan dipelihara. Ada hubungan antara cyclomatic complexity dan resiko dalam suatu prosedur. Berikut hubungan antara cyclomatic complexity dan resiko dalam suatu prosedur. Tabel 2.5. Hubungan Cyclomatic Complexity dan Resiko Cyclomatic Complexity Evaluasi Resiko 1-10 Sebuah program sederhana, tanpa banyak resiko 11-20 Agak kompleks, resiko sedang 21-50 Kompleks, program resiko tinggi Lebih dari 50 Program belum diuji (resiko sangat tinggi) 2.6.3. Black Box Testing Black Box Testing adalah pengujian yang dilakukan saat tester tidak memiliki source code, hanya code yang bisa dieksekusi. Black Box Testing dilakukan dengan menjalankan aplikasi dan melakukan apa yang bisa dikerjakan oleh aplikasi untuk menguji tingkah laku dari sistem. Black Box Testing berfokus pada kebutuhan fungsional perangkat lunak. Dengan demikian, Black Box Testing memungkinkan perekayasa perangkat lunak mendapatkan serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu untuk program. Black Box Testing berusaha menemukan kesalahan dalam beberapa kategori diantaranya fungsi-fungsi yang tidak benar atau hilang, kesalahan interface, kesalahan dalam struktur data atau akses database eksternal, dan kesalahan kinerja.

33 2.6.4. Performance Testing Performance Testing merupakan teknik pengujian yang dilakukan apabila perangkat lunak telah berjalan dengan benar. Pengujian ini dilakukan bukan untuk menguji kebenaran dari sistem melainkan hasil dan waktu respon dari perangkat lunak. Tester menguji perangkat lunak mulai dari saat tidak bekerja (idle) hingga saat puncak performa dari perangkat lunak tersebut. Performance Testing ini berbeda dengan White Box Testing dan Black Box Testing, apabila kecacatan ditemukan pada White Box Testing atau Black Box Testing maka akan dilakukan koreksi program, namun Performance Testing akan lebih memeriksa kemampuannya perangkat lunak terhadap hardware, dimana kecacacatan dalam Performance Testing akan membuat tim pengembang menyarankan pembelian hardware yang lebih memadai untuk aplikasinya. 2.7. Precision, Recall, dan NIAP Pada ilmu IR, keakuratan menjadi hal yang penting karena pengguna mengharapkan informasi yang didapat sesuai dengan yang diinginkan. Salah satunya menggunakan parameter precision dan recall (Manning et al, 2008). Precision merupakan salah satu parameter pengukuran hasil retrieval terhadap dokumen. Precision dapat diartikan sebagai kecocokan antara permintaaan informasi dengan respon dari permintaan tersebut. Precision dapat dihitung dengan: Precision = jumlah dokumen relevan yang terambil jumlah seluruh dokumen yang terambil Sedangkan recall merupakan parameter yang didapat dari jumlah dokumen terambil yang relevan dibagi dengan keseluruhan jumlah dokumen yang relevan. Recall digunakan untuk melakukan pengukuran terhadap tingkat keberhasilan sistem dalam mengenali suatu dokumen yang relevan terhadap query. Recall = jumlah dokumen relevan yang terambil jumlah seluruh dokumen relevan dalam koleksi Selain menggunakan parameter precision dan recall, performa sistem IR juga dapat dievaluasi menggunakan Non Interpolated Average Precision atau yang

34 selanjutnya disebut NIAP. NIAP merupakan penggabungan dari precision dan recall yang digunakan untuk mengukur tingkat keberhasilan dari sistem IR dalam meranking dokumen hasil pencarian. NIAP menghitung kinerja sistem berdasarkan rata-rata presisinya saat suatu dokumen relevan ditemukan. Jadi saat suatu dokumen relevan ditemukan, nilai presisi dokumen tersebut akan dihitung. Kemudian seluruh nilai presisi tersebut akan dijumlahkan dan dibagi dengan jumlah dokumen relevan dalam koleksi dokumen (Mandala, 2006). n precision pada dokumen ke i NIAP = jumlah dokumen relevan dalam koleksi i=1 Dimana n menunjukkan jumlah dokumen yang dicari hingga seluruh dokumen relevan ditemukan. Nilai NIAP tertinggi adalah 1, yang berarti seluruh dokumen relevan berhasil ditemukan dengan seluruh dokumen relevan tersebut ditempatkan pada urutan teratas pada hasil pencarian. Contoh: Misalkan terdapat 2 sistem IR yang hendak diukur performansinya. Diketahui juga sebuah query dan keseluruhan dokumen yang relevan terhadap query dalam koleksi adalah dokumen ke-1 (D1), dokumen ke-5 (D5), dokumen ke-8 (D8), dokumen ke- 10 (D10). Kedua sistem IR memberikan hasil berupa ranking dokumen relevan sebagai berikut. Hasil Ranking Sistem IR ke 1 Hasil Ranking Sistem IR ke 2 1. Dokumen ke 99 2. Dokumen ke 95 3. Dokumen ke 88 4. Dokumen ke 71 997. Dokumen ke 1 998. Dokumen ke 5 999. Dokumen ke 8 1000. Dokumen ke 10 1. Dokumen ke 1 2. Dokumen ke 5 3. Dokumen ke 8 4. Dokumen ke 10 997. Dokumen ke 99 998. Dokumen ke 95 999. Dokumen ke 34 1000. Dokumen ke 43

35 Sistem IR ke 1 memberikan nilai recall = 4 4 Sistem IR ke 2 memberikan nilai recall = 4 4 = 1, precision = 4 1000 = 0,004 = 1, precision = 4 1000 = 0,004 Namun Jika dilihat dari hasil ranking menunjukkan bahwa sistem IR ke 2 lebih baik dari sistem IR ke 1 karena dokumen relevan terdapat pada urutan ke 1, ke 2, ke 3, dan ke 4. Apabila nilai NIAP dihitung untuk kedua sistem IR di atas, diperoleh: Sistem IR ke 2 memberikan nilai NIAP = Sistem IR ke 1 memberikan nilai NIAP = 1 1 +2 2 +3 3 +4 4 = 1 4 1 997 + 2 998 + 3 999 + 4 1000 = 0,0025 4 Jadi NIAP sistem IR ke 2 jauh lebih besar daripada NIAP sistem IR ke 1 dengan kata lain performansi sistem IR ke 2 lebih baik daripada sistem IR ke 1. 2.8. Tinjauan Studi a. Lower-Bounding Term Frequency Normalization (Lv & Zhai, 2011) Pada penelitian ini, peneliti mengemukakan pendapat bahwa dari model retrieval yang ada saat ini masih memiliki beberapa kekurangan dimana metode yang dibahas pada penelitian ini adalah BM25, PL2 Method, Dirichlet Prior Method (Dir), dan Pivoted Normalization Method (Piv). Kekurangan tersebut adalah komponen dari normalisasi Term Frequency (TF) berdasarkan panjang dokumen tidak dibatasi (lower-bounded) dengan benar. Hal ini dapat menyebabkan dokumen yang memiliki document length panjang cenderung diabaikan. Untuk mengatasi masalah ini peneliti mengusulkan metode yang efisien untuk memberikan batas bawah yang cukup besar untuk normalisasi TF. Dari hasil penelitian, metode yang diusulkan tidak menyebabkan perubahan perhitungan komputasi yang signifikan. Hasil metode baru tersebut salah satunya adalah BM25+.

36 b. TUNING PARAMETER DALAM FUNGSI OKAPI BM25 PADA MESIN PENCARI TEKS BAHASA INDONESIA (Saputra, 2013) Pada penelitian ini, peneliti melakukan analisis tuning parameter terhadap parameter bebas dari metode BM25 yaitu b, k 1 dan k 3. Tuning parameter sendiri merupakan suatu variabel yang dapat diubah-ubah nilainya sesuai dengan kebutuhan dengan tujuan untuk mendapatkan hasil pencarian yang lebih baik. Tujuan dari penelitian ini adalah seberapa besar pengaruh modifikasi nilai dari tuning parameter yang ada dalam fungsi kesamaan OKAPI BM25 terhadap evaluasi dari hasil pencarian. Selain itu juga akan dibandingkan kinerja antara model peluang dengan model lain yaitu model ruang vektor dalam pencarian dokumen yang menggunakan Bahasa Indonesia. Kesimpulan dari peneletian ini bahwa nilai Average Precision (AVP) pada metode BM25 sebelum dilakukan tuning dan sesudah dilakukan tuning mengalami peningkatan yaitu dari 0,5885 menjadi 0,5901 yang dicapai pada nilai k 1 1, 0 dan b 0, 45.