• Tidak ada hasil yang ditemukan

Aplikasi Penyederhanaan Context Free Grammar

N/A
N/A
Protected

Academic year: 2021

Membagikan "Aplikasi Penyederhanaan Context Free Grammar"

Copied!
6
0
0

Teks penuh

(1)

Aplikasi Penyederhanaan Context Free Grammar

1Rico Andrian, 2Wamiliana, 3Andriyan Hutomo

1Jurusan Ilmu Komputer FMIPA Unila 2Jurusan Matematika FMIPA Unila 3Jurusan Ilmu Komputer FMIPA Unila

Abstract

This research is done by making an application to simplify Context Free Grammar (CFG). The process of making the application starts from designing the algorithm using eXtreme Programming method as system development methods until get the application to simplify Context Free Grammar (CFG). The testing method to test the application is Black Box Testing. The result shows that the application can simplify Context Free Grammar smoothly, and how to simplify Context Free Grammar step by step. Context Free Grammar (CFG) simplification has three stages, eliminating espsilon production, eliminating unit production and eliminating useless production, those three stages must be done sequentially.

Keyword : Black Box Testing, Context Free Grammar, eXtreme Programming, Simplification.

1 Pendahuluan

Teori bahasa automata merupakan salah satu teori komputasi pada Ilmu Komputer. Teori bahasa automata dapat dijadikan suatu gagasan mendasar dalam komputasi yang menjadi tools untuk mengenali suatu persoalan atau masalah karena dapat memberikan konsep dan prinsip untuk suaru permasalahan yang berkolerasi dengan bidang Ilmu Komputer. Teori bahasa automata memiliki empat tipe grammar yang disebut dengan Hirarki Chomsky, yaitu Unrestricted Grammar (UG),

Context Sensitive Grammar (CSG), Context Free Grammar (CFG), dan Regular Grammar (RG)[1]. Context free Grammar atau tata bahasa bebas konteks adalah kumpulan berhingga dari

variabel-variabel biasa yang disebut non terminal. Variabel tersebut merepresentasikan suatu bahasa. Bahasa yang direpresentasikan oleh non terminal dideskripsikan secara rekursif, dimana tiap simbol primitive disebut terminal. Aturan-aturan yang berhubungan dengan non terminal disebut produksi[2]. CFG dalam penggunaannya membutuhkan perlakuan seperti penyederhanaan dan perubahan bentuk. CFG sebelum dirubah ke dalam bentuk normal Chomsky harus melalui proses penyederhanaan. Proses penyederhanaan CFG ada tiga tahapan yaitu penghilangan produksi unit, useless dan epsilon (produksi kosong).

Penyederhanaan CFG sering menemui kendala seperti banyaknya aturan produksi yang membuat penyederhanaan CFG menjadi sulit. Kesulitan dalam penyederhanaan tersebut menarik untuk dibuat aplikasi yang dapat menyederhanakan CFG. Aplikasi yang dibuat dapat melakukan proses penyederhanaan CFG dan menampilkan langkah penyederhanaannya. Hasil yang didapat adalah CFG yang sudah disederhanakan.

2 Metode Pengembangan Sistem

Aplikasi Penyederhanaan Grammar ini dikembangkan menggunakan metode Extreme Programming (XP). Penelitian ini tidak menggunakan seluruh tahapan dalam XP karena aplikasi yang

(2)

Gambar 1. Tahapan Metode Pengembangan sistem

2.1 Planning Game

Planning game merupakan tahap menentukan kebutuhan aplikasi. Pengembang bertemu dengan client

dan membahas seperti apa aplikasi yang diinginkan oleh client pada tahapan ini. Tahap ini dilakukan secara intensif hingga pengembang dan client memiliki pandangan yang sama tentang aplikasi yang dibuat[3]. Pembuatan algoritma untuk menyederhanakan Context Free Grammar merupakan salah satu proses yang dikerjakan dalam tahapan planning game

2.2 Refactoring

Proses penulisan kode dalam membuat aplikasi penyederhanaan grammar ini menggunakan proses refactoring. Proses refactoring adalah proses untuk meningkatkan cara penulisan program namun tidak merubah proses dari program tersebut[3].

2.3 Simple Design

Tahap ini merupakan tahap pembuatan desain. Desain yang dibuat untuk aplikasi ini berupa desain sederhana dimana semua button diberi nama dengan jelas sehingga memudahkan client dalam menggunakannya[3]. Aplikasi ini pada dasarnya digunakan oleh banyak pihak karena aplikasi ini dihosting ke dalam laman web.

2.4 Small Release

Pembuatan aplikasi dipecah menjadi empat tahapan. Tujuan dari dilakukannya release berkala adalah untuk menghindari error yang bertumpuk apabila program dikeluarkan langsung secara utuh[3].

XP

Penyederhanaan CFG

Planning Game

Aplikasi Penyederhanaan CFG Pengujian

Refactoring

Small Release Simple Design

(3)

Tabel 1. Tahapan Small Release

Release ke- Fungsi Tercapai

Release 1 Aplikasi dapat menghilangkan produksi epsilon serta menampilkan prosesnya

Release 2 Aplikasi dapat menghilangkan produksi epsilon dan produksi

unit serta menampilkan prosesnya

Release 3 Aplikasi dapat menghilangkan produksi epsilon, produksi unit dan produksi useless dan menampilkan hasil akhir serta proses pengerjaan.

Release 4 Aplikasi dapat menghilangkan produksi epsilon, produksi unit dan produksi useless dan menampilkan hasil akhir serta proses pengerjaan dan memiliki tampilan yang memadai bagi pengguna.

