Mohon tunggu...
Indah Haerunnisa
Indah Haerunnisa Mohon Tunggu... Pelajar Sekolah - Mahasiswa

ILMU KOMPUTER

Selanjutnya

Tutup

Ilmu Alam & Tekno Pilihan

Digitalisasi Perpustakaan: Studi Kasus, Perancangan ERD & EERD, hingga Implementasi Basis Data SQL

28 Desember 2024   22:08 Diperbarui: 28 Desember 2024   21:07 25
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.
Lihat foto
Website Aplikasi Sistem Informasi Perpustakaan

Sistem informasi perpustakaan merupakan solusi modern untuk mengelola data perpustakaan secara efisien. Studi kasus ini bertujuan untuk merancang, mengimplementasikan, dan mendokumentasikan pembuatan sistem informasi perpustakaan, termasuk pembuatan database dengan nama sistem_informasi_perpustakaan menggunakan Laragon sebagai platform pengembangan.

Artikel ini mencakup:

1. Rancangan Studi Kasus Sistem Informasi Perpustakaan.

2. Rancangan Entity-Relationship Diagram (ERD).

3. Rancangan Enhanced Entity-Relationship Diagram (EERD).

4. Implementasi Database di Laragon berdasarkan EERD.

5. Pembuatan Aplikasi Basis Data.

1. Rancangan Studi Kasus Sistem Informasi Perpustakaan

Sistem ini dirancang untuk mengelola data buku, anggota, peminjaman, dan pengembalian. Fungsionalitas utama mencakup:

Pendaftaran buku dan anggota

Sistem memungkinkan petugas untuk mendaftarkan buku baru dan anggota baru ke dalam sistem.

Proses peminjaman dan pengembalian

Mengelola transaksi peminjaman dan pengembalian buku, termasuk pencatatan tanggal peminjaman dan pengembalian.

Pemantauan ketersediaan buku

Menampilkan informasi terkait jumlah buku yang tersedia untuk dipinjam.

Analisis Kebutuhan

Fungsional

Input data buku, anggota, dan transaksi.

Menampilkan laporan peminjaman dan pengembalian buku.

Non-Fungsional

Sistem harus responsif dan mudah digunakan.

Skalabilitas untuk menambah data besar di masa depan.

Entitas Utama

1. Buku: Berisi informasi tentang buku seperti ID, judul, pengarang, tahun terbit, kategori, dan stok buku.

2. Anggota: Berisi data anggota perpustakaan, seperti ID anggota, nama, alamat, dan kontak.

3. Peminjaman: Mengelola data transaksi peminjaman buku, termasuk ID buku, ID anggota, tanggal pinjam, dan status peminjaman.

4. Pengembalian: Mengelola informasi pengembalian buku berdasarkan transaksi peminjaman.

2. Rancangan Entity-Relationship Diagram (ERD)

Berikut adalah gambaran umum ERD:

Entitas dan Atribut

Buku: id_buku (PK), judul, pengarang, tahun_terbit, kategori, stok.

Anggota: id_anggota (PK), nama, alamat, telepon.

Peminjaman: id_peminjaman (PK), id_buku (FK), id_anggota (FK), tanggal_pinjam, status_peminjaman.

Pengembalian: id_pengembalian (PK), id_peminjaman (FK), tanggal_kembali.

Relasi Antar Entitas

Buku berhubungan dengan Peminjaman (1:M).

Anggota berhubungan dengan Peminjaman (1:M).

Peminjaman berhubungan dengan Pengembalian (1:1).

3. Rancangan Enhanced Entity-Relationship Diagram (EERD)

Untuk memperluas ERD, kita menambahkan atribut tambahan dan relasi:

Atribut Tambahan

Buku: Menambahkan atribut stok untuk mencatat jumlah buku yang tersedia.

Peminjaman: Menambahkan atribut status_peminjaman yang menunjukkan apakah buku sedang dipinjam atau sudah dikembalikan.

Relasi Baru

Menambahkan tabel petugas untuk mengelola transaksi yang dilakukan oleh petugas perpustakaan.

Pengelompokan buku berdasarkan kategori untuk mempermudah pencarian.

Gambar EERD dapat dibuat menggunakan tools seperti MySQL Workbench atau Lucidchart.

Gambar ERD
Gambar ERD

