Peringkasan Teks Otomatis Dokumen Bahasa Indonesia Dengan Algoritma Genetika.

(1)

PERINGKASAN TEKS OTOMATIS DOKUMEN BAHASA INDONESIA DENGAN ALGORITMA GENETIKA

LEMBAR JUDUL

KOMPETENSI REKAYASA PERANGKAT LUNAK

SKRIPSI

LUH GEDE PUTRI SUARDANI NIM. 1208605018

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA

BUKIT JIMBARAN 2016


(2)

SURAT PERNYATAAN KEASLIAN KARYA ILMIAH

Yang bertanda tangan di bawah ini menyatakan bahwa naskah Skripsi dengan judul:

……… ……… ……… ……… Nama : Luh Gede Putri Suardani

NIM : 1208605018

Program Studi : Teknik Informatika

E-mail : putri.suardani@mhs.cs.unud.ac.id Nomor telp/HP : 081337136811

Alamat : Jalan Giri Kencana No. 21

Belum pernah dipublikasikan dalam dokumen skripsi, jurnal nasional maupun internasional atau dalam prosiding manapun, dan tidak sedang atau akan diajukan untuk publikasi di jurnal atau prosiding manapun. Apabila di kemudian hari terbukti terdapat pelanggaran kaidah-kaidah akademik pada karya ilmiah saya, maka saya bersedia menanggung sanksi-sanksi yang dijatuhkan karena kesalahan tersebut, sebagaimana diatur oleh Peraturan Menteri Pendidikan Nasional Nomor 17 Tahun 2010 tentang Pencegahan dan Penanggulangan Plagiat di Perguruan Tinggi.

Demikian Surat Pernyataan ini saya buat dengan sesungguhnya untuk dapat dipergunakan bilamana diperlukan.

Denpasar, Mei 2016

Yang membuat pernyataan,

Materai

(Luh Gede Putri Suardani) NIM. 1208605018


(3)

ii

LEMBAR PENGESAHAN TUGAS AKHIR

Judul : Peringkasan Teks Otomatis Dokumen Bahasa Indonesia dengan Algoritma Genetika

Kompetensi : Rekayasa Perangkat Lunak Nama : Luh Gede Putri Suardani NIM : 1208605018

Tanggal Seminar :

Disetujui oleh :

Pembimbing I

(Agus Muliantara, S.Kom., M.Kom.) NIP. 198006162005011001

Pembimbing II

(I Putu Gede Hendra Suputra, S.Kom., M.Kom.) NIP. 198812282014041001


(4)

iii

Judul : Peringkasan Teks Otomatis Dokumen Bahasa Indonesia dengan Algoritma Genetika

Nama : Luh Gede Putri Suardani

NIM : 1208605018

Pembimbing I : Agus Muliantara, S.Kom.,M.Kom.

Pembimbing II : I Putu Gede Hendra Suputra, S.Kom.,M.Kom.

ABSTRAK

Memahami isi dokumen melalui ringkasan teks dokumen memerlukan waktu yang lebih singkat dibandingkan membaca seluruh isi dokumen, sehingga ringkasan teks menjadi sangat penting. Namun demikian, membuat ringkasan dokumen memerlukan waktu dan biaya yang banyak bila dokumen yang diringkas berjumlah banyak dan isi dokumen yang panjang. Oleh karena itu, ringkasan teks dokumen secara otomatis diperlukan untuk mengatasi masalah waktu baca dan biaya.

Dalam peringkasan teks otomatis hal yang penting dilakukan adalah bagaimana cara menentukan informasi penting dari sebuah dokumen. Informasi penting dapat diperoleh dengan menggunakan teknik ekstraksi. Teknik ekstraksi merupakan teknik peringkasan secara lengkap yang terdiri dari urutan-urutan kalimat yang disalin dan memilih bagian-bagian kalimat penting dari dokumen asli. Peringkasan teks otomatis dengan teknik ekstraksi dapat dilakukan dengan menggunakan beberapa fitur ekstraksi teks. Penelitian ini menggunakan beberapa fitur teks dalam melakukan peringkasan teks dokumen yaitu fitur keyword positif, kesamaan dengan kalimat lain, kesamaan kalimat dengan judul dan cosine similarity. Dari nilai fitur tersebut kalimat akan dirangking secara optimal dengan algoritma genetika.

Pada penelitian ini, algoritma genetika digunakan untuk melakukan optimasi bobot fitur ekstraksi pada peringkasan teks bahasa Indonesia. Pada tahap pelatihan algoritma genetika mampu melakukan optimasi bobot fitur ekstraksi teks yang menghasilkan akurasi sekitar 73,02%.


(5)

iv

Title : Compacting Automatic text of Indonesian Document by Using Genetic Algorithms

Name : Luh Gede Putri Suardani Registration : 1208605018

First Supervisor : Agus Muliantara, S.Kom.,M.Kom.

Second Supervisor : I Putu Gede Hendra Suputra, S.Kom.,M.Kom.

ABSTRACT

Understanding the content of a document through a summarized document text requires a shorter time compared to reading the entire document, so that a summary of the text becomes very important. However, making a summarized or compressed document takes time and costs a lot when documents to be summarized or compressed are numerous and lengthy . Therefore, the automatic compressed document text is needed to overcome the problem of reading time and costs.

In automatic text compressing, the important thing to do is how to determine the important information from a document. Important information can be obtained by using the extraction technique. Extraction technique is a complete compressing technique consisting of sequences of sentences copied and the chosen parts of important sentences from the original document. Automatic text compressing by extraction techniques can be performed by using several features of text extraction. This study uses some features in performing compression in the document text that is positive keyword features, sentence similarities with others, sentence similarities with the title and cosine similarity. Of the value of the feature line, it was ranked optimally with genetic.

In this research, the genetic algorithm was used to optimize the extraction of feature weight on the compressing Indonesian text. In the training phase the genetic algorithm was capable of optimizing the weight of text extraction feature that produces an accuracy of about 73.02%

.

Keywords: compressing, text, automatic, features, text extraction, genetic algorithms.


(6)

v

KATA PENGANTAR

Penelitian dengan judul Peringkasan Teks Otomatis Dokumen Bahasa Indonesia dengan Algoritma Genetika ini disusun dalam rangkaian kegiatan pelaksanaan Tugas Akhir di Jurusan Ilmu Komputer FMIPA UNUD. Sehubungan dengan telah terselesaikannya penelitian ini, maka diucapkan terima kasih dan penghargaan kepada berbagai pihak yang telah membantu pengusul, antara lain: 1. Bapak Agus Muliantara, S.Kom., M.Kom. selaku Ketua Jurusan Ilmu

Komputer FMIPA Universitas Udayana sekaligus pembimbing I yang telah membimbing dan membantu menyempurnakan penelitian ini.

2. Bapak I Putu Gede Hendra Suputra, S.Kom., M.Kom. selaku Pembimbing II yang telah banyak membantu dan meluangkan waktu untuk penelitian ini. 3. Ibu Dra. Ni Wayan Arnati, M.Hum dan Bapak Drs. I Wayan Teguh, M.Hum

selaku pakar yang telah banyak membantu dan meluangkan waktu untuk penelitian ini.

4. Bapak-bapak dan ibu-ibu dosen di Jurusan Ilmu Komputer yang bersedia meluangkan waktunya untuk memberikan masukan dalam penyempurnaan penelitian ini.

5. Rekan-rekan mahasiswa di Jurusan Ilmu Komputer yang telah memberi dukungan, motivasi, semangat dan kerja sama dalam penelitian ini.

Penulis menyadari bahwa tugas akhir ini masih belum sempurna, untuk itu kritik dan saran yang bermanfaat demi kesempurnaan tugas akhir ini sangat diharapkan.

Bukit Jimbaran, Maret 2016 Penyusun


(7)

vi DAFTAR ISI

LEMBAR JUDUL ... i

LEMBAR PENGESAHAN TUGAS AKHIR ... ii

ABSTRAK ... iii

ABSTRACT ... iv

KATA PENGANTAR ... v

DAFTAR ISI ... vi

DAFTAR TABEL ... ix

DAFTAR GAMBAR ... x

DAFTAR LAMPIRAN ... xii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 3

1.3 Batasan Masalah... 3

1.4 Tujuan Penelitian ... 4

1.5 Manfaat Penelitian ... 4

1.6 Metodologi Penelitian ... 4

1.6.1 Desain Penelitian ... 4

1.6.2 Pengumpulan Data ... 4

1.6.3 Pengolahan Data Awal ... 6

1.6.4 Metode yang Digunakan ... 6

BAB II TINJAUAN PUSTAKA ... 7

2.1 Peringkasan Teks Otomatis ... 7

2.2 Kalimat ... 7

2.3 Text Preprocessing ... 8

2.3.1 Tokenizing ... 9

2.3.2 Filtering ... 9

2.3.3 Stemming ... 10

2.4 Fitur Ekstraksi Teks ... 13


(8)

vii

2.4.2 Fitur Kemiripan Antar-Kalimat (F2) ... 14

2.4.3 Fitur Kalimat yang Menyerupai Judul Dokumen (F3) ... 15

2.4.4 Fitur Cosine Similarity (F4) ... 16

2.5 Pembobotan Fitur Ekstraksi Teks ... 18

2.6 Evaluasi Hasil Ringkasan Sistem ... 18

2.7 Algoritma Genetika ... 20

2.7.1 Istilah dalam Algoritma Genetika ... 21

2.7.2 Struktur Algoritma Genetika ... 21

2.8 Model Pengembangan Waterfall ... 26

2.9 Functional Decomposition Diagram (FDD) ... 27

2.10 Data Flow Diagram (DFD) ... 28

2.11 Pengujian Black Box ... 28

2.12 Tinjauan Studi ... 29

BAB III ANALISIS DAN PERANCANGAN ... 31

3.1 Analisis Kebutuhan Sistem ... 31

