Anda di halaman 1dari 16

Penerapan Finite State Automata Pada Proses Peminjaman

Buku di Perpustakaan Universitas Kristen Satya Wacana

Artikel Ilmiah

Peneliti :
Raymond Elias Mauboy (672013158)
Prof. Ir. Danny Manongga, MS.c., Ph.D.

Program Studi Teknik Informatika


Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Mei 2017
ii
iii
iv
v
1. Pendahuluan

Perpustakaan adalah mencakup suatu ruangan, bagian dari gedung / bangunan


atau gedung tersendiri yang berisi buku-buku koleksi, yang diatur dan disusun
demikian rupa, sehingga mudah untuk dicari dan dipergunakan apabila sewaktu-
waktu diperlukan oleh pembaca [1].
Perpustakaan adalah kumpulan atau bangunan fisik sebagai tempat buku dikumpulkan
dan disusun menurut sistem tertentu atau keperluan pemakai [2].
Secara lebih konkrit perpustakaan dapat dirumuskan sebagai suatu unit kerja
dari sebuah lembaga pendidikan yang berupa tempat penyimpanan koleksi buku-buku
pustaka untuk menunjang proses pendidikan. Berdasarkan beberapa pengertian diatas,
dapat disimpulkan bahwa perpustakaan adalah tempat untuk mengembangkan
informasi dan pengetahuan yang dikelola oleh suatu lembaga pendidikan, sekaligus
sebagai sarana edukatif untuk membantu memperlancar cakrawala pendidik dan
peserta didik dalam kegiatan belajar mengajar.
Sejalan dengan perkembangan zaman, pengertian perpustakaan berubah secara
berangsur-angsur. Pada mulanya setiap ada kumpulan buku koleksi yang dikelola
secara rapi dan teratur disebut perpustakaan, tetapi karena adanya perkembangan
teknologi modern dalam usaha pelestarian dan pengembangan informasi.
Teori Bahasa dan Automata merupakan salah satu bagian ilmu komputer yang
didasari oleh model dan gagasan mendasar mengenai komputer. Sebagai keluaran dari
automata, bahasa memungkinkan penyampaian gagasan dan pemikiran manusia,
sedangkan sebagai ilmu yang juga mempelajari mengenai mesin abstrak, automata
dapat membaca input berupa string dari alphabet yang diberikan dari input file.
Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses
Peminjaman Buku di perpustakaan Universitas Kristen Satya Wacana,dimana proses
yang dilakukan di mulai dari peminjam mulai meminjam buku hingga berakhir
setelah peminjam mengembalikan buku Peminjaman Buku yang dilakukan adalah
untuk bagaimana peminjam melakukan peminjaman sebuah buku yang baik dan benar
sesuai yang aturanya telah di tetapkan oleh pihak kampus sendiri. Berdasarkan latar
belakang tersebut maka dilakukan penelitian yang menerapkan finite state automata
pada Proses Peminjaman Buku di Perpustakaan Universitas Kristen Satya Wacana.

2. Tinjauan Pustaka

Banyak penelitian tentang penerapan atau penggunaan Finite State Auotmata,


salah satu contoh penelitian dengan judul “Penerapan Finite State Automata Pada
Perangkat ajar ”, dimana membuat sebuah aplikasi untuk membantu mahasiswa agar
dapat dengan mudah mempelajari bahasa automata menggunakan aplikasi ajar [3].
Penelitian yang kedua tentang atau Penggunaan Finite State Automata, salah satu
contoh penelitian dengan judul „„Penerapan Finite State Automata Pada Pemetaan
Sistem Parkiran Kendaraan Motor di Kampus UKSW Salatiga”, aplikasi ini