2.5 Pengujian

Sistem yang telah selesai dibangun melalui tahap pengkodean, kemudian diuji. Pengujian sistem dilakukan langsung kepada pengguna untuk mengetahui apakah sistem yang dibuat telah memenuhi kebutuhan pengguna atau belum. Pengujian sistem menggunakan metode black box testing.

3 Implementasi dan Hasil

Implementasi dan hasil dari pembuatan aplikasi penyederhanaan Context Free Grammar yaitu sebagai berikut.

3.1 Laman Pengenalan

Laman pengenalan merupakan laman yang berisi ketentuan aplikasi. Laman ini mengenalkan pengguna tentang CFG dan pengenalan bentuk simbol epsilon yang digunakan dalam aplikasi. Simbol

epsilon pada aplikasi berupa tanda ^ bukan ε. Laman Pengenalan dapat dilihat pada Gambar 2 berikut

(4)

3.2 Laman Penyederhanaan CFG

Laman Ini merupakan laman inti dari aplikasi penyederhanaan CFG. Laman ini berisi field untuk memasukkan jumlah produksi yang akan dimasukkan, aturan produksinya dan menampilkan hasil penyederhanaan serta langkah-langkahnya.

Laman Aturan Produksi

Antarmuka ini menampilkan jumlah field aturan produksi sesuai yang diinginkan oleh pengguna. Antarmuka untuk menampilkan field aturan produksi dapat dilihat pada Gambar 3 berikut ini.

Gambar 3. Menampilkan field aturan produksi

Kotak Peringatan

Kotak peringatan akan kuncul apabila jumlah produksi yang dimasukkan masih salah. Kotak Peringatan dapat dilihat pada Gambar 4 berikut ini.

Gambar 4. Kotak Peringatan

Laman Hasil Penyederhanaan CFG

Laman hasil merupakan laman yang menampilkan hasil akhir dari penyederhanaan CFG. Tampilan laman hasil ditunjukan pada Gambar 5 berikut:

(5)

Gambar 5. Laman Hasil

3.3 Pengujian

Tahap ini adalah tahapan pengujian terhadap aplikasi yang telah dikembangkan. Pengujian ini bertujuan mencari kesalahan – kesalahan pada aplikasi. Aplikasi harus benar – benar sesuai dengan kebutuhan pelanggan.

Tabel 2. Hasil Pengujian Fungsional Fungsional

No

Kebutuhan Fungsional Hasil

1. Aplikasi dapat mengecek apakah jumlah produksi yang dimasukkan bukan karakter lain selain angka.

Baik 2. Aplikasi dapat menampilkan informasi bentuk Context

Free Grammar

Baik 3. Aplikasi dapat menampilkan seluruh proses yang

terjadi dari aturan Context Free Grammar yang belum disederhanakan sampai Context Free Grammar yang sudah disederhanakan.

Baik

4. Aplikasi dapat menampilkan seluruh hasil Context

Free Grammar yang telah didapat.

(6)

4. Kesimpulan

Kesimpulan yang diperoleh dari penelitian ini adalah ;

1. Penyederhanaan Context Free Grammar memiliki tiga proses yang harus dilakukan secara berurut yaitu, penghilangan produksi epsilon, produksi unit, dan produksi useless.

2. Setiap produksi unit yang selesai di subtitusi akan dihasilkan produksi useless.

5. Referensi

[1]Chomsky, Noam. 1959. On Certain Formal Properties Of Grammar. MIT:New Jersey.

[2] Utdirartatmo, Firrar. 2005. Teori Bahasa Automata. Graha Ilmu: Yogyakarta.

Gambar

Gambar 1. Tahapan Metode Pengembangan sistem  2.1 Planning Game
Tabel 1. Tahapan Small Release
Gambar 4. Kotak Peringatan  Laman Hasil Penyederhanaan CFG
Gambar 5. Laman Hasil  3.3 Pengujian

Referensi

Dokumen terkait

Kurikulum Tingkat Satuan Pendidikan adalah kurikulum operasional yang disusun dan dilaksanakan oleh tiap satuan pendidikan yang berfungsi sebagai pedoman penyelenggaraan

7 Kegunaan penilaian dalam proses pendidikan adalah untuk mengetahui seberapa jauh siswa telah menguasai tujuan pelajaran yang telah ditetapkan, juga dapat

Terbungkus yang selanjutnya disebut retribusi, adalah retribusi yang dipungut oleh daerah sebagai pembayaran atas Pelayanan Tera, tera ulang dan Kalibrasi Alat- alat,

Pencemaran nama baik dapat dijatuhkan sanksi ketika seseorang dapat dimintai pertanggungjawaban atas perbuatannya, dalam syari‟at Islam pertanggungjawaban didasarkan

Kata nama khas hendaklah diromanisasikan dengan mengambil kira penggunaan huruf besar seperti kaedah ejaan Bahasa Melayu.. Al-F

Dari kenyataan diatas, penelitian ini bertujuan mengetahui letak dan faktor penyebab kesalahan peserta didik kelas VII SMP N 24 Semarang dalam menyelesaikan soal pemecahan

Setelah dilakukan penelitian ini, saran yang dapat diberikan kepada responden adalah sebagai berikut: Responden dapat mencari informasi tentang cara

Hasil dari kajian ini dapat digunakan untuk memberikan informasi guna menemukan metode meliputi jenis isolat, jenis media serta kondisi yang terbaik dan sesuai untuk