3.1.1 Kebutuhan Fungsional ... 32

3.1.2 Kebutuhan Non-Fungsional ... 33

3.2 Functional Decomposition Diagram (FDD) ... 33

3.3 Data Flow Diagram (DFD) ... 35

3.3.1 Context Diagram ... 35

3.3.2 DFD Level-0 Sistem ... 36

3.3.3 DFD Level-1 Training ... 39

3.3.4 DFD Level-1 Testing ... 41

3.3.5 DFD Level-1 Peringkasan Teks ... 42

3.3.6 DFD Level-1 Manajemen Data Dokumen ... 44

3.3.7 DFD Level-1 Manajemen Data Bobot ... 45

3.4 Diagram Alir ... 46

3.4.1 Diagram Alir Proses Peringkasan Teks... 46

3.4.2 Diagram Alir Proses Algoritma Genetika ... 48

3.5 Entity Relationship Diagram ... 51


(9)

viii

3.7 Pengujian dan Evaluasi ... 59

3.7.1 Skenario Pengujian Sistem ... 59

BAB IV HASIL DAN PEMBAHASAN ... 61

4.1 Lingkungan Implementasi ... 61

4.2 Implementasi Basis Data ... 61

4.3 Implementasi Program ... 63

4.4 Implementasi Antarmuka Sistem ... 68

4.5 Pengujian ... 74

4.5.1 Pengujian Fungsionalitas Sistem (Black Box Testing) ... 74

4.5.2 Pengujian Hasil Ringkasan Sistem ... 75

4.5.3 Pengujian Koefisien Dice ... 79

BAB V KESIMPULAN DAN SARAN ... 81

5.1 Kesimpulan ... 81

5.2 Saran ... 81


(10)

ix

DAFTAR TABEL

Tabel 2.1 Kombinasi awalan akhiran yang tidak diijinkan ... 12

Tabel 2.2 Cara menentukan tipe awalan untuk kata yang diawali dengan"te" ... 12

Tabel 2.3 Jenis awalan berdasarkan tipe awalannya ... 12

Tabel 2.4 Term frequency dan inverse sentence frequency ... 17

Tabel 2.5 Data Matriks Kemiripan ... 18

Tabel 2.6 Contoh Perhitungan ROUGEn ... 20

Tabel 3.1 Tabel Kebutuhan Fungsional Sistem ... 32

Tabel 3.2 Penjelasan Proses dan Sub Proses dalam FDD ... 34

Tabel 3.3 Rancangan Tabel Pengujian Black Box ... 59

Tabel 4.1 Penggalan Kode Perhitungan Nilai ROUGE ... 63

Tabel 4.2 Penggalan Kode Perhitungan Roullete Wheel ... 65

Tabel 4.3 Penggalan Kode Perhitungan Crossover Algoritma Genetika ... 66

Tabel 4.4 Tabel Penggalan Mutasi ... 67

Tabel 4.5 Tabel model kromosom terbaik untuk rasio 30% ... 68

Tabel 4.6 Hasil Pengujian Black Box ... 74

Tabel 4.7 Pengujian Ringkasan Sistem terhadap Ringkasan Manual Jenis 1 ... 75

Tabel 4.8 Pengujian Ringkasan Sistem terhadap Ringkasan Manual Jenis II ... 77


(11)

x

DAFTAR GAMBAR

Gambar 1.1 Format Dokumen Asli ... 5

Gambar 2.1 Tahap Preprocessing Text ... 9

Gambar 2.2 Ilustrasi fitur kemiripan antar kalimat ... 14

Gambar 2.3 Ilustrasi fitur kalimat yang menyerupai judul dokumen ... 15

Gambar 2.4 Taksonomi pengujian peringkasan teks ... 19

Gambar 2.5 Ilustrasi Model Waterfall ... 26

Gambar 2.6 Simbol-simbol pada DFD ... 29

Gambar 3.1 Functional Decomposition Diagram ... 33

Gambar 3.2 Context Diagram Sistem ... 36

Gambar 3.3 DFD Level 0 Sistem ... 37

Gambar 3.4 DFD Level-1 Proses Training ... 40

Gambar 3.5 DFD Level-1 Testing ... 41

Gambar 3.6 DFD Level-1 Peringkasan Teks ... 42

Gambar 3.7 DFD Level-1 Manajemen Data Dokumen ... 44

Gambar 3.8 DFD Level-1 Manajemen Data Bobot ... 45

Gambar 3.9 Diagram Alir Sistem ... 48

Gambar 3.10 Diagram Alir Proses Algoritma Genetika ... 49

Gambar 3.11 Representasi Kromosom ... 48

Gambar 3.12 Entity Relationship Diagram Sistem ... 52

Gambar 3.13 Rancangan Antarmuka Tampilan Login ... 54

Gambar 3.14 Rancangan Antar Muka Tampilan Beranda Admin ... 55

Gambar 3.15 Rancangan Antarmuka Tampilan Peringkasan Teks ... 55

Gambar 3.16 Rancangan Antarmuka Tampilan Hasil Peringkasan Teks ... 56

Gambar 3.17 Rancangan Antarmuka Tampilan Detail Proses... 56

Gambar 3.18 Rancangan Antarmuka Tampilan Training ... 57

Gambar 3.19 Rancangan Antarmuka Tampilan Testing ... 57

Gambar 3.20 Rancangan Antarmuka Tampilan Manajemen Data Dokumen ... 58

Gambar 3.21 Rancangan Antarmuka Tampilan Form Edit Ringkasan Manual ... 58


(12)

xi

Gambar 4.1 Skema Basis Data Sistem ... 61

Gambar 4.2 Implementasi Tampilan Login ... 69

Gambar 4.3 Implementasi Tampilan Beranda Admin ... 69

Gambar 4.4 Implementasi Tampilan Peringkasan Teks Input File ... 70

Gambar 4.5 Implementasi Tampilan Peringkasan Teks Input Manual ... 70

Gambar 4.6 Implementasi Tampilan Hasil Peringkasan Teks ... 71

Gambar 4.7 Implementasi Detail Proses ... 71

Gambar 4.8 Implementasi Tampilan Training ... 72

Gambar 4.9 Implementasi Tampilan Testing ... 72

Gambar 4.10 Implementasi Tampilan Manajemen Data Dokumen ... 73

Gambar 4.11 Implementasi Tampilan Form Edit Ringkasan Manual ... 73


(13)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Membaca adalah salah satu aktifitas yang dilakukan oleh seseorang untuk mendapatkan intisari dari sebuah teks, misalnya teks berita. Untuk mendapatkan intisari dari sebuah teks biasanya seseorang harus membaca seluruh isi teks yang ada. Namun, pada kenyatannya hanya dengan membaca ringkasan seseorang dapat memperoleh intisari dari teks tersebut. Membaca dan memahami keseluruhan teks membutuhkan waktu yang cukup lama. Oleh karena itu, ringkasan teks sangat penting untuk mengatasi masalah waktu baca tersebut. Akan tetapi, untuk membuat sebuah ringkasan membutuhkan biaya dan waktu pula. Sehingga, diperlukan sebuah sistem yang dapat melakukan peringkasan teks secara otomatis agar proses lebih efisien.

Peringkasan teks otomatis (automatic text summarization atau ATS) adalah teknik pembuatan ringkasan dari sebuah teks secara otomatis dengan memanfaatkan aplikasi yang dijalankan pada komputer untuk menghasilkan informasi yang paling penting dari dokumen aslinya (Zaman and Winarko 2011). Banyaknya kalimat hasil peringkasan teks tersebut tidak lebih dari 50% dokumen asalnya (Radev and McKeown 2002).

Terdapat dua bagian dari kriteria peringkasan teks yaitu ekstraksi dan abstraksi (Suanmali et al, 2009). Teknik ekstraksi yaitu teknik peringkasan secara lengkap yang terdiri dari urutan-urutan kalimat yang disalin dan memilih bagian-bagian kalimat penting dari dokumen asli. Sedangkan teknik abstraksi adalah teknik peringkasan dengan mengambil informasi penting dari dokumen kemudian menghasilkan ringkasan dengan menciptakan kalimat baru yang merepresentasikan intisari dari dokumen tersebut. Pada umumnya abstraksi dapat meringkas teks lebih kuat daripada ekstraksi, tetapi state-of-the-art teknik abstraksi masih lemah dan teknik abstraksi mengaplikasikan teknologi natural


(14)

2

language generation yang merupakan bahasan yang dikembangkan tersendiri. Sehingga, sebagian besar penelitian saat ini difokuskan pada teknik ekstraksi.

Dalam metode ekstraksi, tingkat kompresi merupakan faktor penting yang digunakan untuk menentukan rasio antara panjang ringkasan dan teks asli. Dengan meningkatnya tingkat kompresi, ringkasan akan lebih besar dan lebih banyak mengandung konten yang tidak signifikan. Sedangkan, jika tingkat kompresi menurun ringkasan menjadi pendek dan lebih banyak informasi yang hilang. Menurut Yeh et al dalam Suanmali et al (2009) ketika tingkat kompresi 5%-30% kualitas ringkasan dapat diterima. Dari penelitian yang dilakukan Aristoteles dkk (2012) dengan tingkat kompresi 10%, 20% dan 30% menunjukkan bahwa nilai akurasi tertinggi terdapat pada tingkat kompresi 30%. Oleh karena itu penelitian ini menggunakan tingkat kompresi 30% dari dokumen asli.

Peringkasan teks menggunakan teknik ekstraksi memiliki beberapa bagian penting dalam proses peringkasan yaitu bagaimana cara menentukan kalimat-kalimat yang penting dalam sebuah dokumen. Salah satu caranya dapat menggunakan beberapa fitur ekstraksi teks seperti posisi kalimat, koneksi antar kalimat, kalimat positif, dan sebagainya. Menurut Aristoteles dkk (2012), dari sebelas fitur kalimat yang digunakan yaitu: posisi kalimat, keyword positif,

