SKRIPSI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS

Ukuran: px
Mulai penontonan dengan halaman:

Download "SKRIPSI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS"

Transkripsi

1 SKRIPSI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS Firnas Nadirman 04/181070/EPA/00481 DEPARTEMEN PENDIDIKAN NASIONAL UNIVERSITAS GADJAH MADA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM YOGYAKARTA 2006

2 SKRIPSI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS Firnas Nadirman 04/181070/EPA/00481 Sebagai salah satu syarat untuk memperoleh derajat sarjana S1 pada Program Studi Ilmu Komputer DEPARTEMEN PENDIDIKAN NASIONAL UNIVERSITAS GADJAH MADA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM YOGYAKARTA 2006 ii

3 SKRIPSI INFORMATION RETRIEVAL SYSTEM WITH VECTOR SPACE MODEL METHOD AT SEARCHING TEXT DOCUMENT FILE Firnas Nadirman 04/181070/EPA/00481 Submitted to complete Sarjana S1 degree on the Computer Science Study Program DEPARTEMEN PENDIDIKAN NASIONAL UNIVERSITAS GADJAH MADA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM YOGYAKARTA 2006 iii

4 SKRIPSI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS Firnas Nadirman 04/181070/EPA/00481 Dinyatakan lulus ujian skripsi oleh tim penguji pada tanggal : 13 Januari 2006 Tim Penguji Dosen Pembimbing Ketua Tim Penguji Sigit Priyanta, S.Si., M.Kom Drs. Janoe Hendarto, M.Kom Penguji Penguji Drs. Azhari, M.T. Drs. Suprapto, M.Kom iv

5 KATA PENGANTAR Puji syukur penulis panjatkan kepada Allah SWT atas segala karunia-nya, sehingga skripsi dengan judul SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS dapat diselesaikan. Penulis mengambil tema tentang sistem temu-kembali informasi di dalam skripsi ini karena keingintahuan penulis mengenai ilmu pencarian informasi dengan metode temu-kembali informasi. Di dalam skripsi ini juga penulis menjelaskan pengembangan sebuah sistem temu-kembali informasi yang digunakan di dalam sebuah sistem penyimpanan dokumen teks berbasis web. Penulis pertama kali mengucapkan terima kasih yang sebesar-besarnya kepada bapak Sigit Priyanta selaku dosen pembimbing yang telah membantu penulis selama bimbingan skripsi ini. Beliau juga selalu memberikan motivasi kepada penulis untuk menyelesaikan skripsi ini tepat pada waktunya. Selain beliau, penulis didalam menyelesaikan skripsi ini juga mendapat banyak sekali bantuan secara moral maupun materiil dari berbagai pihak, maka pada kesempatan ini penulis ingin mengucapkan terima kasih kepada: 1. Kedua orang tua serta adik dan kakak penulis yang tercinta, yang senantiasa memberikan dukungannya. 2. Bapak Janoe Hendarto selaku pembimbing akademik selama penulis melaksanakan studi. v

6 vi 3. Bapak Ahmad Ridha atas waktunya untuk berdiskusi dengan penulis. 4. Yulia sebagai sahabat terbaik penulis yang selalu memberikan dorongan dan dukungannya selama ini. 5. Widi, Farid, Dijas, Opus, Rahmad, Medha, Tina, Yaya, Okti, Abriel dan teman-teman seangkatan sejak diploma yang selalu memberikan dukungan dan sarannya kepada penulis 6. Harry, Rere, Isam, Dankos, Fajar, Lira, Anggun, Yudith, Arif dan Adib sebagai kakak kelas penulis sejak diploma yang menjadi sumber motivasi bagi penulis. 7. Semua teman kos, khususnya Mas Cahyo yang bersedia mencarikan buku untuk membantu penulis menyelesaikan skripsi ini. 8. Rio, Tiar, Roy, Siska, Mba Datu, Mba Leli dan seluruh teman-teman seangkatan penulis yang tidak bisa disebutkan semuanya. 9. Civitas Akademik Program Studi Swadaya Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Gadjah Mada yang telah membantu dan bekerja sama dengan penulis selama masa studi. Penulis menyadari bahwa di dalam pembuatan skripsi ini masih terdapat begitu banyak kekurangan, oleh karena itu penulis memohon saran dan kritik yang membangun bagi kesempurnaan skripsi ini. Semoga skripsi ini dapat bermanfaat bagi pembacanya. Yogyakarta, Januari 2006

7 DAFTAR ISI HALAMAN PENGESAHAN... iv KATA PENGANTAR... v DAFTAR GAMBAR... x DAFTAR TABEL... xiii INTISARI... xiv ABSTRACT... xv BAB I PENDAHULUAN Latar Belakang Rumusan Masalah Batasan Masalah Tujuan Penelitian Manfaat Penelitian Metode Penelitian Sistematika Penulisan Tinjauan Pustaka... 6 BAB II LANDASAN TEORI Temu-kembali Informasi (Information Retrieval) Pengindeksan Parsing Inverted index Pembobotan Istilah (Term Weighting) Pembobotan tf idf vii

8 viii 2.6 Vector Space Model Recall dan Precision Model Pengembangan Perangkat Lunak Waterfall Data Flow Diagram (DFD) Bagan Alir (Flow Chart) Basis Data (Database) BAB III ANALISIS DAN PERANCANGAN Analisis Perancangan DFD Level Proses 1 Mesin Indeks Proses 2 Proses Cari DFD Level DFD Level 2 Proses 1 Mesin Indeks Proses 1.2 Parsing Proses 1.3 Penghilangan Stopwords Proses 1.4 Penghitungan Bobot DFD Level 2 Proses 2 Proses Cari Proses 2.3 Cek Frasa Proses 2.4 Fungsi Kesamaan Perancangan Basis Data Model Data Konseptual Model Data logik... 47

9 ix Model Data Fisik Perancangan Antarmuka Antarmuka Pengindeksan Antarmuka Pencarian BAB IV IMPLEMENTASI DAN PEMBAHASAN Sistem Penyimpanan Data Halaman Manipulasi Bagian Halaman Manipulasi Data Halaman Pengguna Modul Pengindeksan Submodul Parsing dan Penghilangan Stopwords Submodul Perhitungan Variabel idf Modul Pencarian Submodul Pencarian Frasa pada Query Submodul untuk Parsing dan Penghilangan Stopwords Submodul pencocokan dokumen yang memiliki frasa tepat Evaluasi Sistem Temu-Kembali Informasi Evaluasi Recall dan Precision BAB V KESIMPULAN DAN SARAN Kesimpulan Saran DAFTAR PUSTAKA... 93

10 DAFTAR GAMBAR Gambar 2.1 Kerangka dari sistem temu-kembali informasi sederhana (Ingwersen, 1992) Gambar 2.2 Tahapan didalam pemrosesan teks (Baeza-Yates dan Ribeiro-Neto, 1999) Gambar 2.3 Recall dan Precision pada contoh hasil temu-kemabali informasi (Baeza-Yates dan Ribeiro-Neto, 1999) Gambar 2.4 Model Pengembangan Waterfall (Pressman, 2005) Gambar 3.1 Diagram Konteks Gambar 3.2 Data Flow Diagram Level Gambar 3.3 Data Flow Diagram Level 2 Proses 1 Mesin Indeks Gambar 3.4 Bagan Alir Proses 1.2 Parsing Gambar 3.5 Bagan Alir Proses 1.3 Penghilangan Stopwords Gambar 3.6 Bagan Alir Proses 1.4 Penghitungan Bobot Gambar 3.7 DFD Level 2 Proses 2 Proses Cari Gambar 3.8 Bagan Alir Proses 2.3 Cek Frasa Gambar 3.9 Bagan Alir Proses 2.4 Fungsi Kesamaan Gambar 3.10 Model Data Konseptual Sistem Penyimpanan Gambar 3.11 Model Data Logik Sistem Penyimpanan Gambar 3.12 Model Data Fisik Sistem Penyimpanan Gambar 3.13 Perancangan Antarmuka Pengindeksan Gambar 3.14 Perancangan Antarmuka Pencarian Gambar 4.1 Antarmuka Login Sistem Penyimpanan x

11 xi Gambar 4.2 Antarmuka Halaman Administrasi Gambar 4.3 Antarmuka Halaman Manipulasi Bagian Gambar 4.4 Potongan Kode Program Manipulasi Bagian Gambar 4.5 Antarmuka Halaman Manipulasi Data Gambar 4.6 Antarmuka Halaman Input Data Gambar 4.7 Modul Pengubahan File dan Pengambilan Deskripsi File Gambar 4.8 Potongan Kode Program Manipulasi Data Gambar 4.9 Antarmuka Halaman Pengguna Gambar 4.10 Antarmuka Halaman Dokumen Gambar 4.11 Antarmuka Halaman Pencarian Canggih Gambar 4.12 Kode Program modul Pengindeksan bagian pertama Gambar 4.13 Kode Program Submodul Parsing dan Penghilangan Stopwords Gambar 4.14 Kode Program Modul Pengindeksan Bagian Kedua Gambar 4.15 Kode Program Submodul perhitungan idf Gambar 4.16 Antarmuka Halaman Pengindeksan Gambar 4.17 Kode Program Modul Pencarian Gambar 4.18 Kode Program Submodul Pencarian Frasa pada Query Gambar 4.19 Kode Program Submodul Parsing dan Penghilangan Stopwords Gambar 4.20 Kode Program submodul Pencocokan Dokumen yang memiliki frasa tepat Gambar 4.21 Tampilan Antarmuka Modul Pencarian Gambar 4.22 Kurva Recall-Precision Sampel K Gambar 4.23 Kurva Recall-Precision Sampel K Gambar 4.24 Kurva Recall-Precision Sampel K

12 xii Gambar 4.25 Kurva Recall-Precision Sampel K Gambar 4.26 Kurva Recall-Precision Sampel K Gambar 4.27 Kurva Recall-Precision Sampel K

13 DAFTAR TABEL Tabel 2.1 Perbedaan sistem temu-kembali data dan sistem temu-kembali informasi (Rijsbergen, 1979) Tabel 3.1 Contoh Posisi Pencarian Dokumen Tabel 3.2 Struktur Data Tabel t_user Tabel 3.3 Struktur Data Tabel t_data Tabel 3.4 Struktur Data Tabel t_bagian Tabel 3.5 Struktur Data Tabel t_index Tabel 3.6 Struktur Data Tabel t_term Tabel 4.1 Daftar kata stopwords pada file stopwords.txt Tabel 4.2 Deskripsi Dokumen Sampel Pengujian Tabel 4.3 Kinerja Sistem temu-kembali dengan menggunakan 6 Sampel xiii

14 INTISARI SISTEM TEMU-KEMBALI INFORMASI DENGAN METODE VECTOR SPACE MODEL PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS Oleh Firnas Nadirman 04/181070/EPA/00481 Seiring berkembangnya teknologi, penyimpanan dokumen dalam bentuk file semakin banyak digunakan. Selain karena mengurangi jumlah ruang penyimpanan, media penyimpanannya dalam bentuk harddisk harganya pun relatif murah. Akan tetapi, file-file tersebut akan terus bertambah setiap harinya dan untuk mencari informasi dari isi file-file tersebut akan menjadi sulit. Untuk itu dikembangkanlah metode ilmu pencarian yang dikenal dengan temu-kembali informasi (information retrieval). Metode-metode temu-kembali informasi sudah dikenal sejak lama, salah satu dari metode tersebut yang paling banyak digunakan karena kemudahan implementasinya adalah Vector Space Model (VSM). Pada metode ini dokumen hasil pencarian akan diurutkan berdasarkan bobot dari kata pencarian yang terdapat di dalam dokumen tersebut. Salah satu algoritma pembobotannya adalah algoritma tf idf yang dipengaruhi oleh frekuensi kemunculan kata pada sebuah dokumen dan frekuensi dari dokumen yang memiliki kata tersebut. Pada metode VSM, sistem temu-kembali informasi sebelum melakukan pencarian dokumen akan memecah isi teks dari dokumen-dokumen tersebut menjadi indeks kata. Indeks ini yang akan digunakan untuk proses pencarian. Proses pembentukan indeks dari teks yang terdapat di dalam dokumen akan melalui beberapa tahapan yaitu parsing, penghilangan stopwords dan penghitungan bobot. Dan juga pada proses pencarian, query dari pengguna akan melalui proses yang hampir sama pada proses pembentukan indeks. Setelah itu akan dibentuk vektor dokumen dan vektor query untuk diolah sehingga akan mendapatkan bobot dari dokumen hasil pencarian. Dengan metode ini dapat dicari informasi dari dokumen yang disimpan secara cepat, serta dokumen dari hasil pencarian dapat diurutkan berdasarkan bobot informasinya. xiv

15 ABSTRACT INFORMATION RETRIEVAL SYSTEM WITH VECTOR SPACE MODEL METHOD AT SEARCHING TEXT DOCUMENT FILE by Firnas Nadirman 04/181070/EPA/00481 Along expand the technology, depository of document in file format is more and more used. Besides, because lessening amount of depository space, [his/its] storage media in the form of harddisk of its price even also cheap relative. However, the file will be non-stoped to increase every day and to look for information from content of the file will become difficult. So Information Retrieval Method was developed for the searching technique. Method of information retrieval have been found since along past year, one of the method which is at most used because easier of implementation is Vector Space Model (VSM). At this method, document of result of searching will sort pursuant to weight from term of keywords which the documents have. One of algorithm of its weight is algorithm called tf idf influenced by frequency of term frequency and inversed document frequency. At method VSM, information retrieval system before conducting of document search will break content of text from the document to become index term. The index will be used for the search process. Process forming make an index to from text which is there are in document will through some step that is parsing, remove the stopwords and weight calculation. And for the search process, query given from user will also through process which is much the same to at process of create index terms. Afterwards will be formed document vector and query vector to be processed so that will get weight from document for the result. With this method, document can be searched by information from the content kept quickly, and also document from the search result earn to sort pursuant to information weight. xv

16 1. BAB I PENDAHULUAN 1.1 Latar Belakang Penggunaan sebuah komputer untuk menyimpan dokumen teks dalam bentuk file sampai saat ini sudah banyak dilakukan. Setelah munculnya internet pada akhir tahun 1980 yang terkenal dengan World Wide Web (Baeza-Yates & Ribeiro-Neto, 1999) yang bertujuan untuk memberikan berita atau informasi kepada masyarakat di seluruh dunia, berbagai macam informasi dalam bentuk file semakin mudah didapatkan. Dilihat dari perkembangannya sekarang kurang lebih hampir 353 juta host (Internet Systems Consortium, 2005) di internet diakses oleh 957 juta orang di seluruh dunia (Internet World Stats, 2005) dengan menggunakan teknologi komputer sebagai media untuk penyimpanan dan pengaksesannya. Jumlah tersebut akan terus meningkat setiap tahunnya. Dari jumlah pemakaian komputer sampai saat ini membuat komputer merupakan salah satu alat yang dibutuhkan untuk mencari informasi. Dengan banyaknya jumlah informasi yang beredar saat ini menimbulkan sebuah masalah untuk melakukan pencarian informasi yang diinginkan dengan cepat dan akurat. Menurut survey di Inggris pada tahun 2001, 36% pengguna internet di Inggris menghabiskan waktu selama dua jam di internet untuk mencari informasi yang akurat, dan sisanya sudah frustasi dalam dua belas menit jika tidak menemukan informasi yang diinginkannya (Nua Internet Surveys, 2002). Sampai saat ini sudah banyak dikembangkan algoritma yang efisien untuk 1

17 2 pencarian data di dalam sebuah dokumen teks seperti metode pencarian find first. Namun hal itu bukan merupakan solusi yang tepat, karena pertumbuhan ukuran data yang tersimpan umumnya sangat tinggi dan jumlahnya setiap hari akan bertambah banyak. Sehingga mengakibatkan lambatnya pencarian informasi karena dilakukan satu per satu di setiap dokumen. Dari permasalahan tersebut dikembangkanlah suatu ilmu yang diberi nama temu-kembali informasi (information retrieval). Temu-kembali informasi berkaitan dengan representasi penyimpanan, struktur dan akses dari dokumendokumen yang bertujuan untuk memudahkan pencarian sebuah informasi. Representasi dari dokumen itu nantinya harus mudah diakses oleh pengguna untuk mendapatkan informasi. Akan tetapi, dilihat dari karakteristik pengguna mengenai kebutuhan informasi, untuk membuat sebuah sistem temu-kembali informasi yang cepat dan akurat tidaklah mudah. User pertama kali harus mengubah kebutuhan informasi kedalam sebuah bahasa query yang dapat di proses oleh sistem temu-kembali informasi. Salah satu caranya yaitu dengan memasukan satu atau beberapa istilah. Istilah tersebut nantinya di cocokkan dengan representasi data yang disebut indeks Indeks merupakan struktur data yang paling banyak digunakan oleh sistem temu-kembali informasi. Indeks adalah gugus kata atau konsep terpilih sebagai penunjuk ke informasi (atau dokumen) terkait. Indeks dalam berbagai bentuk, merupakan inti setiap sistem temu-kembali informasi modern karena menyediakan akses yang lebih cepat ke data dan juga mempercepat pemrosesan query (Baeza-Yates & Ribeiro-Neto, 1999). Konsep indeks ini sebelumnya sudah banyak digunakan di dalam sebuah buku untuk membantu pencarian suatu istilah.

18 3 Elemen dari bahasa indeks adalah istilah yang diperoleh dari teks dalam sebuah dokumen yang diuraikan (Rijsbergen, 1979). Nantinya indeks ini digunakan dalam mencari sebuah dokumen dengan menggunakan metode temu-kembali informasi. Melihat dari penggunaan indeks, penulis mencoba menggunakan konsep temu-kembali informasi yang di terapkan di dalam sebuah sistem penyimpanan dokumen teks berbasis web. Dengan menerapkan konsep temu-kembali informasi, diharapkan sistem tersebut dapat melakukan pencarian dokumen berdasarkan informasinya secara cepat. 1.2 Rumusan Masalah Permasalahan yang diambil dari penelitian ini yaitu untuk membuat suatu sistem yang dapat mencari informasi di dalam dokumen dengan menggunakan konsep temu-kembali informasi yang diterapkan di dalam sebuah sistem penyimpanan dokumen. Selain itu, permasalahan lainnya adalah untuk melakukan pencarian dokumen-dokumen yang disimpan oleh sistem berdasarkan informasinya Batasan Masalah Agar penelitian lebih jelas dan lebih terarah, maka perlu diadakan pembatasan masalah. Pada penelitian ini faktor-faktor yang mempengaruhi temukembali informasi dibatasi oleh tiga faktor saja, yaitu jenis dokumen, ukuran dokumen yang diindeks dan relevansi dari setiap dokumen yang dihasilkan pada saat pencarian dokumen. Selain itu faktor lainnya seperti stemming (pemotongan imbuhan) dan pengelompokkan kata yang berpengaruh di dalam pengindeksan dan pencarian dokumen perlu dibatasi mengingat waktu yang terbatas.

19 Tujuan Penelitian Berdasarkan perumusan masalah tersebut di atas maka tujuan penelitian yang ingin dicapai adalah: 1. Mengembangkan dan mengimplementasikan pengindeksan otomatis untuk membangun sistem pencarian dokumen di dalam sebuah sistem penyimpanan dokumen teks dengan konsep temu-kembali informasi. 2. Untuk dapat melakukan pencarian dokumen secara cepat dan akurat dengan menerapkan konsep temu-kembali informasi. 3. Mengukur keakuratan dari hasil pencarian sistem berdasarkan relevansi dokumen, dari query yang diberikan Manfaat Penelitian Dengan adanya penelitian dan tulisan ini diharapkan dapat memberikan konstribusi nyata pada pengembangan teknologi dan ilmu pengetahuan khususnya dapat bermanfaat langsung bagi IT. Dengan menerapkan konsep temu-kembali informasi pada sebuah sistem penyimpanan data diharapakan pencarian informasi dapat dilakukan lebih cepat dibandingkan dengan tidak menggunakan konsep temu-kembali informasi. Konsep dari temu-kembali informasi ini dapat diterapkan di dalam sistem penyimpanan data maupun di dalam digital library Metode Penelitian Metode penelitian yang digunakan adalah: 1. Studi Pustaka

