BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. dirancang dan selanjutnya dapat diketahui gambaran dan kemampuan sistem secara

dokumen-dokumen yang mirip
BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. dengan perangkat yang digunakan. Beberapa kriteria standar ditentukan agar sistem

BAB 1 PENDAHULUAN. sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat dengan

MODUL 4: Nondeterministic Finite Automata

TEORI BAHASA DAN AUTOMATA

NonDeterministic Finite Automata. B.Very Christioko, S.Kom

TEORI BAHASA DAN AUTOMATA

PEMODELAN PERANGKAT LUNAK UNTUK PENGERTIAN DETERMINISTIC FINITE AUTOMATA DAN NON-DETERMINISTIC FINITE AUTOMATA

TEORI BAHASA DAN AUTOMATA

FINITE STATE AUTOMATA

INTELLIGENT DECISION SUPPORT SYSTEM DALAM MENDETEKSI BEHAVIOUR SIRKUIT LOGIKA

Teori Bahasa Formal dan Automata

Reduksi DFA [Deterministic Finite Automata]

FINITE STATE MACHINE / AUTOMATA

MODUL 5: Nondeterministic Finite Automata dengan

Teori Bahasa Formal dan Automata

BAB I PENDAHULUAN 1-1

1. Pendahuluan. 2. Tinjauan Pustaka

MODUL 6: TEOREMA KLEENE

MODUL 3: Finite Automata

TEORI BAHASA DAN AUTOMATA

Penerapan Finite State Automata Pada Proses Peminjaman Buku di Perpustakaan Universitas Kristen Satya Wacana Artikel Ilmiah

Teori Komputasi 11/2/2016. Bab 5: Otomata (Automata) Hingga. Otomata (Automata) Hingga. Otomata (Automata) Hingga

Deterministic Finite Automata

Teori Bahasa Formal dan Automata

PERTEMUAN II. Finite State Automata (FSA) Deterministic Finite Automata (DFA) Non Deterministic Finite Automata (NFA)

TEORI BAHASA DAN OTOMATA PENGANTAR

TEORI BAHASA DAN AUTOMATA

Pendahuluan [6] FINITE STATE AUTOMATA. Hubungan RE & FSA [5] Finite State Diagram [6] 4/27/2011 IF-UTAMA 1

TEORI BAHASA DAN OTOMATA [TBO]

TUGAS MAKALAH TEORI BAHASA & AUTOMATA

Non-Deterministic Finite Automata

BAB III ANALISIS DAN PERANCANGAN

Non-deterministic Finite Automata Dengan -Move

TEORI BAHASA DAN OTOMATA [TBO]

Teori Bahasa dan Automata. Finite State Automata & Non Finite State Automata

Lecture Notes Teori Bahasa dan Automata

Teori Bahasa dan Otomata

DFA. Teori Bahasa dan Automata. Viska Mutiawani - Informatika FMIPA Unsyiah

PENDAHULUAN. Terdapat tiga topik utama di teori otomata yaitu:

DAFTAR ISI. Abstraksi... Kata Pengantar... Daftar Isi... Daftar Tabel... Daftar Gambar... Daftar Lampiran... BAB I PENDAHULUAN...

Penerapan Graf Transisi dalam Mendefinisikan Bahasa Formal

ABSTRAK. Universitas Kristen Maranatha

Finite State Machine dapat berupa suatu mesin yang tidak memiliki output. Finite State Machine yang tidak mengeluarkan output ini dikenal

1, 2, 3

Sebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state

BAB 2 TINJAUAN PUSTAKA

PERTEMUAN 9 TEORI BAHASA DAN OTOMATA [TBO]

Tanggal Revisi : Tanggal : SATUAN ACARA PERKULIAHAN

Contents.

TEORI BAHASA DAN OTOMATA [TBO]

4/18/14 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

TEORI BAHASA DAN AUTOMATA

BAB IV PERANCANGAN 4.1 Perancangan Arsitektur Sistem Kebutuhan Perangkat Lunak Tabel 4.1

Teori Bahasa & Otomata

Aplikasi Simulator Mesin Turing Pita Tunggal

BAB III ANALISA DAN PERANCANGAN SISTEM

serta semua kebutuhan pengguna ( user) ada di program tersebut dan mudah dalam