6
mengajarkan bagaimana cara Finite state automata digunakan sebagai logika dasar
untuk melakukan pemetaan sistem parkiran kendaraan motor di kampus UKSW[4]
Penelitian yang ketiga tentang atau penggunann Finite State Automata, salah satu
contoh penelitian dengan judul “Implementasi Finite State Automata pada Aplikasi
Translator Latin ”, aplikasi untuk mengajarkan bagaimana cara belajar bahasa aksara
jawa menggunakan aplikasi yang dapat dipakai berbagai orang dan juga dapat
memperkenalkan pada orang lain tentang cara belajar bahasa akasara jawa [5].
Penelitian yang keempat berjudul “Perangkat Lunak Pengucapan Kata Bahasa
Indonesia Berdasarkan Pemenggalan Kata Dengan Finite State Automata”. Penelitian
ini menjelaskan tentang perancangan aplikasi yang menggunakan Finite State
Automata sebagai mesin abstrak yang akan mengenali dan memenggal kata dalam
kalimat, sesuai dengan kalimat yang diucapkan [6]
Berdasarkan penelitian yang pernah dilakukan terlebih dahulu maka dilakukan
penelitian yang membahas tentang penerapan finite state automata Pada Proses
Peminjaman buku di Universitas Kristen Satya Wacana.

Finite State Automata (FSA) disebut juga Finite Automata (FA) merupakan
suatu model matematika dari suatu sistem dan yang menerima input menghasilkan
output diskrit [7]. Finite State Automata memiliki state yang banyaknya berhingga
(terbatas), dan dapat berpindah-pindah dari satu state ke state lain. Perubahan state ini
dinyatakan dengan fungsi transisi. State adalah kondisi atau keadaan atau kedudukan.
Prinsip kerja Finite State Automata adalah sebagai berikut: (1) Menerima input string,
(2) Membaca (menyerap substring) karakter awal dengan kontrol berada pada state
awal, (3) Dengan kontrol dan karakter awal yang telah dibaca, state akan berpindah
ke state baru, (4) Proses berlanjut sampai semua string terserap habis, (5) Jika state
akhir yang ditempati saat string habis tersebut berada dalam himpunan final state
yang telah ditentukan, maka string tersebut diterima atau dikenali oleh Finite State
Automata tersebut. Jika tidak, maka string tersebut ditolak atau tidak dikenali oleh
Finite State Automata itu.
NDFA (Non Deterministic Finite Automata) adalah salah satu bagian dari automata
berhingga atau Finite State Automata (FSA). Pada Non Deterministic Finite Automata
(NFA) dimungkinkan satu simbol menimbulkan transisi ke lebih dari satu kondisi dan
memberikan beberapa kemungkinan gerakan sehingga keluarannya tidak dapat
dipastikan. Selain itu dimungkinkan juga terjadinya transisi spontan atau transisi –ε.
NDFA (Non Deterministic Finite Automata) didefenisikan sebagai M yang
merupakan sebuah koleksi dari 5 obyek (Q , Σ , s , F , ∆ ) dimana :
Q adalah sebuah himpunan hingga dari state.
Σ adalah sebuah abjad masukan.
s adalah salah satu kedudukan di dalam Q yang ditetapkan sebagai kedudukan
permulaan.
F adalah sebuah koleksi dari kedudukan-kedudukan yang diterima atau final (koleksi /
himpunan dari kondisi akhir).
∆ adalah sebuah relasi pada (Q x Σ) x Q dan dinamakan relasi transisi.
Salah satu rangkaian NDFA (Non Deterministic Finite Automata) terlihat pada
Gambar 1.

7
Gambar 1 Rangkaian NDFA (Non Deterministic Finite Automata) [6]

Rangkaian pada Gambar 1 tergolong dalam NDFA (Non Deterministic Finite


Automata) karena beberapa transisi yang berasal dari satu kondisi yaitu kondisi q0
memiliki input yang sama yaitu „a‟. Rangkaian tersebut akan menerima string ab, aab,
aabaab, aba, dan abaaba, tetapi tidak akan menerima string abb dan aabb.

3. Metode dan Perancangan

Tahapan Penelitian yang digunakan dalam penelitian ini dapat dibagi ke dalam 5
(lima) tahap yaitu: (1) tahap analisis kebutuhan, (2) tahap studi literatur, (3) tahap
perancangan sistem, (4) tahap pengujian sistem, (5) tahap penulisan laporan.

Analisi Kebutuhan dan

Pengumpulan Data

Perancangan Finite state


automata

Implementasi dan
Pengujian Finite state
automata

Penulisan Laporan

Gambar 2 Tahapan Penelitian