keyword negatif, kemiripan antar kalimat, kalimat yang menyerupai judul, kalimat yang mengandung nama entiti, kalimat yang mengandung nama numerik, panjang kalimat, koneksi antar kalimat, penjumlahan bobot koneksi antar kalimat dan

cosine similarity ada empat fitur yang sudah merepresentasikan sebelas fitur lainnya dalam peringkasan teks. Empat fitur tersebut adalah fitur keyword positif, kesamaan dengan kalimat lain, kesamaan kalimat dengan judul, dan cosine similarity. Selain itu waktu komputasi untuk keempat fitur tersebut lebih singkat daripada komputasi sebelas fitur (Aristoteles dkk, 2012).

Tiap-tiap fitur ekstraksi teks tersebut memiliki tingkat pengaruh yang berbeda-beda terhadap hasil ringkasan sistem. Oleh karena itu dibutuhkan sebuah algoritma optimasi untuk menentukan tingkat kepentingan atau nilai bobot dari tiap-tiap fitur ekstraksi. Salah satu algoritma optimasi yang dapat digunakan adalah algoritma genetika. Pada tugas akhir ini digunakan algoritma genetika


(15)

3

untuk melakukan optimasi bobot fitur ekstraksi pada peringkasan teks Bahasa Indonesia dikarenakan permasalahan bobot fitur ekstraksi tersebut dapat direpresentasikan dalam bentuk kromosom.

Evaluasi hasil peringkasan teks menggunakan Recall-Oriented Understudy for Gisting Evaluation atau ROUGE (Steinberger & Jezek, 2009). ROUGE adalah toolkit evaluasi oleh Lin (2004) yang telah menjadi standar untuk evaluasi peringkasan otomatis. ROUGE membandingkan ringkasan yang dihasilkan oleh program dengan ringkasan yang dihasilkan manusia. Evaluasi dilakukan dengan menggunakan peraturan ROUGE n-gram. Menurut Suanmali et al (2009), ROUGE-1 memiliki korelasi tertinggi dengan penilaian manusia dengan tingkat kepercayaan 95%. Hal ini menyatakan bahwa ROUGE-1 secara konsisten sangat berkorelasi dengan penilaian manusia.

1.2 Rumusan Masalah

Adapun rumusan masalah yang dapat diambil dalam penulisan penelitian ini adalah:

a. Bagaimana membangun sistem yang mampu melakukan proses peringkasan teks otomatis dokumen Bahasa Indonesia?

b. Bagaimana penggunaan algoritma genetika dalam mengoptimasi bobot tiap fitur teks peringkasan otomatis dokumen Bahasa Indonesia?

1.3 Batasan Masalah

Batasan masalah dalam penelitian ini adalah sebagai berikut. 1. Sistem yang dibangun adalah sistem berbasis web.

2. Pembuatan ringkasan sistem berdasarkan teknik ekstraksi. Tidak ada perubahan struktur kalimat dalam ringkasan. Ringkasan berupa gabungan kalimat-kalimat terpenting dari teks asli.

3. Pembuatan ringkasan hanya berlaku pada single-document tidak berlaku pada multi-document.

4. Dokumen teks yang digunakan adalah dokumen Bahasa Indonesia dari penelitian Ridha (2002) dengan tema politik.

5. Pengujian hasil ringkasan sistem menggunakan kompresi 30% dari jumlah kalimat dokumen asli.


(16)

4

6. Dokumen ringkasan manual yang digunakan untuk pengujian hasil ringkasan sistem adalah ringkasan manual yang dibuat oleh dua orang pakar dalam bidang Sastra Indonesia.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah merancang dan mengimplementasikan sebuah sistem peringkasan teks otomatis untuk dokumen berbahasa Indonesia dengan algoritma genetika.

1.5 Manfaat Penelitian

Dengan menerapkan algoritma genetika dalam peringkasan teks otomatis dokumen Bahasa Indonesia diharapkan dapat menghasilkan ringkasan yang berisi intisari dari keseluruhan dokumen sehingga pengguna sistem dapat membuat keputusan untuk melanjutkan membaca keseluruhan dokumen atau cukup dengan membaca ringkasan.

1.6 Metodologi Penelitian

Pada sub bab metodologi penelitian ini akan menjelaskan langkah-langkah yang akan dilalui untuk melakukan perancangan sistem. Adapun sub bab bahasan yang akan dijelaskan adalah desain penelitian, pengumpulan data, pengolahan data awal, dan metode yang digunakan.

1.6.1 Desain Penelitian

Penelitian ini mengambil judul “Peringkasan Teks Otomatis Dokumen Bahasa Indonesia dengan Algoritma Genetika”. Desain penelitian yang digunakan dalam penelitian ini adalah riset eksperimental. Untuk menggambarkan riset eksperimental bisa dilakukan pada dua kelompok dimana kelompok satu disebut control tanpa diberi perlakukan apapun sedangkan pada kelompok ke dua diberikan perlakuan (treatment) (Hasibuan 2007).

1.6.2 Pengumpulan Data

Jenis data yang digunakan pada penelitian ini adalah data sekunder, yaitu data yang didapat tidak secara langsung dari objek penelitian. Data sudah dikumpulkan oleh pihak lain dengan berbagai cara atau metode. Dataset berasal dari penelitian Ridha (2002) yang diambil dari media online kompas.com dengan tema politik dari tanggal 11 Maret 2002 sampai 11 April 2002. Dataset berjumlah


(17)

5

150 dokumen, 100 dokumen digunakan untuk tahap training dan 50 dokumen digunakan untuk tahap testing.

Dataset menggunakan dokumen dalam bentuk format XML sederhana, dan jenis dokumen yang digunakan bertipe teks. Gambar 1.1 merupakan contoh format dokumen asli yang digunakan pada tahap pelatihan dan pengujian.

<?xml version="1.0"?> <ROOT>

<DOCUMENT>

<TITLE>Tim Koneksitas Kasus 27 Juli Hendaknya Transparan</TITLE>

<TEXT>Jakarta, Kompas - Tim Pembela Demokrasi Indonesia (TPDI) selaku kuasa hukum Dewan Pimpinan Pusat Partai Demokrasi Indonesia Perjuangan (DPP PDI-P) meminta tim koneksitas yang menyidik kasus penyerbuan Kantor DPP PDI Jalan Diponegoro Nomor 58 Jakarta tanggal 27 Juli 1996 (Kasus 27 Juli) bersikap transparan dan obyektif dalam mengungkap kasus tersebut. Para tersangka yang diajukan adalah bawahan yang sengaja dikorbankan, sementara pucuk pimpinan pemegang komando diselamatkan tanpa proses hukum.

Hal itu diungkapkan Koordinator TPDI Petrus Selestinus dalam surat yang ditujukan kepada Ketua Tim Koneksitas Penyidikan Peristiwa 27 Juli 1996. Surat itu diperoleh Kompas hari Selasa (9/4). TPDI mengonstantir adanya kekuatan dan pengaruh dari pihak-pihak tertentu yang berhasil mempengaruhi dan membelokkan target penyidikan kasus 27 Juli, baik untuk menentukan jumlah tersangka maupun untuk memperlemah bukti-bukti materiil dalam penuntutan dan persidangan pengadilan.

Indikasinya, kata Selestinus, hingga saat ini tim koneksitas belum berhasil memenuhi petunjuk jaksa penuntut umum untuk menyempurnakan hasil pemeriksaan tim koneksitas meskipun pengembalian berkas perkara telah sering dilakukan jaksa kepada tim koneksitas. Selestinus menjelaskan, dalam penyidikan yang dilakukan Korps Reserse Mabes Polri ditemukan bukti bahwa yang terlibat dalam peristiwa 27 Juli 1996 itu adalah institusi dan oknum-oknum dari kalangan TNI, Polri, dan sipil. Atas desakan Komisi II DPR dibentuk Tim Koneksitas selaku penyidik peristiwa 27 Juli 1996. Tim itu diketuai oleh Kepala Korps Reserse Mabes Polri dan Komandan Pusat Polisi Militer (Puspom)-sebagai wakil ketua.

Mengutip laporan polisi No Pol: LP/1939/VII/1996 tanggal 7 Agustus 1996 dan No 106/A-106/VII/1998 tanggal 31 Juli 1998, Selestinus mengatakan, nama Jenderal (Purn) Feisal Tanjung dan Jenderal (Pol/ Purn) Dibyo Widodo dilaporkan untuk diperiksa dan diminta pertanggungjawabannya. Akan tetapi, dalam perkembangan penyidikan Tim Koneksitas, kedua nama tersebut hilang begitu saja tanpa diadakan penyidikan secara lebih mendalam mengenai keterlibatan kedua jenderal dimaksud.</TEXT>

</DOCUMENT> </ROOT>

Gambar 1.1 Format Dokumen Asli

Dokumen yang sudah dikumpulkan kemudian akan diringkas secara manual oleh dua orang pakar Bahasa Indonesia. Peringkasan manual ini bertujuan untuk mengevaluasi hasil ringkasan sistem dengan cara membandingkan hasil


(18)

6

ringkasan sistem dengan hasil ringkasan manual. Ringkasan manual juga disimpan dalam format xml.

1.6.3 Pengolahan Data Awal

Proses yang dilakukan setelah mendapatkan data terkait dengan penelitian yaitu pengolahan data sehingga data tersebut diubah dan menjadi informasi yang berguna.

Data-data yang diperoleh tersebut, selanjutnya akan diolah sesuai kebutuhan sistem. Untuk dapat melakukan proses perhitungan selanjutnya, maka data dokumen yang telah dikumpulkan perlu dilakukan proses awal atau disebut sebagai text preprocessing.

1.6.4 Metode yang Digunakan