4. Implementasi Database di Laragon Berdasarkan EERD

Langkah-Langkah

1. Persiapan Laragon

Jalankan Laragon dan buka phpMyAdmin.

Buat database dengan nama sistem_informasi_perpustakaan.

2. Membuat Tabel

Gunakan SQL berikut untuk membuat tabel:

Tabel buku

CREATE TABLE buku (

    id_buku INT AUTO_INCREMENT PRIMARY KEY,

    judul VARCHAR(255),

    pengarang VARCHAR(255),

    tahun_terbit YEAR,

    kategori VARCHAR(100),

    stok INT

);

Tabel anggota

CREATE TABLE anggota (

    id_anggota INT AUTO_INCREMENT PRIMARY KEY,

    nama VARCHAR(255),

    alamat TEXT,

    telepon VARCHAR(15)

);

Tabel peminjaman

CREATE TABLE peminjaman (

    id_peminjaman INT AUTO_INCREMENT PRIMARY KEY,

    id_buku INT,

    id_anggota INT,

    tanggal_pinjam DATE,

    status_peminjaman ENUM('Dipinjam', 'Dikembalikan'),

    FOREIGN KEY (id_buku) REFERENCES buku(id_buku),

    FOREIGN KEY (id_anggota) REFERENCES anggota(id_anggota)

);

Tabel pengembalian

CREATE TABLE pengembalian (

    id_pengembalian INT AUTO_INCREMENT PRIMARY KEY,

    id_peminjaman INT,

    tanggal_kembali DATE,

    FOREIGN KEY (id_peminjaman) REFERENCES peminjaman(id_peminjaman)

);

Tabel petugas

Tabel ini untuk mencatat data petugas yang mengelola transaksi peminjaman dan pengembalian.

CREATE TABLE petugas (

    id_petugas INT AUTO_INCREMENT PRIMARY KEY,

    nama_petugas VARCHAR(255),

    jabatan VARCHAR(100),

    username VARCHAR(50) UNIQUE,

    password VARCHAR(255) -- Menggunakan hash untuk password

);

Gambar EERD
Gambar EERD

3. Masukkan Data Awal

Gunakan fitur insert pada phpMyAdmin atau perintah SQL INSERT INTO untuk menambahkan data awal pada tabel.

5. Pembuatan Aplikasi Basis Data

Aplikasi ini akan dibangun menggunakan PHP dengan framework Laravel atau murni PHP untuk CRUD.

Fitur Aplikasi

1. Dashboard Admin: Menampilkan data buku, anggota, peminjaman, dan pengembalian.

2. Form Input: Untuk menambahkan data buku dan anggota.

3. Proses Transaksi:

Peminjaman: Pilih buku dan anggota, atur tanggal pinjam.

Pengembalian: Pilih transaksi peminjaman untuk diperbarui.

Langkah Implementasi

1. Konfigurasi Database

Buat file .env di Laravel atau konfigurasi koneksi di PHP:

$conn = new mysqli("localhost", "root", "", "sistem_informasi_perpustakaan");

2. Membuat CRUD Buku

Create: Form untuk menambah buku.

Read: Menampilkan semua data buku.

Update: Form untuk mengedit detail buku.

Delete: Menghapus buku.

Contoh kode untuk menampilkan data buku:

$result = $conn->query("SELECT * FROM buku");

while ($row = $result->fetch_assoc()) {

    echo $row['judul'];

}

3. Fitur Transaksi

Buat logika untuk proses peminjaman dan pengembalian berdasarkan relasi di database.

Contoh proses peminjaman buku:

$id_buku = $_POST['id_buku'];

$id_anggota = $_POST['id_anggota'];

$id_petugas = $_SESSION['id_petugas']; // ID petugas yang sedang login

$tanggal_pinjam = date('Y-m-d');

$query = "INSERT INTO peminjaman (id_buku, id_anggota, id_petugas, tanggal_pinjam, status_peminjaman) 

          VALUES ('$id_buku', '$id_anggota', '$id_petugas', '$tanggal_pinjam', 'Dipinjam')";

$conn->query($query);

Ingin melihat penjelasan selengkapnya? Cek video ini!


Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H

HALAMAN :
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
Mohon tunggu...

Lihat Konten Ilmu Alam & Tekno Selengkapnya
Lihat Ilmu Alam & Tekno Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun