Comments (0)
Tutorial Rancangan Basis Data – Bagian 3
Apa itu Pemodelan ER?
Pemodelan Entitas Hubungan (Entity Relationship/ER Modeling) adalah pendekatan secara grafis pada rancangan basis data. Pemodelan ini menggunakan Entitas/Hubungan untuk mewakili objek dunia nyata.
Entitas adalah sebuah benda atau objek di dunia nyata yang dapat dibedakan dari lingkungan sekitarnya. Misalnya setiap karyawan suatu organisasi adalah entitas yang terpisah. Berikut ini adalah beberapa karakteristik utama entitas.
• Entitas memiliki seperangkat properti.
• Properti entitas dapat memiliki nilai.
Mari kita lihat contoh kita sebelumnya. Seorang karyawan dari sebuah organisasi adalah sebuah entitas. Jika “Peter” adalah seorang pemrogram (seorang karyawan) di Microsoft, dia dapat memiliki atribut (properti) seperti nama, usia, berat badan, tinggi badan, dll. Jelas bahwa semuanya memiliki nilai-nilai yang relevan dengan dirinya.
Setiap atribut dapat memiliki Nilai. Dalam kebanyakan kasus, atribut tunggal memiliki satu nilai. Tetapi ada kemungkinan atribut juga dapat memiliki banyak nilai. Misalnya usia Peter memiliki nilai tunggal. Tetapi properti “nomor telepon”-nya dapat memiliki banyak nilai.
Entitas dapat memiliki hubungan satu sama lain. Mari kita lihat contoh paling sederhana. Asumsikan bahwa setiap Pemrogram Microsoft diberikan sebuah Komputer. Jelas bahwa Komputer Peter juga merupakan sebuah entitas. Peter menggunakan komputer tersebut dan komputer yang sama digunakan oleh Peter. Dengan kata lain ada hubungan timbal balik antara Peter dan komputernya.
Dalam Pemodelan ER, kita memodelkan entitas-entitas, atribut-atributnya dan hubungan-hubungannya di antara entitas.
Model Entitas Hubungan Yang Ditingkatkan
Model Entitas Hubungan Yang Ditingkatkan (Enhanced Entity Relationship/EER) adalah model data tingkat tinggi yang menyediakan penambahan pada model ER asli. Model EER mendukung rancangan lebih rinci. Pemodelan EER muncul sebagai solusi untuk pemodelan basis data yang sangat rumit.
EER menggunakan notasi UML. UML adalah singkatan untuk Unified Modeling Language; yaitu bahasa pemodelan serba guna yang digunakan ketika merancang sistem berorientasi objek. Entitas direpresentasikan sebagai diagram kelas. Hubungan direpresentasikan sebagai asosiasi antar entitas. Diagram yang ditunjukkan di bawah ini menggambarkan diagram ER menggunakan notasi UML.
Mengapa Menggunakan Model ER?
Mungkin sekarang Anda berpikir mengapa menggunakan pemodelan ER ketika kita bisa membuat basis data dan semua objeknya tanpa pemodelan ER? Salah satu tantangan yang dihadapi ketika merancang basis data adalah kenyataan bahwa perancang, pengembang dan pengguna cenderung melihat data dan penggunaannya secara berbeda. Jika situasi ini dibiarkan tidak terkendali, pada akhirnya kita menghasilkan sistem basis data yang tidak memenuhi kebutuhan pengguna.
Alat komunikasi yang dipahami oleh semua pemangku kepentingan (pengguna teknis maupun non-teknis) sangat penting dalam menghasilkan sistem basis data yang memenuhi kebutuhan pengguna. Model ER adalah contoh dari alat tersebut.
Diagram ER juga meningkatkan produktivitas pengguna karena dapat dengan mudah diterjemahkan ke dalam tabel-tabel relasional.
Studi Kasus: Diagram ER untuk Pustaka Video “MyFlix”
Sekarang mari kita bekerja dengan sistem basis data Pustaka Video MyFlix untuk membantu memahami konsep diagram ER. Kita akan menggunakan basis data ini untuk semua informasi di sisa tutorial ini.
MyFlix adalah entitas bisnis yang menyewakan film kepada para anggotanya. MyFlix telah menyimpan catatannya secara manual. Sekarang pihak manajemen ingin berpindah ke DBMS.
Mari kita lihat langkah-langkah untuk mengembangkan diagram EER di basis data ini.
1. Identifikasi semua entitas dan tentukan hubungan yang ada di antara mereka.
2. Setiap entitas, atribut dan hubungan, harus memiliki nama yang sesuai sehingga dapat dengan mudah dipahami juga oleh orang-orang non-teknis.
3. Hubungan seharusnya tidak tersambung secara langsung satu sama lain. Hubungan harus menyambung entitas.
4. Setiap atribut dalam entitas yang diberikan harus memiliki nama yang unik.
Entitas di perpustakaan “MyFlix”
Entitas yang dimasukkan dalam diagram ER kita adalah:
• Anggota – entitas ini akan menyimpan informasi anggota.
• Film – entitas ini akan menyimpan informasi mengenai film
• Kategori – entitas ini akan menyimpan informasi yang menempatkan film ke dalam kategori yang berbeda seperti “Drama”, “Action”, “Epic” dan seterusnya.
• Penyewaan Film – entitas ini akan menyimpan informasi tentang film yang disewakan kepada anggota.
• Pembayaran – entitas ini akan menyimpan informasi tentang pembayaran yang dilakukan oleh anggota.
Mendefinisikan hubungan antar entitas
Anggota dan film
Berikut ini berlaku untuk interaksi antara kedua entitas.
• Seorang anggota dapat menyewa lebih dari film dalam periode tertentu.
• Sebuah film dapat disewa oleh lebih dari satu anggota dalam periode tertentu.
Dari skenario di atas, kita dapat melihat bahwa sifat dari hubungan tersebut adalah banyak-ke-banyak (many-to-many). Basis data relasional tidak mendukung hubungan many-to-many. Kita perlu memperkenalkan entitas persimpangan (junction entity). Disinilah peran yang dimainkan oleh entitas MovieRentals. Ia memiliki hubungan satu-ke-banyak (one-to-many) dengan tabel anggota dan hubungan one-to-many lainnya dengan tabel film.
Entitas film dan kategori
Berikut ini berlaku untuk film dan kategori.
• Sebuah film hanya dapat dimiliki oleh satu kategori tetapi sebuah kategori dapat memiliki lebih dari satu film.
Kita dapat menyimpulkan dari sini bahwa sifat hubungan antara kategori dan tabel film adalah one-to-many.
Entitas anggota dan pembayaran
Hal berikut berlaku untuk anggota dan pembayaran.
• Seorang anggota hanya dapat memiliki satu akun tetapi dapat melakukan sejumlah pembayaran.
Dari sini kita dapat menyimpulkan bahwa sifat hubungan antara entitas anggota dan pembayaran adalah one-to-many.
Sekarang mari kita buat model EER menggunakan MySQL Workbench.
Di MySQL Workbench, Klik Tombol “+”
Klik dua kali tombol Add Diagram untuk membuka ruang kerja bagi diagram ER.
Jendela berikut akan muncul
Mari kita lihat dua objek yang akan kita kerjakan.
• Tombol Objek Tabel memungkinkan kita untuk membuat entitas dan mendefinisikan atribut yang terkait dengan entitas tertentu.
• Tombol Penempatan Hubungan memungkinkan kita untuk menentukan hubungan antar entitas.
Entitas anggota akan memiliki atribut berikut:
• Membership number
• Full names
• Gender
• Date of birth
• Physical address
• Postal address
Sekarang mari kita buat tabel anggota
1. Tarik objek tabel dari panel Tools
2. Drop di area ruang kerja. Entitas bernama tabel 1 muncul
3. Klik dua kali di tabelnya. Jendela properti akan muncul seperti yang ditunjukkan di bawah ini
[Gambar mysql-workbench-table]
Selanjutnya,
1. Ubah tabel 1 menjadi Members
2. Edit idtable1 standar menjadi membership_number
3. Klik pada baris berikutnya untuk menambahkan kolom data berikutnya
4. Lakukan hal yang sama untuk semua atribut yang diidentifikasi dalam entitas anggota.
Jendela properti Anda sekarang akan terlihat seperti ini.
Ulangi langkah-langkah di atas untuk semua entitas yang diidentifikasi.
Ruang kerja diagram Anda sekarang akan terlihat seperti yang ditunjukkan di bawah ini.
Mari kita membuat hubungan antara Anggota dan Penyewaan Film
1. Pilih Penempatan Hubungan menggunakan kolom yang juga sudah ada
2. Klik pada membership_number di tabel Members
3. Klik pada reference_number di tabel MovieRentals
Ulangi langkah di atas untuk hubungan lainnya. Diagram ER Anda sekarang akan terlihat seperti ini.
Ringkasan
• Diagram ER memainkan peran yang sangat penting dalam proses perancangan basis data. Mereka berfungsi sebagai alat komunikasi non-teknis untuk orang-orang teknis dan non-teknis.
• Entitas mewakili hal-hal dunia nyata; mereka dapat menjadi konseptual sebagai pesanan penjualan atau fisik seperti pelanggan.
• Semua entitas harus diberi nama unik.
• Model ER juga memungkinkan perancang basis data untuk mengidentifikasi dan menentukan hubungan yang ada di antara entitas.
(Sumber & Gambar: www.guru99.com)
Recent Posts
Recent Comments
Archives
LATEST VIDEO
Tags
- ai
- analysis
- application
- art
- articles
- artificial intelligence
- audio
- block chain
- business
- cloud
- coding
- cryptocurrency
- culture
- data
- database
- design
- desktop
- development
- digital
- economy
- encryption
- enterprise
- events
- framework
- hardware
- health
- html/css
- Image
- industry
- infomation
- information
- internet
- jquery
- knowledge
- management
- mobile
- officesuite
- online
- open source
- program
- programming
- proprietary
- PROSolvIT
- Quote
- RDO-POS
- reendoosystem
- RHomeS
- robotic
- security
- server
- SiReDisH
- SiReDU
- SiReGi
- software
- sound
- spreadsheet
- system
- technology
- tips
- tool
- tricks
- tutorial
- ui
- userexperience
- userinterface
- ux
- video
- virtual reality
- vr
- web
- web design
- website
- wordpress
LEAVE A REPLY
Your email address will not be published. Required fields are marked *