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
6
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
7
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
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.
8
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 inputyang sama yaitu „a‟. Rangkaiantersebut 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.
Gambar 2 Tahapan Penelitian
Analisi Kebutuhan dan
Pengumpulan Data
Perancangan Finite state automata
Implementasi dan Pengujian Finite state
automata
9
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.
10
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
11
Keterangan dari Gambar 4 dengan menggunakan tupel, sebagai berikut:
Q = {Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8}
∑ = {0,1} 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
12
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 flowchartN-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
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
13
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 .
14
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 yang dilewati
15
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
16
[7] Sutopo, M., 2010, Non Deterministic Finite Automata