20 5 Metode studi pustaka ini dilakukan dengan mengambil referensi dari buku dan jurnal dari penelitian yang berhubungan dengan konsep temu-kembali informasi 2. Analisis dan Perancangan Sistem Sebelum membuat sebuah sistem temu-kembali informasi harus dilakukan terlebih dahulu analisis kebutuhan dari sistem tersebut. Selanjutnya dilanjutkan dengan perancangan dengan menjabarkan langkah-langkah pembuatan sistem untuk nantinya implementasi dari sistem dapat berjalan dengan baik dan sesuai dengan yang di harapkan. 3. Implementasi Sistem Setelah mempelajari langkah-langkah pembuatan sistem temu-kembali informasi, maka sistem diimplementasikan. Implementasi sistem dilakukan dengan menggunakan perangkat lunak Apache 2.053, bahasa pemrograman PHP dan basis data MySQL a. 4. Evaluasi Sistem Evaluasi sistem dilakukan dengan mengukur kemampuan pencarian sistem temu-kembali tersebut Sistematika Penulisan Untuk mempermudah dalam pembuatan dan pembahasan penelitian ini, maka penulis menggunakan sistematika penulisan sebagai berikut: BAB I. PENDAHULUAN

21 6 Pada bab ini penulis akan membahas tentang latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, sistematika penulisan dan tinjauan pustaka. BAB II. LANDASAN TEORI Bab kedua ini bersisi teori-teori dasar yang menguraikan tentang perkembangan sistem temu-kembali informasi. BAB III. ANALISIS DAN PERANCANGAN Bab ketiga ini menjelaskan analisis dan perancangan dari sistem temukembali informasi yang dikembangkan. BAB IV. HASIL PENELITIAN DAN PEMBAHASAN Pada bab ini penulis akan membahas implementasi dari sistem temukembali informasi yang di bangun dan evaluasi dari sistem tersebut. BAB V. KESIMPULAN DAN SARAN Pada bab ini penulis mengemukakan tentang kesimpulan yang diambil mengenai pembuatan sistem temu-kembali informasi. Disamping itu penulis juga akan memberikan saran yang sekiranya dapat bermanfaat untuk penelitian selanjutnya Tinjauan Pustaka Temu-kembali informasi dikembangkan sejak 25 tahun yang lalu dan sampai saat ini banyak digunakan oleh search engine di dalam pencarian informasi di internet.

22 7 Temu-kembali informasi berfokus pada proses yang terlibat di dalam representasi, media penyimpanan, mencari dan menemukan informasi yang relevan dari informasi yang diinginkan oleh user. Hal ini ditulis oleh Ingwersen (1992) di dalam buku yang berjudul Information Retrieval Interaction. Menurut Rijsbergen (1979), temu-kembali informasi berbeda dengan temu-kembali data dilihat dari kemampuan kesamaan, pengambilan kesimpulan, model, klasifikasi, bahasa query, klasifikasi query, hasil yang diinginkan, dan respon kesalahannya. Sistem temu-kembali informasi digunakan untuk mencari dokumen yang relevan. Di dalam sebuah jurnal penelitian, Mizzaro (1998) mengklasifikasikan jenis-jenis relevansi terhadap sebuah dokumen. Nantinya relevansi terhadap dokumen ini dapat digunakan untuk menganalisis dari sebuah sistem temukembali informasi. Salah satu model temu-kembali informasi yang di gunakan adalah Vector Space Model (VSM). Model ini merupakan salah satu model tradisional yang dikembangkan oleh Salton (1969). Di dalam buku berjudul Modern Information Retrieval yang ditulis oleh Baeza-Yates dan Ribeiro-Neto (1999) dinyatakan bahwa model ini sangat populer sampai saat ini karena kemudahan dan kecepatannya. Pembobotan dilakukan untuk memperoleh rangking dari dokumen hasil pencarian. Bartell et all (2002) menyatakan bahwa rangking hasil pencarian dari dokumen di dalam sistem temu-kembali informasi berbasis teks dengan model VSM dapat mengurutkan dokumen-dokumen tersebut dari yang paling relevan

23 8 sampai dengan yang agak relevan berdasarkan masukan kata kunci dari pengguna. Salton dan Buckley (1987) juga menyarankan penggunaan dari pembobotan indeks dalam melakukan pengurutan dokumen. Banyak penelitian yang pernah dilakukan mengenai sistem temu-kembali informasi, salah satunya adalah Implementasi Operasi Boolean Sistem Retrieval Informasi untuk Dokumen Digital (Faren, 2005). Penelitian tersebut mengenai sistem temu-kembali informasi berbasis model boolean pada pencarian informasi di dalam file berekstensi.txt.

24 2. BAB II LANDASAN TEORI 2.1 Temu-kembali Informasi (Information Retrieval) Temu-kembali informasi adalah aktifitas utama yang dilakukan oleh sebuah penyedia informasi atau pusat pelayanan informasi, termasuk perpustakaan dan jenis dari layanan lainnya yang menyediakan informasi kepada masyarakat umum. Menurut sebuah ensiklopedia, temu-kembali informasi adalah seni dan ilmu dalam pencarian informasi di sekumpulan dokumen-dokumen, pencarian informasi di dokumen itu sendiri, pencarian metadata yang menjelaskan sekumpulan dokumen, atau pencarian di dalam basis data (WIKIPEDIA, 2005). Nantinya hasil akhir dari temu-kembali informasi adalah sebuah sistem yang dapat melakukan penemu-kembalian informasi atau disebut sistem temu-kembali informasi. Menurut Lancaster (1968) di dalam Rijsbergen (1979): sebuah sistem temu-kembali informasi tidak memberitahu (yakni tidak mengubah pengetahuan) pengguna mengenai masalah yang ditanyakannya. Sistem tersebut hanya memberitahukan keberadaan (atau ketidakberadaan) dan keterangan dokumendokumen yang berhubungan dengan permintaannya. Sistem temu-kembali informasi berbeda dengan sistem temu-kembali data. Sistem temu-kembali data tujuan utamanya untuk menentukan dokumen yang memiliki kata kunci yang sesuai dengan query yang diberikan oleh pengguna di dalam sekumpulan dokumen. Hal ini belum dapat memecahkan masalah 9

25 10 pengguna akan kebutuhan informasi. Sedangkan sistem temu-kembali informasi memiliki tujuan untuk menemu-kembalikan semua dokumen yang relevan berdasarkan query yang dimasukan oleh pengguna dan menemu-kembalikan dokumen tidak relevan sedikit mungkin (Baeza-Yates dan Ribeiro-Neto, 1999). Sifat pencarian sistem temu-kembali informasi berbeda dengan sistem temu-kembali data (misalnya dalam sistem manajemen basis data) dalam beberapa segi, antara lain spesifikasi query yang tidak lengkap, dan tingkat ketanggapan kesalahan yang tidak peka (Rijsbergen, 1979). Hal ini dapat dilihat pada Tabel 2.1. Tabel 2.1 Perbedaan sistem temu-kembali data dan sistem temu-kembali informasi (Rijsbergen, 1979) Data Retrieval Information Retrieval Matching Exact Match Partial (best) Match Inference Deduksi Induksi Model Deterministik Probabilistik Klasifikasi Monothetic Polythetic Bahasa Query Artificial Natural Spesifikasi Query Lengkap Tidak Lengkap Item yang diinginkan Matching Relevan Respon Error Sensitif Tidak Sensitif Kerangka dari sistem temu-kembali informasi sederhana terbagi menjadi dua bagian. Bagian yang pertama adalah bagian si pencari informasi atau pengguna dari sistem. Pengguna dari sistem temu-kembali informasi harus menerjemahkan informasi yang dicarinya agar dapat diproses oleh sistem dengan cara memasukan kata kunci. Kata kunci tersebut nanti di proses menjadi sebuah

26 11 query yang dapat dimengerti oleh komputer. Bagian yang kedua adalah bagian dari dokumen. Pada bagian ini dokumen-dokumen direpresentasikan dalam bentuk indeks. Nanti query dari pengguna akan diproses melalui fungsi kesamaan untuk membandingkan query dengan indeks dari dokumen untuk mendapatkan dokumen yang relevan. Untuk lebih jelasnya mengenai kerangka sistem temukembali informasi dapat dilihat pada Gambar 2.1. Pencari Informasi Dokumen Formulasi pencarian Pengindeksan Query Representasi dokumen Fungsi Kesamaan Daftar dari dokumen yang relevan Gambar 2.1 Kerangka dari sistem temu-kembali informasi sederhana (Ingwersen, 1992) Perlu diingat bahwa pencarian sebuah informasi di dalam sistem temukembali informasi belum tentu mengembalikan seluruh dokumen yang relevan. Bisa hanya sebagian atau tidak sama sekali. Sistem temu-kembali informasi

27 12 mungkin tidak memberikan hasil apapun jika memang tidak ditemukan dokumen yang relevan. 2.2 Pengindeksan Mencari sebuah informasi yang relevan sangat tidak mungkin dapat dilakukan oleh sebuah komputer, meskipun dilakukan oleh sebuah komputer yang memiliki spesifikasi yang canggih. Agar komputer dapat mengetahui sebuah dokumen itu relevan terhadap sebuah informasi, komputer memerlukan sebuah model yang mendeskripsikan bahwa dokumen tersebut relevan atau tidak. Salah satu caranya adalah dengan menggunakan indeks istilah. Indeks adalah bahasa yang digunakan di dalam sebuah buku konvensional untuk mencari informasi berdasarkan kata atau istilah yang mengacu ke dalam suatu halaman. Dengan menggunakan indeks si pencari informasi dapat dengan mudah menemukan informasi yang diinginkannya. Pada sistem temu-kembali informasi, indeks ini nantinya yang digunakan untuk merepresentasikan informasi di dalam sebuah dokumen. Elemen dari indeks adalah istilah indeks (index term) yang didapatkan dari teks yang dipecah di dalam sebuah dokumen. Elemen lainnya adalah bobot istilah (term weighting) sebagai penentuan rangking dari kriteria relevan sebuah dokumen yang memiliki istilah yang sama. Baeza-Yates dan Ribeiro-Neto (1999) menjelaskan tentang proses pembuatan indeks dari sebuah dokumen teks atau dikenal dengan proses analisis teks (automatic teks analysis) melalui beberapa tahap:

28 13 a. Proses penentuan digit, tanda hubung, tanda baca dan penyeragaman dari huruf yang digunakan. b. Penyaringan kata meliputi penghilangan kata yang memiliki arti niliai paling rendah (stopwords) untuk proses penemu-kembalian. c. Penghilangan imbuhan kata, baik awalan maupun akhiran kata. Penghilangan imbuhan kata ini dikenal dengan stemming. d. Pemilihan istilah untuk menentukan kata atau stem (atau kelompok kata) yang akan digunakan sebagai elemen indeks. e. Pembentukan kategori istilah terstruktur seperti kelompok persamaan kata yang digunakan untuk perluasan dari query dasar yang diberikan oleh pengguna sistem temu-kembali informasi dengan istilah lain yang sesuai. Pengindeksan dapat dilakukan dengan dua cara yaitu manual dan otomatis. Idealnya, untuk mendapatkan indeks istilah yang sempurna sebuah pengindeksan dilakukan secara manual (konvensional). Akan tetapi, menurut Salton (1968) sistem pencarian dan analisa teks yang sepenuhnya otomatis tidak menghasilkan kinerja temu-kembali yang lebih buruk dibandingkan dengan sistem konvensional yang menggunakan pengindeksan dokumen manual dan formulasi pencarian manual. Untuk lebih jelasnya mengenai proses pengindeksan dari sebuah dokumen yang memiliki sekumpulan teks menjadi istilah dapat dilihat pada Gambar 2.2.

29 14 teks terstruktur dokumen struktur Pengenalan struktur teks Aksen, spasi, dll. teks utuh Penyaringan kata Pengelompokan kata Stemming Indeks Istilah Pengindeksan manual atau otomatis Gambar 2.2 Tahapan didalam pemrosesan teks (Baeza-Yates dan Ribeiro-Neto, 1999) 2.3 Parsing Parsing adalah proses pengenalan token (tokenizing) didalam rangkain teks (Grossman, 2002). Di dalam pembuatan sebuah indeks istilah, dokumen dipecah-pecah menjadi unit-unit yang lebih kecil misalnya berupa kata, frasa atau kalimat. Unit tersebut biasanya disebut sebagai token. Sedangkan algoritma untuk memecahkan kumpulan kalimat atau frasa menjadi token disebut tokenizer.

30 15 Pemrosesan parsing sangat dipengaruhi oleh pengetahuan bahasa yang digunakan di dalam sebuah dokumen untuk menangani karakter-karakter khusus, serta untuk memberikan batasan-batasan token di dalam sebuah dokumen. Parsing akan menghasilkan daftar istilah beserta informasi tambahan seperti frekuensi kemunculan istilah di dalam sebuah dokumen dan posisi-posisi ke berapa saja istilah itu muncul di sebuah dokumen untuk digunakan pada pemrosesan selanjutnya. Namun sebelumnya, terlebih dahulu dilakukan pembuangan kata-kata yang tidak perlu (stopwords) misalnya kata-kata seperti yang, hingga, dan, dengan, dll. Penghilangan kata-kata ini dilakukan agar pencarian informasi lebih terarah karena kata-kata tersebut tidak signifikan di dalam menentukan informasi suatu dokumen. 2.4 Inverted index Inverted index adalah salah satu mekanisme untuk pengindeksan sebuah koleksi teks yang digunakan untuk mempercepat proses pencarian. Struktur dari inverted index terdiri dari dua elemen yaitu kosakata dan posisinya di dalam sebuah dokumen (Baeza-Yates dan Ribeiro-Neto, 1999). Posisi dari sebuah istilah di dalam indeks pada sebuah buku, diterjemahkan dalam bentuk nomor halaman. Pada inverted index, setiap istilah di masukan ke dalam inverted list yang menyimpan daftar dari istilah yang menujuk ke sejumlah dokumen yang memiliki istilah tersebut. Inverted list juga kadang-kadang di sebut posting list (Witten et all, 1999).

31 16 Misalkan istilah T 1 terdapat dalam dokumen D 1, D 2, dan D 3 sedangkan istilah T 2 terdapat dalam dokumen D 1 dan D 2 maka inverted index yang dihasilkan seperti berikut: T 1 D 1, D 2, D 3 T 2 D 1, D 2 Penggunaan inverted index di dalam sistem temu-kembali informasi memiliki kelemahan yaitu lambat di dalam pengindeksan, tetapi cepat di dalam proses pencarian informasi. Menurut Grossman (2002), Inverted Index adalah struktur yang dioptimasi untuk proses penemukembalian sedangkan proses update hanya menjadi pertimbangan sekunder. Struktur tersebut membalik teks sehingga indeks memetakan istilah-istilah ke dokumen-dokumen (sebagaimana indeks sebuah buku yang memetakan istilah-istilah ke nomor halaman). 2.5 Pembobotan Istilah (Term Weighting) Istilah di dalam suatu indeks harus bisa membedakan kepentingan dari sebuah dokumen pada sebuah informasi. Caranya yaitu dengan pemberian bobot kepada sebuah istilah terhadap suatu dokumen. Semakin tinggi bobot dari sebuah istilah maka semakin penting istilah tersebut dibandingkan dengan istilah lainnya di dalam sebuah dokumen. Bobot dari istilah ini dicantumkan pada inverted index untuk digunakan dalam proses penemu-kembalian dokumen. Pada saat pencarian istilah tunggal digunakan untuk mengidentifikasi dari isi sekumpulan dokumen, pembedaan harus dilakukan antar istilah tunggal berdasarkan perkiraan nilai istilah tersebut sebagai pendeskripsi sebuah dokumen.