8
Tahapan Penelitian pada Gambar 2, dapat dijelaskan sebagai berikut, Tahap
Analisis Kebutuhan: Pada tahap ini dilakukan analisis terkait dengan sistem yang
dilakukan pada proses Peminjaman buku di perpustakaan Universitas Kristen Satya
Wacana; Tahap Studi Literatur: Dalam tahap ini dilakukan pengumpulan data dari
sumber-sumber mengenai pembahasan terkait penelitian tersebut; Tahap
Perancangan: Pada tahap ini akan dilakukan perancangan finite state automata
menggunakan NDFA (Non Deterministic Finite Automata); Tahap Pengujian Sistem:
Pada tahap terakhir ini dilakukan pengujian terhadap penerapan finite state automata
pada proses Peminjaman Buku di perpustakaan Universitas Kristen Satya Wacana
menggunakan NDFA (Non Deterministic Finite Automata) yang telah dibuat.
Pengujian dilakukan dengan evaluasi terhadap keseluruhan perancangan finite state
automata pada proses Peminjaman buku di perpustakaan Universitas Kristen Satya
Wacana menggunakan NDFA (Non Deterministic Finite Automata) yang telah dibuat;
Tahap Penulisan Laporan: Dalam tahap ini dilakukan penulisan laporan dari tahapan
penelitian yang dilakukan.

Gambar 3 Rancangan Proses Peminjaman Buku

9
Pada Gambar 3 terlihat proses peminjaman buku yang menampilkan segala
kemungkinan yang terjadi dalam proses peminjaman buku yang ditunjukan menggunakan
state/kondisi yang terjadi pada finite satate automata

4. Hasil dan Pembahasan

Rancangan state diagram pada pemetaan sistem proses peminjaman buku pada
perpustakaan Universitas Kristen Satya Wacana, lihat pada Gambar 4, yang menjelaskan
tentang proses peminjaman buku pada Universitas Kristen Satya Wacana berdasarkan
sistem atau tahap yang dilakukan oleh mahasiswa/i tersebut. Sistem atau tahap yang
dilakukan mahasiswa/i pada proses peminjaman buku pada Universitas Kristen Satya
Wacana, adalah sebagai berikut :

0. Form Pengunjung
1. Komputer
2. Cari Buku
3. Pegawai Perpustakaan
4. Batas Pengembalian Buku
5. Valid Thru
6. Bayar Denda
7. Pengembalian Buku
8. Rak Tempat Buku

Gambar 4 Diagram N-DFA Proses Peminjaman Buku


10
Secara formal N-DFA pada Gambar 4 dinyatakan dalam 5 tupel atau M=(Q, ∑, S, F, Δ),
artinya :
Q = himpunan state / kedudukan
∑ = himpunan simbol input / masukan / abjad
S = state awal / kedudukan awal ( initial state )
F = himpunan state akhir
Δ = relasi transisi

Keterangan dari Gambar 4 dengan menggunakan tupel, sebagai berikut:


