BAB III
ANALISIS DAN RANCANGAN PROGRAM
III.1. Analisis Masalah
Pada sistem perpustakaan terdapat beberapa masalah yang sedang berjalan yang menjelaskan tentang pengembalian dan penerimaan buku yang ada diperpustakaan tersebut yang dialami seorang user. Sistem tersebut, para pengguna akan mencari informasi dari sumber pengetahuan seperti sesama pengguna, buku serta majalah tentang pengambilan dan peminjaman buku di perpustakaan. Namun diprakteknya masih ada saja user yang tidak selalu mengembalikan tidak tepat waktu hal hasilnya dikenakan denda.
III.1.1. Analisa Input
Pada sistem yang berjalan, belum ada sistem informasi perpustakaan tentang peminjaman dan pengembalian buku berbasis web menggunakan client server berbasis komputer sebagai tempat untuk mengetahui informasi user dan buku yang tersedia, sehingga user yang ingin mencari buku tersebut sangat susah dan terlalu lama.
III.1.2. Analisa Proses
Analisa proses memberikan penjelasan berupa FOD (flow of document) mengenai struktur dalam pembuatan aplikasi tentang sistem informasi perpustakaan berbasis web tersebut.
Gambar III.1. Flow of Document Perpustakaan
Berikut merupakan penjelasan dari flow of document tersebut diatas adalah sebagai berikut :
1. Anggota membawa kartu anggota.
2. Anggota membawa buku yang akan dipinjam dan menyerahkan kartu anggota ke bagian sirkulasi.
3. Bagian sirkulasi mendata identitas anggota dan buku yang akan dipinjam ke dalam buku harian pengembalian, apabila terjadi keterlambatan pengembalian
Kartu Anggota
Kartu Anggota
User Sirkulasi Kepala Perpustakaan
Buku Buku Pendataan Peminjaman dan Pembuatan Laporan
Buku Harian Peminjaman Laporan Peminjaman
Kartu Anggota Buku
Laporan Peminjaman
4. Setelah pendataan selesai bagian sirkulasi mengembalikan kartu anggota. 5. Bagian sirkulasi membuat laporan data sirkulasi peminjaman yang nantinya
diserahkan kepada kepala perpustakaan
III.1.3. Analisa Output
Keluaran atau output data dari sistem yang sedang berjalan setelah diinput dan diproses akan ditampilkan hasilnya dalam bentuk output. Adapun sebagai output dari proses yang dilakukan adalah hasil analisa tentang sistem informasi perpustakaan.
III.2. Evaluasi Sistem Yang Berjalan
Berdasarkan analisa diatas maka penulis telah melakukan evaluasi dari sistem yang berjalan dan penulis menemukan kelemahan sistem yang ada. Adapun kelemahan tersebut seperti: kurang efektifnya dokumentasi yang menyebabkan redudansi data buku yang terdapat pada perpustakaan serta pengolahan data yang membutuhkan banyak proses dan banyak memakan banyak waktu dalam hal penyajian informasi jika sewaktu-waktu dibutuhkan. Demikian juga dalam pengaksesan informasi seputar buku yang akan dipinjam.
Dengan melihat uraian diatas penulis memberikan suatu solusi yang diharapkan dapat mengatasi kelemahan sistem yang ada. Adapun solusi yang ditawarkan adalah sistem informasi perpustakaan berbasis client server. Sistem informasi perpustakaan berbasis client server adalah salah satu alat yang diyakini mampu memberikan kontribusi positif dalam meningkatkan mutu dan layanan informasi perpustakaan.
III.3. Desain Sistem
Setelah tahapan analisis sistem, maka selanjutnya dibuat suatu rancangan sistem. Perancangan sistem adalah tahapan yang berguna untuk memperbaiki efisiensi kerja suatu sistem yang telah ada. Pada perancangan sistem ini terdiri dari tahap perancangan yaitu :
1. Perancangan Use Case Diagram 2. Perancangan Sequence Diagram 3. Perancangan Outputdan Input
III.3.1. Diagram Use Case
Use case menjelaskan urutan kegiatan yang dilakukan aktor dan sistem
untuk mencapai suatu tujuan tertentu. Sebuah Use Case mempresentasikan sebuah interaksi antara aktor dengan sistem dan menggambarkan fungsionalitas yang diharapkan dari sebuah sistem letak lokasi pkl metode dijkstra. Diagram Use Case tersebut dapat dilihat pada gambar III.2.
Gambar III.2. Diagram Use Case Login Depan Sejarah Profil Visi Misi Data Anggota Data User Transaksi Peminjaman Data Kategori buku Data Buku <<extend>> <<extend>> <<extend>> <<extend>> <<extend>> Laporan Transaksi Peminjaman Laporan Data Kategori Buku <<extend>> <<include>> <<include>> <<extend>> Laporan Data Buku <<include>> Laporan Data Anggota <<include>> Laporan Data Kelas Data Pengarang Laporan Data Penerbit <<include>> Cari Buku <<extend>> <<include>> Transaksi Pengembalian Laporan Pengembalian User Admin
III.3.2. Sequence Diagram
Sequence diagram menunjukkan bagaimana operasi yang dilakukan
secara detail. Sequence diagram menjelaskan interaksi obyek yang disusun dalam suatu urutan waktu. adapun sequence yang dilakukan adalah sebagai berikut.
1. SequenceHome
Home digunakan halaman pembuka program sistem informasi perpustakaan, untuk lebih jelasnya dapat dilihat pada gambar III.3.
Gambar III.3. Sequence Home
Dari gambar III.3 menunjukkan bahwa seorang userjika ingin masuk ke halaman homeharus terlebih dahulu melakukan klik pada menu home.
2. SequenceAbout
Aboout digunakan sebagai informasi tentang programmer, untuk lebih 1: Menu Home()
2:Halaman Home Tampil()
3:Salam Pembuka()
4: Hasil() 5:pesan informasi()
Form Home Controller Hal Home
Gambar III.4. Sequence About
Dari gambar III.4 menunjukkan bahwa seorang user dapat melakukan mendapatkan informasi dengan melakukan mengklik dari masing-masing menu.
3. SequenceData User
Sequence data usermenampilkan user yang telah registrasi, untuk lebih
jelasnya dapat dilihat pada gambar III.5.
Gambar III.5. Sequence Data User
1: Menu About()
2:Halaman About Tampil()
3: Hasil()
4: informasi()
Form About Controller About
user
1: Menu ()
2:Halaman Tampil()
3:input data()
Form Data User Controller Data User
user
4: Simpan Data() 5: Hasil()
Dari gambar III.5 jikapengguna ingin melihat informasi perpustakaan dan hasil dari pengunjung yang telah melakukan registrasi.
4. SequenceData Anggota
Sequence data anggotamenampilkan anggota yang telah disimpan, untuk
lebih jelasnya dapat dilihat pada gambar III.6.
Gambar III.6. Sequence Data Anggota
Dari gambar III.6 jikapengguna ingin melihat informasi perpustakaan dan hasil dari anggota yang telah disimpan.
5. SequenceData Kelas
Sequence data kelasmenampilkan kelas yang telah disimpan, untuk lebih
jelasnya dapat dilihat pada gambar III.7. 1: Menu ()
2:Halaman Tampil()
3:input data()
Form Data Anggota Controller Data Anggota
user
4: Simpan Data() 5: Hasil()
Gambar III.7. Sequence Data Kelas
Dari gambar III.7 jikapengguna ingin melihat informasi dari kelas yang telah disimpan.
6. SequenceData Transaksi
Sequence data transaksimenampilkan transaksi yang telah disimpan, untuk
lebih jelasnya dapat dilihat pada gambar III.8.
Gambar III.8. Sequence Data Transaksi
1: Menu ()
2:Halaman Tampil()
3:input data()
Form Data Kelas Controller Data Kelas
user 4: Simpan Data() 5: Hasil() 1: Menu () 2:Halaman Tampil() 3:input data()
Form Data Transaksi Controller Data Transaksi
user
4: Simpan Data() 5: Hasil()
Dari gambar III.8 jikapengguna ingin melihat informasi dari transaksi yang telah disimpan.
7. SequenceData Kelas
Sequence data kelasmenampilkan kelas yang telah disimpan, untuk lebih
jelasnya dapat dilihat pada gambar III.9.
Gambar III.9. Sequence Data Kelas
Dari gambar III.9 jikapengguna ingin melihat informasi dari kelasyang telah melakukan disimpan.
8. SequenceData Buku
Sequence data bukumenampilkan buku yang telah disimpan, untuk lebih
jelasnya dapat dilihat pada gambar III.10. 1: Menu ()
2:Halaman Tampil()
3:input data()
Form Data Kelas Controller Data Kelas
user
4: Simpan Data() 5: Hasil()
Gambar III.10. Sequence Data Buku
Dari gambar III.10 jikapengguna ingin melihat informasi dari buku yang telah disimpan.
9. SequenceData Pengarang
Sequence data pengarangmenampilkan pengarang yang telah disimpan,
untuk lebih jelasnya dapat dilihat pada gambar III.11.
Gambar III.11. Sequence Data Pengarang
1: Menu ()
2:Halaman Tampil()
3:input data()
Form Data Buku Controller Data Buku
user 4: Simpan Data() 5: Hasil() 1: Menu () 2:Halaman Tampil() 3:input data()
Form Data Pengarang Controller Data Pengarang
user
4: Simpan Data() 5: Hasil()
Dari gambar III.11 jikapengguna ingin melihat informasi dari pengarangyang telah disimpan.
10. Sequence Login
Sequence loginterdiri dari beberapa label, teksbox, dan tombol. Dari masing-masing tool tersebut mempunyai tugas masing-masing-masing-masing, label memberikan informasi tentang nama objek, teksbox untuk memasukkan data, sedangkan tombol untuk mengeksekusi perintah. Login digunakan menampilkan menu login administrator. untuk lebih jelasnya dapat dilihat pada gambar III.6.
Gambar III.12. Sequence Login
Dari gambar III.12 menunjukkan bahwa seorang penggunadapat masuk kehalaman administrator dengan memasukkan username dan password yang benar
1: Menu login()
2:Halaman login tampil()
3:Username dan Password()
4: Login()
5: Hasil() Form Login Controller Login
III.4. Rancangan Program
Rancangan programsimulasi tentang sistem informasi perpustakaan untuk mengetahui peminjam buku dan yang mengembalikan buku, teknis sistem secara fisik yaitu perancangan bentuk fisik atau bagan arsitektur sistem yang diusulkan. Dalam merancang suatu sistem perlu diketahui hal yang akan menunjang sistem, agar dapat mempermudah pengolahan data nantinya. Pengolahan data ini diharapakan dapat mempermudah dalam hal penyajian, pelayanan dan pembuatan berbagai laporan data yang dibutuhkan.
III.4.1. Rancangan Output
Rancangan output Sistem global sebagaimana telah dijelaskan di atas tidak dapat menggambarkan secara keseluruhan proses yang terjadi dalam sistem, sehinggadibutuhkan disain sistem secara detail yang dapat menjelaskan alur proses yangterjadi di dalam sistem tersebut. Adapun disain sistem secara detail yangdiusulkan akan dijelaskan satu persatu berikut ini.
1. Rancangan OutputMenu Utama
Dalam perancangan output menu utama terdiri dari menu beranda, admin, user, about. Untuk lebih jelasnya dapat dilihat pada gambar III.9.
Gambar III.13. Rancangan OutputMenu Utama
Rancangan form beranda untuk kembali ke awal menu utama yang berfungsi untuk menyegarkan program-program perpustakaan yang ada didalamnya.
2. Rancangan OutputLogin
Form login dirancang agar user dapat masuk kedalam halaman administrator.Untuk lebih jelasnya dapat dilihat pada gambar III.10.
Username Password Login Isi kontent Header Gambar Data Footer Buku Anggota User Kelas Kategori Pengarang Penerbit Transaksi Laporan Logout
Rancangan output login yang terdapat pada gambar III.14 terdiri username dan password berikut dengan tombol eksekusi perintah yaitu login. Halaman ini memberikan informasi tentang data yang dapat diakses oleh administrator. Jika
username dan password salah maka user tidak dapat masuk kedalam halaman
administrator.
3. Rancangan OutputMenu Utama User
Form menu utama user dirancang agar user dapat masuk kedalam halaman administrator.Untuk lebih jelasnya dapat dilihat pada gambar III.15.
lebih jelasnya dapat dilihat pada gambar III.15.
Gambar III.15. Rancangan OutputLogin
Header
Depan Sejarah Profil Visi Misi
Isi konten
III.4.2. Rancangan Input
Sistem ini mempunyai beberapa halaman yang akan menjadi input. Dalam perancangannya, sistem yang diusulkan mempunyai tiga halaman sebagai keluaran akhir, yaitu :
1. Rancangan Input Data Anggota
Gambar III.16. Rancangan Input Data Anggota
Daftar Anggota Perpustakaan
NIS Nama Kelas Tempat Lahir Simpan Reset Alamat Nomor HP Foto Browse Jenis Kelamin
2. Rancangan Input Data Buku
Gambar III.17. Rancangan Input Data User 3. Rancangan Input Data User
Gambar III.18. Rancangan Input Data Admin
DataBuku Perpustakaan Judul Buku Penerbit Simpan Reset Pengarang Kategori Tahun Terbit
Daftar User Perpustakaan - Admin
Nama Alamat No Telp Username Password Kategori User Simpan Reset
4. Rancangan Input Transaksi Peminjaman
Gambar III.19. Rancangan Input Transaksi Peminjaman 5. Rancangan Input Transaksi Pengembalian
Gambar III.20. Rancangan Input Transaksi Pengembalian
Input Transaksi Buku Perpustakaan
Kode Peminjaman Kode Anggota Tanggal Peminjam ID Buku Nama Buku Simpan Reset
Formulir Input Data Transaksi Peminjam
Input Transaksi Buku Perpustakaan
Kode Peminjaman Kode Anggota Tanggal Peminjam ID Buku Nama Buku Simpan Reset
III.5. DesainDatabase
Database merupakan kumpulan dari data yang saling berhubungan satu
dengan yang lain. Untuk merancang database secara konsepsual tentunya diperlukan alat bantu, baik untuk menggambarkan keterhubungan antar data maupun pengoptimalan rancangan database. Alat bantu adalah kamus data dan disain tabel. Dengan dibuatnya desain database maka proses database lebih jelas dan hubungan antar tabel dapat mudah dimengerti dan dipahami.
III.5.1 Kamus Data
Kamus data adalah kumpulan elemen-elemen atau simbol-simbol yang digunakan untuk membantu dalam penggambaran atau pengidentifikasian setiap
field atau file di dalam sistem. Kamus Data berfungsi antara lain untuk
menjelaskan arti aliran data dan penyimpana data, mendeskripsikan komposisi paket data yang bergerak melalui aliran data dan menjelaskan spesifikasi nilai dan satuan yang relevan dengan data. Didalam kamus data ini menjelaskan nama tabel berisi dengan nama-nama field yang berkaitan dengan informasi data. Berikut adalah Kamus Data dari sistem yang penulis bahas.
1. User = [{iduser} nama + alamat +nohp + username + password + hak_kategori]
2. Anggota = [{kodeanggota} + nis+namaanggota + jeniskelamin+ id_kelas + alamat + notelp + foto]
3. Buku = [{kodebuku} + idkategori+ judul+ kodepengarang + kodepenerbit+ thnterbit+ jumlah]
5. Kelas = [{id_kelas} + kelas]
6. Penerbit = [{kodepenerbit} + namapenerbit+ kotaterbit]
7. Pengarang = [{kodepengarang} + namapengarang]
8. Peminjaman = [{kodepinjam} + iduser+ kodeanggota + tglpinjam]
9. Peminjaman = [{kodekembali} + iduser+ kodeanggota + tglkembali]
10. D_peminjaman = [{id} + kodepinjam+ kodebuku+ statuspinjam]
11. D_peminjaman = [{id} + kodekembali + kodepinjam+ kodebuku + status]
12. Denda = [{kodekembali} + denda]
III.5.2. Desain Tabel
Desain tabel pada aplikasi perpustakan. Field-field beserta rancangan tabel
database diperlihatkan dalam tabel berikut :
a. TabelUser
Tabel user untuk menyimpan data pengguna kedalam database. Nama Database : db_perpus
Nama Tabel :user
Primary Key :Iduser
Tabel III.1. Struktur Tabel User
No Nama Field Tipe Data Size
1 Iduser Char 11
2 Nama Varchar 100
5 Kategori Varchar 30
6 Username Varchar 30
7 Password Varchar 32
b. Tabel Buku
Tabel buku berfungsi untuk menyimpan data-data tentang buku kedalam
database.
Nama Database : db_perpus
Nama Tabel :buku
Primary Key :Kodebuku
Tabel III.2. Struktur Tabel Buku
No Nama Field Tipe Data Size
1 Kodebuku Char 11 2 Idkategori Char 11 3 Judul Varchar 200 4 Kodepengarang Char 11 5 Kodepenerbit Char 11 6 Thnterbit Int 4 7 Jumlah Int 10 c. TabelAnggota
Tabel anggota berfungsi untuk menampilkan anggota perpustakaan.
Nama Database : db_perpus
Nama Tabel :Anggota
Primary Key :kodeanggota
Tabel III.3. Struktur Tabel Anggota
No Nama Field Tipe Data Size
1 Kodeanggota Char 11
2 Nis Char 11
3 Namaanggota Varchar 100
5 id_kelas Int 11 6 Alamat Varchar 150 7 Notelp Varchar 15 8 Foto Varchar 255 9 Foto Varchar 255 d. TabelPeminjaman
Tabel peminjamam berfungsi untuk menyimpan data peminjamankedalam
database.
Nama Database : db_perpus
Nama Tabel :peminjaman
Primary Key :kodepinjam
Tabel III.4. Struktur Tabel Peminjaman
No Nama Field Tipe Data Size
1 Kodepinjam Char 11
2 Iduser Char 11
3 Kodeanggota Char 11
4 Tglpinjam Date 0
e. Tabel Detail Peminjaman
Tabel detail peminjaman berfungsi untuk menyimpan data detail peminjamankedalam database.
Nama Database : db_perpus
Nama Tabel :det_peminjaman
Tabel III.5. Struktur Tabel Detail Peminjaman
No Nama Field Tipe Data Size
1 Id Int 11
2 Kodepinjam Char 11
3 Kodebuku Char 11
4 Statuspinjam Char 11
f. TabelPengembalian
Tabel pengembalian berfungsi untuk menyimpan data pengembaliankedalam
database.
Nama Database : db_perpus
Nama Tabel :pengembalian
Primary Key :kodekembali
Tabel III.6. Struktur Tabel Pengembalian
No Nama Field Tipe Data Size
1 Kodekembali Char 11
2 Iduser Char 11
3 Kodeanggota Char 11
4 Tglkembali Date 0
g. Tabel Detail Pengembalian
Tabel detail pengembalian berfungsi untuk menyimpan data detail pengembalian kedalam database.
Nama Database : db_perpus
Nama Tabel :det_pengembalian
Primary Key :id
Tabel III.7. Struktur Tabel Detail Peminjaman
No Nama Field Tipe Data Size
2 Kodekembali Char 11
3 Kodepinjam Char 11
4 Kodebuku Char 11
5 Status Char 11
h. Tabel Penerbit
Tabel penerbit berfungsi untuk menyimpan data penerbit kedalam database.
Nama Database : db_perpus
Nama Tabel :det_penerbit
Primary Key :kodepenerbit
Tabel III.8. Struktur Tabel Penerbit
No Nama Field Tipe Data Size
1 Kodepenerbit Char 11
2 Namapenerbit Varchar 100
3 Kotaterbit Varchar 50
i. Tabel Pengarang
Tabel pengarang berfungsi untuk menyimpan data pengarang kedalam
database.
Nama Database : db_perpus
Nama Tabel :det_pengarang
Primary Key :Kodepengarang
Tabel III.9. Struktur Tabel Pengarang
No Nama Field Tipe Data Size
1 Kodepengarang Char 11
2 Namapengarang Varchar 50
Nama Database : db_perpus
Nama Tabel :det_kategori
Primary Key :idkategori
Tabel III.10. Struktur Tabel Pengarang
No Nama Field Tipe Data Size
1 Idkategori Char 11
2 Jenis Varchar 30
3 Keterangan Varchar 100
k. Tabel Kelas
Tabel kelas berfungsi untuk menyimpan data kelas kedalam database.
Nama Database : db_perpus
Nama Tabel :det_kategori
Primary Key :id_kelas
Tabel III.11. Struktur Tabel Pengarang
No Nama Field Tipe Data Size
1 id_kelas Int 11
2 Kelas Varchar 255
l. Tabel Denda
Tabel denda berfungsi untuk menyimpan data denda kedalam database.
Nama Database : db_perpus
Nama Tabel :denda
Tabel III.12. Struktur Tabel Denda
No Nama Field Tipe Data Size
1 Kodekembali char 11