KATA PENGANTAR Puji dan syukur penulis panjatkan kehadapan Tuhan Yang Maha Esa, karena atas berkat Rahmat-Nya, penulis dapat menyelesaikan Tugas Akhir yang berjudul Implementasi Metode Finite State Automata pada Sistem Pengenalan Lirik Tembang Bali Sekar Alit (Pupuh) Berbasis Web”. Dalam penyusunan Tugas Akhir ini, penulis mendapatkan petunjuk dan bimbingan dari berbagai pihak. Sehubungan dengan hal tersebut pada kesempatan ini penulis menyampaikan ucapan terima kasih kepada: 1.
Bapak Prof. Ir. Ngakan Putu Gede Suardana, MT.,Ph.D, selaku Dekan Fakultas Teknik Universitas Udayana.
2.
Bapak Dr. Eng. I Putu Agung Bayupati, S.T.,M.T. sebagai Ketua Jurusan Teknologi Informasi.
3.
Bapak Prof. Dr. I Ketut Gede Darma Putra, S.Kom., M.T. sebagai Dosen Pembimbing Akademik yang telah banyak memberikan bimbingan akademik dalam menempuh perkuliahan di Jurusan Teknologi Informasi Universitas Udayana.
4.
Bapak A.A. Kompiang Oka Sudana, S.Kom, M.T. selaku Dosen Pembimbing I dan Bapak Putu Wira Buana, S.Kom, MT. selaku Dosen Pembimbing II yang telah memberikan banyak petunjuk, saran dan bimbingan kepada penulis selama penyusunan Tugas Akhir ini.
5.
Segenap dosen pengajar di Jurusan Teknologi Informasi Fakultas Teknik Universitas Udayana dan pegawai Jurusan Teknologi Informasi yang telah banyak membantu selama masa perkuliahan.
6.
Beasiswa Bidik Misi yang telah memberikan dukungan penuh secara finansial selama masa perkuliahan.
7.
Kedua orangtua dan keluarga yang telah memberikan dukungan dan motivasi baik secara moril dan material selama menempuh perkuliahan.
8.
Serta rekan-rekan mahasiswa Teknologi Informasi Putu Risanti Iswardani, I G A A Mas Aristamy, Ayu Astridefi, Desak Ayu Sista Dewi, dan seluruh
v
angkatan 2012 yang telah memberikan semangat, masukan dan celaan selama penyusunan Tugas Akhir ini. Penulis menyadari sepenuhnya bahwa Tugas Akhir ini masih terdapat kekurangan yang berada di luar kemampuan penulis, untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun guna perbaikan dan pengembangan lebih lanjut. Akhir kata penulis mohon maaf jika ada kesalahan dalam penyusunan Tugas Akhir ini. Semoga Tugas Akhir ini dapat bermanfaat bagi pembaca dan semua pihak sesuai dengan yang diharapkan.
Denpasar, Juli 2016 Penulis
Titah Wulandari
vi
ABSTRAK Bali memiliki kesenian yang beraneka ragam salah satunya yaitu Tembang. Tembang merupakan karya sastra yang disajikan dalam bentuk suara vokal maupun instrumental. Pengimplementasian teknologi informasi kaitannya dengan seni budaya lokal kurang dikembangkan. Perspektif masyarakat yang menganggap tidak berpengaruhnya kebudayaan daerah di kehidupan modern memicu berkurangnya pelestarian budaya. Berdasarkan hal tersebut, maka dibuat suatu sistem pengenalan lirik Tembang Bali yaitu Pupuh menggunakan Metode Finite State Automata. Sistem ini mampu mengenali lirik Pupuh sesuai aturan Padalingsa Pupuh yaitu aturan jumlah baris pada satu bait, jumlah suku kata dalam satu baris dan vokal terakhir dalam satu baris. Sistem dapat menjadi media pembelajaran bagi siswa sekolah dasar hingga menengah serta masyarakat umum. Kata Kunci: Pupuh, Finite State Automata, Suku Kata, Media Pembelajaran, Web.
vii
ABSTRACT Bali has a various kinds of arts, one of them is an epic song. Epic song (Indonesian:Tembang) is literary work presented in the form of vocal and instrumental sound. Implementation of technology information related to the local art are less developed. Societal perspectives consider the local arts are not give any influence to the modern life causes decrease in history preservation. Based this case, Lyrics Recognition System of Balinese Song Pupuh is made using Finite State Automata Method to separate syllables. The system is able to recognize lyrics of Pupuh based on the rule of Padalingsa Pupuh such as the number of lines in one stanza, the number of syllables in each line and the last vowel in each line. The system is able to be an e-learning for elementary, middle-school students and general. Keywords: Pupuh, Finite State Automata, Syllables, E-learning, Web.
viii
DAFTAR ISI HALAMAN JUDUL............................................................................................... i PERNYATAAN..................................................................................................... ii LEMBAR PENGESAHAN TUGAS AKHIR.....................................................iii BERITA ACARA TUGAS AKHIR.................................................................... iv KATA PENGANTAR............................................................................................v ABSTRAK............................................................................................................ vii ABSTRACT..........................................................................................................viii DAFTAR ISI......................................................................................................... ix DAFTAR GAMBAR.............................................................................................xi DAFTAR TABEL............................................................................................... xiii DAFTAR KODE PROGRAM........................................................................... xiv BAB I PENDAHULUAN.......................................................................................1 1.1 Latar Belakang............................................................................................. 1 1.2 Rumusan Masalah........................................................................................3 1.3 Tujuan.......................................................................................................... 4 1.4 Manfaat........................................................................................................ 4 1.5 Batasan Masalah.......................................................................................... 5 1.6 Sistematika Penulisan.................................................................................. 5 BAB II KAJIAN PUSTAKA.................................................................................7 2.1 State of the Art............................................................................................. 7 2.2 Natural Languange Processing................................................................. 13 2.3 Pengertian Suku Kata.................................................................................15 2.4 Kesusastraan Bali.......................................................................................16 2.5 Dharma Gita...............................................................................................17 2.6 Pengertian Aplikasi Berbasis Web............................................................. 22 2.7 Pengertian Bootstrap..................................................................................23 2.8 Pengertian JavaScript.................................................................................24 2.9 Pengertian PHP (Hypertext Pre Processing)............................................. 24 2.9.1 PHP RegEx (Regular Expressions)..............................................25 2.10 Finite State Automata................................................................................ 30 2.11 Manhattan Distance...................................................................................34 BAB III METODOLOGI DAN PERANCANGAN SISTEM..........................36 3.1 Tempat dan Waktu Penelitian....................................................................36 3.2 Alur Penelitian........................................................................................... 36 3.3 Data............................................................................................................ 36 3.3.1 Sumber Data................................................................................. 37 3.3.2 Jenis Data..................................................................................... 37 3.3.3 Metode Pengumpulan Data.......................................................... 37 3.4 Alat Penelitian............................................................................................37 3.4.1 Konfigurasi Perangkat Lunak.......................................................38 3.4.2 Konfigurasi Perangkat Keras....................................................... 38 3.5 Masukan dan Keluaran Perangkat Lunak.................................................. 39 3.6 Metode Finite State Automata................................................................... 39 ix
3.7 3.8 3.9
Gambaran Umum Sistem...........................................................................43 Flowchart Penggunaan Sistem.................................................................. 45 Perancangan Sistem................................................................................... 46 3.9.1 Flowchart Alur Kerja Pemenggalan Suku Kata...........................46 3.9.2 Perancangan Database................................................................. 49 3.9.3 Perancangan Antarmuka Sistem...................................................50 BAB IV PEMBAHASAN DAN ANALISIS HASIL......................................... 54 4.1 Spesifikasi Hardware dan Software..........................................................54 4.2 Pembahasan Sistem....................................................................................54 4.2.1 Pemenggalan Suku Kata...............................................................54 4.2.2 Penentuan Jenis Pupuh.................................................................56 4.3 Pengujian Sistem........................................................................................59 4.3.1 Pengujian Pemenggalan Suku Kata..............................................59 4.3.2 Pengujian Penentuan Jenis Pupuh................................................61 4.3.3 Pengujian Performa Sistem.......................................................... 86 4.3.4 Tampilan Keseluruhan Sistem..................................................... 88 4.3.4.1 Menu Features............................................................................. 89 4.3.4.2 Menu Theory................................................................................ 94 4.3.4.3 Menu Lirik....................................................................................97 4.3.4.4 Tampilan Sistem Sebagai Admin..................................................97 4.4 Analisis Sistem.........................................................................................102 4.4.1 Pengumpulan Data..................................................................... 102 4.4.2 Variabel Aspek...........................................................................102 4.4.3 Perhitungan dan Penyajian Data................................................ 103 4.5 Kelebihan dan Kekurangan Sistem.......................................................... 110 BAB V PENUTUP..............................................................................................112 5.1 Kesimpulan.............................................................................................. 112 5.2 Saran........................................................................................................ 112 DAFTAR PUSTAKA.........................................................................................114 LAMPIRAN – LAMPIRAN..............................................................................118
x
DAFTAR GAMBAR Gambar 2.1 Tahapan Penggunaan Aplikasi PARSER.............................................7 Gambar 2.2 Diagram Pemenggalan Tahap 1......................................................... 10 Gambar 2.3 Diagram Pemenggalan Tahap 2 dan 3............................................... 11 Gambar 2.4 Input Kata Bahasa Indonesia..............................................................13 Gambar 2.5 Hasil Stemming.................................................................................. 13 Gambar 2.6 Contoh State Diagram....................................................................... 32 Gambar 2.7 Diagram Transisi FSA Tingkat 1....................................................... 33 Gambar 2.8 Diagram Transisi FSA Tingkat 2....................................................... 33 Gambar 2.9 Diagram Transisi FSA Tingkat 3....................................................... 34 Gambar 3.1 Transisi FSA Tingkat 1...................................................................... 39 Gambar 3.2 Transisi FSA Tingkat 2...................................................................... 40 Gambar 3.3 Transisi FSA Tingkat 3...................................................................... 40 Gambar 3.4 Contoh Transisi Kata......................................................................... 41 Gambar 3.5 Contoh Transisi Kata Tembang......................................................... 42 Gambar 3.6 Contoh Transisi Tahap 2 Kata Tembang........................................... 42 Gambar 3.7 Diagram Fishbone..............................................................................43 Gambar 3.8 Gambaran Umum Fitur Validasi Pupuh........................................... 44 Gambar 3.9 Gambaran Umum Fitur Identifikasi Pupuh....................................... 45 Gambar 3.10 Flowchart Penggunaan Sistem.........................................................46 Gambar 3.11 Flowchart Alur Kerja Pemenggalan Suku Kata.............................. 47 Gambar 3.12 Flowchart Penentuan Jenis Pupuh................................................... 48 Gambar 3.13 Flowchart Cek Padalingsa Pupuh..................................................49 Gambar 3.14 Skema Database Sistem...................................................................50 Gambar 3.15 Perancangan Menu Home................................................................ 51 Gambar 3.16 Perancangan Menu Theory...............................................................51 Gambar 3.17 Perancangan Menu Features............................................................52 Gambar 3.18 Perancangan Menu Validasi Pupuh................................................. 53 Gambar 3.19 Perancangan Menu Identifikasi Pupuh............................................ 53 Gambar 4.1 Tampilan Hasil Input Benar............................................................... 56 Gambar 4.2 Tampilan Hasil Input Salah................................................................56 Gambar 4.3 Hasil Penentuan Jenis Pupuh............................................................. 61 Gambar 4.4 Hasil Penentuan Jenis Pupuh (1)....................................................... 62 Gambar 4.5 Hasil Penentuan Jenis Pupuh (2)....................................................... 63 Gambar 4.6 Persentase Pengujian 100 Pupuh....................................................... 85 Gambar 4.7 Grafik Pengujian Click Time, Hits, Users all URLs.......................... 86 Gambar 4.8 Grafik Pengujian Click Times dan Errors (per URL)........................ 87 Gambar 4.9 Tampilan Menu Home....................................................................... 88 Gambar 4.10 Tampilan Menu Features.................................................................89 Gambar 4.11 Tampilan Fitur Validasi Pupuh........................................................89 Gambar 4.12 Tampilan Pilihan Jenis Pupuh..........................................................90 Gambar 4.13 Tampilan Form Input....................................................................... 90 Gambar 4.14 Isian Form Input...............................................................................91 Gambar 4.15 Tampilan Hasil................................................................................. 91 xi
Gambar 4.16 Tampilan Peringatan........................................................................ 92 Gambar 4.17 Hasil Validasi................................................................................... 92 Gambar 4.18 Tampilan Fitur Identifikasi Pupuh................................................... 93 Gambar 4.19 Hasil Penentuan Jenis Pupuh........................................................... 93 Gambar 4.20 Tampilan Peringatan Kesalahan.......................................................94 Gambar 4.21 Tampilan Menu Theory....................................................................95 Gambar 4.22 Tampilan Materi Tembang Bali.......................................................95 Gambar 4.23 Tampilan Materi Jenis Pupuh.......................................................... 96 Gambar 4.24 Tampilan Materi Lirik Pupuh.......................................................... 96 Gambar 4.25 Tampilan Materi Lirik Pupuh pada Menu Lirik.............................. 97 Gambar 4.26 Tampilan Login................................................................................ 97 Gambar 4.27 Tampilan Sub Menu Pupuh..............................................................98 Gambar 4.28 Tampilan Tambah Pupuh.................................................................98 Gambar 4.29 Tampilan Update Pupuh.................................................................. 99 Gambar 4.30 Tampilan Peringatan Penghapusan Pupuh.......................................99 Gambar 4.31 Tampilan Sub Menu Lirik Pupuh...................................................100 Gambar 4.32 Tampilan Preview Lirik Pupuh......................................................100 Gambar 4.33 Tampilan Tambah Lirik Pupuh......................................................101 Gambar 4.34 Tampilan Tambah User................................................................. 101 Gambar 4.35 Tampilan Ubah Password..............................................................101 Gambar 4.36 Diagram Aspek Ketertarikan Sistem..............................................106 Gambar 4.37 Diagram Hasil Tingkat Kemudahan Sistem...................................107 Gambar 4.38 Diagram Hasil Tingkat Kehandalan Sistem...................................108 Gambar 4.39 Diagram Hasil Aspek Pembelajaran.............................................. 110
xii
DAFTAR TABEL Tabel 2.1 Uger-Uger pada Pupuh.........................................................................20 Tabel 2.2 Karakter Pupuh...................................................................................... 21 Tabel 2.3 Karakter dalam Tanda Kurung Siku POSIX RegEx..............................26 Tabel 2.4 Karakter dalam Quantifier POSIX RegEx.............................................27 Tabel 2.5 Contoh Quantifier.................................................................................. 27 Tabel 2.6 Rentang Karakter yang Telah Ditetapkan..............................................27 Tabel 2.7 Fungsi POSIX RegEx............................................................................ 28 Tabel 2.8 Meta Karakter........................................................................................ 28 Tabel 2.9 Modifier................................................................................................. 29 Tabel 2.10 Fungsi PERL Compatible RegEx........................................................ 30 Tabel 4.1 Pengujian Pemenggalan Suku Kata....................................................... 59 Tabel 4.2 Tabel Perhitungan dengan Manhattan Distance....................................62 Tabel 4.3 Tabel Skor Pengujian Penentuan Pupuh................................................63 Tabel 4.4 Pengujian Pengenalan Pupuh.................................................................64 Tabel 4.5 Hasil Click Times dan Error (per URL)................................................ 87 Tabel 4.6 Tabel Jumlah Responden..................................................................... 103 Tabel 4.7 Hasil Penilaian Aspek Ketertarikan Pengguna.................................... 105 Tabel 4.8 Hasil Penilaian Aspek Kemudahan Sistem..........................................106 Tabel 4.9 Hasil Penilaian Aspek Kehandalan Sistem.......................................... 108 Tabel 4.10 Hasil Penilaian Aspek Pembelajaran................................................. 109
xiii
DAFTAR KODE PROGRAM Kode Program 4.1 Cek Vokal................................................................................55 Kode Program 4.2 Penentuan Pola KV..................................................................55 Kode Program 4.3 Penentuan Vokal Terakhir.......................................................55 Kode Program 4.4 Perbandingan Hasil..................................................................56 Kode Program 4.5 Pencarian Pupuh dengan Total Bait Terbesar......................... 57 Kode Program 4.6 Penentuan Bobot Jumlah Baris, Suku Kata, Vokal Terakhir.. 58 Kode Program 4.7 Perhitungan Manhattan Distance............................................ 58 Kode Program 4.8 Penentuan Skor dari Ketiga Aspek..........................................59
xiv