Pada sistem peringkasan teks otomatis dokumen Bahasa Indonesia ini menggunakan algoritma genetika untuk menghitung nilai fitness yang tertinggi dalam menentukan kromosom dalam kasus ini bobot fitur-fitur ekstraksi teks.


(19)

7

BAB II

TINJAUAN PUSTAKA

2.1 Peringkasan Teks Otomatis

Peringkasan teks otomatis adalah proses mengurangi teks pada dokumen dengan menggunakan program komputer untuk membuat ringkasan yang berisikan poin-poin penting dimana hasil ringkasan tidak lebih dari setengah dokumen asli (Radev et al, 2002). Terdapat dua bagian dari kriteria peringkasan teks yaitu ekstraksi dan abstraksi (Suanmali et al, 2009). Teknik ekstraksi yaitu teknik peringkasan secara lengkap yang terdiri dari urutan-urutan kalimat yang disalin dan memilih bagian-bagian kalimat penting dari dokumen asli. Sedangkan teknik abstraksi adalah teknik peringkasan dengan mengambil informasi penting dari dokumen kemudian menghasilkan ringkasan yang menggunakan kalimat baru yang tidak terdapat pada dokumen asli.

2.2 Kalimat

Kalimat adalah satuan bahasa terkecil yang merupakan kesatuan pikiran. Kalimat dapat dibedakan menjadi bahasa lisan dan bahasa tulis. Dalam bahasa lisan, kalimat adalah satuan bahasa yang terbentuk atas gabungan kata dengan kata, gabungan kata dengan frasa, atau gabungan frasa dengan frasa, yang minimal berupa sebuah klausa bebas yang minimal mengandung satu subjek dan predikat. Dalam bahasa tulis, kalimat adalah satuan bahasa yang diawali oleh huruf kapital, diselingi atau tidak diselingi tanda koma (,), titik dua (:) atau titik koma (;) dan diakhiri dengan lambang intonasi final yaitu tanda titik (.), tanda tanya (?) atau tanda seru (!).

Pada tugas akhir ini, tiap-tiap kalimat yang ada pada dokumen akan dihitung skornya berdasarkan fitur ekstraksi. Skor dari kalimat tersebut akan menentukan apakah kalimat tersebut penting atau tidak. Kalimat yang memiliki skor tinggi kemungkinan merupakan kalimat yang penting dari sebuah dokumen.


(20)

8

Pada tugas akhir ini, kalimat dipisahkan berdasarkan tanda titik (.) dan kutipan langsung diasumsikan sebagai satu kalimat yang tidak dapat dipisahkan. Berikut ini contoh pemisahan kalimat dari sebuah dokumen:

Menurut Yudhoyono, soal status almarhum Theys itu dikesampingkan dulu saat ini. "Yang penting, pengusutan kematiannya harus tuntas demi keadilan dan kebenaran," papar Yudhoyono yang menyebut almarhum Theys sebagai tokoh. "Biarkanlah proses ini berjalan dengan baik, dan nanti dengan transparan dan penjelasan gamblang rakyat akan melihat siapa almarhum Theys itu. Maka lebih bagus, status predikat politik siapa Pak Theys itu kita kesampingkan," tambahnya.

Berdasarkan dokumen di atas, sistem akan melakukan pemisahan kalimat berdasarkan titik (.) dan kutipan langsung. Sehingga dokumen di atas akan menghasilkan tiga buah kalimat. Berikut ini tiga kalimat yang telah dipisahkan:

1. Menurut Yudhoyono, soal status almarhum Theys itu dikesampingkan dulu saat ini.

2. "Yang penting, pengusutan kematiannya harus tuntas demi keadilan dan kebenaran," papar Yudhoyono yang menyebut almarhum Theys sebagai tokoh.

3. "Biarkanlah proses ini berjalan dengan baik, dan nanti dengan transparan dan penjelasan gamblang rakyat akan melihat siapa almarhum Theys itu. Maka lebih bagus, status predikat politik siapa Pak Theys itu kita kesampingkan," tambahnya.

2.3 Text Preprocessing

Penyimpanan data secara terstruktur dapat membantu pengolahan data yang dilakukan oleh komputer, karena data terstruktur dapat mempermudah penciptaan algoritma yang efisien. Oleh karena itu pada text mining, dibutuhkan pemrosesan data terlebih dahulu untuk mengubah data tekstual yang tidak terstruktur menjadi data yang terstruktur. Di dalam text mining proses untuk mendapatkan representasi terstruktur dari data tekstual mentah yang tidak terstruktur disebut text preprocessing.

Tahap text preprocessing terdiri dari beberapa tahap yaitu tokenizing,


(21)

9

tokenizing, filtering, dan stemming. Proses tagging tidak digunakan karena ketiga proses yang telah disebutkan sebelumnya sudah cukup untuk mendapatkan data yang terstruktur. Gambar 2.1 menunjukkan tahap preprocessing text.

Gambar 2.1 Tahap Preprocessing Text 2.3.1 Tokenizing

Pada proses tokenizing, kata-kata yang ada di dalam dokumen harus dipecah-pecah terlebih dahulu menjadi bagian-bagian yang lebih kecil berupa kata tunggal yang memiliki arti atau biasa disebut token (Manning et al, 2009). Proses

tokenizing pada tugas akhir ini dilakukan per kalimat. Selain itu dilakukan juga pengubahan huruf-huruf yang ada di dalam dokumen menjadi huruf kecil (case folding) serta dilakukan penghilangan tanda baca. Hal ini dilakukan terlebih dahulu untuk mempermudah proses pengolahan lebih lanjut.

Contoh tokenizing :

Teks asli : Saya senang bermain sepakbola di rumah sejak kecil. Hasil tokenizing : saya, senang, bermain, sepakbola, di, rumah, sejak, kecil 2.3.2 Filtering

Text filtering bertujuan untuk mengambil kata-kata yang dapat mempresentasikan isi dokumen dengan cara membuang kata-kata yang dianggap tidak penting yang biasa disebut stopwords (Manning et al, 2009). Stopwords

dapat berupa kata sambung, kata depan, dan kata seru seperti “di”, “yang”, “dan”, “ke”, “wah”, “serta”, “wow”, dan lain-lain.

Tokenizing

Filtering

Stemming

Hasil Preprocessing Original


(22)

10

Contoh filtering :

Hasil tokenizing : saya, senang, bermain, sepakbola, di, rumah, sejak, kecil Hasil filtering : senang, bermain, sepakbola, rumah

2.3.3 Stemming

Stemming adalah proses yang dilakukan untuk mengambil bentuk dasar dari suatu kata yang telah melalui proses filtering (Manning et al, 2009). Algoritma stemming untuk bahasa yang satu berbeda dengan algoritma stemming untuk bahasa lainnya. Sebagai contoh bahasa Inggris memiliki morfologi yang berbeda dengan bahasa Indonesia sehingga algoritma stemming untuk kedua bahasa tersebut juga berbeda. Proses stemming pada teks berbahasa Indonesia lebih rumit/kompleks karena terdapat variasi imbuhan yang harus dibuang untuk mendapatkan root word (kata dasar) dari sebuah kata.

Pada umumnya kata dasar pada bahasa Indonesia terdiri dari kombinasi misalnya “berjalan”, “menjalani”, “perjalanan” sama-sama memiliki kata dasar “jalan”. Banyak metode yang dapat digunakan untuk melakukan stemming pada dokumen berbahasa Indonesia salah satunya adalah algoritma Nazief dan Adriani. Algoritma ini berdasarkan aturan-aturan yang mengelompokkan imbuhan yang diperbolehkan dan dilarang untuk digunakan. Pada tugas akhir ini menggunakan algoritma Nazief dan Adriani karena algoritma Nazief dan Andriani merupakan algoritma stemming untuk teks berbahasa Indonesia yang memiliki presentase keakuratan lebih baik dari algoritma lainnya (Agusta, 2009). Berikut ini adalah langkah-langkah yang dilakukan oleh algoritma Nazief dan Adriani (Agusta, 2009):

1. Cari kata yang akan distem dalam kamus. Jika ditemukan maka diasumsikan bahwa kata tersebut adalah root word. Maka algoritma berhenti.

2. Inflection Suffixes (“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) dibuang. Jika berupa particles (“-lah”, “-kah”, “-tah”, atau “-pun”) maka langkah ini diulangi lagi untuk menghapus Possesive Pronouns (“-ku”, “-mu”, atau “ -nya”), jika ada.


(23)

11

3. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a

a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah “ -k”, maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus maka algoritma berhenti. Jika tidak ditemukan maka lakukan langkah 3b.

b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke langkah 4.

c. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks yang dihapus maka pergi ke langkah 4a, jika tidak pergi ke langkah 4b.

d. Periksa tabel kombinasi awalan-akhiran yang tidak diizinkan (tabel 2.1). Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.

e. For i=1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika root word belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma berhenti. Catatan: jika awalan kedua sama dengan awalan pertama algoritma berhenti.

4. Melakukan Recoding.

5. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal diasumsikan sebagai root word. Proses selesai.

Tipe awalan ditentukan melalui langkah-langkah berikut:

1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe awalannya secara berturut-turut adalah “di-”, “ke-”, atau “se-”.

2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka dibutuhkan sebuah proses tambahan untuk menentukan tipe awalannya.

3. Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”, “me-”, atau “pe-” maka berhenti.

4. Jika tipe awalan adalah “tidak ada” maka berhenti. Jika tipe awalan adalah bukan “tidak ada” maka awalan dapat dilihat pada Tabel 2.2. Hapus awalan jika ditemukan.


(24)

12

Tabel 2.1 Kombinasi awalan akhiran yang tidak diijinkan Awalan Akhiran yang tidak diijinkan

be- -i di- -an ke- -i, -kan me- -an se- -i, -kan

Tabel 2.2 Cara menentukan tipe awalan untuk kata yang diawali dengan"te"