Operasi FA dan Regular Expression

Grammar dan Tingkat Bahasa

Teknik Kompiler 5. oleh: antonius rachmat c, s.kom, m.cs

Komponen sebuah Kompilator

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Kegiatan analisis sistem yang berjalan dilakukan dengan analisis yang

TEKNIK KOMPILASI Bahasa Regular

BAB III ANALISA DAN PERANCANGAN. menampilkan teks - teks serta terdapat kuis dengan animasi untuk melatih para

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Untuk membuat sistem perlu dilakukan analisa sistem tersebut sehingga dapat

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

TEKNIK PENGUJIAN PERANGKAT LUNAK (Software Testing Techniques)

EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA

Teori Bahasa & Otomata

BAB III LANDASAN TEORI. waktu berdasarkan rencana pengaturan urutan kerja, daftar atau tabel kegiatan

BAB III ANALISIS DAN PERANCANGAN. Perancangan game mencocokkan gambar ini dibuat agar dapat berjalan

PERANCANGAN PROGRAM. struktur/hirarki menu, State Transition Diagram (STD), modul dan pseudocode, serta

IF-UTAMA 1. Definisi. Grammar. Definisi

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013

Teknik Pengujian (2) Whitebox Testing

Teori Bahasa dan Otomata 1

BAB IV HASIL DAN UJI COBA

BAB III METODOLOGI PENELITIAN. tools yang akan digunakan untuk merancang aplikasi generator denah

MODUL 7: MINIMISASI FA

Diagram Use Case. Pertemuan 3

1BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB III ANALISIS DAN DESAIN SISTEM

TEKNIK KOMPILASI Konsep & Notasi Bahasa

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran


TEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA) PERTEMUAN IX Y A N I S U G I Y A N I

Definisi Black Box. pemenuhan sistem atau komponen dengan kebutuhan fungsional tertentu. q Menurut Myers (1979) :

Nama : Rendi Setiawan Nim :

LAMPIRAN 1. Listing Program

PENDEKATAN TEORI AUTOMATA UNTUK MENYELESAIKAN APLIKASI-APLIKASI DI BIDANG ILMU KECERDASAN BUATAN

TEORI BAHASA DAN AUTOMATA

Lecture Notes Teori Bahasa dan Automata

White Box Testing dan Black Box Testing, Perbedaannya Serta Contohnya.

Pendahuluan. Push Down Atomata. Perbedaan FA dan PDA [7] 4/25/2012 IF-UTAMA 1. Grammar-machine equivalence [3] Latar belakang munculnya konsep PDA

BAB II LANDASAN TEORI

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III LANDASAN TEORI. keinginan pemebeli, guna mendapatkan penjualan yang menghasilkan laba

BAB III ANALISIS DAN DESAIN SISTEM

Transkripsi:

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM 3.1 Analisis Kebutuhan Sistem Analisis kebutuhan sistem merepresentasikan daftar kebutuhan sistem yang akan dirancang dan selanjutnya dapat diketahui gambaran dan kemampuan sistem secara umum dan batasannya. Berikut ini adalah kebutuhan-kebutuhan aplikasi yang meliputi analisis kebutuhan fungsional yang berkaitan langsung dengan alur kerja sistem dan analisis kebutuan non-fungsional sistem. 3.1.1 Kebutuhan Fungsional Kebutuhan fungsional merupakan kebutuhan akan proses-proses yang akan dilakukan oleh sistem. Kebutuhan fungsional sistem ini adalah sebagai berikut : 1. Pengguna memilih automaton apakan yang ingin dibuat. 2. Pengguna dapat menggambarkan diagram transisi DFA atau NFA. 3. Sistem dapat menampilkan matriks transisi dari diagram transisi DFA atau NFA yang telah dibuat. 4. Pengguna dapat memasukkan inputan string untuk diuji dari diagram transisi DFA atau NFA yang telah dibuat. 5. Sistem dapat membedakan inputan string yang tidak cocok dengan link string dari diagram transisi DFA atau NFA yang diberikan oleh pengguna.

