• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2022

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

Copied!
12
0
0

Teks penuh

(1)

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.

(2)

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. Keluaran- keluaran 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 :

(3)

• 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 :

(4)

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 :

(5)

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 :

(6)

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 :

(7)

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 :

(8)

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 :

(9)

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 :

(10)

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 :

(11)

A. Flow Chart Program Utama

Gambar 3.7 Flow Chart Program Utama MULAI

Memilih DFA atau NFA

IF pilih = NFA

TIDAK TIDAK

IF pilih = DFA

YA YA

Menggambar diagram transisi DFA

Menggambar diagram transisi NFA

Melakukan transformasi NFA ke DFA

Menginput string

IF String mencapai final state

YA TIDAK

String diterima String ditolak

YA Diulang ?

TIDAK

SELESAI

(12)

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

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.

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

Tabel 3.1 Ekspresi Regular
Tabel 3.2 Tabel Simbol Diagram Transisi
Gambar 3.1 Rancangan Tampilan Awal Aplikasi
Gambar 3.2 Rancangan Tampilan Untuk menggambarkan Diagram Transisi DFA
+7

Referensi

Dokumen terkait

• Compare to female respondents, male respondents were more frequently conduct speed violations, high speed violations, stunts, stopping errors/ violations and motorcycle carrying

Oleh karena itu sebagai orang tua (ayah atau ibu atau kedua-duanya) untuk memenuhi kebutuhan keluarga ada yang bekerja mencari nafkah sampai ke luar negeri

Dari hasil penelitan yang dilakukan bahwa pemanfaatan tanah sawah gadai yang terjadi dalam praktek gadai tanah di dalam masyarakat Desa Bajur Kecamatan Waru Kabupaten

Beberapa kesimpulan yang didapatkan setelah melakukan uji coba terhadap metode yang diusulkan adalah se- bagai berikut: (1) Perbaikan pembuluh darah tipis atau Thin Vessel Enhancement

Penganut agama yang taat dan fanatistik menjalankan agamanya secara baik dan benar, disebabkan pengaruh kepercayaannya terhadap dirinya dapat menimbulkan

Hal ini berbeda dengan Dahrendorf yang menyatakan bahwa sumber konflik itu berasal dari hubungan otoritas yang telah terlembaga antara pihak yang berkuasa dan yang

Dari pemaparan diatas, penulis melihat bahwa hubungan antara partai politik dengan konstituen (masyarakat) di akar rumput (grass root) atau pengakaran partai

Hubungan antara Sumber Informasi Kesehatan Reproduksi, Pengetahuan dan Karakteristik Sosial Demografi Dengan Perilaku Seksual Pranikah Remaja (Analisis Data SDKI