Following Character Tipe

Set 1 Set 2 Set 3 Set 4 Awalan

"-r-" "-r-" - - None

"-r-" Vowel - - Ter-luluh

"-r-" Not (vowel or "-r-") "-er-" Vowel Ter "-r-" Not (vowel or "-r-") "-er-" Not vowel Ter- "-r-" Not (vowel or "-r-") Not "-er-" - Ter Not (vowel or "-r-") "-er-" Vowel - None Not (vowel or "-r-") "-er-" Not vowel - Te

Tabel 2. 3 Jenis awalan berdasarkan tipe awalannya

Tipe Awalan Awalan yang harus dihapus

di- di-

ke- ke-

se- se-

te- te-

ter- ter-

ter-luluh Ter

Contoh stemming :

Hasil filtering : senang, bermain, sepakbola, rumah Hasil stemming : senang, main, sepakbola, rumah


(25)

13

2.4 Fitur Ekstraksi Teks

Pada tugas akhir ini menggunakan fitur ekstraksi untuk menghitung skor tiap-tiap kalimat dalam dokumen. Untuk setiap kalimat dalam dokumen, skor kalimat dihitung berdasarkan fitur ekstraksi dimana nilai dari tiap-tiap fitur dinormalisasikan sehingga nilainya berada dalam range [0,1]. Normalisasi ini dilakukan agar nilai dari tiap-tiap fitur ekstraksi tidak memiliki gap atau selisih yang besar.

Adapun fitur-fitur ekstraksi yang digunakan pada tugas akhir ini yaitu positive keyword pada kalimat (f1), kemiripan antar kalimat (f2), kalimat yang menyerupai judul (f3) dan cosine similarity (f4). Penjelasan dari tiap-tiap fitur adalah sebagai berikut ini:

2.4.1 Fitur Keyword Positif (F1)

Positif keyword adalah kata yang sering muncul pada sebuah paragraf (Marlina, 2012). Fitur ini dapat dihitung menggunakan rumus (2.1) :

(2.1)

Dengan si(positif keyword) adalah jumlah kata dalam suatu kalimat yang

mengandung keyword dibagi dengan jumlah kata dalam seluruh kalimat yang mengandung keyword, dengan keyword merupakan banyaknya kata yang muncul dalam suatu dokumen. Berikut ini contoh perhitungan keyword positif:

Ibarat tambang emas, Bangka Belitung dipandang menyimpan sejumlah potensi yang siap gali. Tidak mengherankan bila jumlah pendatang ke provinsi ini terus bertambah. Konfilk antara warga luar dan local sendiri mulai muncul di beberapa tempat. Beberapa terkesan sebagai konflik etnis, namun tidak berkembang lebih jauh karena aparat pemerintah dan keamanan tampaknya bergerak cepat menyelesaikannya.

Hasil preprocessing :

aparat/1 bangka/1 belitung/1 kembang/1 tambah/1 cepat/1 pandang/1 emas/1 etnis/1 gali/1 aman/1 konflik/2 lokal/1 heran/1 selesai/1 simpan/1 muncul/1 perintah/1 datang/1 potensi/1 provinsi/1 tambang/1 kesan/1 warga/1.


(26)

14

Dari hasil preprocessing diatas, kata konflik adalah kata yang memilki jumlah kemunculan paling banyak yaitu sebanyak dua kali. Oleh karena itu positif keyword dari dokumen tersebut adalah “konflik”. Pada kalimat pertama tidak mengandung positif keyword “konflik”, oleh karena itu skor fitur f2 untuk kalimat pertama adalah 0. Sehingga skor fitur positf keyword untuk tiap-tiap kalimat adalah berturu-turut 0,0, ½, ½.

2.4.2 Fitur Kemiripan Antar-Kalimat (F2)

Kemiripan antar-kalimat adalah daftar kata-kata yang dapat dicocokkan antara kalimat yang satu dengan kalimat yang lainnya dalam dokumen atau dengan kata lain merupakan kata yang muncul dalam kalimat sama dengan kata yang muncul dalam kalimat lain (Aristoteles dkk, 2012). Berikut ini contoh perhitungan kemiripan antar kalimat, diasumsikan kalimat yang dijadikan contoh di bawah ini adalah kalimat yang telah melewati proses preprocessing:

 Kalimat 1 : Kami pergi nonton dan belanja.  Kalimat 2 : Kami pergi rekreasi.

 Kalimat 3 : Kami sedang nonton bola.

Berdasarkan ketiga kalimat diatas, perhitungan skor untuk fitur f4 dapat diilustrasikan pada gambar 2.2.

Gambar 2.2 Ilustrasi fitur kemiripan antar kalimat

Berdasarkan gambar 2.2, skor f2 untuk kalimat 1 adalah 3/8. Hal ini dikarenakan terdapat tiga buah kata pada kalimat 1 yang memiliki kesamaan dengan kata yang ada pada kalimat 2 dan kalimat 3 yaitu “kami”, “pergi”,

nonton pergi dan

belanja

kami

sedang bola

rekreasi kalimat 1 kalimat 2


(27)

15

“nonton”. Skor f2 untuk kalimat 2 adalah 2/8. Hal ini dikarenakan terdapat dua buah kata pada kalimat 2 yang memiliki kesamaan dengan kata yang ada pada kalimat 1 dan 3 yaitu “kami”, “pergi”. Skor f2 untuk kalimat 3 adalah 2/8. Hal ini dikarenakan terdapat dua buah kata pada kalimat 3 yang memiliki kesamaan kata dengan kata yang ada pada kalimat 1 dan 2 yaitu “kami”, “nonton”. Fitur ini dihitung dengan menggunakan rumus (2.2)

(2.2)

2.4.3 Fitur Kalimat yang Menyerupai Judul Dokumen (F3)

Kalimat yang menyerupai judul dokumen adalah kumpulan kata yang dapat dicocokkan antara kalimat satu dengan judul dokumen atau dengan kata lain merupakan kata yang muncul dalam kalimat sama dengan kata yang ada dalam judul dokumen(Aristoteles dkk, 2012).

Berikut ini contoh perhitungan skor f3, diasumsikan kalimat yang dijadikan contoh di bawah ini adalah kalimat yang telah melewati proses

preprocessing:

 Judul : Kegiatan kami bersama  Kalimat 1 : Kami pergi nonton.  Kalimat 2 : Kami pergi belanja.

 Kalimat 3 : Kegiatan kami adalah olahraga bersama.

Berdasarkan judul dan tiga kalimat diatas, perhitungan skor f5 dapat diilustrasikan dengan gambar 2.3 berikut ini :

Gambar 2.3 Ilustrasi fitur kalimat yang menyerupai judul dokumen olahraga

adalah kami kegiatan

bersama pergi

nonton kami

kami kegiatan bersama pergi

belanja judul

kegiatan bersama


(28)

16

Berdasarkan gambar 2.3, skor f3 untuk kalimat 1 adalah 1/5, hal ini dikarenakan terdapat satu kata pada kalimat 1 yang sama dengan kata yang ada pada judul dokumen yaitu kata “kami”. Skor f3 untuk kalimat 2 adalah 1/5, hal ini dikarenakan terdapat satu kata pada kalimat 2 yang sama dengan kata yang ada pada judul dokumen yaitu kata “kami”. Skor f3 untuk kalimat 3 adalah 3/5, hal ini dikarenakan terdapat tiga kata pada kalimat 3 yang sama dnegna kata yang ada pada judul dokumen yaitu kata “kami”, “kegiatan”, “bersama”. Fitur ini dapat dihitung dengan menggunakan rumus (2.3).

(2.3) 2.4.4 Fitur Cosine Similarity (F4)

Pada penelitian ini menggunakan semua keyword yang ada dalam dokumen kecuali kata-kata stoplist. Perhitungan cosine similarity melibatkan pembobotan (weights) TF-IDF dimana wi,j didefinisikan pada (2.4), dan tfi adalah banyaknya kemunculan term ke-i pada kalimat. SFi sentences frequency

merupakan banyak kalimat yang mengandung term ke-i sedangkan ISFi = merupakan ukuran diskriminan kemunculan term ke-i dalam dokumen, N adalah banyaknya kalimat dalam satu dokumen.

(2.4)

Pengiriman emas rusak karena kebakaran. Pengiriman perak tiba di sebuah truk perak. Pengiriman emas tiba di truk.

Setelah mengalami text preprocessing, kalimat menjadi :  S1 : kirim emas rusak bakar

 S2 : kirim perak truk perak  S3 : kirim emas truk


(29)

17

Tabel 2.4 Term frequency dan inverse sentence frequency Term

Tf

SF ISF

W

S1 S2 S3 S1 S2 S3

Bakar 1 0 0 1 1.584963 1.584963 0 0

Emas 1 0 1 2 0.584963 0.584963 0 0.584963

Kirim 1 1 1 3 0 0 0 0

Perak 0 2 0 1 1.584963 0 3.169926 0 Rusak 1 0 0 1 1.584963 1.584963 0 0

Truk 0 1 1 2 0.584963 0 0.584963 0.584963 Jika bobot kata telah diperoleh, selanjutnya mencari nilai cosine similarity. Perhitungan cosine similarity antar dokumen dengan cara menghitung cosine

sudut vektor W (bobot) suatu kalimat dengan vektor W (bobot) kalimat yang lain (Yulita, 2015). Untuk mencari hubungan kemiripan antar kalimat digunakan persamaan (2.5).

(2.5)

Keterangan :

 S1 = vector bobot kata yang menjadi kandidat  S2 = vector bobot kata selain kandidat.

Dimana ti merupakan bobot kata dari kata wi. Berikut adalah contoh perhitungan cosine similarity antara kalimat 1 (S1) dengan kalimat 2 (S2) :


(30)

18

Tabel 2.5 Data Matriks Kemiripan

S1 S2 S3 Total Skor

