alam dunia bisnis, terutama pada sektor rental kendaraan, pengelolaan data yang efisien sangatlah penting. Data seperti informasi customer, detail mobil yang tersedia, serta catatan transaksi penyewaan harus dikelola dengan baik agar operasional dapat berjalan lancar. Untuk mencapai hal tersebut, diperlukan rancangan basis data yang terstruktur dengan baik, yang salah satunya bisa dilakukan dengan Entity-Relationship Diagram (ERD).
ERD adalah langkah awal dalam perancangan basis data yang memungkinkan kita memvisualisasikan hubungan antar entitas secara jelas. Pada artikel kali ini, kita akan membahas bagaimana membuat ERD yang lebih kompleks, yaitu Extended Entity-Relationship Diagram (EERD) untuk kasus rental mobil bernama Tono Rental. Melalui tahapan-tahapan yang jelas dan terstruktur, kita akan melihat bagaimana EERD dapat membantu dalam merancang dan mengimplementasikan basis data yang efektif menggunakan aplikasi MySQL Workbench.
Mari kita mulai dengan mempelajari langkah-langkah dalam membangun EERD dan bagaimana desain ini dapat diterapkan dalam sistem basis data untuk mengelola proses bisnis rental mobil secara efisien.
1. Mengidentifikasi dan Menetapkan Entitas yang Terkait
 Langkah pertama dalam pembuatan ERD adalah mengidentifikasi entitas yang terlibat dalam sistem. Berdasarkan studi kasus Tono Rental, kita dapat mengidentifikasi dua entitas utama yang terlibat, yaitu Customer dan Mobil. Entitas Customer merepresentasikan pelanggan yang akan menyewa mobil, sementara entitas Mobil menggambarkan kendaraan yang tersedia untuk disewa.Â
2. Menentukan Atribut dan Kunci dari Masing-Masing EntitasÂ
Setelah entitas diidentifikasi, tahapan berikutnya adalah menentukan atribut yang dimiliki oleh masing-masing entitas dan menentukan kunci utamanya (primary key).Â
Untuk entitas Mobil, atribut yang relevan adalah:
- Â kode_mobil (Primary Key)Â
- jenis_mobilÂ
- tahun_mobilÂ
- harga_sewaÂ
Sedangkan untuk entitas Customer, atribut yang diperlukan adalah:Â
- no_ktp (Primary Key)Â
- namaÂ
- no_tlpÂ
- alamatÂ
3. Mengidentifikasi Relasi dan Menetapkan Kunci Tamu (Foreign Key)Â
Langkah selanjutnya adalah mengidentifikasi relasi antara entitas yang ada. Dalam hal ini, relasi antara Customer dan Mobil adalah relasi Many-to-Many (M:N), yang berarti satu customer bisa menyewa banyak mobil, dan satu mobil bisa disewa oleh banyak customer pada waktu yang berbeda. Untuk mengelola relasi ini, kita memerlukan entitas tambahan yang disebut Menyewa, yang berfungsi untuk menghubungkan entitas Customer dan Mobil.Â
Entitas Menyewa akan memiliki atribut:Â
- no_sewa (Primary Key)Â
- kode_mobil (Foreign Key yang menghubungkan ke entitas Mobil)Â
- no_ktp (Foreign Key yang menghubungkan ke entitas Customer)Â
- tgl_sewaÂ
- tgl_kembaliÂ
- tgl_pengembalianÂ
- dendaÂ
4. Menentukan Derajat Kardinalitas Derajat kardinalitas menggambarkan hubungan antara dua entitas dalam sistem.
 Berdasarkan studi kasus, relasi antara Customer dan Mobil adalah Many-to-Many (M:N). Oleh karena itu, kita memerlukan entitas penghubung (Menyewa) yang menyimpan data sewa untuk mengatasi hubungan ini.Â