32 17 Hal ini menunjukkan penggunaan dari bobot istilah yang di cantumkan pada saat proses pengidentifikasian (Salton dan Buckley, 1987). Sebagai contoh terhadap sebuah record R dinyatakan seperti: R= {T i1, 0.2; T i2, 0.5 ; T i3, 0,8 Dari pernyataan tersebut dapat diambil kesimpulan bahwa istilah ketiga memiliki bobot 0.8, sedangkan istilah pertama memiliki bobot yang jauh lebih kecil yaitu sebesar 0.2. Penggunaan dari bobot istilah selain untuk membedakan kepentingan suatu istilah di dalam sebuah dokumen juga dapat digunakan untuk menggunakan pengurutan saat penemukembalian dengan susunan menurun dari bobot yang besar ke kecil sesuai dengan bobot istilah-istilah yang sama antara query dan dokumen Pembobotan tf idf Pada model pengindeksan yang berdasarkan pada frekuensi istilah dapat diperkirakan bahwa istilah-istilah indeks terbaik adalah istilah-istilah yang sering muncul dalam dokumen individual tetapi jarang muncul dalam keseluruhan koleksi. Sebuah penanda kepentingan jenis ini yang umum adalah perkalian (tf idf) dengan bobot w ij sebuah istilah T i dalam dokumen D i, didefinisikan sebagai frekuensi istilah dikalikan dengan fungsi inverse document frequency. Baeza-Yates dan Ribeiro-Neto (1999), menyebutkan bahwa pembobotan (tf idf) terdiri dari dua faktor, yaitu: 1. tf (term frequency)

33 18 tf adalah frekuensi kemunculan suatu istilah k i di dalam sebuah dokumen d j dibandingkan dengan frekuensi istilah k l yang sering muncul pada dokumen itu. Jika dimasukan dalam rumus matematika didapatkan: f i, j = max freq l i, j freq l, j 2. idf (inverse document frequency) idf adalah frekuensi kemunculan suatu istilah k i di dalam seluruh dokumen. Penggunaan faktor idf didasarkan pada istilah yang muncul pada setiap dokumen tidak memberikan suatu ciri khusus untuk menentukan dokumen yang relevan dari yang tidak relevan. Jika jumlah seluruh dokumen di dalam sistem dinyatakan dengan nilai N dan jumlah dokumen yang memiliki istilah k i tersebut dinyatakan dengan n i, maka nilai idf i -nya dapat dinyatakan dengan: idf i = log N n i Dari dua faktor tersebut maka pembobotan tf idf dapat dinyatakan dengan: w f i, j = i, j log N n i 2.6 Vector Space Model Salah satu model matematika yang digunakan pada sistem temu-kembali informasi untuk menentukan bahwa sebuah dokumen itu relevan terhadap sebuah informasi adalah Vector Space Model (VSM). Model ini akan menghitung derajat

34 19 kesamaan antara setiap dokumen yang disimpan di dalam sistem dengan query yang diberikan oleh pengguna. Model ini pertama kali diperkenalkan oleh Salton (1989). Pada VSM, setiap dokumen dan query dari pengguna direpresentasikan sebagai ruang vektor berdimensi n. Biasanya digunakan nilai bobot istilah (term weigthing) sebagai nilai dari vektor pada dokumen nilai 1 untuk setiap istilah yang muncul pada vektor query. Pada model ini, bobot dari query dan dokumen dinyatakan dalam bentuk vektor, seperti: Q = (w q1, w q2, w q3,...,w qt ) dan D i = (w i1, w i2, w i3,..., w it ) Dengan w qj dan w ij sebagai bobot istilah T j dalam query Q dan dokumen D i. Selanjutnya koefisien kesamaan antara query dan dokumen dapat diperoleh dengan formula inner product: sim( Q, D ) = i t j= 1 w qj w ij Namun dengan formula di atas, dokumen yang lebih panjang dengan jumlah istilah yang lebih banyak memiliki kemungkinan lebih besar untuk dianggap relevan dengan istilah-istilah query tertentu dibandingkan dokumendokumen yang lebih pendek. Sehingga pada kebanyakan lingkungan penemukembalian, vektor dokumen ternormalisasi lebih disukai namun proses normalisasi vektor query tidak diperlukan karena ukurannya yang umumnya pendek dan perbedaan panjang antar-query relatif kecil. Sehingga formula di atas digantikan dengan formula ternormalisasi:

35 20 sim( Q, D ) = i t j= 1 t j= 1 ij w ( w ) 2 qj w t ij j= 1 ( w qj ) Recall dan Precision Evaluasi dari sistem temu-kembali informasi dipengaruhi oleh dua parameter utama yaitu recall dan precision. Recall adalah rasio antara dokumen relevan yang berhasil ditemukembalikan dari seluruh dokumen relevan yang ada di dalam sistem, sedangkan precision adalah rasio dokumen relevan yang berhasil ditemukembalikan dari seluruh dokumen yang berhasil ditemu-kembalikan (Grossman, 2002). Dokumen relevan yang ditemukembalikan Ra Seluruh Koleksi Dokumen Dokumen Relevan R Hasil Temu-kembali A Gambar 2.3 Recall dan Precision pada contoh hasil temu-kemabali informasi (Baeza-Yates dan Ribeiro-Neto, 1999) berikut: Berdasarkan Gambar 2.3 recall dan precision dapat dinyatakan sebagai

36 21 Ra Recall = R Ra Pr ecision = A Dengan menggunakan nilai dari parameter recall dan precision akan dicari nilai dari average precision untuk menghitung keefektifan dan keakuratan dari algoritma sistem temu-kembali informasi. Average precision adalah suatu ukuran evaluasi sistem temu-kembali informasi yang diperoleh dengan cara menghitung rata-rata precision pada seluruh tingkat recall (Grossman, 2002). Sedangkan untuk menentukan nilai dari recall dan precision harus didapatkan jumlah dokumen yang relevan terhadap suatu topik informasi. Satusatunya cara untuk mendapatkannya yaitu dengan membaca dokumen itu satu per satu. Menurut Rijsbergen (1979) relevansi merupakan sesuatu yang sifatnya subyektif. Setiap orang mempunyai perbedaan untuk mengartikan sesuatu dokumen tersebut relevan terhadap sebuah topik informasi. Menurut Mizzaro (1998), evaluasi pada sebuah sistem temu-kembali informasi dengan menggunakan recall dan precision sudah cukup baik untuk menjadi ukuran dari sistem tersebut. 2.8 Model Pengembangan Perangkat Lunak Waterfall Salah satu model klasik yang digunakan dalam mengembangkan sebuah perangkat lunak adalah model waterfall. Pressman (2005) menyebutkan model ini merupakan model klasik yang menyarankan sistematika pendekatan sekuensial didalam pengembangan perangkat lunak yang dimulai dari spesifikasi kebutuhan

37 22 dari pelanggan menuju tahap perencanaan, pemodelan, pembangunan dan pengiriman perangkat lunak tersebut, yang pada akhirnya akan kembali lagi dari awal untuk membentuk perangkat lunak yang sesuai dengan keinginan pelanggan. Komunikasi Perencanaan Pemodelan Pembangunan Pengiriman Gambar 2.4 Model Pengembangan Waterfall (Pressman, 2005) Dari Gambar 2.4, model pengembangan waterfall pada awalnya dimulai dari tahap komunikasi. Pada tahap ini pihak pelanggan melakukan komunikasi dengan pihak pengembang perangkat lunak mengenai masalah yang didapatkan sehingga dibutuhkan suatu solusi untuk membuat perangkat lunak didalam memecahkan masalah tersebut. Pada tahap ini kebutuhan perangkat lunak didefinisikan dan inisiasi proyek pembuatan perangkat lunak dilakukan bersamasama oleh pihak pelanggan dan pihak pengembang. Tahap perencanaan pada model ini meliputi kegiatan perencanaan pembuatan perangkat lunak. Pada kegiatan ini, estimasi waktu pembuatan perangkat lunak, penjadwalan serta kegiatan yang akan dilakukan untuk menunjang pembuatan perangkat lunak dibahas bersama-sama oleh pihak pengembang dan pelanggan.

38 23 Dari tahap perencanaan nantinya akan dilanjutkan ke tahap pemodelan. Pada tahap ini kegiatan utamanya yaitu analisis kebutuhan perangkat lunak yang merupakan proses pengumpulan kebutuhan yang diintensifkan dan difokuskan, khususnya pada perangkat lunak. Tujuannya yaitu untuk memahami sifat program yang akan dibangun. Perekayasa perangkat lunak harus memahami domain informasi, tingkah laku, cara kerja dan antar muka yang diperlukan. Kebutuhan baik untuk sistem maupun perangkat lunak didokumentasikan dan dilihat lagi dengan pelanggan. Selain analisis kebutuhan perangkat lunak, pada tahap ini juga meliputi kegiatan desain perangkat lunak. Pada kegiatan desain perangkat lunak dilakukan proses multi langkah yang berfokus pada empat atribut sebuah perangkat lunak yang berbeda; struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural. Proses desain menerjemahkan syarat/kebutuhan ke dalam sebuah representasi perangkat lunak yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak. Setelah melalui tahap perencanaan maka pengembangan perangkat lunak dilanjutkan ke tahap berikutnya, yaitu tahap pembangunan. Pada tahap ini pengembang perangkat lunak mulai melakukan implementasi yang meliputi pengenerasian kode dan pengujian perangkat lunak. Pada kegiatan implementasi hasil desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. Tugas ini dilakukan dengan mengikuti langkah-langkah pembuatan kode. Jika desain pada tahap sebelumnya sudah dilakukan secara lengkap, pembuatan kode dapat diselesaikan secara mekanis.

39 24 Kegiatan implementasi pada akhirnya akan menghasilkan perangkat lunak yang siap diuji. Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil yang sesuai dengan hasil yang dibutuhkan. Tahap yang terakhir dari pengembangan perangkat lunak pada model waterfall adalah tahap pengiriman. Pada tahap ini seluruh perangkat lunak sudah selesai dan diserahkan kepada pelanggan. Akan tetapi, pada tahap ini perangkat lunak akan mengalami perubahan setelah dikirmkan kepada pelanggan. Perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahan-perubahan di dalam lingkungan eksternalnya, atau karena pelanggan membutuhkan perkembangan fungsional. Pada tahap ini kegiatan utama bagi para pengembang perangkat lunak adalah pemeliharaan. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat baru lagi. 2.9 Data Flow Diagram (DFD) DFD merupakan diagram untuk menggambarkan aliran data di dalam sistem untuk fase analisis pada pengembangan perangkat lunak. DFD dapat digunakan untuk menyajikan sebuah sistem atau perangkat lunak pada setiap tingkat abstraksi. DFD menggunakan gambaran input-proses-output dari sistem yang akan dibuat. Pada DFD objek data akan dialirkan ke dalam perangkat lunak, lalu akan ditransformasikan pada elemen proses, dan hasilnya akan dikeluarkan dari perangkat lunak (Pressman, 2005).

40 25 Elemen-elemen dasar dari DFD adalah : Prosedur atau konsumer informasi yang ada di luar bound sistem untuk dimodelkan. Transfer informasi (fungsi) yang ada di dalam bound sistem untuk dimodelkan. Objek data; anak panah menunjukkan arah aliran data. Repositori data yang disimpan untuk digunakan oleh satu atau lebih proses. Pada DFD aliran data digambarkan dalam bentuk hirarki, yaitu model DFD yang pertama (biasanya disebut DFD level 0 atau diagram konteks) merepresentasikan sistem secara keseluruhan. Bagian DFD lainnya menjelaskan dari konteks diagram tersebut, dan menyediakan secara detail proses yang digunakan pada setiap bagian level Bagan Alir (Flow Chart) Bagan alir merupakan Representasi grafis yang paling luas dipakai untuk desain prosedural. Konstruksi dari bagan alir sangat sederhana. Sebuah kotak digunakan untuk mengindikasikan suatu langkah pemrosesan. Diamon merepresentasikan suatu kondisi logis dan anak panah memperlihatkan aliran kontrol (Presman, 2002). Gambar 2.5 mengilurtrasikan tiga kondisi prosedural dengan menggunakan bagan alir.

41 26 Tugas Pertama F Kondisi T Tugas Berikutnya Bagian Else Bagian Then Urutan If-then-else Tugas Loop T F Bagian Case Kondisi Case T F Do - While Kondisi Loop Repeat - Until T F Pemilihan Gambar 2.5 Konstruksi Bagan Alir 2.11 Basis Data (Database) Basis Data terdiri dari dua kata, yaitu Basis dan Data. Basis dapat diartikan sebagai markas atau gudang yaitu tempat bersarang/berkumpul. Sedangkan Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia, barang, hewan, peristiwa, konsep, keadaan dan sebagainya, yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya (Fathansyah, 2001). Beberapa definisi tentang basis data :

42 27 1. Basis data merupakan himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. 2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. 3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis. Menurut Connoly (1998), basis data adalah koleksi dari relasi data logikal (dan deskripsi dari data ini), yang dirancang untuk mencari informasi yang dibutuhkan oleh organisasi. Sedangkan menurut C.J Date (2004), basis data adalah sebuah koleksi dari data yang tahan lama yang digunakan oleh sistem aplikasi dari perusahaan tertentu Prinsip utama basis data adalah pengaturan data/arsip. Sedangkan tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan kembali data/arsip. Satu hal yang juga harus diperhatikan, bahwa basis data bukan hanya sekedar penyimpanan data secara elektronis (dengan bantuan komputer). Artinya, tidak semua bentuk penyimpanan data secara elektronis bisa disebut basis data. Kita dapat menyimpan dokumen berisi data dalam file teks (dengan program pengolah kata), file spread sheet, dan lain-lain, tetapi tidak bisa disebut sebagai basis data karena di dalamnya tidak ada pemilihan dan pengelompokan data sesuai jenis/fungsi data, sehingga akan menyulitkan pencarian data kelak. Dalam sebuah basis data yang sangat ditonjolkan adalah pengaturan / pemilihan /

43 28 pengelompokkan / pengorganisasian data yang akan kita simpan sesuai dengan fungsi/jenisnya.

44 3. BAB III ANALISIS DAN PERANCANGAN Pengembangan perangkat lunak dengan menggunakan model pengembangan waterfall meliputi beberapa tahapan. Di dalam penelitian ini, pengembangan sistem temu-kembali informasi ini hanya akan dibahas tahap pemodelan dan pembangunan perangkat lunak yang meliputi analisis, perancangan, pembuatan serta pengujian perangkat lunak. Pada bab ini akan dibahas mengenai analisis dan perancangan pengembangan sistem temu-kembali informasi, sedangkan mengenai implementasi dan pengujian sistem akan dibahas di bab selanjutnya. 3.1 Analisis Sistem temu-kembali yang akan dibangun merupakan bagian dari sistem pencarian penyimpanan data. Akan tetapi, pada pembahasan analisis dan perancangan serta implementasi dan pengujian pada bab selanjutnya akan lebih diutamakan kepada sistem temu-kembali informasi saja. Untuk lebih jelasnya mengenai sistem penyimpanan data secara garis besar akan dijelaskan sebagai berikut : Sistem penyimpanan data akan menyimpan file dokumen berbasis teks yang dimasukan oleh administrator pada media penyimpanan. Dokumen teks akan dikelompokkan menjadi kelompok dokumen sesuai dengan jenis/karakteristiknya. Kelompok dokumen ini selanjutnya akan 29

45 30 disebut bagian. Informasi mengenai bagian akan disimpan ke dalam basis data. Informasi mengenai file dokumen (nama dokumen, bagian, letak file, ukuran file, tipe file, dll) akan disimpan ke dalam basis data. Nantinya basis data ini yang akan digunakan dan diakses oleh sistem untuk menampilkan dan memberikan dokumen (informasi dokumen) kepada pengguna. Pada sistem penyimpanan nantinya akan disimpan file dokumen dengan format word, pdf, dan excel. Pengguna yang ingin mencari file dokumen dengan informasi tertentu harus mengambil file dokumen tersebut dan membacanya satu per satu untuk mendapatkan dokumen yang cocok dengan informasi yang ingin dicari. Dengan banyaknya dokumen yang disimpan di dalam sistem penyimpanan, maka cara pencarian tersebut akan tidak efektif. Untuk itu dibutuhkan sistem pencarian yang dapat mencari informasi dari isi file dokumen yang disimpan di dalam sistem penyimpanan data. Sistem pencarian harus dapat membaca dan menganalisis isi informasi yang dimiliki oleh file dokumen yang disimpan. Sistem pencarian juga harus dapat mengurutkan hasil pencarian dokumen berdasarkan keakuratan pencarian informasi dari file dokumen untuk memudahkan pengguna dalam mencari informasi. Sistem pencarian juga harus menyesuaikan dengan struktur data dari sistem penyimpanan yang sudah dibuat. 3.2 Perancangan Perancangan merupakan tahapan mempelajari dan mengumpulkan kebutuhan perangkat lunak. Analisis kebutuhan menyediakan representasi dari

46 31 informasi, modul-modul dan fungsi yang dapat diterjemahkan ke dalam arsitektural, antarmuka dan level desain komponen. Pada akhirnya, model analisis dan spesifikasi kebutuhan dapat menyediakan nilai/kualitas dari perangkat lunak yang akan dibangun kepada pihak pengembang dan pelanggan. Salah satu representasi dari modul-modul dan fungsi dari perangkat lunak menggunakan tools Data Flow Diagram. Sistem temu-kembali informasi yang akan dibangun menggunakan model ruang vektor (Vector Space Model). Proses utama yang digunakan oleh sistem temu-kembali informasi adalah indexing yang lebih lanjut akan dijelaskan pada tahap perancangan. Sistem ini nantinya akan dibagi menjadi dua bagian besar, yaitu proses indexing yang berhubungan dengan dokumen-dokumen dan proses query yang berhubungan dengan pengguna. Pengaturan indexing dokumen berbasis teks menjadi kumpulan indeks istilah akan dilakukan oleh administrator. Sedangkan proses query pengguna akan direpresentasikan melalui pengiriman kata kunci berupa teks untuk diproses menjadi query yang dapat digunakan oleh sistem ini untuk mencari informasi di dalam dokumen yang disimpan. Gambaran mengenai sistem temu-kembali informasi pada sistem penyimpanan data dapat dilihat pada Gambar 3.1. User File Kata Kunci Informasi Dokumen Sistem Temukembali Informasi Pilihan Index Administrator Gambar 3.1 Diagram Konteks

47 32 Dari diagaram konteks maka dapat diturunkan menjadi Data Flow Diagram (DFD) level 1. DFD adalah sebuah teknik grafis yang menggambarkan aliran data yang bergerak dari input ke output. Selain itu DFD juga menyajikan fungsi-fungsi sistem yang mengolah data input dan menghasilkan data output. Diagram alur data dapat digunakan untuk menyajikan suatu sistem perangkat lunak pada setiap tingkat abstraksi. Dari bentuk diagram konteks sistem temu-kembali informasi, maka bentuk DFD level 1 dari sistem temu-kembali informasi dapat dilihat pada Gambar 3.2. Pada Gambar 3.2 DFD level 1 dapat dilihat 2 proses utama dalam sistem temukembali informasi, yaitu proses Indexing yang diberi nama dengan mesin indeks User File Inform asi Dokumen 3 Menampilkan Inform asi Dokumen File Dokum en Kata Kunci Hasil Query File Storage 2 Proses Cari Query Pencarian Database Penyimpanan data Indeks Istilah Dokumen Teks 1 Mesin Indeks dan proses Query yang diberi nama dengan proses cari. Pilihan Index Administrator Gambar 3.2 Data Flow Diagram Level DFD Level 1 Pada Gambar 3.2, DFD level 1 memiliki 3 proses yaitu : 1. Mesin Indeks

48 33 2. Proses Cari 3. Menampilkan Informasi Data Proses 1 dan 2 merupakan proses utama yang digunakan untuk sistem temu-kembali informasi, sedangkan proses 3 merupakan bagian dari sistem penyimpanan data. Proses 1 merupakan proses indexing, sedangkan proses 2 merupakan proses querying Proses 1 Mesin Indeks Pada proses ini dokumen-dokumen yang sudah disimpan pada sistem akan diproses untuk dijadikan indeks istilah yang akan digunakan dalam proses cari. Salah satu input dari proses ini merupakan pilihan indeks, yaitu pilihan yang diberikan oleh administrator untuk melaksanakan indeks. Pilihan itu terdiri dari tiga macam, yaitu : 1. Seluruh dokumen, yaitu pilihan bagi administrator untuk mengindeks seluruh dokumen yang disimpan di dalam sistem. 2. Bagian, yaitu pilihan bagi administrator untuk mengindeks seluruh dokumen berdasarkan pada suatu bagian di dalam sistem. 3. Dokumen, yaitu pilihan bagi administrator untuk mengindeks satu atau lebih dokumen tertentu yang terdapat di dalam sistem. Setelah administrator memilih pilihan indeks, maka sistem akan melakukan pengindeksan berdasarkan pilihan indeks yang dipilih oleh administrator. Selanjutnya dokumen teks sebagai input yang kedua akan diproses menjadi istilah indeks serta dihitung nilai bobotnya, lalu disimpan ke dalam basis data. Proses

49 34 pengolahan teks menjadi indeks istilah akan melalui beberapa tahapan subproses, yaitu pengambilan dokumen teks, parsing, penghilangan stopwords dan penghitungan nilai bobot pada tiap istilah di dalam indeks. Subproses ini akan dimodelkan pada DFD level 2. Secara umum proses 1 Mesin Indeks ini bertujuan untuk membentuk informasi indeks dari koleksi dokumen sebagai input dengan melalui beberapa tahapan Proses 2 Proses Cari Input pada Proses 1 Proses Cari dari entitas eksternal User adalah kata kunci. Kata kunci ini akan diproses menjadi query untuk mendapatkan dokumen sesuai dengan informasi yang ingin dicari oleh pengguna. Proses pada kata kunci untuk diubah menjadi sebuah query pada sistem temu-kembali informasi juga memiliki beberapa tahapan yang hampir sama dengan pemrosesan teks pada pengindeksan dokumen yaitu parsing, penghilangan stopwords, cek frasa serta fungsi kesamaan untuk mengurutkan dokumen dari bobotnya yang paling besar ke yang paling kecil. Tahap pencarian dokumen menggunakan fungsi kesamaan ruang vektor, yang sudah dibahas pada bab sebelumnya untuk mendapatkan kesamaan dokumen dengan query yang diberikan oleh pengguna. Setelah dilakukan query pada basis data maka hasil query akan diberikan ke Proses 3 Menampilkan Informasi Dokumen yang akan memberikan output berupa informasi dokumen dan file kepada pengguna.

50 DFD Level DFD Level 2 Proses 1 Mesin Indeks Pada Gambar 3.3 DFD Level 2 Proses 1 Mesin Indeks di bagi menjadi 4 sub proses. Akan tetapi proses utama pada mesin indeks ini hanya terdiri dari 3 proses utama yaitu : 1. Parsing 2. Penghilangan Stopwords 3. Penghitungan bobot Ketiga proses tersebut yang akan digunakan oleh sistem temu-kembali informasi untuk mengubah teks menjadi indeks istilah untuk digunakan dalam proses pencarian dokumen. File Storage Dokumen Teks 1.2 Parsing Teks 1.1 Pengambilan Dokumen yang dipilih Pilihan Index Administrator Array Kata 1.3 Penghilangan Stopwords Token 1.4 Penghitungan Bobot Indeks Istilah Database Penyimpanan Data Gambar 3.3 Data Flow Diagram Level 2 Proses 1 Mesin Indeks

51 Proses 1.2 Parsing Parsing merupakan proses pengenalan kata di dalam rangkaian teks. Input pada proses ini merupakan teks mentah yang masih dalam bentuk paragraf. Nanti teks ini akan diproses dengan menggunakan algoritma tokenizer untuk dipecah menjadi unit-unit yang lebih kecil misalnya berupa kata (token). Tokenizer menerima masukan berupa rangkaian karakter dan memilahnya menjadi token dengan aturan sebagai berikut: Suatu kata dimulai oleh huruf atau angka Kata dipisahkan oleh karakter whitespace (spasi, tabulasi, baris baru, dll) Karakter-karakter khusus yang mengikuti huruf atau angka dianggap bagian dari kata (misalnya tanda persen dalam 125%) namun dianggap sebagai pemisah kata jika tidak. Awal proses pada parsing adalah proses case folding yaitu membuat semua huruf pada teks yang akan di-parsing menjadi huruf kecil, hal ini dilakukan untuk memperkecil ukuran basis data pada indeks, lalu dilanjutkan dengan pemrosesan penghilangan tanda baca. Selanjutnya akan dilakukan pemisahan teks menjadi array kata. Untuk lebih jelasnya mengenai pemrosesan parsing dapat dilihat pada bagan alir di Gambar 3.4. Keluaran yang dihasilkan adalah array kata yang akan digunakan pada pemrosesan selanjutnya.

52 37 Mulai Case Folding Penghilangan tanda baca Pembentukan array Kata Selesai Gambar 3.4 Bagan Alir Proses 1.2 Parsing Proses 1.3 Penghilangan Stopwords Proses penghilangan stopwords ini berfungsi sebagai penyaring kata-kata umum yang hampir selalu ada pada dokumen dan tidak signifikan untuk dijadikan indeks suatu dokumen. Kata-kata umum ini telah didefinisikan sebelumnya sehingga pada proses ini hanya membandingkan kata yang merupakan hasil proses parsing dengan stopwords. Input pada proses 1.2 Penghilangan Stopwords (Gambar 3.5) adalah array kata hasil dari proses parsing. Algoritmanya adalah sebagai berikut : 1. Baca array kata yang didapat dari proses parsing. 2. Ambil daftar stopwords 3. Bandingkan array kata dengan daftar stopwords Jika kata termasuk ke dalam daftar stopwords, maka buang kata dari array.

53 38 4. Ulangi ke langkah no.3 sampai array kata paling terakhir. Mulai Array Kata sebuah dokumen i=0 Daftar stopwords Bandingkan isi array ke-i dengan daftar stopwords i=i+1 Isi array ke-i = stopwords Tidak Ya Pengitungan frekuensi token Tidak Hapus data array ke-i i = jumlah array Ya Pembuatan array Token selesai Gambar 3.5 Bagan Alir Proses 1.3 Penghilangan Stopwords Hasil dari proses ini berupa array token yang berwujud dua dimensi dengan format : Array ( Array ( kata banyaknya kata, kata posisi kata dalam dokumen ), kata banyaknya kata )). Array pada dimensi yang pertama