S1 1 0 0.178555 0.326131

S2 0 1 0.12832 0.31223

S3 0.178555 0.12832 1 0.36164

Jumlah 1.178555 1.12832 1.306875 3.613749 2.5 Pembobotan Fitur Ekstraksi Teks

Pembobotan fitur ekstraksi teks adalah sebuah pendekatan yang dilakukan untuk menentukan kepentingan suatu fitur dari fitur-fitur yang akan diteliti dengan cara mengalikan bobot dengan skor fitur ekstraksi (Berker & Gungor, 2012). Pembobotan ini sangat berpengaruh terhadap akurasi hasil ringkasan sistem nantinya. Pembobotan fitur pada tugas akhir ini menggunakan algoritma genetika untuk memperoleh bobot yang optimal untuk tiap-tiap fiturnya. Skor untuk tiap kalimat dapat dihitung dengan menggunakan rumus (2.6):

(2.6)

Diasumsikan wi adalah bobot fitur ke-i dan fi adalah fitur ekstraksi ke-i. 2.6 Evaluasi Hasil Ringkasan Sistem

Secara garis besar, metode evaluasi peringkasan teks otomatis dapat dikategorikan menjadi dua, yaitu metode intrinsik dan metode ekstrinsik (Steinberger & Jezek, 2009). Metode intrinsik yaitu menguji kualitas ringkasan yang dihasilkan. Metode ekstrinsik menguji performansi hasil ringkasan dalam memenuhi tugas-tugas tertentu, misalnya penggunaan hasil ringkasan pada

information retrieval. Taksonomi evaluasi peringkasan teks dapat dilihat pada Gambar 2.4.

Metode evaluasi yang sering dilakukan pada penelitian peringkasan teks adalah metode intrinsik. Pendekatan dalam evaluasi intrinsik yang dilakukan adalah membandingkan hasil peringkasan sistem dengan ringkasan ideal. Ringkasan ideal dapat dibuat khusus oleh pakar atau dengan menggabungkan ringkasan-ringkasan yang dibuat oleh manusia menjadi sebuah ringkasan ideal.


(31)

19

Gambar 2.4 Taksonomi pengujian peringkasan teks

Penelitian ini menggunakan metode evaluasi Recall-Oriented Understudy for Gisting Evaluation (ROUGE). ROUGE menghitung jumlah n-gram kata yang

overlap antara ringkasan sistem dengan ringkasan referensi Adapun teknik penghitungan ROUGE-N antara sebuah ringkasan sistem dan sekumpulan ringkasan manual terdapat pada persamaan (2.7).

(2.7)

Dimana n adalah panjang dari n-gram, Countmatch(gramn) adalah jumlah n-gram yang sama antara sebuah ringkasan sistem dan sebuah ringkasan referensi, Count(gramn) adalah jumlah n-gram dalam ringkasan referensi.

Tabel 2.6 menunjukkan contoh perhitungan ROUGE-N pada Document Understanding Conference 2003 (Lin, 2004). C1 adalah kalimat ringkasan sistem. R1 dan R2 adalah kalimat dalam sebuah ringkasan referensi. Asumsikan bahwa C1, R1 dan R2 sudah melewati proses text preprocessing. Ada 20 unigram, 19 bigram, 18 trigram, dan 17 4-gram token dari R1 dan R2 yang tercantum dalam kolom total. Kolom match adalah jumlah kecocokan dari setiap ringkasan referensi. Skor akhir adalah perbandingan antara nilai Match dengan Total.

C1 : pulses may ease schizophrenic voices

R1 : magnetic pulse series sent through brain may ease schizophrenic voices


(32)

20

R2 : yale finds magnetic stimulation some relief to schizophrenics imaginary voices

Tabel 2.6 Contoh Perhitungan ROUGEn

R1 R2 Match Total Score

ROUGE1 may, ease, schizophrenic, voices Voices 5 20 0.25 ROUGE2 may ease, ease schizophrenic,

schizophrenic voices

- 3 19 0.16

ROUGE3 may ease schizophrenic, ease schizophrenic voices

- 2 18 0.11

ROUGE4 may ease schizophrenic, ease schizophrenic voices

- 1 17 0.05

Studi awal dari Lin dan Hovy tahun 2003 (Steinberger & Jezek, 2009) menunjukkan bahwa evaluasi otomatis menggunakan versi unigram dari dari ROUGE-N, yaitu ROUGE-1 berkolerasi baik dengan evaluasi manusia berdasarkan berbagai statistik. Oleh karena itu penelitian ini menggunakan evaluasi hasil ringkasan sistem dengan ROUGE-1.

2.7 Algoritma Genetika

Algoritma genetika merupakan evaluasi atau perkembangan dunia komputer dalam bidang kecerdasan buatan (artificial intelligence). Kemunculan algoritma genetika ini terinspirasi oleh teori Darwin dan teori-teori dalam ilmu biologi, sehingga banyak istilah dan konsep biologi yang digunakan dalam algoritma genetika, karena sesuai dengan namanya, proses-proses yang terjadi dalam algoritma genetika sama dengan apa yang terjadi pada evaluasi biologi.

Algoritma genetika adalah algoritma pencarian yang berdasarkan pada mekanisme sistem natural yakni genetik dan seleksi alam. Pada dasarnya algoritma genetika adalah program komputer yang mensimulasikan proses evolusi, dengan menghasilkan kromosom-kromosom dari tiap populasi secara random dan memungkinkan kromosom tersebut berkembang biak sesuai dengan hukum-hukum evolusi yang nantinya diharapkan akan dapat menghasilkan kromosom prima atau yang lebih baik. Kromosom ini merepresentasikan solusi dari permasalahan yang diangkat, sehingga apabila kromosom yang baik tersebut


(33)

21

dihasilkan, maka diharapkan solusi yang baik dari permasalahan tersebut juga didapatkan.

2.7.1 Istilah dalam Algoritma Genetika

Terdapat beberapa definisi penting dalam Algoritma Genetika yang perlu diperhatikan, yaitu:

1. Genotype (Gen), sebuah nilai yang menyatakan satuan dasar yang membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan kromosom. Dalam algoritma genetika, gen ini bisa berupa biner, float, integer maupun karakter atau kombinatorial.

2. Allele, merupakan nilai dari gen.

3. Kromosom/Individu, merupakan gabungan gen-gen yang membentuk nilai tertentu dan menyatakan solusi yang mungkin dari suatu permasalahan. 4. Populasi, merupakan sekumpulan individu yang akan diproses bersama

dalam satu siklus proses evolusi.

5. Generasi, menyatakan satu siklus proses evolusi atau satu iterasi di dalam algoritma genetika.

6. Fitness, menyatakan seberapa baik nilai dari suatu individu yang didapatkan.

2.7.2 Struktur Algoritma Genetika

Algoritma genetika adalah algoritma pencarian hasil yang terbaik, yang didasarkan pada perkawinan dan seleksi gen secara alami. Kombinasi perkawinan ini dilakukan dengan proses acak (random). Dimana struktur gen hasil proses perkawinan ini, akan menghasilkan gen inovatif untuk diseleksi. Dalam setiap generasi, ciptaan buatan yang baru (hasil perkawinan), diperoleh dari bit-bit dan bagian-bagian gen induk yang terbaik. Tujuan dari algoritma genetika ini adalah menghasilkan populasi yang terbaik dari populasi awal. Sedangkan keuntungan dari algoritma genetika adalah sifat metode pencariannya yang lebih optimal, tanpa terlalu memperbesar ruang pencarian.

Dalam menyusun suatu algoritma genetika menjadi program, maka diperlukan beberapa tahapan proses, yaitu proses pembuatan generasi awal, proses seleksi, proses crossover, proses mutasi dan pengulangan proses sebelumnya.


(34)

22

1) Pendefinisian Individu

Pendefinisian individu merupakan proses pertama yang harus dilakukan dalam Algoritma Genetika yang menyatakan salah satu solusi yang mungkin dari suatu permasalahan yang diangkat. Pendefinisian individu atau yang biasa disebut juga merepresentasikan kromosom yang akan diproses nanti, dilakukan dengan mendefinisikan jumlah dan tipe dari gen yang digunakan dan tentunya dapat mewakili solusi permasalahan yang diangkat.

Gen dapat direpresentasikan dalam bentuk: bit, bilangan real, string, daftar aturan, gabungan dari beberapa kode, elemen permutasi, elemen program atau representasi lainnya yang dapat diimplementasikan untuk operator genetika.

2) Membangkitkan Populasi Awal dan Kromosom

Membangkitkan populasi awal adalah proses membangkitkan sejumlah individu atau kromosom secara acak atau melalui prosedur tertentu. Ukuran untuk populasi tergantung pada masalah yang akan diselesaikan dan jenis operator genetika yang akan diimplementasikan. Setelah ukuran populasi ditentukan, kemudian dilakukan pembangkitan populasi awal. Teknik yang digunakan dalam pembangkitan populasi awal adalah Random Generation. Dimana cara ini melibatkan pembangkitan bilangan random untuk nilai setiap gen sesuai dengan representasi kromosom yang digunakan.

IPOP = round{random(Nipop, Nbits)} (2.8) Dimana IPOP adalah gen yang nantinya berisi pembulatan dari bilangan random yang dibangkitkan sebanyak Nipop(jumlah populasi) X Nbits (jumlah gen dalam tiap kromosom).

3) Nilai Fitness

Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai ukuran performansinya. Pada masalah optimasi, solusi yang akan dicari adalah memaksimumkan fungsi h (dikenal sebagai masalah maksimasi) sehingga nilai fitness yang digunakan adalah nilai dari fungsi h tersebut, yakni f = h


(35)

23