Q= {Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8}
∑= {0,1}
S= {Q0}
F= {Q6,Q8}
Δ={((Q0,1)Q1),((Q0,0),Q0),((Q1,1)Q2),((Q1,0)Q1),((Q2,1)Q3),((Q2,0)Q1),((Q3,1),Q5),((Q5
,1)Q4),((Q5,0)Q3),((Q4,1)Q7),((Q4,0)Q6),((Q6,0)Q6),((Q6,1)Q7),((Q7,1)Q8).

Ada 8 (delapan) state yaitu user mengisi form pengunjung (S1) menuju computer (S2)
menuju pegawai perpustakaan (S3) menuju batas pengembalian buku (S4) Valid Thru (S5)
bayar denda (S6) pengembalian buku (S7) rak tempat buku (S8) sedangkan input yang ada
sebagai berikut : (0,1)

Tabel 3 Relasi Transisi Peminjaman Buku di Perpustakaan


∆ 0 1

Q0 Q0 Q1
Q1 Q1 Q2
Q2 Q1 Q3
Q3 Ø Q5
Q4 Q6 Q7
Q5 Q3 Q4
Q6 Q6 Q7
Q7 Ø Q8
Q8 Ø Ø

11
Algoritma Proses Peminjaman buku di perpustakaan Universitas Kristen Satya Wacana
adalah sebagai berikut :
1.Pengunjung atau user mengisi form pengunjung
2.Apabila pengunjung salah menginput data diri maka proses akan kembali meminta user mengisi form
pengunjung, jika benar maka proses akan dilanjutkan
3.Pengunjung melakukan pencarian buku
4.Apabilan pengunjung salah mencari buku maka proses kembali pada proses pencarian buku , jika
benar proses dilanjutkan
5.Pengunjung mengambil buku
6.Pengunjung menyerahkan buku kepada pegawai perpustakaan
7.Jika pengunjung mengembalikan buku lebih dari 30 hari maka peminjam dikenakan denda , jika
pengunjung mengembalikan buku tidak lewat dari batas pengemabalian buku maka proses dilanjutkan
8.Pengunjung mengembalikan buku kepada pegawai perpustakaan

Algoritma proses peminjaman buku didasarkan pada rancangan flowchart N-DFA . Algoritma
tersebut membantu user untuk membuat aplikasi atau program berdasarkan rancangan N-DFA
yang telah dibuat. Dan pada tahap selanjutnya adalah proses pembuatan pseudocode yang
digunakan sebagai acuan pembuatan aplikasi atau program
Kamus

Nama_peminjam,Data_peminjam,dan Pegawai_perpus = String

Start

Input Id_ pengunjung

Read Id_pengunjung

Input Nama_pengunjung

Read Nama_pengunjung

IF Pengunjung mencari buku THEN mencari buku

IF Pengunjung mengambil buku AND

IF Pengunjung menyerahkan Buku AND

IF Pengunjung menyerahkan THEN FOR 1…30 DO and

IF Pengunjung menyerahkan Buku THEN FOR 30…. AND bayar Denda

IF Menyerahkan Buku ke pegawai

end

Rancangan pseudocode merupakan sebuah gambaran konsep aplikasi yang


dibuat, berguna untuk membantu pegunjung dalam peminjaman buku dan
pengembalian buku sesuai aturan yang telah ditetapkan oleh pihak kampus

12
Kode Program 1 Perintah untuk menampilkan proses peminjaman buku

Kode Program 1 merupakan perintah yang digunakan untuk menginput data diri
pengunjung, data diri pengunjung yang dimasukan kedalam aplikasi yang dimasukan oleh
pengunjung berguna untuk aplikasi dalam menentukan pengunjung dapat meminjam buku
atau tidak .
Kode Program 2 Perintah untuk menampilkan proses pengembalian buku

13
Kode Program 2 merupakan perintah yang digunakan untuk menampilkan proses
pengembalian buku pada petugas. kemudian aplikasi akan menentukan pengunjung yang
dikenakan denda atau tidak pada saat proses peminjaman buku.
Program dibuat menggunakan bahasa pemograman java dan merupakan program
dengan tampilan console application. Konsep program dirancang berdasarkan proses
peminjaman buku di Kampus UKSW, yang dijalankan oleh pegawai perpustakaan

Gambar 5 Output Program

Gambar 5 adalah hasil output dari program yang dibuat. Input dilakukan secara
manual menggunakan keyboard oleh pengunjung perpustakaan, kemudian diproses sehingga
menampilkan buku mana saja yang dipinjam dan dikembalikan oleh pengunjung .
Tabel 4 Tabel analisis Pengujian dan Hasil

Start state Input State yang dilewati Final state Jumlah state Jumlah
yang dilewati input
Q0 1,0 Q1,Q2,Q3,Q5,Q4 Q6 5 6
Q0 0,1 Q1,Q2,Q3,Q5,Q4 Q6 5 12
Q0 1 Q1,Q2 Q8 2 3
Q0 1,0 Q1,Q2 Q8 2 7
Q0 1,€ Q1,Q2,Q3,Q5,Q4,Q7 Q8 5 6
Q0 1,€,0 Q1,Q2,Q3,Q5,Q4,Q6,Q7 Q8 6 13
Q0 1,0 Q1,Q2,Q3,Q5,Q4,Q6,Q7 Q6,Q8 7 8
Q0 1,0 Q1,Q2,Q3,Q5,Q4,Q6,Q7 Q6,Q8 7 15

Tabel 4 menjelaskan tentang analisis pengujian dan hasil dari konsep finite state
automata yang dibuat. Anilisis pengujian dan hasil pertama menunjukan, start state Q0
samapi final state Q6 melalui 5 state , yaitu state Q1,Q2,Q3,Q5,Q4, memiliki 2 input, yaitu
input 1,0. Anilisis pengujian dan hasil kedua menunujukan, start state Q0 sampai final state

14
Q6 melalui 5 state, yaitu state Q1,Q2,Q3,Q5,Q4 memiliki 2 input, yaitu input 1,0. Anilisis
pengujian dan hasil ketiga menunjukan, start state Q0 sampai final state Q8 , melalui 2 state,
yaitu state Q1 dan Q2 dan memiliki 1 input , yaitu 1 Anilisis pengujian dan hasil keempat
menunjukan, start state Q0 sampai final state Q8 melalui 2 state yaitu Q1 dan Q2, dan
memiliki 2 input, yaitu input 1,0. Anilisis pengujian dan hasil kelima menunjukan start state
Q0 sampai final state Q8 , melalui 6 state yaitu Q1,Q2,Q3,Q5,Q4,Q7 dan memiliki 2 input
yaitu 1, €. Anilisis pengujian dan hasil keenam menunjukan, start state Q0 sampai final state
Q8 , melalui 6 state yaitu Q1,Q2,Q3,Q5,Q4,Q7 dan memiliki 3 input yaitu 1,€,0. Anilisis
pengujian dan hasil ketujuh menunjukan, start state Q0 sampai final state Q6 dan Q8 ,
melalui 7 state yaitu Q1,Q2,Q3,Q5,Q4,Q6,Q7 dan memiliki 2 input yaitu 1,0. Anilisis
pengujian dan hasil kedelapan menunjukan , start state Q0 sampai final state Q6 dan Q8 ,
melalui 7 state yaitu Q1,Q2,Q3,Q5,Q4,Q6,Q7 dan memiliki 2 input yaitu 1,0.

5. Simpulan
Berdasarkan hasil penelitian, dan implementasi finite state automata pada pemetaan
proses peminjaman buku di perpustakaan Universitas Kristen Satya Wacana yang
dilakukan dapat diambil kesimpulan bahwa : (1) Finite state automata digunakan sebagai
logika dasar untuk melakukan pemetaan proses peminjaman buku di perpustakaan
Universitas Kristen Satya Wacana; (2) Pemetaan yang dilakukan adalah membagi tiap
proses ke dalam bentuk state sehingga memudahkan penyelesaian proses; (3) Algoritma
dan pseudocode merupakan gambaran aplikasi yang dibuat untuk menjelaskan proses
peminjaman buku di perpustakaan Universitas Kristen Satya Wacana

6. Daftar Pustaka

[1] Sutarno,NS,2006:11,.Pengertian,JenisdanTujuanPerpustakaan
http://www.kajianpustaka.com/2012/11/perpustakaan , (diakses tgl 30 Desember 2016
[2] Lasa,2007:12.,PengeritanPerpustakaan
http://www.kajianpustaka.com/2012/11/perpustakaan , (diakses tgl 30 desember
2016)
[3] Hamid, A., Marlindawati., Yulianingsih, E., 2015. „„Perangkat Ajar Finite State
Automata ”
[4] Pelupessy, J. A., Pakereng, M A I., November 2016. Penerapan Finite State Automata
Pada Pemetaan Sistem Parkiran Kendaraan Motor di Kampus UKSW Salatiga.
[5] Wabula, A. M., “Implementasi Finite State Automata Pada Aplikasi Translator
Latin- AksaraJawa”.
http://simki.unpkediri.ac.id/mahasiswa/file_artikel/2015/11.1.03.02.0236.pdf

[6] Kuswardayan, I., Tjahyanto, A., Siregar, K. M. S., 2005. Perangkat Lunak
Pengucapan Kata Bahasa Indonesia Berdasarkan Pemenggalan Kata Dengan Finite
State Automata. Insitute Teknologi Sepuluh Nopember.

15
[7] Sutopo, M., 2010, Non Deterministic Finite Automata
(NFA)(http://mursids.blogspot.co.id/2010/02/nondeterministic-finite-automata-
nfa.html, diakses tanggal 12 Desember 2016)

16

Anda mungkin juga menyukai