54 39 berisi array yang digunakan untuk informasi masing-masing token di dalam sebuah dokumen, sedangkan array di dimensi kedua digunakan untuk mencari kata yang memiliki nilai frekuensi maksimal didalam sebuah dokumen. Array token ini nantinya akan digunakan sebagai masukan pada pemrosesan selanjutnya Proses 1.4 Penghitungan Bobot Setelah proses penghilangan stopwords proses pengindeksan dokumen dilanjutkan dengan proses berikutnya yaitu proses penghitungan bobot. Proses 1.4 Penghitungan Bobot menggunakan array token hasil dari Proses 1.3 Penghilangan Stopwords sebagai masukannya. Token pada dimensi pertama dari hasil dari Proses 1.3 ini juga yang menjadi indeks istilah yang akan digunakan dalam proses pencarian. Dalam proses 1.4 Penghitungan bobot akan menggunakan algoritma bobot tf idf. Terdapat 2 variabel utama yang digunakan dalam pembobotan ini, yaitu tf (term frequency) dan idf (inverse document frequency). Proses ini akan menghitung nilai dari dua variabel tersebut, sedangkan untuk nilai dari bobot akhirnya akan dilakukan pada saat pencarian dokumen. Hal ini dilakukan untuk sedikit mempercepat proses pengindeksan dokumen. Hasil akhir dari pemrosesan bobot adalah indeks istilah yang disimpan ke dalam basis data.

55 40 Mulai Dokumen i=0 Array token Dokumen ke-i j=0 Array token ke-j dokumen ke-i sudah ada Tidak i=i+1 Tambah data token ke-j ke Tabel t_terms j=j+1 Ya Penghitungan tf term Tambah data indeks ke tabel t_index indeks Basis data Tidak j= jumlah array Tidak i=0 Ambil term dari tabel t_term Ya i=jumlah dokumen Hitung idf term ke-i term i=i+1 Update tabel t_term Tidak i=jumlah term Ya Selesai Gambar 3.6 Bagan Alir Proses 1.4 Penghitungan Bobot

56 41 Algoritma penghitungan variabel tf setiap kata didalam sebuah dokumen adalah sebagai berikut : 1. Ambil sebuah dokumen 2. Baca array token 3. Cek tabel t_term, jika kata belum ada di dalam basis data, maka tambahkan informasi kata ke dalam basis data. 4. Hitung nilai tf 5. Tambahkan id_data, id_term, tf dan posisi ke tabel t_index. 6. Ulangi dari nomor 2 sampai array token terakhir 7. Ulangi dari nomor 1 sampai dokumen terakhir Algoritma penghitungan variabel idf setiap kata adalah sebagai berikut : 1. Ambil kata dari tabel t_term pada basis data 2. Hitung nilai idf 3. Update tabel t_term berdasarkan kata yang diambil 4. Ulangi dari nomor 1 sampai kata terakhir di dalam basis data. Dilihat pada bagan alir proses penghitungan bobot (Gambar 3.6), perhitungan variabel idf dapat dilakukan jika seluruh dokumen sudah selesai dihitung nilai variabel tf-nya yang berarti seluruh indeks istilah sudah diinputkan ke dalam basis data. Apabila diinputkan satu dokumen baru maka penghitungan idf-nya harus dilakukan ke seluruh indeks istilah yang terdapat di dalam tabel t_term. Hal ini tidak dapat dihindari sehingga membuat proses pengindeksan dokumen memakan waktu yang cukup lama.

57 DFD Level 2 Proses 2 Proses Cari User Kata Kunci 2.1 Parsing Array Kata 2.2 Penghilangan Stopwords Token Query 2.3 cek Frasa Vektor Dokumen 2.4 Fungsi kesamaan Query Pencarian Database Penyimpanan Data Gambar 3.7 DFD Level 2 Proses 2 Proses Cari Pada DFD Level 2 (Gambar 3.7), Proses 2 Proses Cari di pecah menjadi 4 buah subproses. Proses Cari ini merupakan proses pengubahan kata kunci menjadi query pencarian yang akan diproses untuk mencari dokumen berdasarkan kata kunci yang dimasukan oleh pengguna. Dua subproses awal pada proses cari sama dengan subproses pada pengindeksan dokumen yaitu parsing, penghilangan stopwordsi, cek frasa dan fungsi kesamaan. Algoritma subproses penghilangan stopwords dan parsing pada Proses Cari ini sama dengan algoritma subproses pada proses Mesin Indeks, sehingga tidak akan dijelaskan lagi.

58 Proses 2.3 Cek Frasa Input dari Proses 2.3 Cek Frasa yaitu token query hasil dari Proses 2.2 Penghilangan Stopwords. Proses ini merupakan proses pencarian frasa tepat dalam dokumen. Pencarian frasa ini menggunakan posisi token yang terdapat di dalam tabel t_index. Penentuan frasa tepat yang diberikan oleh pengguna dibatasi oleh tanda kutip dua ( ) di dalam kata kunci yang dimasukan oleh pengguna. Contoh : Seorang pengguna ingin mencari frasa tepat kota yogya, maka sistem pertama kali akan mencari seluruh dokumen yang memiliki kata kota dan yogya. Lalu setelah sistem menemukan dokumen memiliki kata tersebut, maka sistem akan mencari dokumen yang memiliki posisi kata kota dan yogya tepat bersebelahan dimulai dari kata kota dan diikuti kata yogya. Tabel 3.1 Contoh Posisi Pencarian Dokumen Dokumen Posisi kata kota Posisi yogya Dokumen 1 8,44,80,178 15,56,81,56 Dokumen 2 4,35,77,203,567 22,98,123 Dilihat dari Tabel 3.1 untuk pencarian kata kota yogya akan menghasilkan Dokumen 1 karena posisi kata kota bersebelahan dengan posisi kata yogya yaitu bernilai 80 dan 81. Dokumen 2 tidak memiliki posisi kata kota dan kata yogya yang bersebelahan, sehingga Dokumen 2 tidak akan dimasukan kedalam vektor sebagai masukan pada proses selanjutnya.

59 44 Mulai Match = false Id_data id_term posisi Array token i=0 j=0 letak = posisi token-j ke i j=j+1 i=i+1 j=0 k=0 Tidak k=k+1 Tidak letak+j = nilai posisi token-j ke-k Tidak k= jumlah posisi token-j Tidak Ya Ya j= jumlah token i = jumlah posisi token ke-0 Ya Ya Match=true if match = true Ya Add id_data ke dalam Vektor Dokumen Tidak Selesai Gambar 3.8 Bagan Alir Proses 2.3 Cek Frasa Algoritma Proses 2.3 Cek Frasa (Gambar 3.8) adalah sebagai berikut : 1. set status match=false.

60 45 2. Ambil data id_data, id_term dan posisi term sesuai dengan array token yang diberikan dari tabel t_index. 3. Ambil posisi dari array token 4. Jika posisi array token pertama ditambah 1 tidak sama dengan seluruh posisi array token berikutnya, maka lanjutkan nomor 3 sampai posisi sama. 5. Jika posisi array token pertama ditambah 1 sama dengan salah satu posisi array token berikutnya lanjutkan dari nomor 2 sampai array token terakhir. 6. Jika posisi array token pertama sampai terakhir telah berurut ubah status match menjadi true. 7. Jika status match = true maka masukan id_data ke dalam array vektor dokumen Proses 2.4 Fungsi Kesamaan Setelah vektor dokumen sudah dibuat maka vektor tersebut akan dimasukan ke dalam rumus fungsi kesamaan untuk dicari nilai bobot dari masingmasing dokumen berdasarkan query pengguna agar dapat diurutkan. Fungsi kesamaan disini menggunakan model ruang vektor, dengan rumus : sim( Q, D ) = i t j= 1 t j= 1 ij w ( w ) 2 qj w t ij j= 1 ( w qj ) 2

61 46 Mulai Vektor Dokumen i=0 Array Token j=0 Basis data Ambil nilai tf dan idf dari t_term dan t_index berdasarkan id_data dokumen ke i dan token ke j wij = tf idf j=j+1 i=i+1 atas = atas+(w ij *w qj ) bawah = bawah + (w ij *w ij ) qvektor = qvektor + (w qj *w qj ) Tidak j= jumlah array Ya Array sim atas / sqrt(bawah*qvektor) Tidak i= jumlah vektor dokumen Ya Urutkan Array sim Selesai Gambar 3.9 Bagan Alir Proses 2.4 Fungsi Kesamaan berikut : Algoritma dari Proses 2.4 Fungsi Kesamaan (Gambar 3.9) adalah sebagai 1. Ambil array vektor dokumen. 2. Ambil array token.

62 47 3. Ambil nilai tf dan idf dari tabel tbl_index dan t_term berdasarkan dokumen dan token. Hitung nilai w ij =tf idf. 4. Set atas = atas + (w ij *w qj ), set bawah = bawah+(w ij *w ij ), set qvektor = qvektor + (w qj *w qj ) 5. Ulangi dari nomor 2 sampai array token terakhir 6. Hitung nilai : atas bawah qvektor dan simpan nilainya ke dalam array sim. 7. Ulangi dari nomor 1 sampai vektor dokumen terakhir. 8. Urutkan nilai di dalam array sim Perancangan Basis Data Model Data Konseptual Tahap perancangan konseptual meliputi dua kegiatan yang tidak dapat dipisahkan, yaitu perancangan skema konseptual tentang organisasi data yang harus disimpan dalam basis data, dan rancangan transaksi yang dilakukan untuk memperoleh informasi dari sistem basis data. Perancangan basis data secara konseptual dapat dilihat pada Gambar Administrator Memasukan Dokumen 1 n n 1 Diindeks Menjadi Dikelompokan n 1 Term Bagian Gambar 3.10 Model Data Konseptual Sistem Penyimpanan Model Data logik

63 48 Gambar 3.11 Model Data Logik Sistem Penyimpanan Perancangan basis data secara logik bertujuan untuk menyusun rancangan konseptual dan skema eksternal yang sesuai dengan sistem manajemen basis data yang dipilih. Perancangan basis data secara logik dapat dilihat pada Gambar Model Data Fisik Perancangan basis data secara fisik bertujuan untuk membuat spesifikasi struktur penyimpanan dan jalur akses data sehingga diperoleh kemampuan sistem yang baik untuk berbagai aplikasi. Perancangan basis data secara fisik dapat dilihat pada Gambar 3.12.

64 49 PK t_data id_data PK t_bagian id_bagian PK t_user id_user uname password guid kontrolisasi FK1 id_bagian tanggal nama_data letak nama_file type_file ukuran_file penulis deskripsi temp_file t_term PK,FK1 PK,FK2 bagian folder t_index id_data id_term tf position PK id_term term idf Gambar 3.12 Model Data Fisik Sistem Penyimpanan Pada basis data yang digunakan dalam Sistem Penyimpanan, terdapat lima tabel yaitu tabel t_user, t_data, t_bagian, t_index, dan t_term. Basis data untuk sistem menggunakan MySQL Versi a. Tabel 3.2 sampai dengan Tabel 3.6 menjelaskan deskripsi tabel yang digunakan dalam Sistem Penyimpanan. Tabel 3.2 Struktur Data Tabel t_user Nama Kolom Tipe Keterangan id_user Auto Number (Primary Key) uname Varchar (25) Username untuk administrator password Varchar (255) Password untuk login guid Varchar (32) ID untuk session pada server Kontrolisasi Tinyint (1)

65 50 Tabel t_user (Tabel 3.2) digunakan untuk proses login pada bagian administrator, isi dari tabel ini merupakan nama user dan password serta hak akses yang dimiliki oleh administrator. Tabel 3.3 Struktur Data Tabel t_data Nama Kolom Tipe Keterangan id_data AutoNumber (Primary Key) id_bagian Integer (10) tanggal Date nama_data Varchar (100) Nama dari dokumen letak Varchar (150) Path file dokumen di dalam Harddisk nama_file Varchar (80) Nama file dokumen sebenarnya yang dimasukan oleh administrator type_file Varchar (30) Ekstension dari file dokumen ukuran_file Integer (16) Ukuran dari file dokumen penulis Varchar (80) Penulis dari dokumen deskripsi Varchar (160) Deskripsi dari file dokumen temp_file Varchar (150) Path file temporary di dalam harddisk Sistem penyimpanan akan menyimpan informasi dari dokumen yang dimasukan oleh administrator pada tabel t_data (Tabel 3.3). Informasinya berupa nama dari data, letak path dari file dokumen pada harddisk, nama file asli dari dokumen tersebut, tipe ekstensi dari file (.doc,.pdf atau.xls), ukuran file, penulis, deskripsi dari file dan letak file temporary dari file dokumen. Sistem akan menyimpan mengelompokan dokumen kedalam kelompok dokumen yang disebut bagian, informasi dari dokumen ini akan disimpan pada tabel t_bagian (Tabel 3.4). informasi dari bagian kelompok dokumen itu adalah nama bagian dan nama folder diharddisk tempat file dokumen disimpan.

66 51 Tabel 3.4 Struktur Data Tabel t_bagian Nama Kolom Tipe Keterangan id_bagian AutoNumber (Primary Key) bagian Varchar (255) Nama bagian folder Varchar (255) Nama Folder bagian di dalam sistem Dokumen pada sistem penyimpanan akan direlasikan kepada kata-kata indeks pada tabel t_index (Tabel 3.5). Pada tabel ini juga akan disimpan informasi dari variabel tf setiap kata yang dimiliki oleh dokumen dan seluruh posisi dari kata pada dokumen. Tabel 3.5 Struktur Data Tabel t_index Nama Kolom Tipe Keterangan id_data Integer (10) (Primary Key) id_term Integer (10) (Primary Key) tf Double Nilai variabel tf dari suatu term pada sebuah dokumen position Text Posisi term di dalam sebuah dokumen Tabel 3.6 Struktur Data Tabel t_term Nama Kolom Tipe Keterangan id_term Auto Number (Primary Key) term Varchar (50) Term suatu indeks istilah idf Double Nilai variabel idf dari suatu term

67 52 Tabel t_term (Tabel 3.6) menyimpan informasi setiap kata hasil pemrosesan dokumen yang berupa kata term tersebut dan nilai variabel idf dari kata Perancangan Antarmuka Antarmuka Pengindeksan Banner 21/01/2006 Seluruh Dokumen Menu Index Seluruh Dokumen Bagian Pilih Bagian Index Bagian Dokumen Dokumen 1 Dokumen 2 Dokumen 3 Dokumen 4 Dokumen 5 Dokumen 6 Dokumen 7 Dokumen 8 Dokumen 9 Dokumen 10 Navigasi Index Dokumen Gambar 3.13 Perancangan Antarmuka Pengindeksan

68 53 Antarmuka pengindeksan (Gambar 3.13) dirancang untuk digunakan oleh administrator untuk memilih pilihan indeks. Pilihan terdiri dari tiga macam yaitu seluruh dokumen, bagian dan indeks. Sistem akan mengindeks dokumen sesuai dengan pilihan yang diberikan oleh administrator Antarmuka Pencarian Antarmuka pencarian digunakan oleh pengguna sistem untuk mencari dokumen yang berisi informasi yang diinginkan. Form pencarian dapat ditemukan pada setiap halaman dari sistem pencarian data. Gambar dari antarmuka pencarian dapat dilihat pada Gambar Banner Form Pencarian Search : 30/12/2005 Menu Hasil Pencarian Gambar 3.14 Perancangan Antarmuka Pencarian

69 4. BAB IV IMPLEMENTASI DAN PEMBAHASAN Setelah selesai melakukan tahap pemodelan, pengembangan perangkat lunak mulai memasuki tahap pembangunan yaitu kegiatan implementasi dan pengujian perangkat lunak. Pada kegiatan implementasi ini menerjemahkan hasil analisis dan perancangan perangkat lunak ke dalam bahasa mesin yang dikenal oleh komputer. Sedangkan untuk tahap pengujian kinerja sistem diperhitungkan untuk menyesuaikan dengan hasil yang diinginkan. Pada tahap implementasi dibuat dua buah modul dan lima buah submodul untuk mendukung penelitian mengenai temu-kembali informasi. Modul dan submodul tersebut adalah : Modul pengindeksan o Submodul untuk parsing dan penghilangan stopwords pada pengindeksan o Submodul perhitungan nilai variable idf Modul pencarian o Submodul untuk pencarian frasa dari query o Submodul untuk parsing dan penghilangan stopwords pada query o Submodul pencocokan dokumen yang memiliki frasa tepat Lingkungan yang dipakai dalam tahapan implementasi secara terperinci adalah sebagai berikut : 54

70 55 a. Perangkat lunak yang digunakan: Sistem operasi : Microsoft Windows XP. Bahasa Pemrograman : PHP Versi Basis data : MySQL Versi a b. Perangkat keras yang digunakan : Processor AMD Athlon (tm) XP ,533 Ghz Monitor 15 Harddisk 80 GB RAM 1 GB Keyboard + Mouse 4.1 Sistem Penyimpanan Data Untuk mendukung penelitian tentang sistem pencarian dengan metode temu-kembali informasi, maka dibuat sistem penyimpanan yang dapat menyimpan data berupa dokumen teks. Dokumen teks ini nantinya yang akan dicari oleh sistem pencarian. Dokumen teks ini akan disimpan di dalam sistem dan dikelompokan berdasarkan bagiannya. Penambahan bagian dan dokumen di dalam sistem penyimpanan data ini hanya dapat dilakukan oleh administrator sebagai pengguna yang memiliki otoritas tertinggi dan tentunya administrator ini memiliki nama user dan password untuk mengakses halaman admin di dalam sistem.

71 56 Gambar 4.1 Antarmuka Login Sistem Penyimpanan Namun sebelum menambahkan bagian dan dokumen, administrator harus melakukan login ke dalam sistem dengan memasukan nama user dan password. Sistem selanjutnya akan melakukan verifikasi nama user dan password yang dimasukan oleh administrator tadi dengan cara mencari nama user dan password tersebut pada tabel t_user di dalam basis data. Antarmuka dari halaman login sistem penyimpanan dapat dilihat pada Gambar 4.1. Jika nama user dan password yang dimasukan oleh administrator terdapat di dalam basis data pengguna, maka administrator selanjutnya akan memasuki halaman administrasi. Pada halaman administrasi (Gambar 4.2), administrator dapat memilih halaman untuk memanipulasi bagian dan data serta halaman untuk melakukan pengindeksan dokumen yang terdapat di dalam sistem.

72 57 Gambar 4.2 Antarmuka Halaman Administrasi Halaman Manipulasi Bagian Halaman manipulasi bagian (Gambar 4.3) merupakan halaman yang berfungsi untuk menambah, mengubah dan menghapus bagian di dalam sistem. Seperti yang telah disebutkan sebelumnya, dokumen di dalam sistem penyimpanan akan disimpan menjadi kelompok-kelompok dokumen. Pada sistem ini minimal harus terdapat satu kelompok dokumen. Jika tidak, maka dokumen tidak dapat dimasukan ke dalam sistem.

73 58 Gambar 4.3 Antarmuka Halaman Manipulasi Bagian Pada halaman manipulasi bagian yang dapat dilihat pada Gambar 4.3, administrator akan memasukan nama bagian ke dalam form tambah bagian.untuk menambah bagian. Nanti nama bagian ini akan dimasukan ke dalam basis data. Namun, sebelumnya akan dilakukan pemeriksaan ke dalam basis data. Jika nama bagian yang akan ditambahkan sudah ada di dalam basis data, maka sistem akan menolak nama tersebut, sebaliknya jika nama tersebut belum ada maka sistem akan memasuki proses penambahan bagian baru. Setelah nama bagian berhasil ditambahkan maka sistem akan membuat folder dari bagian tersebut pada media penyimpanan harddisk dengan format [folder home]/data/[nama bagian]. Pada folder tersebut nantinya dokumen pada suatu bagian akan diletakan. Setelah itu informasi dari nama bagian dan nama folder tersebut akan di simpan ke dalam tabel t_bagian pada basis data.