45 6. Sistem dapat melakukan pengujian inputan string, apakah dapat diterima atau tidak. 7. Sistem dapat melakukan transformasi dari diagram transisi NFA ke DFA. 3.1.2 Kebutuhan Non-Fungsional Kebutuhan non-fungsional merupakan kebutuhan yang menitikberatkan pada properti prilaku yang dimiliki oleh sistem. Kebutuhan non-fungsional untuk sistem ini adalah sebagai berikut : 1. Dari segi operasional : Sistem ini hanya dapat berjalan di berbagai sistem operasi yang sudah terpasang Java Runtime Environment (JRE). 2. Dari segi keamanan : Sistem ini dilengkapi dengan penyimpanan data, sehingga data automaton dapat dipelajari kembali. 3. Dari segi kinerja : Waktu untuk melakukan pengujian inputan string dan melakukan tranformasi dari NFA ke DFA lebih cepat dan tepat. 3.2 Rancangan Sistem Sistem yang akan dibuat dirancang sedemkian rupa agar menghasilkan sebuah aplikasi yang mudah digunakan oleh pengguna, serta dapat memberikan hasil keluaran yang jelas dan mudah dipahami bagi pengguna program aplikasi tersebut. Keluarankeluaran yang dihasilkan seperti : o Language (Ekspresi Regular). Adalah ekspresi yang dapat dibuat lebih sederhana lagi dengan ekspresi yang mirip dengan ekspresi arimatis yang memiliki aturan :

46 Ganti setiap { dengan (. Ganti setiap } dengan ). Ganti dengan +. Contoh : Tabel 3.1 Ekspresi Regular Bahasa Ekspresi Regular {} {0} 0 {001} 001 {0,1} 0 + 1 {0,10} 0 + 10 {1, }{001} (1 + ) 001 {110}*{0,1} (110)*(0 + 1) {1}*{10} 1*10 {10, 111, 11010}* (10 + 111 + 11010)* {0,10}*({11}* {001, }) (0 + 10)*((11)* + 001 + ) o Matriks Transisi. Adalah tabel dua dimensi di mana nilai menggambarkan kesimpulan dari diagram transisi, index pada baris menyatakan semua state dan index pada kolom menyatakan simbol yang mungkin muncul. o Diagram Transisi. Adalah graph berarah, di mana verteksnya merupakan state dari FA. Jika terdapat transisi dari state q ke state p dengan input a, maka busur dari q ke p adalah a. FA menerima strinf x, jika urutan sekumpulan transisi ke symbol x yang dimulai dari state awal ke state akhir. Simbolsimbol yang digunakan dalam diagram transisi adalah :

47 Tabel 3.2 Tabel Simbol Diagram Transisi o Fungsi Transisi (δ). Adalah representasi matematis atas transisi keadaan. Σ = himpunan alfabet. Q = himpunan keadaan-keadaan. δ = Q x Σ Q 3.2.1 RancanganTampilan Rancangan pertama dari program aplikasi ini saat pertama kali dijalankan yaitu tampilan halaman yang menampilkan 8 menu di mana menu kesatu sampai ketujuh merupakan modul yang telah dibuat dari skripsi sebelumnya. Untuk itu, pengguna harus memilih menu kedelapan untuk menjalankan program aplikasi yang penulis buat untuk skripsi ini. Di sini pengguna harus memilih apakah pengguna ingin membuat DFA atau NFA terlebih dahulu agar instruksi yang dijalankan tidak menjadi rancu, yang kemudian pengguna dapat menggambarkan diagram transisinya sesuai dengan pilihannya. Berikut merupakan rancangan tampilan awal aplikasi yang penulis buat untuk skripsi ini, setelah pengguna memilih menu kedelapan. seperti yang ditunjukkan pada gambar 3.1 berikut :

48 Gambar 3.1 Rancangan Tampilan Awal Aplikasi Pada rancangan kedua, setelah pengguna memilih apakah pengguna ingin membuat DFA atau NFA, di mana dalam hal ini pengguna memilih ingin membuat DFA, yang kemudian pengguna dapat menggambarkan diagram transisi DFA sesuai dengan keinginan pengguna. Berikut merupakan rancangan tampilan untuk menggambarkan diagram transisi DFA, seperti yang ditunjukkan pada gambar 3.2 :