(di mana f adalah nilai fitness). Tetapi jika masalahnya adalah meminimalkan fungsi h (masalah minimasi), maka fungsi h tidak bisa digunakan secara langsung. Hal ini disebabkan adanya aturan bahwa individu yang memiliki nilai fitness tinggi lebih mampu bertahan hidup pada generasi berikutnya. Oleh karena itu nilai fitness yang dapat digunakan adalah f = 1/h, yang artinya semakin kecil nilai h, semakin besar nilai f. Tetapi hal ini akan menjadi masalah jika h bisa bernilai 0, yang mengakibatkan f bisa bernilai tak hingga. Untuk mengatasinya, h perlu ditambah sebuah bilangan yang dianggap kecil [0-1] sehingga nilai fitnessnya menjadi = 1/(h+1) dengan a adalah bilanga nyang kecil dan bervariansi [0-1] sesuai dengan masalah yang akan diselesaikan.

4) Proses Seleksi

Operasi seleksi dilakukan dengan memperhatikan fitness dari tiap individu, manakah yang dapat dipergunakan untuk generasi selanjutnya. Seleksi ini digunakan untuk mendapatkan calon induk yang baik, semakin tinggi nilai fitnessnya maka semakin besar juga kemungkinan individu tersebut terpilih.

Terdapat beberapa macam cara seleksi untuk mendapatkan calon induk yang baik. Metode seleksi yang umumnya digunakan adalah roulette wheel. Cara kerja metode ini adalah sebagai berikut:

a. Hitung total fitness semua individu (fi dumana I adalah individu ke-1 sampak ke-n).

b. Hitung probabilitas seleksi masing-masing individu.

(2.9) c. Dari probabilitas tersebut, dihitung jatah interval masing-masing

individu pada angka 0 sampai 1.

d. Bangkitkan bilangan random antara 0 sampai 1.

e. Dari bilangan random yang dihasilkan tentukan urutan untuk populasi baru hasil proses seleksi,


(36)

24

Dimana C adalah nilai komulatif probabilitas, R adalah nilai random dari roulette-wheel dan K adalah iterasi kromosom.

5) Pindah Silang (Crossover)

Sebuah kromosom yang mengarah pada solusi yang baik dapat diperoleh dari proses memindah-silangkan dua buah kromosom. Pindah silang hanya bisa dilakukan dengna suatu probabilitas crossover, artinya pindah silang bisa dilakukan hanya jika suatu bilangan random yang dibangkitkan kurang dari probabilitas crossover yang ditentukan. Pada umumnya probabilitas tersebut diset mendekati 1.

Pindah silang yang paling sederhana adalah pindah silang satu titik potong (one-point crossover). Suatu titik potong dipilih secara acak (random), kemudian bagian pertama dari parent 1 digabungkan dengan bagian kedua dari parent 2. Pada crossover satu titik, posisis crossover k (k-1,2,..N-1) dengan N merupakan panjang kromosom yang diseleksi secara random. Contoh:

11001011 + 11011111 = 11001111

Kromosom yang idjadikan induk dipilih secara acak dan jumlah kromosom yang mengalami crossover dipengaruhi oleh parameter crossover_rate (pc). Pseudo-code untuk proses crossover adalah:

begin

k ← 0;

while (k<populasi) do

R[k] ← random(0-1); if ( R[k] < pc ) then

select Chromosome[k] as parent; end;

k = k + 1; end; end; 6) Mutasi


(37)

25

Mutasi merupakan proses mengubah nilai dari satu atau beberapa gen dalam suatu kromosom. Mutasi ini berperan untuk menggantikan gen yang hilang dari populasi akibat seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada inisialisasi populasi. Metode mutasi yang digunakan adalah mutasi dalam pengkodean nilai. Proses mutasi dalam pengkodean nilai dapat dilakukan dengan berbagai cara, salah satunya yaitu dengan memilih sembarang posisi gen pada kromosom, nilai yang ada tersebut kemudian dirubah dengan suatu nilai tertentu yang diambil secara acak.

Jumlah kromsom yang mengalami mutasi dalam satu populasi ditentukan oleh parameter mutation_rate. Untuk memilih posisi gen yagn mengalami mutasi dilakukan dengan cara membangkitkan bilangan integer acak antara 1 sampai total_gen. Kemudian tentukan berapa banyak mutasi yang terjadi dengan menentukan variable mutation_rate (pm) dari total gen yang mengalami populasi. Maka nilai gen pada posisi tersebut diganti dengan bilangan acak.

7) Offspring

Offspring merupakan kromosom baru yang dihasilkan setelah melalui proses-proses sebelumnya. Kemudian pada offspring tersebut dihitung nilai fitnessnya apakah sudah optimal atau belum, jika sudah optimal berarti offspring tersebut merupakan solusi optimal, tetapi jika belum optimal maka akan diseleksi kembali, begitu seterusnya sampai terpenuhi kriteria berhenti. Beberapa kriteria berhenti yang sering digunakan antara lain :

1. Berhenti pada generasi tertentu.

2. Berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai fitness tertinggi tidak berubah.

3. Berhenti bila dalam n generasi berikut tidak didapatkan nilai fitness yang lebih tinggi.


(38)

26

2.8 Model Pengembangan Waterfall

Model waterfall merupakan model proses klasik yang bersifat sistematis, berurutan dari satu tahap ke tahap lain dalam membangun software (Sommerville 2011).

Model SDLC waterfall sering disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model waterfall menyediakan pendekatan alur hidup perangkat lunak secara terurut. Model ini mengusulkan sebuah pendekatan kepada pengembangan software yang sistematik dan sekuensial yang mulai dari tingkat kemajuan sistem pada seluruh analisis, desain, pengkodean, pengujian, dan tahap penerapan atau pemeliharaan program.

Model waterfall memiliki tahapan – tahapan dalam prosesnya, setiap tahapan tersebut harus diselesaikan sebelum berlanjut ke tahap berikutnya. Ilustrasi model waterfall terdapat pada gambar 2.5.

Gambar 2.5 Ilustrasi Model Waterfall Berikut merupakan tahapan-tahapan dalam model proses SDLC:

1. Analisis Kebutuhan

Proses pengumpulan kebutuhan dilakukan secara intensif untuk mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan user.


(39)

27

2. Desain Sistem

Desain perangkat memfokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat mengimplementasikan menjadi program pada tahap selanjutnya.

3. Implementasi pada Kode Program

Selama tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.

4. Pengujian Program

Pengujian fokus pada perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.

5. Penerapan dan Pemeliharaan

Tahap penerapan sistem meliputi penerapan sistem pada dunia yang nyata, dimana user langsung menggunakan dan menilai sistem apakah sudah memenuhi kebutuhan. Pemeliharaan meliputi kesalahan pengujian yang tidak ditemukan pada awal tahap siklus hidup, meningkatkan implementasi unit sistem dan meningkatkan pelayanan sistem sebagai kebutuhan baru ditemukan. Tahap pemeliharaan dapat mengulangii proses pengembangan yang ada tetapi tidak untuk membuat perangkat lunak baru. 2.9 Functional Decomposition Diagram (FDD)

Functional Decomposition Diagram atau disingkat dengan istilah FDD merupakan sebuah representasi top-down (disajikan dalam bentuk hirarki) dari sebuah fungsi atau proses dari suatu sistem (Rosenblatt, 2013:140). Menurut Rosenblatt dengan menggunakan FDD, suatu analis sistem dapat menunjukkan proses bisnis dan memecahnya kembali menjadi beberapa tingkatan fungsi atau proses yang lebih detail yang hampir mirip dengan sebuah struktur organisasi.


(40)

28

2.10 Data Flow Diagram (DFD)

Menurut Rosenblatt (2014) DFD merupakan sebuah diagram yang merepresentasikan bagaimana suatu sistem menyimpan, memproses dan mentransformasi suatu data. Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Diagram konteks akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks hanya ada satu proses. Tidak boleh ada store dalam diagram konteks.

Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi-notasi untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika, terstruktur dan jelas. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan proses kerja suatu sistem.

DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik di mana data tersebut mengalir (misalnya lewat telepon, surat dan sebagainya) atau lingkungan fisik di mana data tersebut akan disimpan (misalnya file kartu, microfiche, harddisk, tape, diskette dll). DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur (structured analysis and design)

2.11 Pengujian Black Box

Pengujian kotak hitam atau black box testing adalah jenis pengujian perangkat lunak yang dapat dilakukan ketika tidak memiliki kode sumber, hanya memiliki program hasil eksekusi kode tersebut. Situasi ini terjadi di beberapa titik dalam proses pembangunan suatu perangkat lunak. Sekelompok penguji, pengguna akhir, pakar bisnis dan pengembang adalah tim terbaik untuk melakukan pengujian jenis ini. Pengguna akhir memberikan kontribusi


(41)

29

Gambar 2.6 Simbol-simbol pada DFD

pengetahuan substansial tentang perilaku yang tepat yang diharapkan dari perankat lunak. Pengembang memberikan kontribusi pengetahuan seubstansial tentang perilaku bisnis seperti yang diterapkan dalam perangkat lunak. Pengujian kotak hitam dengan pengguna akhir juga disebut sebagai pengujian perilaku karena pada pengujian ini menguji seluruh fungsi yang seharusnya dimiliki perangkat lunak dapat berfungsi sebagaimana mestinya.

2.12 Tinjauan Studi

Ada beberapa penelitian yang pernah dilakukan mengenai peringkasan teks otomatis, algoritma genetika antara lain:

1. Genetic Algorithm Based Sentence Extraction for Text Summarization,

(Suanmali et al, 2009). Pada penelitian ini dilakukan ekstraksi ringkasan dengan memberikan nilai untuk setiap fitur kalimat yang dimiliki menggunakan Genetic Algorithm (GA). Penelitian menggunakan data dokumen berbahasa Inggris dari Document Understanding Conference

(DUC) 2002. Terdapat delapan fitur kalimat yang digunakan yaitu title feature, sentence length, features weight, sentence position, sentence to sentence similarity, proper noun, thematic word dan numerical data.