74 59 Untuk pengubahan nama bagian, juga akan mengubah nama folder dari bagian tersebut. Dan untuk penghapusan bagian, akan menghapus seluruh dokumen yang ada di dalam bagian serta menghilangkan folder pada mendia penyimpanan harddisk. Potongan kode program dari penambahan, pengubahan dan penghapusan bagian dapat dilihat pada Gambar 4.4. if ($action== "add"){ $bagian =$_POST['bagian']; if ($bagian==""){ $msg = "Error : Nama Bagian harus diisi!! <br>"; else{ $sql = "select * from t_bagian where nama_bagian='$bagian'"; if (@mysql_num_rows(mysql_query($sql))){ $msg = "Error : Nama Bagian Sudah ada!! <br>"; else { $bag = preg_replace("/\w+/i","",$bagian); if (!$bag strlen($bag) <=1){ $msg = "Nama Bagian salah!!<br>"; else{ $folder = preg_replace("/\w+/i","",$bagian); $folder = strtolower($folder); $folder = ereg_replace(" ", "_",$folder); $dir= "data/"; $sql = "Insert into t_bagian values('','$bagian','$folder')"; if (mysql_query($sql)){ mkdir($dir.$folder); header('location: admin_bagian.php?msg='.urlencode(":: Bagian Berhasil di tambahkan!!")); else{ $msg = "Query Error!! <br>"; $id_bagian=""; elseif($action =="edit"){ $bagian_baru = $_GET['bagian_baru']; if ($bagian_baru==""){ $msg = "Error : Nama Bagian Baru harus diisi!! <br>"; else{ $sql = "select * from t_bagian where nama_bagian='$bagian_baru'"; if (@mysql_num_rows(mysql_query($sql))){ $msg = "Error : Nama Bagian Sudah ada!! <br>"; else { $bag = preg_replace("/\w+/i","",$bagian_baru); if (!$bag strlen($bag) <=1){ $msg = "Nama Bagian Baru salah!!<br>"; else{ $folder = preg_replace("/\w+/i","",$bagian_baru); $folder = strtolower($folder); $folder = ereg_replace(" ", "_",$folder); $dir= "data/"; $sql = "Update t_bagian set nama_bagian='$bagian_baru', folder='$folder' where id_bagian='$id_bagian'"; if (mysql_query($sql)){ rename($dir.$folder_lama,$dir.$folder); header('location: admin_bagian.php?msg='.urlencode(":: Bagian Berhasil di Update!!"));

75 60 else{ $msg = "Query Error!! <br>"; $id_bagian=""; elseif($action == "empty"){ $sql = "select letak,temp_file from t_data where id_bagian='$id_bagian'"; $rs = mysql_query($sql); while ($row = mysql_fetch_array($rs)){ $sql = "DELETE from t_data where id_bagian='$id_bagian'"; if (mysql_query($sql)){ header('location: admin_bagian.php?msg='.urlencode(":: Bagian Berhasil di Kosongkan!!")); else{ $msg = "Query Error!! <br>"; $id_bagian=""; elseif($action == "delete"){ $dir = "data/"; $sql = "select letak,temp_file from t_data where id_bagian='$id_bagian'"; $rs = mysql_query($sql); while ($row = mysql_fetch_array($rs)){ $sql = "select folder from t_bagian where id_bagian='$id_bagian'"; $folder = mysql_fetch_row(mysql_query($sql)); $sql = "DELETE from t_data where id_bagian='$id_bagian'"; mysql_query($sql); $sql = "Delete from t_bagian where id_bagian='$id_bagian'"; if (mysql_query($sql)){ rmdir($dir.$folder[0]); header('location: admin_bagian.php?msg='.urlencode(":: Bagian Berhasil di Hapus!!")); else{ $msg = "Query Error!! <br>"; $id_bagian=""; Gambar 4.4 Potongan Kode Program Manipulasi Bagian Halaman Manipulasi Data Setelah administrartor menambah sebuah bagian pada sistem, maka selanjutnya administrator dapat mulai menambahkan data yang berupa dokumen teks ke dalam sistem. Halaman manipulasi data (Gambar 4.5) pertama kali akan memberikan daftar dari dokumen yang disimpan di dalam sistem sesuai dengan nama bagian yang dipilih oleh administrator. Untuk menambah data baru pada bagian tersebut, maka administrator dapat menekan tombol add yang berada

76 61 pada kanan atas dari daftar dokumen. Selanjutnya, halaman input data (Gambar 4.6) akan ditampilkan kepada administrator. Pada halaman ini, sebelum administrator memasukan dokumen, maka administrator minimal harus memasukan informasi mengenai nama data, bagian serta file dari data yang akan dimasukan ke dalam sistem. Jika semua persyaratan untuk memasukan dokumen sudah terpenuhi maka sistem akan melakukan proses penambahan data ke dalam tabel t_data pada basis data.. Gambar 4.5 Antarmuka Halaman Manipulasi Data

77 62 Gambar 4.6 Antarmuka Halaman Input Data Sebelum sistem melakukan penambahan data dokumen ke dalam basis data, file dari dokumen akan di-upload ke dalam sistem dan diletakan sesuai dengan folder bagian yang sudah dipilih, selanjutnya sistem akan mengubah nama file dokumen menjadi format tahun_bulan_tanggal_jam_menit_detik_[nama file yang sudah di hilangkan spasi dan diubah huruf kapitalnya]. Hal ini bertujuan agar file yang memiliki nama yang sama tetapi isinya berbeda dapat dimasukan oleh administrator ke dalam sistem. Namun nama asli dari file dokumen tersebut akan disimpan di dalam basis data untuk digunakan pada saat pengguna dari sistem ingin men-download file tersebut. Tipe file dokumen yang dapat disimpan di dalam sistem dapat terdiri dari 3 jenis yaitu file Microsoft Word, Microsoft Excel dan PDF. Akan tetapi, dokumen yang dimasukan ke dalam sistem pada penelitian ini hanya

78 63 menggunakan file dokumen dengan format Microsoft Word (.doc). Untuk memudahkan sistem pada saat melakukan pengindeksan, maka pada saat memasukan file dokumen juga dibuat file ascii yang dihasilkan dari file Microsoft Word yang dimasukan oleh administrator. Pembuatan file temporary ini menggunakan bantuan beberapa aplikasi tambahan yaitu: 1. Catdoc, aplikasi untuk mengubah file Microsoft Word (.doc) menjadi file ascii. Aplikasi ini dapat di-download di catdoc/ 2. Xls2csv, aplikasi untuk mengubah file Microsoft Excel (.xls) menjadi file ascii. Aplikasi ini dapat di-download di ice/catdoc/ 3. Xpdf, aplikasi untuk mengubah file pdf menjadi file ascii. Aplikasi ini dapat di-download di File temporary ini disimpan pada folder [folder home]/tmp. File temporary ini isinya hanya teks utuh yang dimiliki oleh file dokumen yang dimasukan oleh administrator. Selain berfungsi untuk digunakan pada saat pengindeksan dokumen, file temporary ini juga dapat digunakan untuk melihat isi dari dokumen kepada pengguna, sebelum pengguna men-download file asli dari dokumen ini. Sistem juga akan membuat deskripsi dari file yang dimasukan oleh administrator secara otomatis dengan cara mengambil 150 huruf pada awal dokumen. Modul untuk pengubahan file menjadi file temporary dan modul untuk mendapatkan deskripsi dari file dapat dilihat pada Gambar 4.7.

79 64 function getdesc($file,$type_file){ if ($type_file == "application/pdf"){ $bin = "bin/pdftotext/pdftotext.exe"; $type = "pdf"; elseif($type_file == "application/vnd.ms-excel"){ $bin = "bin/catdoc/xls2csv.exe"; $type = "xls"; elseif($type_file == "application/msword"){ $bin = "bin/catdoc/catdoc.exe"; $type = "doc"; else{ $bin = ""; $desc = "Tidak terdapat deskripsi untuk file ini"; if ($bin){ $ren = date("ymdhis_"); for ($i=1; $i<=8; $i++) { $temp_filename.= rand(1,9); $temp_file = "tmp/".$temp_filename.".tmp"; $temp_file_save = "tmp/".$ren.$temp_filename.".tmp"; $dir = dirname($_server['script_filename'])."/"; if (copy($file,$temp_file)){ $execute = $dir.$bin." ".$dir.$temp_file; if ($type == "doc" $type == "xls"){ exec($execute,$output); for($i=0;$i <= count($output)-1 ;$i++){ $arrdesc.=$output[$i]."\n"; if ($type =="xls"){ $arrdesc = ereg_replace(";"," ",$arrdesc); $arrdesc = ereg_replace("\""," ",$arrdesc); $berkas=fopen($temp_file_save,"w"); fputs($berkas,$arrdesc); fclose($berkas); elseif ($type == "pdf"){ exec($execute); $temp_file2 = $temp_file.".txt"; if (file_exists($temp_file2)){ $arrdesc = getfile($temp_file2); copy($temp_file2,$temp_file_save); unlink($temp_file2); else{ $desc = "Deskripsi file tidak ada."; if ($arrdesc){ $desc = preg_replace("/\n/"," ",$arrdesc); $desc = preg_replace("/\s+/"," ",$desc); $desc = preg_replace("/\s+[\d+\w*]*\s+/"," ",$desc); $desc = substr($desc,0,150)."..."; unlink($temp_file); return array($desc,$temp_file_save); Gambar 4.7 Modul Pengubahan File dan Pengambilan Deskripsi File Selanjutnya sistem akan menyimpan seluruh informasi yang telah dibuat oleh sistem dari sebuah file dokumen tersebut ke dalam basis data. Potongan kode program dari manipulasi data dapat dilihat pada Gambar 4.8.

80 if ($action== "add"){ if(!$nama_data!$upload_file!$id_bagian){ $msg = "Yang bertanda <strong>*</strong> tidak boleh kosong!!"; $state = "add"; else{ $ren = date("ymdhis"); $date = date ("Y-m-d"); $dir = "data/"; $nama_file = $upload_file['name']; $nama_file_baru =$ren.strtolower(ereg_replace(" ","_",$nama_file)); $folder = getdata("folder","t_bagian","id_bagian='".$id_bagian."'"). "/"; $letak = $dir.$folder.$nama_file_baru; $type_file = $upload_file['type']; $ukuran_file = $upload_file['size']; if (@copy($upload_file['tmp_name'],$letak)){ $desc = getdesc($letak,$type_file); $sql = "insert into t_data values('','$id_bagian', '$date', '$nama_data', '$letak', '$nama_file', '$type_file', '$ukuran_file', '$penulis', '".addslashes($desc[0])."', '".$desc[1]."')"; if(mysql_query($sql)){ $msg = ":: File berhasil di add!!"; header('location: admin_data.php?id_bagian='.$id_bagian. '&msg='.urlencode($msg)); else{ $msg = "Query Error!!"; $state= "add"; else{ $msg = "File gagal di Upload!!"; $state= "add"; elseif($action =="edit"){ if(!$nama_data!$id_bagian){ $msg = "Yang bertanda <strong>*</strong> tidak boleh kosong!!"; $state = "edit"; else{ $date = date ("Y-m-d"); if ($upload_file){ $filelama = getdata("letak","t_data","id_data='$id_data'"); $temp_filelama = getdata("temp_file", "t_data", "id_data= '$id_data'"); $ren = date("ymdhis"); $dir = "data/"; $nama_file = $upload_file['name']; $nama_file_baru = $ren.strtolower(ereg_replace(" ", "_", $nama_file)); $folder = getdata("folder", "t_bagian", "id_bagian= '".$id_bagian. "'")."/"; $letak = $dir.$folder.$nama_file_baru; $type_file = $upload_file['type']; $ukuran_file = $upload_file['size']; if (copy($upload_file['tmp_name'],$letak)){ $desc = getdesc($letak,$type_file); $sqlplus = "letak='$letak', nama_file='$nama_file', type_file='$type_file', ukuran_file='$ukuran_file', deskripsi='".$desc[0]."', temp_file='".$desc[1]."',"; 65

81 66 $sql = "Update t_data set id_bagian='$id_bagian, nama_data= '$nama_data', tanggal='$date',$sqlplus penulis='$penulis' where id_data='$id_data'"; if(mysql_query($sql)){ $msg = ":: File berhasil di edit!"; header('location: admin_data.php?id_bagian='.$id_bagian. '&msg='.urlencode($msg)); else{ $msg = "Query Error!!"; $state= "edit"; elseif($action == "delete"){ $filelama = getdata("letak","t_data","id_data='$id_data'"); $temp_filelama = getdata("temp_file","t_data","id_data='$id_data'"); $sql = "delete from t_data where id_data='$id_data'"; if(mysql_query($sql)){ $msg ='Data berhasil di Hapus!!'; $sql = "delete from t_index where id_data='$id_data'"; header('location: admin_data.php?id_bagian='.$id_bagian. '&msg='.urlencode($msg)); Gambar 4.8 Potongan Kode Program Manipulasi Data Halaman Pengguna Gambar 4.9 Antarmuka Halaman Pengguna

82 67 Halaman pengguna pada sistem pencarian dapat dilihat pada Gambar 4.9. Pada palaman ini, pengguna pertama kali diharuskan untuk memilih bagian dari dokumen. Setelah pengguna memilih bagian, maka pengguna dapat melihat dokumen yang terdapat di dalam bagian tersebut beserta seluruh informasi yang dimiliki oleh dokumen. Pengguna dapat melihat tanggal dari pengubahan dokumen ini, nama file serta ukuran dari file. Di setiap dokumen yang ditampilkan terdapat dua link, yang pertama berfungsi untuk men-download file dari dokumen dan yang kedua berfungsi untuk melihat isi dari dokumen tersebut. Gambar dari halaman dokumen dapat dilihat pada Gambar Gambar 4.10 Antarmuka Halaman Dokumen Di setiap halaman yang dapat diakses oleh pengguna, terdapat sebuah form yang berfungsi untuk mencari dokumen yang memiliki suatu informasi tertentu dengan memasukan kata kunci ke dalam form. Form ini terletak pada bagian

83 68 kanan atas pada setiap halaman yang dilihat oleh pengguna. Selain itu pengguna juga dapat mencari informasi dari dokumen dengan fasilitas pencarian canggih. Pada fasilitas pencarian canggih (Gambar 4.11), pengguna dapat mencari dokumen secara spesifik dengan memasukan kata kunci yang berupa kata dan kata tepat, penulis, serta bagian tertentu dari dokumen yang akan dicari. Gambar 4.11 Antarmuka Halaman Pencarian Canggih 4.2 Modul Pengindeksan File dari modul pengindeksan diberi nama dengan nama tokenize.php dan digunakan hanya pada saat sistem temu-kembali melakukan pengindeksan dokumen. Di dalam modul ini akan dilakukan parsing dan penghilangan stopwords dari dokumen-dokumen yang akan diindeks dilanjutkan dengan penghitungan nilai variabel tf dan idf. Hasil dari pengindeksan akan disimpan ke dalam basis data yang akan digunakan pada saat pencarian dokumen.

84 69 Modul yang digunakan pada saat pengindeksan ada dua buah, yaitu modul untuk parsing dan penghilangan stopwords serta modul perhitungan variabel idf. Dokumen yang diindeks diambil dari media penyimpanan sesuai dengan pilihan yang diberikan oleh administrator. Namun sebelum itu, untuk mengetahui letak dokumen di media penyimpanan maka terlebih dahulu akan dilakukan pengambilan informasi dokumen dari tabel t_data pada basis data. Awal dari modul pengindeksan adalah pendefinisian lamanya waktu indeks yang akan digunakan. Hal ini dimaksud agar waktu batas maksimum eksekusi file php yang sudah di set pada server web disesuaikan dengan lamanya waktu eksekusi pengindeksan dokumen. Perlu diingat pembuatan indeks sekumpulan dokumen dapat memakan waktu berjam-jam bahkan mungkin berhari-hari tergantung dari jumlah kata yang terdapat pada seluruh dokumen. Pada penelitian ini, untuk menghindari agar server web tidak menghetikan proses pengindeksan sebelum semua dokumen selesai diindeks maka batas maksimum waktu pengindeksan akan diatur menjadi detik yaitu selama satu hari penuh. Setelah mengatur batas waktu maksimum maka dilakukan pengambilan daftar kata stopwords yang disimpan didalam sebuah file bernama stopwords.txt di dalam media penyimpanan. Isi dari daftar kata-kata stopwords yang disimpan di dalam file txt tersebut dapat dilihat pada Tabel 4.1

85 70 Tabel 4.1 Daftar kata stopwords pada file stopwords.txt Stopwords ada biasanya kalau menunjukkan sedang seusai adalah bila kalian menurut sedangkan sewaktu adanya bilamana kami mereka sedikit si adapun buat kamu merupakan segera siapa aduh bukan karena meski sehabis siapakah agar dalam kata meskipun sehingga siapapun ah dan katanya misalnya sehubungan suatu akan dapat kau mungkin sejak sudah aku dari ke namun sejumlah supaya alih-alih daripada kebanyakan nanti sekarang tak anda dekat kecuali nyaris sekeliling tanpa andai demi kemanakah oleh seketika tapi antar demikian kemudian pada sekitar tatkala antara dengan kenapa padahal sekonyongkonyong telah apa depan kenapakah para selagi tengah apakah di kepada pasti selain tentang apalagi dia ketika pelbagai selalu tentu asalkan dikatakan ketimbang per selama tentunya atas dilakukan kini peri selanjutnya tergolong atau dkk kita perihal selesai terhadap ataupun dll lagi pinggir seluruh terjadi Bagai dsb lain pula seluruhnya terkadang bagaikan engkau lain-lain pun semakin terlalu bagaimana hal lainnya saat semenjak terlebih bagaimanakah hampir lalu saja sementara termasuk bagaimanapun hanya lebih sambil semua ternyata bagi harus lepas sampai semuanya tersebut bahkan hingga lewat samping seorang tertentu bahwa ia maka sang sepanjang tetap balik ialah makin sangat seperti tetapi banyak ini manakala sangatlah sepertinya tiap barangkali itu masih saya seputar tiba-tiba bawah iya masing-masing seakan seraya tidak beberapa jadi masing-masingnya seakan-akan sering ujar begini jangan maupun seantero seringkali ujarnya begitu jarang melainkan sebab serta umumnya belakang jauh melakukan sebabnya sesuai untuk belum jika melalui sebagai sesuatu walau berapa jikalau memang sebagaimana sesudah walaupun berbagai juga mengatakan sebagainya sesudahnya ya bersama jumlah mengenai sebelum sesungguhnya yaitu beserta justru menjadi sebelumnya setelah yakni betapa kadang menjelang sebuah seterusnya yang biar kadang-kadang menuju secara setiap

86 71 Kata-kata yang terdapat pada Tabel 4.1 tersebut tidak akan digunakan sebagai kata di dalam indeks serta pada query pencarian. Penggunaan sebuah file stopwords.txt dikarenakan kata-kata tersebut tidak diperbarui secara rutin, walaupun ada penambahan kata stopwords dapat dilakukan secara mudah oleh administrator. Selanjutnya, kata-kata yang terdapat di dalam file stopwords.txt akan dimasukan kedalam sebuah variabel bertipe array untuk dapat digunakan oleh sistem secara mudah. include "inc/ir.function.php"; set_time_limit(86400); // 1 full day $stopwords = file("./bin/stopwords.txt"); for ($i =0 ; $i <= count($stopwords) -1; $i++){ $stopwords[$i]= trim($stopwords[$i]); $mode = $_POST['mode']; $id_data = $_POST['id_data']; $pilih_bagian = $_POST['pilih_bagian']; if ($mode == "all"){ $sql = "select id_data,temp_file from t_data"; elseif($mode == "bagian"){ $sql = "select id_data,temp_file from t_data where id_bagian='$pilih_bagian'"; else if ($mode == "dokumen"){ $OrSql = true; if (count($id_data)){ for ($i =0 ; $i <= count($id_data)- 1 ; $i++){ if (trim($id_data[$i])){ if ($OrSql){ $plussql = "id_data=".$id_data[$i]." "; $OrSql = false; else{ $plussql.= "OR id_data=".$id_data[$i]." "; $QStr.= "id_data[]=".$id_data[$i]."&"; $sql = "select id_data, temp_file from t_data where $plussql"; $rs = mysql_query($sql,$konek); Gambar 4.12 Kode Program modul Pengindeksan bagian pertama Setelah pendefinisian lama waktu eksekusi dan pengambilan daftar kata stopwords, maka proses pengindeksan akan dilanjutkan ke proses pemilihan dokumen yang akan diindeks. Selanjutnya akan dilakukan pengambilan informasi dokumen yang akan diindeks dari basis data. Informasi yang diambil hanya letak

87 72 alamat dari file sementara, bukan letak dari file aslinya. Kode program pada modul pengindeksan bagian pertama dapat dilihat pada Gambar Submodul Parsing dan Penghilangan Stopwords Setelah informasi mengenai dokumen sudah diambil dari basis data maka akan dilakukan pemecahan teks (parsing) dan penghilangan stopwords dari teks yang terdapat di dalam dokumen. Disini informasi dokumen yaitu id_data dan temp_file dari basis data akan digunakan satu per satu hingga informasi dokumen terakhir sesuai dengan pilihan yang diberikan oleh administrator. Dari informasi dokumen tersebut akan didapat isi dari dokumen berupa teks untuk digunakan oleh submodul parsing dan penghilangan stopwords. Submodul parsing dan penghilangan stopwords akan memecah teks yang terdapat didalam dokumen menjadi token yang siap untuk digunakan pada indeks. Modul ini diberi nama indextext dan parameter masukan yang digunakan oleh modul ini ada dua yaitu teks yang didapatkan dari dokumen dan array stopwords hasil pendefinisian pada awal file pengindeksan. function indextext($string,$stopwords){ global $buangkarakter; $str2 = strtolower($string); $str2 = strip_tags($str2); $str2 = preg_replace($buangkarakter," ",$str2); $arraystr = explode (" ",$str2); $j=0; for ($i = 0 ; $i <= count($arraystr)-1 ; $i++){ $tokens =trim($arraystr[$i]); if ($tokens){ if (strlen($tokens) >2 &&!in_array($tokens,$stopwords)){ $maxtoken[$tokens]++; $token[$tokens][0]++; $token[$tokens][1].= $j.","; $j++; return array($token,$maxtoken); Gambar 4.13 Kode Program Submodul Parsing dan Penghilangan Stopwords

88 73 Setelah itu teks dari seluruh dokumen akan diseragamkan menjadi huruf kecil semua. Dilanjutkan dengan proses penghilangan kode-kode html, penghilangan tanda baca dan diakhiri dengan proses penghilangan stopwords dari teks dokumen. Hasil dari submodul ini adalah array dua dimensi yang dimensi pertama berisi array frekuensi kata dan posisi dari kata pada dokumen dan posisi dimensi kedua berisi array frekuensi kata. Kode program dari submodul parsing dan penghilangan stopwords dapat dilihat pada Gambar $string = file_get_contents($row[1]); $temp_tokens = indextext($string,$stopwords); $maxtext = max($temp_tokens[1]); $totaltxt = count($temp_tokens[0]); $j = 0; $i=0; $OrSql = true; foreach($temp_tokens[0] as $token => $property){ usleep(50000); $tf=number_format($property[0]/$maxtext,4); $position = substr($property[1],0,-1); $i++; if (!getcount("t_term","term='$token'")){ $sqltoken= "insert into t_term values('','$token','')"; mysql_query($sqltoken); $id_term= mysql_insert_id(); else { $id_term= getdata("id_term","t_term","term='".$token."'"); $array_sql[$j][0] = $row[0]; $array_sql[$j][1] = $id_term; $array_sql[$j][2] = $tf; $array_sql[$j][3] = $position; $j++; if ($j==200 $i == $totaltxt){ usleep(50000); for ($k=0; $k <=count($array_sql);$k++){ if ($k % 15 == 0){ usleep(50000); $sqlindex = "insert into t_index values('".$array_sql[$k][0]."', '".$array_sql[$k][1]."', '".$array_sql[$k][2]."', '".$array_sql[$k][3]."')"; mysql_query($sqlindex,$konek); $j=0; unset($array_sql); Gambar 4.14 Kode Program Modul Pengindeksan Bagian Kedua

89 74 Hasil dari submodul tersebut akan dimasukan ke dalam dua variabel yang akan digunakan untuk proses penambahan atau perubahan data di dalam basis data. Sebelumnya terlebih dahulu kata akan dicek terlebih dahulu ke tabel t_term di dalam basis data. Kata yang sudah terdapat di dalam basis data tidak akan dimasukan kembali dan token yang belum terdapat di dalam basis data akan ditambahkan ke tabel t_term. Setelah itu akan dilakukan penambahan data ke tabel t_index di dalam basis data. Kode program dari penggunaan submodul parsing dan penghilangan stopwords pada file pengindeksan dapat dilihat pada Gambar Jika dilihat pada Gambar 4.14 proses penambahan token ke dalam tabel t_index dilakukan berulang-ulang. Hal ini akan menyebabkan kinerja prosessor yang meningkat dalam waktu yang cukup lama. Untuk menghindari hal itu maka digunakan fungsi usleep untuk menghentikan sesaat kerja dari prosessor komputer. Pada Gambar 4.14 perintah tersebut diberi nilai yang berarti mikrodetik atau sebesar 0,05 detik adalah lamanya waktu berhenti sesaat kerja dari prosessor Submodul Perhitungan Variabel idf Setelah seluruh informasi indeks selesai dimasukan ke dalam tabel t_term dan informasi token pada setiap dokumen sudah dimasukan ke dalam tabel t_index, maka dapat dilakukan perhitungan variabel idf yang akan disimpan pada tabel t_term. Variabel idf ini dapat dihitung dengan rumus : idf = i log N n i

90 75 Dimana : idf i = nilai idf dari suatu elemen kata i N = jumlah dari seluruh dokumen di dalam sistem n i = jumlah frekuensi dokumen yang memiliki kata i Dari rumus tersebut dapat diambil kesimpulan, apabila terdapat penambahan sebuah dokumen maka nilai dari variabel idf-nya harus diperbarui pada setiap kata yang terdapat dalam sistem. Hal ini tidak dapat dihindari karena terdapat variabel N dan n i dari rumus tersebut yang merupakan jumlah dari dokumen di dalam sistem. Perhitungan variabel idf ini akan membuat pengindeksan memakan waktu yang cukup lama. function CreateIDF(){ global $konek; $OrSQL = true; $sql = "select id_term from t_term"; $rs = mysql_query($sql,$konek); $totaldocument = getcount("t_data","id_data"); $j=0; while ($row = mysql_fetch_row($rs)){ usleep(50000); $totalusedterm = getcount("t_index","id_term='".$row[0]."'"); $idf = number_format(log($totaldocument/$totalusedterm),4); $term[$j][0] = $row[0]; $term[$j][1] = $idf; $j++; usleep(100000); for ($k=0 ; $k<=count($term)-1;$k++){ if ($k % 15 == 0){ usleep(50000); $sqlidf = "update t_term set idf='".$term[$k][1]."' where id_term='".$term[$k][0]."'"; mysql_query($sqlidf); Gambar 4.15 Kode Program Submodul perhitungan idf Submodul perhitungan idf ini tidak memiliki masukan karena semua datanya dapat diambil pada basis data. Submodul ini diberi nama CreateIDF. Penggunaan submodul ini juga akan menyebabkan sistem menggunakan kerja prosessor yang cukup lama. Maka dari itu, pada submodul ini juga digunakan

91 76 perintah usleep untuk menghentikan sesaat kerja dari prosessor. Kode program dari submodul perhitungan variabel dapat dilihat pada Gambar Gambar 4.16 Antarmuka Halaman Pengindeksan Submodul ini di dalam modul pengindeksan dipanggil pada bagian akhir. Penggunaan submodul ini juga mengakhiri dari kegiatan pengindeksan. Antarmuka dari halaman pengindeksan dapat dilihat pada Gambar 4.16.

92 Modul Pencarian if (trim($q)){ $mtime=microtime(); $mtime=explode(" ",$mtime); $mtime=$mtime[1] + $mtime[0]; $tstart=$mtime; $phrase = getphrasearray($q,$stopwords); $plussql = gettermarray($q,$stopwords); $sql = "select distinct t_data.id_data from t_index,t_term,t_data where t_index.id_term=t_term.id_term and t_data.id_data=t_index.id_data and ($plussql) $addsqlbagian $addsqltype"; $rs = mysql_query($sql,$konek); if (@mysql_num_rows($rs)){ while ($row = mysql_fetch_row($rs)){ unset($dvektor); unset($tf); unset($idf); for ($i = 0 ; $i <= count($phrase)-1;$i++){ if($wij = gettruephrase($phrase[$i],$row[0],$stopwords)){ $numqterm++; $atas += ($wij[0]); $qvektor += ($wij[1]); $found = true; $search = true; if ($numqterm){ $sqldi = "SELECT sum((t_index.tf* t_term.idf)*( t_index.tf*t_term.idf)) FROM t_term, t_index WHERE t_index.id_data ='".$row[0]."' AND t_term.id_term = t_index.id_term"; $bawah = mysql_result(mysql_query($sqldi),0); $penyebut = $bawah*$qvektor; $sim[$row[0]] / sqrt($penyebut)); unset($numqterm); unset($bawah); unset($atas); unset($qvektor); $mtime=microtime(); $mtime=explode(" ",$mtime); $mtime=$mtime[1] + $mtime[0]; $tend=$mtime; $totaltime=($tend-$tstart); $totaltime=number_format($totaltime,4); else{ $messages= ":: Data tidak ditemukan!!"; $found = false; else { $messages = ":: Kata apa yang mau anda cari?"; $found = false; Gambar 4.17 Kode Program Modul Pencarian Setelah pengindeksan selesai, maka proses pencarian dapat dilakukan. Pada penelitian ini modul pencarian akan menggunakan sebuah file yaitu search.php. Pada file ini kata kunci yang diberikan oleh pengguna akan diproses

93 78 terlebih dahulu dengan proses parsing dan penghilangan stopwords, lalu akan dibentuk array yang berisi kata-kata yang terdapat dalam indeks. Dari kata kunci juga akan dibuat array yang berisi frasa yang mungkin dibuat oleh pengguna. Setelah itu akan dilanjutkan dengan pencarian dokumen yang memiliki frasa tepat sesuai dengan masukan oleh pengguna, penghitungan bobot, fungsi kesamaan dan yang terakhir pengurutan dokumen berdasarkan bobotnya. Setelah dokumen terurut maka hasilnya dapat ditampilkan kembali kepada pengguna. Pada awal pengambilan kata kunci, akan diambil nilai dari waktu awal pengeksekusian file pencarian. Lalu pada akhir dari fungsi kesamaan akan diambil juga nilai waktu akhir. Selisih waktu awal dan waktu akhir ini digunakan untuk informasi kepada pengguna mengenai lamanya pencarian yang dilakukan oleh sistem. Potongan kode program pada file pencarian dapat dilihat pada Gambar Modul pencarian menggunakan tiga buah submodul yaitu modul untuk pencarian frasa pada query, submodul parsing dan penghilangan stopwords pada query dan modul untuk pengecekan frasa tepat pada dokumen sesuai dengan frasa pada query yang diberikan.

94 Submodul Pencarian Frasa pada Query function getphrasearray($q,$stopwords){ $quoted = explode('"', $q); for($i = 0; $i <= count($quoted)-1 ; $i++) { if($i == 0 &&!$quoted[$i]) { //kutip pada awal kata kunci $begin = True; $i++; if($begin) { $phrase[] = $quoted[$i]; elseif($quoted[$i]) { $temp_phrase = explode(" ", $quoted[$i]); for($n = 0; $n < count($temp_phrase); $n++) { $str = trim($temp_phrase[$n]); if(trim($str) &&!in_array($str,$stopwords)) { $phrase[] = $str; $begin =!$begin; return $phrase; Gambar 4.18 Kode Program Submodul Pencarian Frasa pada Query Submodul ini diberi nama getphrasearray. Kode program dari submodul pencarian frasa pada query dapat dilihat pada Gambar Pengguna sistem didalam melakukan pencarian dapat mencari frasa yang terdapat di dalam dokumen dengan cara memberikan tanda kutip ( ) sebagai batas frasa pada kata kunci yang dimasukan. Adakalanya pengguna memasukan lebih dari dua frasa pada kata kunci. Misal pengguna memasukan kata kunci: bom bali kenaikan bbm, maka sistem akan memecah kata kunci tersebut menjadi dua buah bagian frasa bom bali dan kenaikan bbm. Kedua frasa ini akan disimpan ke dalam array untuk digunakan pada proses selanjutnya. Masukan dari submodul ini terdiri dari dua macam yaitu kata kunci yang diberikan oleh pengguna serta array dari daftar stopwords yang diambil dari file stopwords.txt.

95 Submodul untuk Parsing dan Penghilangan Stopwords Setelah kata kunci di proses untuk memisahkan frasa, maka pemrosesan selanjutnya yaitu pemisahan kata-kata di dalam kata kunci untuk di sesuaikan dengan indeks yang terdapat di dalam basis data. Submodul untuk parsing dan penghilangan stopwords akan memecah kata kunci tersebut menjadi beberapa kata lalu akan dicocokan dengan kata yang terdapat di dalam tabel t_term pada basis data. Namun sebelum itu kata-kata yang termasuk ke dalam stopwords akan dibuang. Masukan dari submodul ini sama dengan submodul pencarian frasa. Perbedaannya terletak pada proses pemecahan teks pada kata kunci dari query. Pada submodul frasa kata kunci akan dipecah menjadi frasa-frasa yang sesuai berdasarkan tanda kutip ( ) sebagai pemisah frasa, sedangkan pada submodul ini kata kunci akan dipecah berdasarkan tiap-tiap katanya. Misal: kata kunci bom bali kenaikan bbm akan dipecah menjadi kata bom, bali, kenaikan dan bbm. Lalu setelah itu kata-kata tersebut akan di cari di dalam basis data untuk disesuaikan. Pada Gambar 4.19 dijabarkan kode program dari submodul parsing dan penghilangan stopwords. Pada gambar tersebut dapat dilihat keluaran dari submodul ini adalah array yang berisi penyataan SQL untuk meng-query seluruh dokumen yang memiliki kata-kata yang terdapat pada kata kunci yang diberikan oleh pengguna ke dalam basis data. Pernyataan SQL yang dihasilkan pada submodul ini akan digunakan untuk mencari id_data dari dokumen yang memiliki kata yang sesuai dengan kata kunci dan juga kata kunci tersebut harus terdapat di

96 81 dalam tabel t_term. Id_data dari dokumen tersebut diambil dari tabel t_index pada basis data. function gettermarray($q,$stopwords){ global $konek; $user_query = trim(strtolower($q)); $user_query = ereg_replace('"',"",$user_query); $array_user_query = explode(" ",$user_query); $orsql = true; for ($i=0 ; $i <= count($array_user_query) -1 ; $i++){ if (!in_array($array_user_query[$i],$stopwords)){ if ($orsql){ $plussql = "t_term.term = '".$array_user_query[$i]."'"; $orsql = false; else{ $plussql.= " or t_term.term = '".$array_user_query[$i]."'"; $orsql = true; $sql = "select distinct id_term from t_term where $plussql"; $rs = mysql_query($sql,$konek); if (@mysql_num_rows($rs)){ while ($row= mysql_fetch_row($rs)){ if ($orsql){ $plussql = "t_term.id_term='".$row[0]."'"; $orsql = false; else { $plussql.= " or t_term.id_term='".$row[0]."'"; return $plussql; Gambar 4.19 Kode Program Submodul Parsing dan Penghilangan Stopwords Submodul pencocokan dokumen yang memiliki frasa tepat Setelah id_data diambil maka dapat dicari frasa yang sesuai dengan frasa yang sudah didapatkan dari submodul pencarian frasa. Setiap id_data yang didapatkan akan dicocokan kata per kata sesuai dengan posisinya di dalam dokumen. Urutan dari tiap-tiap kata di dalam frasa harus sama dengan urutan frasa yang sudah di dapatkan. Kode Program dari submodul ini dapat dilihat pada Gambar 4.20.

97 82 function gettruephrase($phrase,$id_data,$stopwords){ global $konek; global $buangkarakter; $temp = explode(" ",$phrase); for ($i=0 ; $i <= count($temp) -1 ; $i++){ if (!in_array($temp[$i],$stopwords)){ $array_kunci[] = preg_replace($buangkarakter,"",$temp[$i]); for ($i = 0 ; $i <= count($array_kunci) -1 ; $i++){ $sql = "SELECT t_index.position,t_index.tf,t_term.idf FROM t_index, t_term WHERE t_index.id_data = '".$id_data."' AND t_term.term = '".$array_kunci[$i]."' AND t_index.id_term = t_term.id_term"; $result = mysql_query($sql,$konek); if ($row $array_phrase[$i]= explode(",",$row[0]); $diwq += ($row[1]*$row[2])*$row[2]; $wq += ($row[2]*$row[2]); else{ return false; if (count($array_kunci) > 1){ $match = false; $banyak_letak_kata1 = count($array_phrase[0]); for ($i = 0 ; $i <= $banyak_letak_kata1-1 ;$i++){ $j = 1; $letak = $array_phrase[0][$i]; while ($j <= count($array_phrase)-1){ if (in_array($letak+1,$array_phrase[$j])){ if($j == count($array_phrase)-1){ $match = true; $j++; else{ $letak++; $j++; else{ break; if ($match){ break; if ($match){ return array($diwq,$wq); else{ return false; else{ return array($diwq,$wq); Gambar 4.20 Kode Program submodul Pencocokan Dokumen yang memiliki frasa tepat. Submodul ini memiliki tiga masukan yaitu array dari frasa, id_data dan array kata stopwords. Pada awal pemrosesan, submodul ini akan memecah setiap

98 83 kata frasa yang dipisahkan oleh spasi. Apabila di dalam frasa tersebut terdapat kata stopwords maka akan dihilangkan juga. Setelah itu akan diambil dari basis data informasi mengenai posisi kata, nilai tf dari kata dan nilai idf dari kata pada dokumen yang dengan id_data sesuai pada masukan. Jika frasa yang dimasukan hanya terdiri dari satu kata maka submodul ini akan langsung memberikan hasilnya, kalau tidak, akan di cari urutan frasa yang benar pada dokumen berdasarkan posisi yang sudah diambil dari basis data. Keluaran dari submodul ini adalah array yang berisi jumlah perkalian dari bobot kata (tf idf) dengan bobot dari query, jumlah kuadrat dari bobot kata dan jumlah kuadrat dari bobot query. Array ini akan digunakan untuk penghitungan fungsi kesamaan dengan rumus: sim( Q, D ) = i t j= 1 t j= 1 ij w ( w ) 2 qj w t ij j= 1 ( w qj ) 2 Dimana : sim(q,di) = nilai fungsi kesamaan dari dokumen D i pada query Q w qj = bobot dari kata j pada query w ij = bobot dari kata j pada dokumen ke i t = jumlah indeks kata pada sistem Submodul ini akan bernilai false jika dokumen tidak memiliki frasa yang sesuai dengan frasa yang didapatkan dari kata kunci. Setelah dokumen dihitung nilai kesamaannya, maka nilai-nilai tersebut akan dimasukan ke dalam array untuk

99 84 diurutkan. Lalu hasil dari pencarian dokumen akan tampilkan kepada pengguna. Tampilan antar muka pencarian dapat dilihat pada Gambar Gambar 4.21 Tampilan Antarmuka Modul Pencarian 4.4 Evaluasi Sistem Temu-Kembali Informasi Pada Bagian ini akan dijelaskan mengenai pengujian sistem temu-kembali informasi. Dokumen sebagai bahan dari pengujian ini didapatkan dari artikel berita utama kompas edisi cetak ( dan republika edisi cetak ( selama bulan Oktober tahun 2005, kecuali untuk tanggal 29 Oktober 2005 tidak terdapat dokumen pada website republika. Dokumen akan dipisah menjadi dua bagian sesuai dengan nama sumber dari dokumen tersebut yaitu bagian kompas dan republika. Bagian kompas terdiri dari 212 dokumen dan republika terdiri dari 180 dokumen, jadi total seluruh

BAB I PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN Latar Belakang BAB I PENDAHULUAN 1.1. Latar Belakang Semakin canggihnya teknologi di bidang komputasi dan telekomunikasi pada masa kini, membuat informasi dapat dengan mudah didapatkan oleh banyak orang. Kemudahan ini

Lebih terperinci

Implementasi Aljabar Vektor pada Sistem Temu Kembali Informasi untuk Customer Information

Implementasi Aljabar Vektor pada Sistem Temu Kembali Informasi untuk Customer Information Implementasi Aljabar Vektor pada Sistem Temu Kembali Informasi untuk Customer Information Ratnadira Widyasari 13514025 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN Metodologi penelitian merupakan sistematika tahap-tahap yang dilaksanakan dalam pembuatan tugas akhir. Adapun tahapan yang dilalui dalam pelaksanaan penelitian ini adalah

Lebih terperinci

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

INFORMATION RETRIEVAL SYSTEM PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS DENGAN METODE VECTOR SPACE MODEL DAN ALGORITMA ECS STEMMER INFORMATION RETRIEVAL SSTEM PADA PENCARIAN FILE DOKUMEN BERBASIS TEKS DENGAN METODE VECTOR SPACE MODEL DAN ALGORITMA ECS STEMMER Muhammad asirzain 1), Suswati 2) 1,2 Teknik Informatika, Fakultas Teknik,

Lebih terperinci

UKDW BAB I PENDAHULUAN. 1.1 Latar Belakang

UKDW BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan pengetahuan dan kehidupan manusia sungguh dipercepat dengan kemudahan akses terhadap begitu banyak informasi. Pada beberapa waktu yang lalu akses terhadap

Lebih terperinci

Sistem Rekomendasi Hasil Pencarian Artikel Menggunakan Metode Jaccard s Coefficient

Sistem Rekomendasi Hasil Pencarian Artikel Menggunakan Metode Jaccard s Coefficient Jurnal Transistor Elektro dan Informatika (TRANSISTOR EI) Vol. 2, No. 1 1 Sistem Rekomendasi Hasil Pencarian Artikel Menggunakan Metode Jaccard s Coefficient Muhammad Fadelillah, Imam Much Ibnu Subroto,

Lebih terperinci

PENERAPAN SISTEM TEMU KEMBALI INFORMASI PADA KUMPULAN DOKUMEN SKRIPSI

PENERAPAN SISTEM TEMU KEMBALI INFORMASI PADA KUMPULAN DOKUMEN SKRIPSI 18 PENERAPAN SISTEM TEMU KEMBALI INFORMASI PADA KUMPULAN DOKUMEN SKRIPSI Karter D. Putung, Arie Lumenta, Agustinus Jacobus Teknik Informatika Universitas Sam Ratulangi Manado, Indonesia. karterputung@gmail.com,

Lebih terperinci

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

Sistem Temu Kembali Informasi pada Dokumen Teks Menggunakan Metode Term Frequency Inverse Document Frequency (TF-IDF) Sistem Temu Kembali Informasi pada Dokumen Teks Menggunakan Metode Term Frequency Inverse Document Frequency (TF-IDF) 1 Dhony Syafe i Harjanto, 2 Sukmawati Nur Endah, dan 2 Nurdin Bahtiar 1 Jurusan Matematika,

Lebih terperinci

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

Tugas Makalah. Sistem Temu Kembali Informasi (STKI) TI Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System Tugas Makalah Sistem Temu Kembali Informasi (STKI) TI029306 Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System Oleh : I PUTU ANDREAS WARANU 1204505042 Dosen : I Putu Agus

Lebih terperinci

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

SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL SISTEM REKOMENDASI DOSEN PEMBIMBING TUGAS AKHIR BERBASIS TEXT MINING MENGGUNAKAN VECTOR SPACE MODEL SKRIPSI Disusun Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer pada Departemen Ilmu

Lebih terperinci

BAB I PENDAHULUAN I-1

BAB I PENDAHULUAN I-1 BAB I PENDAHULUAN Pada bab ini akan menjelaskan mengenai dasar awal pada pembuatan laporan tugas akhir. Dasar awal tersebut terdiri dari latar belakang masalah, rumusan masalah, maksud dan tujuan dilakukan

Lebih terperinci

BAB 1 PENDAHULUAN UKDW

BAB 1 PENDAHULUAN UKDW BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Perkembangan ilmu pengetahuan yang pesat dewasa ini telah mendorong permintaan akan kebutuhan informasi ilmu pengetahuan itu sendiri. Cara pemenuhan kebutuhan

Lebih terperinci

BAB II DASAR TEORI Crawler Definisi Focused Crawler dengan Algoritma Genetik [2]

BAB II DASAR TEORI Crawler Definisi Focused Crawler dengan Algoritma Genetik [2] BAB II DASAR TEORI Pada bab ini dibahas teori mengenai focused crawler dengan algoritma genetik, text mining, vector space model, dan generalized vector space model. 2.1. Focused Crawler 2.1.1. Definisi

Lebih terperinci

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

BAB I PENDAHULUAN. Pada umumnya pembaca ingin mendapatkan rangkuman suatu artikel dengan cepat BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Dalam media internet artikel merupakan suatu kebutuhan dan pengetahuan. Pada umumnya pembaca ingin mendapatkan rangkuman suatu artikel dengan cepat tanpa membaca

Lebih terperinci

APLIKASI MESIN PENCARI DOKUMEN CROSS LANGUAGE BAHASA INGGRIS BAHASA INDONESIA MENGGUNAKAN VECTOR SPACE MODEL

APLIKASI MESIN PENCARI DOKUMEN CROSS LANGUAGE BAHASA INGGRIS BAHASA INDONESIA MENGGUNAKAN VECTOR SPACE MODEL APLIKASI MESIN PENCARI DOKUMEN CROSS LANGUAGE BAHASA INGGRIS BAHASA INDONESIA MENGGUNAKAN VECTOR SPACE MODEL SKRIPSI Disusun Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer pada Jurusan

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Buku merupakan media informasi yang memiliki peran penting dalam perkembangan ilmu pengetahuan, karena dengan buku kita dapat memperoleh banyak informasi, pengetahuan

Lebih terperinci

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

PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL PERANCANGAN DAN IMPLEMENTASI SISTEM REKOMENDASI PENCARIAN BUKU PERPUSTAKAAN MENGGUNAKAN METODE VECTOR SPACE MODEL (Studi Kasus Perpustakaan Universitas Udayana) LEMBAR JUDUL KOMPETENSI RPL SKRIPSI NI MADE

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Sistem Rekomendasi Sistem rekomendasi adalah sebuah sistem yang dibangun untuk mengusulkan informasi dan menyediakan fasilitas yang diinginkan pengguna dalam membuat suatu keputusan

Lebih terperinci

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

Tugas Makalah. Sistem Temu Kembali Informasi (STKI) TI Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System Tugas Makalah Sistem Temu Kembali Informasi (STKI) TI029306 Implementasi Metode Generalized Vector Space Model Pada Information Retrieval System Oleh : I PUTU ANDREAS WARANU 1204505042 Dosen : I Putu Agus

Lebih terperinci

BAB 3 METODOLOGI PENELITIAN

BAB 3 METODOLOGI PENELITIAN BAB 3 METODOLOGI PENELITIAN 3.1 Desain Penelitian Menentukan Kebutuhan Data Yang Digunakan Mengumpulkan Data Yang Akan Digunakan Mempersiapkan Alat Dan Bahan Wawancara Studi Literatur Desain Penelitian

Lebih terperinci

LAPORAN AKHIR HIBAH PENELITIAN dalam Rangka Kegiatan SP4 Departemen Ilmu Komputer

LAPORAN AKHIR HIBAH PENELITIAN dalam Rangka Kegiatan SP4 Departemen Ilmu Komputer LAPORAN AKHIR HIBAH PENELITIAN dalam Rangka Kegiatan SP4 Departemen Ilmu Komputer CORPUS DOKUMEN TEKS BAHASA INDONESIA UNTUK PENGUJIAN EFEKTIVITAS TEMU KEMBALI INFORMASI Oleh: Ir. Julio Adisantoso, M.Kom.

Lebih terperinci

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

BAB I PENDAHULUAN. penunjang Al-Quran untuk memudahkan untuk mempelajarinya, yang bisa BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Dengan kemajuan teknologi yang sangat pesat ini sudah banyak aplikasi penunjang Al-Quran untuk memudahkan untuk mempelajarinya, yang bisa disebut atau di artikan

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Bagi perusahaan yang bergerak dalam industri manufaktur, sistem informasi produksi yang efektif merupakan suatu keharusan dan tidak lepas dari persoalan persediaan

Lebih terperinci

IMPLEMENTASI METODE TERM FREQUENCY INVERSED DOCUMENT FREQUENCE (TF-IDF) DAN VECTOR SPACE MODEL PADA APLIKASI PEMBERKASAN SKRIPSI BERBASIS WEB

IMPLEMENTASI METODE TERM FREQUENCY INVERSED DOCUMENT FREQUENCE (TF-IDF) DAN VECTOR SPACE MODEL PADA APLIKASI PEMBERKASAN SKRIPSI BERBASIS WEB IMPLEMENTASI METODE TERM FREQUENCY INVERSED DOCUMENT FREQUENCE (TF-IDF) DAN VECTOR SPACE MODEL PADA APLIKASI PEMBERKASAN SKRIPSI BERBASIS WEB Abdul Rokhim 1), Achmad ainul yaqin 2) 1) Program Studi/Prodi

Lebih terperinci

Bernadus Very Christioko Fakultas Teknologi Informasi dan Komunikasi, Universitas Semarang. Abstract

Bernadus Very Christioko Fakultas Teknologi Informasi dan Komunikasi, Universitas Semarang. Abstract IMPLEMENTASI SISTEM TEMU KEMBALI INFORMASI Studi Kasus: Dokumen Teks Berbahasa Indonesia (IMPLEMENTATION OF INFORMATION RETRIEVAL SYSTEM Case Study: Text Document in Indonesian Language) Bernadus Very

Lebih terperinci

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

BAB I PENDAHULUAN. pendidikan, perbankan, perencanaan dan sebagainya. Dengan adanya teknologi komputer BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Di era globalisasi seperti sekarang ini, perkembangan teknologi komputer berpengaruh besar pada tingkat kebutuhan manusia di berbagai bidang seperti bidang

Lebih terperinci

INTEGRASI PEMBOBOTAN TF IDF PADA METODE K-MEANS UNTUK CLUSTERING DOKUMEN TEKS

INTEGRASI PEMBOBOTAN TF IDF PADA METODE K-MEANS UNTUK CLUSTERING DOKUMEN TEKS i TESIS INTEGRASI PEMBOBOTAN TF IDF PADA METODE K-MEANS UNTUK CLUSTERING DOKUMEN TEKS DEDDY WIJAYA SULIANTORO No. Mhs. : 105301466/PS/MTF PROGRAM STUDI MAGISTER TEKNIK INFORMATIKA PROGRAM PASCA SARJANA

Lebih terperinci

Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem Temu Kembali Informasi

Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem Temu Kembali Informasi Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem emu Kembali Informasi Ari Wibowo Program Studi eknik Multimedia dan Jaringan, Politeknik Negeri Batam E-mail : wibowo@polibatam.ac.id Abstrak

Lebih terperinci

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

ABSTRAK. Kata kunci : Information Retrieval system, Generalized Vector Space Model. Universitas Kristen Maranatha ABSTRAK Information retrieval (IR) system adalah sistem yang secara otomatis melakukan pencarian atau penemuan kembali informasi yang relevan terhadap kebutuhan pengguna. Kebutuhan pengguna, diekspresikan

Lebih terperinci

INDEXING AND RETRIEVAL ENGINE UNTUK DOKUMEN BERBAHASA INDONESIA DENGAN MENGGUNAKAN INVERTED INDEX

INDEXING AND RETRIEVAL ENGINE UNTUK DOKUMEN BERBAHASA INDONESIA DENGAN MENGGUNAKAN INVERTED INDEX INDEXING AND RETRIEVAL ENGINE UNTUK DOKUMEN BERBAHASA INDONESIA DENGAN MENGGUNAKAN INVERTED INDEX Wahyu Hidayat 1 1 Departemen Teknologi Informasi, Fakultas Ilmu Terapan, Telkom University 1 wahyuhidayat@telkomuniversity.ac.id

Lebih terperinci

Pengujian Kerelevanan Sistem Temu Kembali Informasi

Pengujian Kerelevanan Sistem Temu Kembali Informasi Pengujian Kerelevanan Sistem Temu Kembali Informasi Ari Wibowo / 23509063 Jurusan Teknik Informatika, Politeknik Negeri Batam Jl. Parkway No 1 Batam Center, Batam wibowo@polibatam.ac.id Abstrak Sistem

Lebih terperinci

Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem Temu Kembali Informasi

Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem Temu Kembali Informasi Jurnal Integrasi, vol. 6, no. 1, 2014, 21-25 ISSN: 2085-3858 (print version) Article History Received 10 February 2014 Accepted 11 March 2014 Analisis dan Pengujian Kinerja Korelasi Dokumen Pada Sistem

Lebih terperinci

STMIK GI MDP. Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap 2010/2011

STMIK GI MDP. Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap 2010/2011 STMIK GI MDP Program Studi Sistem Informasi Skripsi Sarjana Komputer Semester Genap 2010/2011 APLIKASI PEMBELAJARAN DAN NILAI BERBASIS WEB PADA SMP YSP PUSRI PALEMBANG Richa Rusmawati 2007240117 Rully

Lebih terperinci

PEMANFAATAN ASSOCIATION RULE MINING DALAM MEMBANTU PENCARIAN DOKUMEN-DOKUMEN BERITA YANG SALING BERKAITAN

PEMANFAATAN ASSOCIATION RULE MINING DALAM MEMBANTU PENCARIAN DOKUMEN-DOKUMEN BERITA YANG SALING BERKAITAN PEMANFAATAN ASSOCIATION RULE MINING DALAM MEMBANTU PENCARIAN DOKUMEN-DOKUMEN BERITA YANG SALING BERKAITAN Hermawan Andika Institut Informatika Indonesia andika@iii.ac.id Suhatati Tjandra Sekolah Tinggi

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN Metodologi penelitian merupakan rangkaian dari langkah-langkah yang diterapkan dalam penelitian, secara umum dan khusus langkah-langkah tersebut tertera pada Gambar flowchart

Lebih terperinci

BAB III OBJEK DAN METODE PENELITIAN. berlokasi di Jl. Leuwi Panjang No. 111 Bandung Telpon Terbaik dalam pelayanan servis di bengkel.

BAB III OBJEK DAN METODE PENELITIAN. berlokasi di Jl. Leuwi Panjang No. 111 Bandung Telpon Terbaik dalam pelayanan servis di bengkel. BAB III OBJEK DAN METODE PENELITIAN 3.1. Objek Penelitian Penulis melakukan penelitian di Bengkel Trijaya Motor Bandung yang berlokasi di Jl. Leuwi Panjang No. 111 Bandung Telpon 022-70221812 3.1.1. Sejarah

Lebih terperinci

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA )

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA ) MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA ) Disusun Oleh : MUKHAMAT JAFAR 41813120014 MATA KULIAH : REKAYASA PERANGKAT LUNAK DOSEN : WACHYU HARI HAJI, S.KOM, MM UNIVERSITAS MERCUBUANA 2015 Mukhamat

Lebih terperinci

BAB 3. METODOLOGI PENELITIAN

BAB 3. METODOLOGI PENELITIAN BAB 3. METODOLOGI PENELITIAN 3.1 Alat dan Bahan Penelitian Pada penelitian ini menggunakan alat penelitian berupa perangkat keras dan perangkat lunak, yaitu : 1. Perangkat keras a. Processor Intel Core

Lebih terperinci

1. Pendahuluan 1.1 Latar belakang 1.2 Perumusan masalah

1. Pendahuluan 1.1 Latar belakang 1.2 Perumusan masalah 1. Pendahuluan 1.1 Latar belakang Informasi telah menjadi kebutuhan primer pada kehidupan saat ini. Informasi seakan-akan menjadi mata uang baru yang membuat akurasi menjadi sangat penting ketika mencari

Lebih terperinci

SISTEM PENDUKUNG KEPUTUSAN PEMBELIAN NOTEBOOK BERBASIS WEB DENGAN METODE MULTI- ATTRIBUTE DECISION MAKING

SISTEM PENDUKUNG KEPUTUSAN PEMBELIAN NOTEBOOK BERBASIS WEB DENGAN METODE MULTI- ATTRIBUTE DECISION MAKING SISTEM PENDUKUNG KEPUTUSAN PEMBELIAN NOTEBOOK BERBASIS WEB DENGAN METODE MULTI- ATTRIBUTE DECISION MAKING TUGAS AKHIR Oleh : RACHMAD KURNIAWAN FEBRIYANTA NPM. 0734010274 JURUSAN TEKNIK INFORMATIKA FAKULTAS

Lebih terperinci

DAFTAR ISI. SKRIPSI... ii

DAFTAR ISI. SKRIPSI... ii DAFTAR ISI SKRIPSI... i SKRIPSI... ii HALAMAN PENGESAHAN... ii PERNYATAAN... iii HALAMAN MOTO DAN PERSEMBAHAN... iv PRAKATA... v DAFTAR ISI... vii DAFTAR GAMBAR... x DAFTAR TABEL... xiii INTISARI... xiv

Lebih terperinci

BAB I PENDAHULUAN. Dinas Pendidikan, Pemuda dan Olahraga Kota Tanjungpinang merupakan

BAB I PENDAHULUAN. Dinas Pendidikan, Pemuda dan Olahraga Kota Tanjungpinang merupakan BAB I PENDAHULUAN 1.1 Latar Belakang Dinas Pendidikan, Pemuda dan Olahraga Kota Tanjungpinang merupakan salah satu Satuan Kerja Perangkat Daerah (SKPD) yang ada di Pemerintah Kota Tanjungpinang, dimana

Lebih terperinci

BAB I PERSYARATAN PRODUK

BAB I PERSYARATAN PRODUK BAB I PERSYARATAN PRODUK 1.1 PENDAHULUAN Pada saat kita melakukan pencarian melalui search engine (google.com, yahoo, dsb), kita bisa mendapatkan beberapa hasil, yang berupa dokumen - dokumen yang sama

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Pengertian Informasi Dan Data Informasi di jaman modern seperti ini sangat dibutuhkan oleh setiap individu maupun suatu organisasi. Karena informasi dapat digunakan sebagai bahan

Lebih terperinci

BAB I. Pendahuluan. 1. Latar Belakang Masalah

BAB I. Pendahuluan. 1. Latar Belakang Masalah BAB I Pendahuluan 1. Latar Belakang Masalah Semakin canggihnya teknologi di bidang komputasi dan telekomunikasi pada masa kini, membuat informasi dapat dengan mudah didapatkan oleh banyak orang. Kemudahan

Lebih terperinci

PERINGKASAN TEKS BERITA SECARA OTOMATIS MENGGUNAKAN TERM FREQUENCY INVERSE DOCUMENT FREQUENCY (TF-IDF) SKRIPSI DANDUNG TRI SETIAWAN

PERINGKASAN TEKS BERITA SECARA OTOMATIS MENGGUNAKAN TERM FREQUENCY INVERSE DOCUMENT FREQUENCY (TF-IDF) SKRIPSI DANDUNG TRI SETIAWAN PERINGKASAN TEKS BERITA SECARA OTOMATIS MENGGUNAKAN TERM FREQUENCY INVERSE DOCUMENT FREQUENCY (TF-IDF) SKRIPSI DANDUNG TRI SETIAWAN 071402054 PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN

Lebih terperinci

Studi Penggunaan Data Exif Untuk Mengukur Pengaruhnya. Terhadap Peningkatan Kinerja Image Search Engine

Studi Penggunaan Data Exif Untuk Mengukur Pengaruhnya. Terhadap Peningkatan Kinerja Image Search Engine Studi Penggunaan Data Exif Untuk Mengukur Pengaruhnya Terhadap Peningkatan Kinerja Image Search Engine Nugroho Herucahyono (13504038) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika,

Lebih terperinci

BAB III OBJEK DAN METODE PENELITIAN. Dalam analisis sistem ini akan diuraikan sejarah singkat dari Apotek 55 yang

BAB III OBJEK DAN METODE PENELITIAN. Dalam analisis sistem ini akan diuraikan sejarah singkat dari Apotek 55 yang BAB III OBJEK DAN METODE PENELITIAN 3.1. Objek Penelitian Dalam analisis sistem ini akan diuraikan sejarah singkat dari Apotek 55 yang berlokasi di jalan Moh.Toha No.127 Bandung, Visi dan Misi dari apotek,

Lebih terperinci

PENDAHULUAN. 1.1 Latar Belakang

PENDAHULUAN. 1.1 Latar Belakang DAFTAR TABEL Tabel 3-1 Dokumen Term 1... 17 Tabel 3-2 Representasi... 18 Tabel 3-3 Centroid pada pengulangan ke-0... 19 Tabel 3-4 Hasil Perhitungan Jarak... 19 Tabel 3-5 Hasil Perhitungan Jarak dan Pengelompokkan

Lebih terperinci

1.5 Metode Penelitian

1.5 Metode Penelitian BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Dalam perkembangan teknologi internet yang semakin maju ini kita dapat mengakses dokumen, buku dan majalah mulai dari bahasa asing sampai bahasa daerah yang

Lebih terperinci

BAB I PENDAHULUAN. berada di berbagai belahan dunia. Melalui media ini, mereka dapat memperoleh

BAB I PENDAHULUAN. berada di berbagai belahan dunia. Melalui media ini, mereka dapat memperoleh BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Saat ini dunia telah mengenal suatu teknologi yang dinamakan internet. Dengan internet ini semua orang dapat berkomunikasi dengan orang lain yang berada di

Lebih terperinci

BAB 3 LANDASAN TEORI

BAB 3 LANDASAN TEORI BAB 3 LANDASAN TEORI 3.1 Twitter API Application Programming Interface (API) merupakan fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls dengan bahasa yang lebih

Lebih terperinci

Sistem Informasi Tugas Akhir Menggunakan Model Ruang Vektor (Studi Kasus: Jurusan Sistem Informasi)

Sistem Informasi Tugas Akhir Menggunakan Model Ruang Vektor (Studi Kasus: Jurusan Sistem Informasi) Sistem Informasi Tugas Akhir Menggunakan Model Ruang Vektor (Studi Kasus: Jurusan Sistem Informasi) Wahyudi,MT Laboratorium Sistem Informasi Fakultas Sains dan Teknologi UINSUSKA RIAU Jl.HR.Subrantas KM.15

Lebih terperinci

HALAMAN MOTTO. Tak ada yang tak mungkin bila kita yakin. (Junaedi Sutanto)

HALAMAN MOTTO. Tak ada yang tak mungkin bila kita yakin. (Junaedi Sutanto) HALAMAN MOTTO Tak ada yang tak mungkin bila kita yakin (Junaedi Sutanto) vi HALAMAN PERSEMBAHAN Kupersembahkan Skripsiku ini untuk kedua orang tua ku Alm.Papa teladan ku..mama ku tercinta..terima kasih

Lebih terperinci

BAB I PENDAHULUAN Latar belakang Masalah. Koperasi merupakan suatu wadah yang dapat membantu masyarakat terutama

BAB I PENDAHULUAN Latar belakang Masalah. Koperasi merupakan suatu wadah yang dapat membantu masyarakat terutama BAB I PENDAHULUAN 1.1. Latar belakang Masalah Koperasi merupakan suatu wadah yang dapat membantu masyarakat terutama masyarakat kecil dan menengah. Koperasi memegang peranan penting dalam pertumbuhan ekonomi

Lebih terperinci

BAB I PENDAHULUAN. Informasi telah menjadi kebutuhan primer pada kehidupan saat ini. Pesatnya

BAB I PENDAHULUAN. Informasi telah menjadi kebutuhan primer pada kehidupan saat ini. Pesatnya BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Informasi telah menjadi kebutuhan primer pada kehidupan saat ini. Pesatnya perkembangan teknologi dewasa ini telah menyebabkan aliran informasi begitu lancar

Lebih terperinci

BAB I PENDAHULUAN. dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk

BAB I PENDAHULUAN. dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk BAB I PENDAHULUAN I.1. Latar Belakang Persediaan Barang merupakan komponen utama yang sangat penting dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk kelangsungan hidup

Lebih terperinci

BAB III METODE PENELITIAN. a. Menentukan kebutuhan data yang dibutuhkan. b. Mengumpulkan semua data yang dibutuhkan.

BAB III METODE PENELITIAN. a. Menentukan kebutuhan data yang dibutuhkan. b. Mengumpulkan semua data yang dibutuhkan. BAB III METODE PENELITIAN 3.1 DESAIN PENELITIAN Desain penelitian ini meliputi: 1. Tahapan awal penelitian a. Menentukan kebutuhan data yang dibutuhkan. b. Mengumpulkan semua data yang dibutuhkan. c. Mempersiapkan

Lebih terperinci

BAB II LANDASAN TEORI. Antrian sering dijumpai dalam kehidupan sehari-hari contohnya dalam

BAB II LANDASAN TEORI. Antrian sering dijumpai dalam kehidupan sehari-hari contohnya dalam BAB II LANDASAN TEORI 2.1 Antrian (Queue) Antrian sering dijumpai dalam kehidupan sehari-hari contohnya dalam sistem pembelian karcis kereta api atau bioskop, dimana orang yang datang pertama akan diberi

Lebih terperinci

BAB III OBJEK DAN METODE PENELITIAN. Objek penelitian yang diteliti oleh penulis adalah

BAB III OBJEK DAN METODE PENELITIAN. Objek penelitian yang diteliti oleh penulis adalah BAB III OBJEK DAN METODE PENELITIAN 3.1 Objek Penelitian Objek penelitian yang diteliti oleh penulis adalah Yakina Art Shop yang beralamat di Jl. Raya Pasekon No.47 Cipanas Cianjur, Jawa Barat. Adapun

Lebih terperinci

BAB 3 METODE PENELITIAN. pengelolaan dokumen yang efektif agar kita dapat me-retrieve informasi yang

BAB 3 METODE PENELITIAN. pengelolaan dokumen yang efektif agar kita dapat me-retrieve informasi yang 58 BAB 3 METODE PENELITIAN 3.1 Analisis Masalah Seiring dengan perkembangan zaman, jumlah informasi yang disimpan dalam betuk digital semakin bertambah, sehingga dibutuhkan cara pengorganisasian dan pengelolaan

Lebih terperinci

BAB II LANDASAN TEORI. Institut merupakan Perguruan Tinggi yang menyelenggarakan pendidikan

BAB II LANDASAN TEORI. Institut merupakan Perguruan Tinggi yang menyelenggarakan pendidikan BAB II LANDASAN TEORI 2.1 Informasi Umum Pendidikan Tinggi Berdasarkan undang-undang Republik Indonesia dijabarkan bahawa Institut merupakan Perguruan Tinggi yang menyelenggarakan pendidikan akademik dan

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Dinas Pendidikan Kabupaten Majalengka Provinsi Jawa Barat memiliki sejumlah tugas, diantaranya melakukan pengelolaan aset atau barang milik daerah meliputi 6 ketegori

Lebih terperinci

BAB 1 PENDAHULUAN. tidak bisa dipisahkan dari proses bisnis, bahkan tidak jarang teknologi informasi menjadi

BAB 1 PENDAHULUAN. tidak bisa dipisahkan dari proses bisnis, bahkan tidak jarang teknologi informasi menjadi BAB 1 PENDAHULUAN 1.1 Latar Belakang Dewasa ini, teknologi informasi telah menjadi salah satu bagian penting yang tidak bisa dipisahkan dari proses bisnis, bahkan tidak jarang teknologi informasi menjadi

Lebih terperinci

Tabel 3 Situs berita dan jumlah RSS yang diunduh Situs Berita

Tabel 3 Situs berita dan jumlah RSS yang diunduh Situs Berita 6 besar dibandingkan dengan istilah yang berada pada description. Lingkup Implemental Lingkungan implementasi yang akan digunakan adalah sebagai berikut: Perangkat Lunak : Sistem operasi Windows XP Professional

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN 3.1 Desain Penelitian Tahap Awal Tahap Analisis Merumuskan Masalah Studi Literatur Data Penelitian Tahap Perancangan Desain Sistem Implementasi TOPSIS 1. Matriks Keputusan

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang BAB 1 PENDAHULUAN 1. 1. Latar Belakang Bidang keuangan merupakan bidang yang berperan penting di dalam suatu perusahaan. Perusahaan dapat bertahan atau dapat tumbuh berkembang apabila perusahaan dapat

Lebih terperinci

BAB I Pendahuluan Latar Belakang

BAB I Pendahuluan Latar Belakang BAB I Pendahuluan 1. 1 Latar Belakang Pusat Survei Geologi merupakan salah satu unit teknis di bawah Badan Geologi Kementerian Energi dan Sumber Daya Mineral. Pusat Survei Geologi memiliki tugas yaitu

Lebih terperinci

BAB I PENDAHULUAN. SMK Negeri 1 Kota Sukabumi merupakan salah satu sekolah unggulan

BAB I PENDAHULUAN. SMK Negeri 1 Kota Sukabumi merupakan salah satu sekolah unggulan BAB I PENDAHULUAN 1.1 Latar Belakang Masalah SMK Negeri 1 Kota Sukabumi merupakan salah satu sekolah unggulan yang terdapat di daerah Sukabumi yang memiliki hubungan kerja sama dengan beberapa perusahaan

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN 30 BAB III METODOLOGI PENELITIAN 3.1 Desain Penelitian Berikut merupakan desain penelitian yang akan digunakan pada proses rancang bangun aplikasi sistem pendukung keputusan untuk pemilihan mobil baru

Lebih terperinci

ABSTRAK. Kata kunci : Informasi, Information Retreival, Ant Colony Optimization, Graph, Fitur dokumen. vii

ABSTRAK. Kata kunci : Informasi, Information Retreival, Ant Colony Optimization, Graph, Fitur dokumen. vii ABSTRAK Untuk mendapatkan sebuah informasi pada saat ini sangatlah mudah. Dengan adanya internet orang dengan mudah untuk berbagi informasi. Informasi yang dibagikan biasanya dalam bentuk dokumen, artikel,

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN 3.1. DESAIN PENELITIAN Desain penelitian ini meliputi : 1. Tahapan awal penelitian a. Menentukan kebutuhan data yang dibutuhkan. b. Mengumpulkan semua data yang dibutuhkan c.

Lebih terperinci

Nama : Rendi Setiawan Nim :

Nama : Rendi Setiawan Nim : Nama : Rendi Setiawan Nim : 41813120188 Pemodelan Data Pemodelan Data dalam rekayasa perangkat lunak adalah proses menciptakan sebuah model data dengan menerapkan model deskripsi formal data menggunakan

Lebih terperinci

BAB 1 PENDAHULUAN UKDW

BAB 1 PENDAHULUAN UKDW BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Pada era ini perkembangan teknologi informasi sangat pesat. Hal ini ditandai dengan semakin populernya penggunaan internet dan perangkat lunak komputer sebagai

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN 3.1 Desain Penelitian Berikut merupakan desain metode penelitian yang akan digunakan pada proses penelitian Studi komparasi metode PROMETHEE dan TOPSIS untuk memberikan solusi

Lebih terperinci

BAB I PENDAHULUAN. metode transaksi yang di lakukan secara online mulai berkembang pesat,

BAB I PENDAHULUAN. metode transaksi yang di lakukan secara online mulai berkembang pesat, BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Seiring dengan hadirnya internet akhir-akhir ini yaitu salah satunya metode transaksi yang di lakukan secara online mulai berkembang pesat, bahkan sampai pada

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Tinjauan Penelitian Terdahulu Penelitian sebelumnya dilakukan oleh Rahmatulloh (2016). Penelitian yang berjudul Rancang Bangun Sistem Informasi Pencarian Benda Hilang Lost &

Lebih terperinci

BAB III METODE PENELITIAN. Metode penelitian adalah cara ilmiah dalam mendapatkan suatu data,

BAB III METODE PENELITIAN. Metode penelitian adalah cara ilmiah dalam mendapatkan suatu data, BAB III METODE PENELITIAN 3.1. Metode Penelitian Metode penelitian adalah cara ilmiah dalam mendapatkan suatu data, Metode pengumpulan data yang digunakan dalam penelitian adalah sebagai berikut: 3.1.1.

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN Metodologi penelitian merupakan sistematika tahapan yang dilaksanakan selama proses pembuatan tugas akhir. Secara garis besar metodologi penelitian tugas akhir ini dapat dilihat

Lebih terperinci

BAB I PENDAHULUAN. pesat, salah satunya adalah teknologi komputer. Komputer merupakan alat bantu

BAB I PENDAHULUAN. pesat, salah satunya adalah teknologi komputer. Komputer merupakan alat bantu BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Dewasa ini, perkembangan teknologi mengalami kemajuan yang sangat pesat, salah satunya adalah teknologi komputer. Komputer merupakan alat bantu yang sekarang

Lebih terperinci

ABSTRAK. Kata kunci : Sistem Informasi Geografis(SIG), website, iklan, properti. Universitas Kristen Maranatha

ABSTRAK. Kata kunci : Sistem Informasi Geografis(SIG), website, iklan, properti. Universitas Kristen Maranatha ABSTRAK Sistem Informasi Geografis (SIG) adalah salah satu sistem informasi yang sangat informatif, karena dapat menyajikan informasi spasial dan non spasial. Akan tetapi layanan informasi SIG ini masih

Lebih terperinci

BAB II LANDASAN TEORI. bidang media komunikasi dan informasi. Internet adalah suatu jaringan komputer

BAB II LANDASAN TEORI. bidang media komunikasi dan informasi. Internet adalah suatu jaringan komputer BAB II LANDASAN TEORI 2.1 World Wide Web Dunia internet semakin berkembang, terutama penggunaanya dalam bidang media komunikasi dan informasi. Internet adalah suatu jaringan komputer global, sedangkan

Lebih terperinci

BAB 1 PENDAHULUAN. menjual berbagai jenis pakaian. Seiring dengan perkembangan fashion pakaian ini

BAB 1 PENDAHULUAN. menjual berbagai jenis pakaian. Seiring dengan perkembangan fashion pakaian ini BAB 1 PENDAHULUAN 1.1 Latar Belakang Bisnis penjualan pakaian sekarang ini memang semakin berkembang terutama di Indonesia, ini terbukti dengan semakin banyaknya muncul outlet dan distro yang menjual berbagai

Lebih terperinci

BAB I PENDAHULUAN. Suara merupakan salah satu media komunikasi yang paling sering dan

BAB I PENDAHULUAN. Suara merupakan salah satu media komunikasi yang paling sering dan BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Suara merupakan salah satu media komunikasi yang paling sering dan umum digunakan oleh manusia. Manusia dapat memproduksi suaranya dengan mudah tanpa memerlukan

Lebih terperinci

APLIKASI DATA MINING UNTUK ANALISIS ASOSIASI POLA PEMBELIAN DENGAN ALGORITMA APRIORI

APLIKASI DATA MINING UNTUK ANALISIS ASOSIASI POLA PEMBELIAN DENGAN ALGORITMA APRIORI APLIKASI DATA MINING UNTUK ANALISIS ASOSIASI POLA PEMBELIAN DENGAN ALGORITMA APRIORI SKRIPSI Disusun Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer pada Departemen Ilmu Komputer/ Informatika

Lebih terperinci

Penerapan Algoritma K-Means untuk Clustering

Penerapan Algoritma K-Means untuk Clustering Seminar Perkembangan dan Hasil Penelitian Ilmu Komputer (SPHP-ILKOM) 71 Penerapan Algoritma K-Means untuk ing Dokumen E-Jurnal STMIK GI MDP Ernie Kurniawan* 1, Maria Fransiska 2, Tinaliah 3, Rachmansyah

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN BAB III METODOLOGI PENELITIAN 3.1 Desain Penelitian Desain penelitian yang akan dilakukan penulis dalam proses penelitian skripsi yang berjudul Rancang Bangun Digital Satuan Kegiatan Harian Guru dalam

Lebih terperinci

BAB 1 PENDAHULUAN. Perkembangan ilmu pengetahuan dan teknologi saat ini sudah cukup maju,

BAB 1 PENDAHULUAN. Perkembangan ilmu pengetahuan dan teknologi saat ini sudah cukup maju, BAB 1 PENDAHULUAN 1.1. Latar Belakang Perkembangan ilmu pengetahuan dan teknologi saat ini sudah cukup maju, khususnya teknologi informasi telah mengalami perkembangan yang sangat pesat. Hal tersebut ditandai

Lebih terperinci

SISTEM PENCARIAN PASAL-PASAL TINDAK PIDANA PELANGGARAN BERDASARKAN KUHP DENGAN METODE STRING MATCHING BOYER-MOORE SKRIPSI

SISTEM PENCARIAN PASAL-PASAL TINDAK PIDANA PELANGGARAN BERDASARKAN KUHP DENGAN METODE STRING MATCHING BOYER-MOORE SKRIPSI SISTEM PENCARIAN PASAL-PASAL TINDAK PIDANA PELANGGARAN BERDASARKAN KUHP DENGAN METODE STRING MATCHING BOYER-MOORE SKRIPSI Diajukan Untuk Memenuhi Sebagai Persyaratan Dalam Memperoleh Gelar Sarjana Komputer

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang Masalah

BAB I PENDAHULUAN Latar Belakang Masalah BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Seiring dengan perkembangan informasi, banyak pihak menyadari bahwa masalah utama telah bergeser dari cara mengakses atau bagaimana mencari informasi, namun

Lebih terperinci

BAB III OBJEK DAN METODE PENELITIAN. Penelitian ini dilakukan pada Apotek Bio-Syifa yang bertempat di jalan

BAB III OBJEK DAN METODE PENELITIAN. Penelitian ini dilakukan pada Apotek Bio-Syifa yang bertempat di jalan 27 BAB III OBJEK DAN METODE PENELITIAN 3.1 Objek Penelitian Penelitian ini dilakukan pada Apotek Bio-Syifa yang bertempat di jalan Warung Kandang No. D52 Desa Sindangsari, Plered, Purwakarta. 3.1.1 Sejarah

Lebih terperinci

BAB I PENDAHULUAN 1.1 Tujuan 1.2 Latar Belakang

BAB I PENDAHULUAN 1.1 Tujuan 1.2 Latar Belakang BAB I PENDAHULUAN 1.1 Tujuan Merancang sebuah sistem yang dapat meringkas teks dokumen secara otomatis menggunakan metode generalized vector space model (GVSM). 1.2 Latar Belakang Dunia informasi yang

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Sumber informasi atau referensi sudah merupakan hal yang tidak asing lagi bagi seorang peneliti, terutamanya bagi para mahasiswa yang sedang melakukan penelitian untuk

Lebih terperinci

Inera Firdestawati¹, Yanuar Firdaus A.w.², Kiki Maulana³. ¹Teknik Informatika, Fakultas Teknik Informatika, Universitas Telkom

Inera Firdestawati¹, Yanuar Firdaus A.w.², Kiki Maulana³. ¹Teknik Informatika, Fakultas Teknik Informatika, Universitas Telkom IMPLEMENTASI MODEL RUANG VEKTOR SEBAGAI PENERJEMAH QUERY PADA CROSS-LANGUAGE INFORMATION RETRIEVAL SISTEM IMPLEMENTATION OF VECTOR SPACE MODEL AS QUERY TRANSLATION FOR CROSS-LANGUAGE INFORMATION RETRIEVAL

Lebih terperinci

PERANCANGAN DAN PEMBUATAN APLIKASI PENCARIAN INFORMASI BEASISWA DENGAN MENGGUNAKAN COSINE SIMILARITY

PERANCANGAN DAN PEMBUATAN APLIKASI PENCARIAN INFORMASI BEASISWA DENGAN MENGGUNAKAN COSINE SIMILARITY Vol. 4, No. 2 Desember 2014 ISSN 2088-2130 PERANCANGAN DAN PEMBUATAN APLIKASI PENCARIAN INFORMASI BEASISWA DENGAN MENGGUNAKAN COSINE SIMILARITY Andry Kurniawan, Firdaus Solihin, Fika Hastarita Prodi Teknik

Lebih terperinci

PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI ALUMNI POLITEKNIK NEGERI MEDAN BERBASIS WEB

PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI ALUMNI POLITEKNIK NEGERI MEDAN BERBASIS WEB PERANCANGAN DAN PEMBUATAN SISTEM INFORMASI ALUMNI POLITEKNIK NEGERI MEDAN BERBASIS WEB LAPORAN TUGAS AKHIR Disusun Sebagai Salah Satu Syarat Untuk Menyelesaikan Program Pendidikan Diploma 3 Oleh : FRANSISKA

Lebih terperinci

BAB II LANDASAN TEORI. Analisis (analysis) dapat didefinisikan sebagai : Sedangkan Analisis sistem (systems analysis) dapat didefinisikan sebagai

BAB II LANDASAN TEORI. Analisis (analysis) dapat didefinisikan sebagai : Sedangkan Analisis sistem (systems analysis) dapat didefinisikan sebagai BAB II LANDASAN TEORI 2.1 Pengertian Analisis dan Analisis Sistem Analisis (analysis) dapat didefinisikan sebagai : Evaluasi situasi atau problem, termasuk tinjauan dari berbagai aspek dan sudut pandang.

Lebih terperinci

BAB 1 PENDAHULUAN. seluruh dunia menjadi sebuah fenomena yang sangat mengejutkan dalam satu abad

BAB 1 PENDAHULUAN. seluruh dunia menjadi sebuah fenomena yang sangat mengejutkan dalam satu abad 1 BAB 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan komputer di dalam lingkungan kehidupan masyarakat di seluruh dunia menjadi sebuah fenomena yang sangat mengejutkan dalam satu abad terakhir ini. Hal

Lebih terperinci

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

BAB IV METODOLOGI PENELITIAN. Penelitian ini dilakukan dengan melalui empat tahap utama, dimana BAB IV METODOLOGI PENELITIAN Penelitian ini dilakukan dengan melalui empat tahap utama, dimana tahap pertama adalah proses pengumpulan dokumen teks yang akan digunakan data training dan data testing. Kemudian

Lebih terperinci

BAB I PENDAHULUAN. Badan Kepegawaian Daerah (BKD) Kota Bandung merupakan lembaga

BAB I PENDAHULUAN. Badan Kepegawaian Daerah (BKD) Kota Bandung merupakan lembaga BAB I PENDAHULUAN 1.1 Latar Belakang Badan Kepegawaian Daerah (BKD) Kota Bandung merupakan lembaga teknis daerah yang dibentuk oleh kepala daerah berdasarkan peraturan daerah no 10 tahun 2002 tentang pembentukan

Lebih terperinci