49 Gambar 3.2 Rancangan Tampilan Untuk menggambarkan Diagram Transisi DFA Pada rancangan ketiga, setelah pengguna menggambarkan diagram transisi DFA, kemudian pengguna dapat memasukkan inputan string sesuai dengan keinginan pengguna. Hal ini digunakan untuk menguji apakah inputan string yang dimasukkan oleh pengguna tersebut dapat diterima atau tidak oleh sistem. Berikut merupakan rancangan tampilan untuk pengujian string pada DFA, seperti yang ditunjukkan pada gambar 3.3 berikut :

50 Gambar 3.3 Rancangan Tampilan Untuk Pengujian Inputan String Pada DFA Pada rancangan keempat, setelah pengguna memilih apakah pengguna ingin membuat DFA atau NFA, di mana dalam hal ini pengguna memilih optional NFA, kemudian pengguna dapat menggambarkan diagram transisi NFA sesuai dengan keinginan pengguna. Berikut merupakan rancangan tampilan untuk menggambarkan diagram transisi DFA, seperti yang ditunjukkan pada gambar 3.4 :

51 Gambar 3.4 Rancangan Tampilan Untuk menggambarkan Diagram Transisi NFA Pada rancangan kelima, setelah pengguna menggambarkan diagram transisi NFA, kemudian pengguna dapat memasukkan inputan string sesuai dengan keinginan pengguna. Hal ini digunakan untuk menguji apakah inputan string yang dimasukkan oleh pengguna tersebut dapat diterima atau tidak oleh sistem. Berikut merupakan rancangan tampilan untuk pengujian string pada NFA, seperti yang ditunjukkan pada gambar 3.5 berikut :

52 Gambar 3.5 Rancangan Tampilan Untuk Pengujian Inputan String Pada NFA Pada rancangan keenam, pengguna dapat langsung melakukan transformasi dari NFA ke DFA atau pengguna dapat juga melakukan transformasi dari NFA ke DFA setelah pengguna melakukan pengujian string pada diagram transisi NFA. Di sini juga sistem dapat melakukan pengujian string setelah diagram transisi NFA bertransformasi menjadi DFA. Berikut merupakan rancangan tampilan untuk hasil transformasi dari NFA ke DFA, seperti yang ditunjukkan pada gambar 3.6 dibawah ini :

53 Gambar 3.6 Rancangan Tampilan Hasil Tranformasi NFA ke DFA 3.2.2 Skema Rancangan Sistem Berikut akan dijelaskan mengenai skema perancangan program aplikasi beserta dengan modul-modulnya yang dibuat dalam bentuk flow chart dan Use Case Diagram yang berguna sebagai proses penggambaran program aplikasi dari dalam hal membuat diagram transisi deterministik finite automata (DFA) ataupun non-deterministik finite automata (NFA), pengujian string pada diagram transisi DFA ataupun diagram transisi NFA hingga diagram transisi NFA yang dapat melakukan transformasi menjadi diagram transisi DFA :

54 A. Flow Chart Program Utama MULAI TIDAK Memilih DFA atau NFA TIDAK IF pilih = DFA IF pilih = NFA YA YA Menggambar diagram transisi DFA Menggambar diagram transisi NFA Melakukan transformasi NFA ke DFA Menginput string YA IF String mencapai final state TIDAK String diterima String ditolak YA Diulang? TIDAK SELESAI Gambar 3.7 Flow Chart Program Utama

55 Gambar 3.7 di atas menunjukkan alur kerja keseluruhan dalam program yang disertakan dengan alur kontrol berjalannya modul-modul pada program aplikasi secara garis besar beserta dengan kondisi-kondisi yang perlu dipenuhi agar suatu modul spesifik dapat berjalan. B. Use Cases Diagram Program Pengujian Jalankan program user interface dengan memilih menu nomor 8 Memilih automaton apakah DFA atau NFA Menggambarkan Diagram Transisi DFA atau NFA Menginput String untuk diuji apakah string tersebut diterima atau tidak Melakukan tranformasi dari diagram transisi NFA ke DFA Gambar 3.8 Use Cases Diagram untuk program pengujian Gambar 3.8 menunjukkan kemungkinan interaksi yang bias dilakukan pengguna dengan sistem program aplikasi. Kemungkinan-kemungkinan ini disajikan dalam bentuk Use Cases Diagram.