4. Buku Memiliki Kategori
Hubungan ini menghubungkan buku dengan kategori tertentu.
Hubungan ini bersifat many-to-one, di mana satu kategori bisa memiliki banyak buku, tetapi satu buku hanya masuk ke dalam satu kategori.
Setelah proses pembuatan ERD (Entity-Relationship Diagram) selesai, langkah selanjutnya adalah mengembangkan diagram tersebut menjadi EERD (Enhanced Entity-Relationship Diagram) menggunakan MySQL Workbench. EERD memberikan representasi yang lebih rinci dengan menambahkan fitur seperti relationships, attributes, dan indexes yang lebih terstruktur.
EERD yang dibuat pada MySQL Workbench memiliki elemen-elemen sebagai berikut:
1. Tabel Anggota
Kolom:
- id_anggota (Primary Key): Identitas unik untuk setiap anggota.
- nama: Nama lengkap anggota.
- alamat: Alamat anggota.
- tgl_bergabung: Tanggal anggota bergabung.
- no_hp: Nomor telepon anggota.
- email: Email anggota.
Relasi:Â Tabel ini terhubung dengan tabel peminjaman melalui atribut anggota_id_anggota, yang merepresentasikan bahwa setiap anggota dapat melakukan banyak peminjaman.
2. Tabel Peminjaman
Kolom:
- id_peminjaman (Primary Key): Identitas unik setiap transaksi peminjaman.
- status_kembali: Status pengembalian buku (sudah atau belum).
- tgl_pinjam: Tanggal buku dipinjam.
- tgl_kembali: Tanggal pengembalian yang dijadwalkan.
- anggota_id_anggota (Foreign Key): Menghubungkan peminjaman dengan anggota.
- buku_id_buku (Foreign Key): Menghubungkan peminjaman dengan buku.
- staff_id_staff (Foreign Key): Menghubungkan peminjaman dengan staf yang melayani.
Relasi:Â Tabel ini menjadi pusat hubungan antara anggota, buku, dan staf.
3. Tabel Buku
Kolom:
- id_buku (Primary Key): Identitas unik buku.
- judul_buku: Judul buku.
- penulis: Nama pengarang buku.
- penerbit: Nama penerbit.
- tahun_terbit: Tahun penerbitan.
- stok: Jumlah stok buku yang tersedia.
- kategori_id_kategori (Foreign Key): Menghubungkan buku dengan kategori.
Relasi: Tabel ini terhubung dengan tabel peminjaman untuk mencatat buku mana yang dipinjam, dan terhubung dengan tabel kategori untuk mengelompokkan buku berdasarkan jenisnya.
4. Tabel Kategori
Kolom:
- id_kategori (Primary Key): Identitas unik kategori buku.
- deskripsi: Deskripsi kategori buku.
- nama_kategori: Nama kategori buku (misalnya: Fiksi, Non-Fiksi, dll.).
Relasi: Tabel ini memiliki hubungan one-to-many dengan tabel buku, karena satu kategori dapat memiliki banyak buku.
5. Tabel Staff
Kolom:
id_staff (Primary Key): Identitas unik staf.
nama: Nama staf.
jabatan: Posisi staf di perpustakaan.
alamat: Alamat staf.
no_hp: Nomor telepon staf.
email: Email staf.
Relasi: Tabel ini terhubung dengan tabel peminjaman, mencatat staf yang bertugas melayani peminjaman tertentu.
Setelah ERD dan EERD selesai dirancang, langkah berikutnya adalah mengimplementasikan desain tersebut ke dalam aplikasi berbasis web. Dalam proses ini, kita akan menggunakan Yii Framework, salah satu framework PHP yang terkenal dengan kemampuannya dalam mempermudah pengembangan aplikasi melalui fitur bawaan seperti CRUD (Create, Read, Update, Delete).
Yii Framework menyediakan scaffolding yang memungkinkan pengembang untuk dengan cepat menghasilkan kode dasar untuk mengelola setiap entitas yang ada di ERD. Hal ini sangat membantu dalam mempercepat proses pengembangan aplikasi, khususnya untuk aplikasi perpustakaan yang memiliki banyak entitas dan relasi antar tabel.
Berikut adalah langkah-langkah pembuatan CRUD untuk setiap entitas, dimulai dengan proses instalasi hingga pengelolaan data di setiap modul.
Cara Pembuatan Aplikasi Yii Framework
Setelah merancang ERD, langkah selanjutnya adalah implementasi aplikasi menggunakan Yii Framework. Berikut adalah langkah-langkah pembuatan CRUD untuk setiap entitas di aplikasi perpustakaan ini.