Genetic Algorithm untuk training dokumen demi menentukan bobot sentence features. Penelitian ini menggunakan pengujian dengan perhitungan ROUGE-1 dan menghasilkan akurasi sebesar 46,47%.


(42)

30

2. Sistem Peringkasan Dokumen Berita Bahasa Indonesia Menggunakan Metode Regresi Logistik Biner (Marlina, 2012). Pada penelitian ini dilakukan peringkasan teks dengan metode regresi logistik biner untuk menganalisis beberapa faktor dengan sebuah variabel yang bersifat biner. Penelitian menggunakan dokumen yang berasal dari dokumen berita online harian Kompas yang didapat dari korpus penelitian Ridha (2002). Penelitian menggunakan evaluasi koefisien dice menghasilkan akurasi sebesar 42,84% pada rasio ringkasan 30%. Cara menghitung koefisien dice

ditunjukkan pada persamaan

(2.11) Dimana x merupakan banyaknya kalimat yang dihasilkan sistem dan y merupakan banyaknya kalimat yang diringkas secara manual.

3. Peringkas Dokumen Berbahasa Indonesia Berbasis Kata Benda dengan BM25 (Rivaldi 2013). Penelitian ini mengembangkan peringkasan teks berdasarkan kata benda. Penelitian menggunakan fitur cosine similarity, content overlap, dan Okapi BM25. Data yang digunakan adalah data dokumen penelitian Ridha (2002). Penelitian menggunakan evaluasi koefisien dice. Hasil rata-rata pengujian ringkasan sistem menunjukkan 44%.


(1)

Mutasi merupakan proses mengubah nilai dari satu atau beberapa gen dalam suatu kromosom. Mutasi ini berperan untuk menggantikan gen yang hilang dari populasi akibat seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada inisialisasi populasi. Metode mutasi yang digunakan adalah mutasi dalam pengkodean nilai. Proses mutasi dalam pengkodean nilai dapat dilakukan dengan berbagai cara, salah satunya yaitu dengan memilih sembarang posisi gen pada kromosom, nilai yang ada tersebut kemudian dirubah dengan suatu nilai tertentu yang diambil secara acak.

Jumlah kromsom yang mengalami mutasi dalam satu populasi ditentukan oleh parameter mutation_rate. Untuk memilih posisi gen yagn mengalami mutasi dilakukan dengan cara membangkitkan bilangan integer acak antara 1 sampai total_gen. Kemudian tentukan berapa banyak mutasi yang terjadi dengan menentukan variable mutation_rate (pm) dari total gen yang mengalami populasi. Maka nilai gen pada posisi tersebut diganti dengan bilangan acak.

7) Offspring

Offspring merupakan kromosom baru yang dihasilkan setelah melalui proses-proses sebelumnya. Kemudian pada offspring tersebut dihitung nilai fitnessnya apakah sudah optimal atau belum, jika sudah optimal berarti offspring tersebut merupakan solusi optimal, tetapi jika belum optimal maka akan diseleksi kembali, begitu seterusnya sampai terpenuhi kriteria berhenti. Beberapa kriteria berhenti yang sering digunakan antara lain :

1. Berhenti pada generasi tertentu.

2. Berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai fitness tertinggi tidak berubah.

3. Berhenti bila dalam n generasi berikut tidak didapatkan nilai fitness yang lebih tinggi.


(2)

2.8 Model Pengembangan Waterfall

Model waterfall merupakan model proses klasik yang bersifat sistematis, berurutan dari satu tahap ke tahap lain dalam membangun software (Sommerville 2011).

Model SDLC waterfall sering disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model waterfall menyediakan pendekatan alur hidup perangkat lunak secara terurut. Model ini mengusulkan sebuah pendekatan kepada pengembangan software yang sistematik dan sekuensial yang mulai dari tingkat kemajuan sistem pada seluruh analisis, desain, pengkodean, pengujian, dan tahap penerapan atau pemeliharaan program.

Model waterfall memiliki tahapan – tahapan dalam prosesnya, setiap tahapan tersebut harus diselesaikan sebelum berlanjut ke tahap berikutnya. Ilustrasi model waterfall terdapat pada gambar 2.5.

Gambar 2.5 Ilustrasi Model Waterfall

Berikut merupakan tahapan-tahapan dalam model proses SDLC: 1. Analisis Kebutuhan

Proses pengumpulan kebutuhan dilakukan secara intensif untuk mespesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan user.


(3)

2. Desain Sistem

Desain perangkat memfokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat mengimplementasikan menjadi program pada tahap selanjutnya.

3. Implementasi pada Kode Program

Selama tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.

4. Pengujian Program

Pengujian fokus pada perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Unit pengujian melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya.

5. Penerapan dan Pemeliharaan

Tahap penerapan sistem meliputi penerapan sistem pada dunia yang nyata, dimana user langsung menggunakan dan menilai sistem apakah sudah memenuhi kebutuhan. Pemeliharaan meliputi kesalahan pengujian yang tidak ditemukan pada awal tahap siklus hidup, meningkatkan implementasi unit sistem dan meningkatkan pelayanan sistem sebagai kebutuhan baru ditemukan. Tahap pemeliharaan dapat mengulangii proses pengembangan yang ada tetapi tidak untuk membuat perangkat lunak baru.

2.9 Functional Decomposition Diagram (FDD)

Functional Decomposition Diagram atau disingkat dengan istilah FDD merupakan sebuah representasi top-down (disajikan dalam bentuk hirarki) dari sebuah fungsi atau proses dari suatu sistem (Rosenblatt, 2013:140). Menurut Rosenblatt dengan menggunakan FDD, suatu analis sistem dapat menunjukkan proses bisnis dan memecahnya kembali menjadi beberapa tingkatan fungsi atau proses yang lebih detail yang hampir mirip dengan sebuah struktur organisasi.


(4)

2.10 Data Flow Diagram (DFD)

Menurut Rosenblatt (2014) DFD merupakan sebuah diagram yang merepresentasikan bagaimana suatu sistem menyimpan, memproses dan mentransformasi suatu data. Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Diagram konteks akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks hanya ada satu proses. Tidak boleh ada store dalam diagram konteks.

Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi-notasi untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika, terstruktur dan jelas. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan proses kerja suatu sistem.

DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik di mana data tersebut mengalir (misalnya lewat telepon, surat dan sebagainya) atau lingkungan fisik di mana data tersebut akan disimpan (misalnya file kartu, microfiche, harddisk, tape, diskette dll). DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur (structured analysis and design)

2.11 Pengujian Black Box

Pengujian kotak hitam atau black box testing adalah jenis pengujian perangkat lunak yang dapat dilakukan ketika tidak memiliki kode sumber, hanya memiliki program hasil eksekusi kode tersebut. Situasi ini terjadi di beberapa titik dalam proses pembangunan suatu perangkat lunak. Sekelompok penguji, pengguna akhir, pakar bisnis dan pengembang adalah tim terbaik untuk melakukan pengujian jenis ini. Pengguna akhir memberikan kontribusi


(5)

Gambar 2.6 Simbol-simbol pada DFD

pengetahuan substansial tentang perilaku yang tepat yang diharapkan dari perankat lunak. Pengembang memberikan kontribusi pengetahuan seubstansial tentang perilaku bisnis seperti yang diterapkan dalam perangkat lunak. Pengujian kotak hitam dengan pengguna akhir juga disebut sebagai pengujian perilaku karena pada pengujian ini menguji seluruh fungsi yang seharusnya dimiliki perangkat lunak dapat berfungsi sebagaimana mestinya.

2.12 Tinjauan Studi

Ada beberapa penelitian yang pernah dilakukan mengenai peringkasan teks otomatis, algoritma genetika antara lain:

1. Genetic Algorithm Based Sentence Extraction for Text Summarization,

(Suanmali et al, 2009). Pada penelitian ini dilakukan ekstraksi ringkasan

dengan memberikan nilai untuk setiap fitur kalimat yang dimiliki menggunakan Genetic Algorithm (GA). Penelitian menggunakan data dokumen berbahasa Inggris dari Document Understanding Conference (DUC) 2002. Terdapat delapan fitur kalimat yang digunakan yaitu title feature, sentence length, features weight, sentence position, sentence to sentence similarity, proper noun, thematic word dan numerical data. Genetic Algorithm untuk training dokumen demi menentukan bobot sentence features. Penelitian ini menggunakan pengujian dengan perhitungan ROUGE-1 dan menghasilkan akurasi sebesar 46,47%.


(6)

2. Sistem Peringkasan Dokumen Berita Bahasa Indonesia Menggunakan

Metode Regresi Logistik Biner (Marlina, 2012). Pada penelitian ini

dilakukan peringkasan teks dengan metode regresi logistik biner untuk menganalisis beberapa faktor dengan sebuah variabel yang bersifat biner. Penelitian menggunakan dokumen yang berasal dari dokumen berita online harian Kompas yang didapat dari korpus penelitian Ridha (2002). Penelitian menggunakan evaluasi koefisien dice menghasilkan akurasi sebesar 42,84% pada rasio ringkasan 30%. Cara menghitung koefisien dice ditunjukkan pada persamaan

(2.11) Dimana x merupakan banyaknya kalimat yang dihasilkan sistem dan y merupakan banyaknya kalimat yang diringkas secara manual.

3. Peringkas Dokumen Berbahasa Indonesia Berbasis Kata Benda

dengan BM25 (Rivaldi 2013). Penelitian ini mengembangkan peringkasan

teks berdasarkan kata benda. Penelitian menggunakan fitur cosine similarity, content overlap, dan Okapi BM25.Data yang digunakan adalah data dokumen penelitian Ridha (2002). Penelitian menggunakan evaluasi koefisien dice. Hasil rata-rata pengujian ringkasan sistem menunjukkan 44%.