5. Melengkapi Atribut Deskriptif (Non-Key)Â
pada Relasi Pada tahap akhir, kita melengkapi entitas Menyewa dengan atribut-atribut deskriptif yang akan membantu menggambarkan hubungan lebih jelas. Beberapa atribut deskriptif yang ditambahkan antara lain:
- tgl_sewa: Tanggal saat mobil disewa.Â
- tgl_kembali: Tanggal yang disepakati untuk pengembalian mobil.Â
- tgl_pengembalian: Tanggal sebenarnya mobil dikembalikan.Â
- denda: Biaya yang dikenakan jika pengembalian mobil terlambat.
Setelah memahami konsep dasar dari Entity Relationship Diagram (ERD), kita bisa mengembangkannya lebih lanjut menjadi Enhanced Entity Relationship Diagram (EERD). Jika ERD hanya menampilkan entitas dan relasi antar entitas, maka EERD memberikan detail yang lebih mendalam dan kompleks. EERD mencakup informasi tambahan seperti tipe data, atribut deskriptif, serta relasi yang lebih spesifik. Hal ini menjadikannya lebih sesuai digunakan dalam perancangan basis data yang siap diimplementasikan. ini adalah gambar EERD untuk basis data Rental Tono:
Pada sistem basis data  Rental Tono, terdapat tiga entitas utama yang mendukung pencatatan dan pengelolaan transaksi, yaitu Customer, Mobil, dan Menyewa. Masing-masing entitas memiliki atribut yang sesuai dengan kebutuhan operasional serta relasi yang menghubungkan mereka satu sama lain. Berikut penjelasan detail dari setiap entitas.
1. Entitas Customer
Entitas ini merepresentasikan data pelanggan yang terdaftar di Rental Tono. Setiap customer diwajibkan untuk mengisi data pribadi sebelum melakukan transaksi penyewaan mobil. Atribut yang digunakan dalam entitas ini meliputi no_ktp sebagai kunci utama (Primary Key) yang berfungsi untuk mengidentifikasi customer secara unik, nama yang menyimpan nama lengkap, no_tlp untuk nomor telepon yang dapat dihubungi, serta alamat yang mencatat lokasi tinggal customer. Relasi antara entitas Customer dengan entitas Menyewa bersifat One-to-Many (1:M), di mana satu customer dapat melakukan banyak transaksi penyewaan, tetapi setiap transaksi hanya bisa dimiliki oleh satu customer.
2. Entitas Mobil
Entitas ini digunakan untuk menyimpan data mengenai mobil yang tersedia di Rental Tono. Setiap mobil memiliki kode unik yang diwakili oleh atribut kode_mobil sebagai kunci utama (Primary Key). Atribut lainnya meliputi jenis_mobil yang mencatat tipe mobil (misalnya sedan, SUV, MPV), tahun_mobil yang menunjukkan tahun produksi, serta harga_sewa yang mencantumkan biaya sewa mobil per hari. Hubungan antara entitas Mobil dan Menyewa juga bersifat One-to-Many (1:M). Satu mobil dapat disewa oleh banyak customer pada waktu yang berbeda, tetapi satu transaksi penyewaan hanya terkait dengan satu mobil.
3. Entitas Menyewa
Entitas Menyewa adalah entitas yang mencatat transaksi penyewaan mobil. Entitas ini merupakan hasil transformasi dari relasi Many-to-Many (M:N) antara entitas Customer dan Mobil, yang diubah menjadi entitas tersendiri untuk mengelola data transaksi dengan lebih efektif. Atribut dalam entitas ini mencakup no_sewa sebagai kunci utama (Primary Key) yang menandakan nomor transaksi penyewaan, kode_mobil sebagai foreign key yang menghubungkan dengan entitas Mobil, dan no_ktp sebagai foreign key yang menghubungkan dengan entitas Customer. Selain itu, terdapat atribut deskriptif seperti tgl_sewa untuk tanggal mulai penyewaan, tgl_kembali sebagai tanggal pengembalian yang direncanakan, tgl_pengembalian yang mencatat tanggal aktual pengembalian mobil, serta denda yang digunakan untuk mencatat biaya tambahan akibat keterlambatan pengembalian mobil.
Hubungan antar entitas dalam EERD ini memudahkan pencatatan dan pelacakan transaksi penyewaan mobil secara efisien. Dengan menggunakan desain seperti ini, sistem dapat mengelola data pelanggan, inventaris mobil, serta transaksi penyewaan secara terintegrasi, meminimalkan kesalahan pencatatan, dan memungkinkan perhitungan denda secara otomatis jika terjadi keterlambatan pengembalian mobil. Â
Tertarik untuk mencobanya? Jangan lewatkan video tutorialnya!
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H