Konsep Pemodelan Enhanced Entity Relationship Diagram - Salah satu pemodelan basis data secara konseptual adalah pemodelan berbasis relasi antar entitas. Pemodelan ini dikenal karena mudah dimengerti. Konsep utama dari pemodelan ini berakar pada Entitas entitas dan relasi antar entitas.
Diagram Hubungan Entitas atau entity relationship diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang hubungannya satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Chen mencoba merumuskan dasar-dasar model dan setelah itu dikembangkan dan dimodifikai oleh Chen dan banyak pakar lainnya. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas.
Tujuan dari Entity Relationship adalah untuk menunjukkan objek data dan relationship yang ada pada objek tersebut. Disamping itu Model ER ini merupakan salah satu alat untuk perancangan dalam basis data.
Salah satu pemodelan basis data secara konseptual adalah pemodelan berbasis relasi antar entitas. Pemodelan ini dikenal karena mudah dimengerti. Konsep utama dari pemodelan ini berakar pada Entitas entitas dan relasi antar entitas. Pada bab ini akan di bahas pengertian entitas, atribut dan relasi, derajat himpunan relasi, kardinalitas relasi, serta pengenalan key sebagai salah satu constraint dalam ER.
1. ER Sebagai Salah Satu Pemodelan Konseptual Basis Data
Diagram Hubungan Entitas atau entity relationship diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang hubungannya satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Chen mencoba merumuskan dasar-dasar model dan setelah itu dikembangkan dan dimodifikai oleh Chen dan banyak pakar lainnya. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas.
Tujuan dari Entity Relationship adalah untuk menunjukkan objek data dan relationship yang ada pada objek tersebut. Disamping itu Model ER ini merupakan salah satu alat untuk perancangan dalam basis data.
image source: |
baca juga: Teknik Pencarian Fakta Dalam Perancangan Basis Data
Salah satu pemodelan basis data secara konseptual adalah pemodelan berbasis relasi antar entitas. Pemodelan ini dikenal karena mudah dimengerti. Konsep utama dari pemodelan ini berakar pada Entitas entitas dan relasi antar entitas. Pada bab ini akan di bahas pengertian entitas, atribut dan relasi, derajat himpunan relasi, kardinalitas relasi, serta pengenalan key sebagai salah satu constraint dalam ER.
1. ER Sebagai Salah Satu Pemodelan Konseptual Basis Data
Didalam membuat sebuah Basis Data, hal pertama yang harus dilakukan adalah mendesain tabel tabel yang akan digunakan untuk menyimpan data sesuai bisnis proses yang kita inginkan. Proses konseptual adalah pandangan secara konsep tentang basis data. Pandangan konseptual ini tentunya harus bisa diimplementasikan kedalam bentuk tabel, karena basis data relasional hanya mengenal tabel.
ER adalah salah satu pemodelan basis data konseptual yang menggambarkan basis data ke dalam bentuk Entitas-Entitas dan Relasi yang terjadi di antara entitas-entitas yang ada. Entitas diartikan sebagai ‘objek’ didunia nyata yang bisa dibedakan dengan ‘objek’ yang lain. Relasi diartikan sebagai hubungan yang terjadi diantara satu entitas dengan entitas yang lainnya.
ER adalah salah satu pemodelan basis data konseptual yang menggambarkan basis data ke dalam bentuk Entitas-Entitas dan Relasi yang terjadi di antara entitas-entitas yang ada. Entitas diartikan sebagai ‘objek’ didunia nyata yang bisa dibedakan dengan ‘objek’ yang lain. Relasi diartikan sebagai hubungan yang terjadi diantara satu entitas dengan entitas yang lainnya.
2. Entitas dan Himpunan Entitas
Definisi entitas adalah objek yang dirasa penting di sistem tersebut, yg bisa berupa :
Sebuah entitas / himpunan entitas dapat di gambarkan / di notasikan dengan sebuah gambar persegi panjang. Berikut merupakan contoh entitas mahasiwa, jadwal dan pinjaman.
Setiap entitas mempunyai atribut yang melekat pada entitas tersebut. Berikut gambaran konseptual basis data (* entitas dan atribut) yang direfleksikan kedalam bentuk fisik dari basis data (* tabel dan kolom).
3. Atribut
Atribut merupakan gambaran karakteristik dari sebuah entitas atau himpunan entitas. Contoh : atribut untuk himpunan entitas mahasiswa adalah nim, nama, alamat, ipk, program studi, hobi, dsb.
Setiap atribut mempunyai domain value set yaitu batasan batasan yg dibolehkan bagi suatu atribut.
Tipe-tipe atribut dapat dibedakan:
a. Simple dan Composite
Atribut Simple yaitu suatu atribut yang tidak bisa dibagi menjadi bagian yg lebih kecil lagi. Contoh atribut simple adalah Jenis Kelamin.
Atribut Composite yaitu suatu atribut yang dapat di bagi menjadi beberapa bagian. Contoh atribut composite Nama dapat di bagi menjadi nama depan dan nama belakang.
b. Single value dan multivalued
Atribut Single value yaitu suatu atribut yang bisa di isi paling banyak 1 nilai untuk setiap baris data. Contoh atribut single value adalah Jenis Kelamin.
Atribut Multivalued yaitu suatu atribut yang bisa lebih dari 1 nilai yang sejenis untuk setiap baris data. Contoh atribut mutlivalued value adalah Alamat, No telp dan hobi. Ketiga atribut tersebut bisa berisi lebih dari 1. Contoh untuk 1 entitas orang bisa mempunyai lebih dari 1 nilai untuk atribut hobi yang isinya musik, olahraga begitu juga untuk telp dan alamat (* karena bisa mempunyai > 1 no telp dan > 1 alamat)
c. Derived attribute
Derived Attribute yaitu suatu atribut yang nilainya didapatkan dari hasil pengolahan atribut lain. Contoh atribut derived adalah umur yaitu didapatkan dari perhitungan tanggal lahir dan tanggal sekarang. IPK yang didapatkan dari penjumlahan nilai di bagi dengan jumlah sks yang diambil.
Notasi atribut digambarkan dengan gambar elips. Atribut kunci biasa di beri tanda # atau garis bawah. Contoh himpunan entitas mahasiswa mempunyai atribut nim sebagai key, prodi, nama, ipk, dsb
4. Relasi
ER menggambarkan entitas-entitas dengan atributnya yang saling berelasi. Relasi menggambarkan hubungan antara entitas satu dengan entitas yang lain sesuai dengan proses bisnisnya. Notasi relasi didalam diagram ER digambarkan dengan notasi belah ketupat.
Perhatikan contoh relasi antara mahasiswa dengan organisasi berikut.
Gambar di atas menunjukkan hubungan antara entitas mahasiswa dan entitas organisasi. Relasi yang terjadi adalah relasi mempunyai, dimana mahasiwa mempunyai organisasi. Entitas mahasiwa memiliki atribut nim, nama, alamat, prodi, ipk, dsb. Sedangkan entitas organisasi memiliki atribut kd_organisasi, nama_organisasi, jenis_organisasi (* olahraga/kesenian/jurusan dsb). 1 Mahasiswa bisa mempunyai 0 atau lebih organisasi pada semester dan tahun ajaran tertentu. 1 Organisasi bisa di punyai 0 atau lebih mahasiswa pada semester dan tahun ajaran tertentu. Kardinalitas relasi adalah n ke n. Dampak dari kardinalitas n ke n ini, relasi menjadi atribut, primary key dari entitas mahasiwa dan primary key dari entitas organisasi masuk ke tabel relasi sebagai atribut. Atribut tambahan berupa semester dan tahun ajaran merupakan atribut tambahan pada tabel relasi mempunyai, atribut ini disebut atribut deskriptif. Atribut deskriptif ini muncul karena adanya kebutuhan dari proses bisnis untuk mencatat historis mahasiwa tersebut per semester dan tahun ajaran tertentu, sehingga bisa di lihat track record organisasi mahasiwa tersebut selama belajar di kampus dari semester ke semester berikutnya.
Berikut merupakan contoh gambaran antara entitas mahasiwa dan entitas organisasi.
5. Derajat Himpunan Relasi
Jika dilihat dari jumlah entitas yang dihubungkan oleh sebuah relasi, maka kita bisa membagi menjadi 3 macam:
- Unary (Hanya me-relasi-kan 1 entitas)
Relasi di atas menggambarkan entitas karyawan yang ber-relasi dengan entitas karyawan. Entitas karyawan bisa merupakan karyawan biasa tetapi bisa juga merupakan manajer. Relasi yang terjadi yaitu relasi karyawan bekerja untuk manajer (* entitas manajer adalah salah satu karyawan juga). Perhatikan kardinalitas relasinya, 1 karyawan hanya bekerja untuk 1 manajer, tetapi 1 manajer bisa mempunyai banyak bawahan.
- Binary (Me-relasi-kan 2 entitas)
Relasi di atas menggambarkan entitas pelangan yang ber-relasi dengan entitas pinjaman. 1 pelanggan bisa mempunyai banyak nomor pinjaman, dan 1 nomor pinjaman hanya untuk 1 pelanggan.
- Ternary (Me-relasi-kan 3 entitas)
Relasi di atas menggambarkan entitas karyawan yang ber-relasi dengan entitas cabang dan entitas pekerjaan melalui relasi bekerja_di. 1 karyawan bekerja di sebuah id pekerjaan tertentu dan juga bekerja di sebuah cabang tertentu. Ada 3 entitas yang terlibat dari relasi di atas
6. Kardinalitas Relasi
Kardinalias relasi menggambarkan banyaknya jumlah maksimum entitas dapat ber-relasi dengan entitas pada himpunann entitas yang lain. Pada himpunan relasi biner, pemetaan kardinalitas relasi dapat berupa salah satu dari pilihan berikut :
- Satu ke Satu
Relasi di atas menggambarkan bahwa untuk setiap entitas di himpunan entitas A berpasangan dengan maksimal 1 entitas di himpunan entitas B. Asumsi kita akan membuat sebuah tugas yaitu menjadi pj_cuci_piring. 1 Orang di tugaskan untuk menjadi pj_cuci_piring di maksimal 1 hari. Begitupun juga jika di balik, pada 1 hari, maksimal 1 orang yang menjadi pj_cuci_piring. Dari A ke B kardinalitasnya maksimal 1, dan dari B ke A kardinalitasnya maksimal 1. Oleh karena itu relasi ini berkardinalitas 1 ke 1.
- Satu ke Banyak
Relasi di atas menggambarkan bahwa untuk setiap entitas di himpunan entitas A berpasangan dengan banyak entitas di himpunan entitas B. Asumsi yang berbeda di pakai ketika memandang relasi ini, 1 orang bisa memperoleh pj_cuci_piring untuk > 1 hari. Tetapi 1 hari hanya di pj-kan hanya untuk maksimal 1 orang. Dari A ke B kardinalitasnya maksimal adalah banyak, dan dari B ke A kardinalitasnya maksimal 1. Oleh karena itu relasi ini berkardinalitas 1 ke banyak.
- Banyak ke Satu
Relasi di atas menggambarkan bahwa untuk setiap entitas di himpunan entitas A berpasangan dengan maksimal 1 entitas di himpunan entitas B. Asumsikan bahwa untuk 1 hari pj_cuci_piring boleh di berikan pada banyak orang, sedangkan 1 orang hanya di berikan tugas untuk menjadi pj_cuci_piring sebanyak maksimal 1 hari. Dari A ke B kardinalitasnya maksimal adalah 1, dan dari B ke A kardinalitasnya maksimal adalah banyak. Oleh karena itu relasi ini berkardinalitas banyak ke 1.
- Banyak ke Banyak
Relasi di atas menggambarkan bahwa untuk setiap entitas di himpunan entitas A berpasangan dengan maksimal banyak entitas di himpunan entitas B. Asumsikan bahwa dalam 1 hari pj_cuci_piring bisa di bebankan pada banyak orang dan 1 orang bisa di bebankan untuk menjadi pj_cuci_piring lebih dari 1 hari. Dari A ke B kardinalitasnya maksimal adalah banyak, dan dari B ke A kardinalitasnya maksimal adalah banyak. Oleh karena itu relasi ini berkardinalitas banyak ke banyak.
7. Key
Penggunaan key merupakan cara untuk membedakan suatu entitas didalam himpunan entitas dengan entitas lain. Key dipilih karena unik, untuk setiap entitas sehingga bisa di bedakan dari entitas yang lain. Kita bisa mendefinisikan key sebagai satu atau gabungan dari beberapa atribut yang dapat membedakan semua row dalam relasi secara unik.
Macam key ada 3 yaitu :
a. Superkey
Superkey yaitu satu atau lebih atribut (kumpulan atribut) yang dapat membedakan satiap baris data dalam sebuah relasi secara unik. Contoh super key yaitu =
b. Candidate key
Kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah relasi secara unik. Contoh Nim
c. Primary key
Primary key merupakan salah satu dari candidate key yang terpilih. Alasan pemilihan primary key :
Contoh dari primary key adalah Nim
8. Diagram ER
Merupakan diagram model konseptual untuk menggambarkan struktur logis dari basisdata berbasis grafis.
Notasi yang digunakan di Diagram ER adalah :
9. Constraint Cardinalitas
Dalam menggambarkam kardinalitas pada Diagram ER, digunakan garis panah (->) yang menunjukkan “Satu” atau garis biasa (—) yang menunjukkan “Banyak”.
10. Himpunan Entitas Lemah
Secara umum, Himpunan Entitas Lemah tidak memiliki primary key dan selalu bergantung pada entitas lain. Notasi entitas lemah digambarkan dengan double persegi panjang, sedangkan relasi untuk himpunan entitas lemah digambarkan dengan double diamond. Diskriminator / key parsial adalah atribut – atribut yg dpt membedakan entitas – entitas yang terdapat di himpunan entitas lemah. Diskriminator tidak sama dengan primary key. Konsep diskriminator hanya di pakai pada himpunan entitas lemah. Primary key pada Himpunan Entitas lemah ada 2 yaitu primary key dari entitas kuat yg berelasi dan diskriminator / key parsialnya.
Diskriminator di notasikan dengan garis bawah yang putus putus.
Relasi di atas menggambarkan bahwa seorang pegawai mendapatkan fasilitas tunjangan dari perusahaan tempat dia bekerja. Tunjangan dalam hal ini adalah entitas lemah. Tunjangan sebagai entitas tidak bisa berdiri sendiri, tunjangan harus bergantung pada entitas pegawai (* tidak akan ada tunjangan jika tidak ada pegawai).
Kardinalitas relasi yang terjadi pada himpunan entitas lemah biasanya merupakan banyak ke 1 / 1 ke banyak dengan kardinalitas 1 di himpunan entitas yang lebih kuat.
11. Spesialisasi
Spesialisasi merupakan proses desain top-down dengan mendesain subgrouping didalam didalam himpunan entitas yang berbeda dari himpunan entitas. Tujuan dari spesialisasi adalah memberikan gambaran konseptual tentang perbedaan karakteristik dari himpunan entitas yang hampir serupa dengan konsep sub grouping / pengelompokan.
Subgrouping di atas menjadi himpunan entias yang levelnya lebih rendah dan memiliki atribut tersendiri yang tidak dimiliki pada level di atasnya. Atribut ini khas dan merupakan pembeda dari entitas di subgroup yang lain. IS A dinotasikan dengan gambar segitiga berlabel IS A.
Sifat dari spesialisasi adalah inheritan atribut yaitu atribut pada level tinggi secara otomatis akan di turunkan pada level di bawahnya.
Contoh di atas menggambarkan bahwa entitas pegawai mempunyai 2 subgroup yaitu pegawai tetap dan pegawai honorer. Kedua entitas pegawai tetap dan pegawai honorer sama sama mempunyai atribut turunan yaitu nama dan id_pegawai dari entitas pegawai. Perbedaan dari pegawai tetap dan pegawai honorer terdapat di atribut yang melekat pada subgroup-nya. Atribut besar tunjangan dan gaji perbulan hanya terdapat di himpunan entitas pegawai tetap, sedangkan atribut upah per jam dan jumlah jam kerja terdapat di himpunan entitas pegawai honorer.
12. Generalisasi
Generalisasi merupakan proses desain bottom-up dengan mengkombinasikan jumlah himpunan entitas yang digunakan secara bersama sama. Spesialisasi dan generalisasi sama sama digambarkan dengan notasi IS A, yang membedakan adalah sudut pandangnya saja. Jika Spesialisasi kita mendefinisikan entitas secara umum kemudian mencari subgroup dari entitas tersebut, tetapi generalisasi memandang sebaliknya, dari adanya subgroup subgroup yang berbeda kemudian di cari entitas umum yang mewakili 2 himpunan entitas tersebut.
13. Agregasi
Agregasi adalah enkapsulasi dari entitas entitas yang berelasi (*n-n). Pada umumnya terbentuk dari kardinalitas relasi banyak ke banyak. Didalam konsep agregasi terdapat istilah enkapsulasi relasi dari kedua entitas. Enkapsulasi di perlukan karena kedua himpunan entitas yang ber-relasi tersebut merupakan 1 kesatuan yang tidak bisa di pisah. Notasi agregasi di gambarkan dengan gambar persegi panjang yang membungkus himpunan entitas yang saling ber-relasi.
Gambar di atas menunjukkan relasi dosen mengajar sebuah mata kuliah dan mahasiswa mengambil mata kuliah yang diajarkan oleh dosen tertentu. Agregasi di perlukan dikarenakan tidak di mungkinkan mahasiwa untuk mengambil mata kuliah tanpa adanya dosen yang bersedia untuk mengajar mata kuliah tersebut. Dalam kasus di atas menekankan bahwa himpunan entitas dosen harus ber-relasi terlebih dahulu dengan himpunan entitas mata kuliah, kemudian relasinya di pandang sebagai 1 entitas yang ber-relasi dengan himpunan entitas mahasiwa lewat relasi mengambil. Primary key dari kedua himpunan entitas dosen dan mata kuliah akan secara implisit masuk ke relasi mengajar dengan di tambah 2 atribut deskriptif (* semester dan thn_ajaran). Relasi tersebut di anggap sebagai 1 entitas seperti gambar di bawah ini.
14. Ringkasan notasi simbol di ER
15. Penurunan skema ER ke Tabel
Penurunan skema dimaksudkan untuk mengubah sebuah konsep hubungan entitas dan relasi kedalam bentuk fisik tabel tabel yang berelasi. Inti dari Entity Relationship adalah menggambarkan hubungan di dunia nyata kedalam bentuk entitas entitas yang saling ber-relasi, dari diagram ini bisa di buat kedalam bentuk tabel yang langsung di implementasikan kedalam basis data.
Secara umum penurunan diagram ER ke tabel memiliki aturan sebagai berikut :
16. Representasi Atribut sebagai Kolom
Pada atribut bertipe simple , single dan derived direpresentasikan sama persis seperti diagram ER. Tetapi untuk atribut komposit dan multivalued mempunyai aturan tersendiri.
Atribut komposit akan dipecah dengan membuat atribut terpisah untuk masing masing komponennya. Contoh atribut nama pada tabel mahasiwa, di pecah menjadi 2 kolom yaitu nama depan dan nama belakang.
Atribut multivalued mengharuskan untuk di pecah menjadi 2 Tabel. Atribut multivalued M dari entitas E direpesentasikan oleh tabel terpisah EM. Perhatikan gambar di bawah yang menunjukkan bagaimana penurunan sebuah atribut multivalued :
17. Representasi Himpunan Entitas sebagai Tabel
Himpunan entitas kuat di representasikan kedalam tabel dengan kolom sama persis dengan atribut yang sudah di definisikan di diagram ER. Perhatikan gambar di bawah ini :
Himpunan entitas lemah akan menjadi tabel tersendiri yang didalamnya ada kolom primary key yang merupakan identifikasi dari himpunan entitas bawah menggambarkan himpunan entitas lemah di turunkan kedalam tabel.
18. Representasi Relasi (* pada kardinalitas N to N)
Relasi dari Himpunan Banyak ke Banyak direpresentasikan kedalam Tabel tersendiri dengan primary key dari 2 Entitas menjadi atribut di Tabel Relasi. Perhatikan relasi banyak ke banyak berikut dan contoh penurunan ke tabel :
19. Hubungan kardinalitas dengan tabel yang terbentuk
Kardinalitas relasi dari Himpunan Entitas yang saling ber-relasi akan menentukan banyaknya tabel yang bisa di buat. Adapun aturannya sebagai berikut :
- 1 ke 1
Pilih primary key di 1 himpunan entitas untuk menjadi foreign key bagi himpunan entitas yang lain.
- 1 ke banyak / banyak ke 1
Primary key pada Tabel berkardinalitas sedikit menjadi foreign key pada tabel berkardinalitas banyak.
- Banyak ke banyak
Sudah jelas di atas
20. Representasi Spesialisasi (IS A)
Ada 2 pendekatan yang dipakai didalam menurunkan spesialisasi kedalam tabel.
Pendekatan 1
(*dengan memasukkan primary key pada level yg lebih tinggi ke tabel dengan level yang lebih rendah)
Pendekatan 2
21. Representasi Agregasi
Untuk merepresentasikan agregasi, buatlah tabel yang terdiri dari :
22. Participation Constraint
Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya dengan entity lain .
Terdapat 2 macam Participation Constraint :
a. Total Participation
Keberadaan suatu entity tergantung pada hubungannya dengan entity lain.
b. Partial Participation
Keberadaan suatu entity tidak tergantung pada hubungannya dengan entity lain.
23. Weak entity
- Objek Konkrit
Contoh : Orang, Buku - Objek Abstrak
Contoh : Jadwal, Pinjaman, Tabungan
Bambang adalah salah satu contoh dari entitas. Sedangkan bambang, susi, sumarno merupakan himpunan entitas orang. Dapat kita katakan bahwa Himpunan Entitas (Entity Set): Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama. Kumpulan entitas orang dengan karakteristik mempunyai nim, prodi, dsb bisa kita katakan merupakan himpunan entitas mahasiwa. Entitas menunjuk kepada pada individu suatu objek sedangkan himpunan entitas menunjuk pada rumpun (family) dari individu tersebut.
Gambar 2 1 Himpunan Entitas Mahasiswa |
Gambar 2 2 Contoh himpunan entitas |
Gambar 2 3 Gambaran Himpunan entitas di Tabel |
Atribut merupakan gambaran karakteristik dari sebuah entitas atau himpunan entitas. Contoh : atribut untuk himpunan entitas mahasiswa adalah nim, nama, alamat, ipk, program studi, hobi, dsb.
Setiap atribut mempunyai domain value set yaitu batasan batasan yg dibolehkan bagi suatu atribut.
Tipe-tipe atribut dapat dibedakan:
a. Simple dan Composite
Atribut Simple yaitu suatu atribut yang tidak bisa dibagi menjadi bagian yg lebih kecil lagi. Contoh atribut simple adalah Jenis Kelamin.
Atribut Composite yaitu suatu atribut yang dapat di bagi menjadi beberapa bagian. Contoh atribut composite Nama dapat di bagi menjadi nama depan dan nama belakang.
Gambar 2 4 Contoh Atribut Komposit |
Atribut Single value yaitu suatu atribut yang bisa di isi paling banyak 1 nilai untuk setiap baris data. Contoh atribut single value adalah Jenis Kelamin.
Atribut Multivalued yaitu suatu atribut yang bisa lebih dari 1 nilai yang sejenis untuk setiap baris data. Contoh atribut mutlivalued value adalah Alamat, No telp dan hobi. Ketiga atribut tersebut bisa berisi lebih dari 1. Contoh untuk 1 entitas orang bisa mempunyai lebih dari 1 nilai untuk atribut hobi yang isinya musik, olahraga begitu juga untuk telp dan alamat (* karena bisa mempunyai > 1 no telp dan > 1 alamat)
c. Derived attribute
Derived Attribute yaitu suatu atribut yang nilainya didapatkan dari hasil pengolahan atribut lain. Contoh atribut derived adalah umur yaitu didapatkan dari perhitungan tanggal lahir dan tanggal sekarang. IPK yang didapatkan dari penjumlahan nilai di bagi dengan jumlah sks yang diambil.
Notasi atribut digambarkan dengan gambar elips. Atribut kunci biasa di beri tanda # atau garis bawah. Contoh himpunan entitas mahasiswa mempunyai atribut nim sebagai key, prodi, nama, ipk, dsb
Gambar 2 5 Entitas mahasiswa dengan Atribut |
ER menggambarkan entitas-entitas dengan atributnya yang saling berelasi. Relasi menggambarkan hubungan antara entitas satu dengan entitas yang lain sesuai dengan proses bisnisnya. Notasi relasi didalam diagram ER digambarkan dengan notasi belah ketupat.
Perhatikan contoh relasi antara mahasiswa dengan organisasi berikut.
Gambar 2 6 Relasi di gambarkan dengan belah ketupat |
Berikut merupakan contoh gambaran antara entitas mahasiwa dan entitas organisasi.
Gambar 2 7 Himpunan Entitas Mahasiwa Ber-Relasi dengan Himpunan Entitas Organisasi |
Jika dilihat dari jumlah entitas yang dihubungkan oleh sebuah relasi, maka kita bisa membagi menjadi 3 macam:
- Unary (Hanya me-relasi-kan 1 entitas)
Gambar 2 8 Contoh Derajat Relasi Unary |
- Binary (Me-relasi-kan 2 entitas)
Gambar 2 9 Contoh Derajat Relasi Binary |
Relasi di atas menggambarkan entitas pelangan yang ber-relasi dengan entitas pinjaman. 1 pelanggan bisa mempunyai banyak nomor pinjaman, dan 1 nomor pinjaman hanya untuk 1 pelanggan.
- Ternary (Me-relasi-kan 3 entitas)
Gambar 2 10 Contoh Derajat Relasi Ternary |
6. Kardinalitas Relasi
Kardinalias relasi menggambarkan banyaknya jumlah maksimum entitas dapat ber-relasi dengan entitas pada himpunann entitas yang lain. Pada himpunan relasi biner, pemetaan kardinalitas relasi dapat berupa salah satu dari pilihan berikut :
- Satu ke Satu
Gambar 2 11 Relasi dengan Kardinalitas 1 ke 1 |
- Satu ke Banyak
Gambar 2 12 Relasi dengan Kardinalitas 1 ke Banyak |
- Banyak ke Satu
Gambar 2 13 Relasi dengan Kardinalitas Banyak ke 1 |
- Banyak ke Banyak
Gambar 2 14 Relasi dengan Kardinalitas Banyak ke Banyak |
7. Key
Penggunaan key merupakan cara untuk membedakan suatu entitas didalam himpunan entitas dengan entitas lain. Key dipilih karena unik, untuk setiap entitas sehingga bisa di bedakan dari entitas yang lain. Kita bisa mendefinisikan key sebagai satu atau gabungan dari beberapa atribut yang dapat membedakan semua row dalam relasi secara unik.
Macam key ada 3 yaitu :
a. Superkey
Superkey yaitu satu atau lebih atribut (kumpulan atribut) yang dapat membedakan satiap baris data dalam sebuah relasi secara unik. Contoh super key yaitu =
- Nim, nama, alamat, kota
- Nim, nama, alamat
- Nim, nama
- Nim
b. Candidate key
Kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah relasi secara unik. Contoh Nim
c. Primary key
Primary key merupakan salah satu dari candidate key yang terpilih. Alasan pemilihan primary key :
- Lebih sering di jadikan acuan
- Lebih ringkas
- Jaminan keunikan key lebih baik
Contoh dari primary key adalah Nim
8. Diagram ER
Merupakan diagram model konseptual untuk menggambarkan struktur logis dari basisdata berbasis grafis.
Gambar 2 15 Contoh Diagram ER |
- Garis : Link yang menghubungkan atara Entitas dengan atribut, dan entitas dengan relasi atau entitas
- Elips dobel : Menunjukkan atribut yang multivalued
- Elips dengan garis terputus : Menunjukkan atribut turunan
9. Constraint Cardinalitas
Dalam menggambarkam kardinalitas pada Diagram ER, digunakan garis panah (->) yang menunjukkan “Satu” atau garis biasa (—) yang menunjukkan “Banyak”.
Gambar 2 16 Relasi 1 ke 1 |
- 1 Mahasiswa hanya boleh menjabat 1 jabatan dalam 1 periode tertentu.
- 1 Jabatan hanya boleh di jabat oleh 1 mahasiswa dalam 1 periode tertentu.
Gambar 2 17 Relasi 1 ke banyak |
- 1 Jabatan hanya boleh dijabat oleh 1 mahasiswa dalam 1 periode tertentu dan 1 organisasi tertentu.
- 1 Mahasiswa boleh menjabat 1 jabatan dalam 1 periode tertentu di organisasi yang berbeda.
Gambar 2 18 Relasi Banyak ke 1 |
- 1 Jenis Beasiswa boleh diberikan untuk banyak mahasiwa
- 1 Mahasiwa hanya boleh mendapatkan 1 Jenis beasiwa
Gambar 2 19 Relasi Banyak ke Banyak |
- 1 Mahasiswa boleh mengambil banyak mata kuliah
- 1 Mata kuliah boleh diambil banyak mahasiwa
10. Himpunan Entitas Lemah
Secara umum, Himpunan Entitas Lemah tidak memiliki primary key dan selalu bergantung pada entitas lain. Notasi entitas lemah digambarkan dengan double persegi panjang, sedangkan relasi untuk himpunan entitas lemah digambarkan dengan double diamond. Diskriminator / key parsial adalah atribut – atribut yg dpt membedakan entitas – entitas yang terdapat di himpunan entitas lemah. Diskriminator tidak sama dengan primary key. Konsep diskriminator hanya di pakai pada himpunan entitas lemah. Primary key pada Himpunan Entitas lemah ada 2 yaitu primary key dari entitas kuat yg berelasi dan diskriminator / key parsialnya.
Diskriminator di notasikan dengan garis bawah yang putus putus.
Gambar 3 1 Contoh Himpunan Entitas Lemah |
Relasi di atas menggambarkan bahwa seorang pegawai mendapatkan fasilitas tunjangan dari perusahaan tempat dia bekerja. Tunjangan dalam hal ini adalah entitas lemah. Tunjangan sebagai entitas tidak bisa berdiri sendiri, tunjangan harus bergantung pada entitas pegawai (* tidak akan ada tunjangan jika tidak ada pegawai).
Kardinalitas relasi yang terjadi pada himpunan entitas lemah biasanya merupakan banyak ke 1 / 1 ke banyak dengan kardinalitas 1 di himpunan entitas yang lebih kuat.
11. Spesialisasi
Spesialisasi merupakan proses desain top-down dengan mendesain subgrouping didalam didalam himpunan entitas yang berbeda dari himpunan entitas. Tujuan dari spesialisasi adalah memberikan gambaran konseptual tentang perbedaan karakteristik dari himpunan entitas yang hampir serupa dengan konsep sub grouping / pengelompokan.
Subgrouping di atas menjadi himpunan entias yang levelnya lebih rendah dan memiliki atribut tersendiri yang tidak dimiliki pada level di atasnya. Atribut ini khas dan merupakan pembeda dari entitas di subgroup yang lain. IS A dinotasikan dengan gambar segitiga berlabel IS A.
Sifat dari spesialisasi adalah inheritan atribut yaitu atribut pada level tinggi secara otomatis akan di turunkan pada level di bawahnya.
Gambar 3 2 Contoh Spesialisasi |
Contoh di atas menggambarkan bahwa entitas pegawai mempunyai 2 subgroup yaitu pegawai tetap dan pegawai honorer. Kedua entitas pegawai tetap dan pegawai honorer sama sama mempunyai atribut turunan yaitu nama dan id_pegawai dari entitas pegawai. Perbedaan dari pegawai tetap dan pegawai honorer terdapat di atribut yang melekat pada subgroup-nya. Atribut besar tunjangan dan gaji perbulan hanya terdapat di himpunan entitas pegawai tetap, sedangkan atribut upah per jam dan jumlah jam kerja terdapat di himpunan entitas pegawai honorer.
12. Generalisasi
Generalisasi merupakan proses desain bottom-up dengan mengkombinasikan jumlah himpunan entitas yang digunakan secara bersama sama. Spesialisasi dan generalisasi sama sama digambarkan dengan notasi IS A, yang membedakan adalah sudut pandangnya saja. Jika Spesialisasi kita mendefinisikan entitas secara umum kemudian mencari subgroup dari entitas tersebut, tetapi generalisasi memandang sebaliknya, dari adanya subgroup subgroup yang berbeda kemudian di cari entitas umum yang mewakili 2 himpunan entitas tersebut.
13. Agregasi
Agregasi adalah enkapsulasi dari entitas entitas yang berelasi (*n-n). Pada umumnya terbentuk dari kardinalitas relasi banyak ke banyak. Didalam konsep agregasi terdapat istilah enkapsulasi relasi dari kedua entitas. Enkapsulasi di perlukan karena kedua himpunan entitas yang ber-relasi tersebut merupakan 1 kesatuan yang tidak bisa di pisah. Notasi agregasi di gambarkan dengan gambar persegi panjang yang membungkus himpunan entitas yang saling ber-relasi.
Gambar 3 3 Contoh Agregasi |
Gambar 3 4 Relasi di pandang sebagai Himpunan Entitas |
Gambar 3 5 Ringkasan Notasi pada Diagram ER |
Penurunan skema dimaksudkan untuk mengubah sebuah konsep hubungan entitas dan relasi kedalam bentuk fisik tabel tabel yang berelasi. Inti dari Entity Relationship adalah menggambarkan hubungan di dunia nyata kedalam bentuk entitas entitas yang saling ber-relasi, dari diagram ini bisa di buat kedalam bentuk tabel yang langsung di implementasikan kedalam basis data.
Secara umum penurunan diagram ER ke tabel memiliki aturan sebagai berikut :
- Setiap himpunan entitas menjadi Tabel (* baik himpunan entitas kuat atau lemah)
- Setiap atribut menjadi kolom di tabel
- Kardinalitas relasi akan menentukan jumlah tabel yang terbentuk (* akan di bahas di bawah lebih detail)
16. Representasi Atribut sebagai Kolom
Pada atribut bertipe simple , single dan derived direpresentasikan sama persis seperti diagram ER. Tetapi untuk atribut komposit dan multivalued mempunyai aturan tersendiri.
Atribut komposit akan dipecah dengan membuat atribut terpisah untuk masing masing komponennya. Contoh atribut nama pada tabel mahasiwa, di pecah menjadi 2 kolom yaitu nama depan dan nama belakang.
Atribut multivalued mengharuskan untuk di pecah menjadi 2 Tabel. Atribut multivalued M dari entitas E direpesentasikan oleh tabel terpisah EM. Perhatikan gambar di bawah yang menunjukkan bagaimana penurunan sebuah atribut multivalued :
Gambar 3 6 Atribut multivalued di pecah menjadi entitas baru |
Himpunan entitas kuat di representasikan kedalam tabel dengan kolom sama persis dengan atribut yang sudah di definisikan di diagram ER. Perhatikan gambar di bawah ini :
Gambar 3 7 Atribut himpunan entitas kuat di representasikan kedalam tabel |
Gambar 3 8 Penurunan Himpunan Entitas Lemah ke tabel |
Relasi dari Himpunan Banyak ke Banyak direpresentasikan kedalam Tabel tersendiri dengan primary key dari 2 Entitas menjadi atribut di Tabel Relasi. Perhatikan relasi banyak ke banyak berikut dan contoh penurunan ke tabel :
Gambar 3 9 Penurunan Kardinalitas relasi N to N menjadi Tabel |
Kardinalitas relasi dari Himpunan Entitas yang saling ber-relasi akan menentukan banyaknya tabel yang bisa di buat. Adapun aturannya sebagai berikut :
- 1 ke 1
Pilih primary key di 1 himpunan entitas untuk menjadi foreign key bagi himpunan entitas yang lain.
- 1 ke banyak / banyak ke 1
Primary key pada Tabel berkardinalitas sedikit menjadi foreign key pada tabel berkardinalitas banyak.
- Banyak ke banyak
Sudah jelas di atas
20. Representasi Spesialisasi (IS A)
Ada 2 pendekatan yang dipakai didalam menurunkan spesialisasi kedalam tabel.
Pendekatan 1
- Bentuklah tabel untuk level entitas yg lebih tinggi
- Bentuklah tabel untuk level entitas yg lebih rendah
(*dengan memasukkan primary key pada level yg lebih tinggi ke tabel dengan level yang lebih rendah)
Gambar 3 10 Representasi spesialisasi ke tabel metoda 1 |
Pendekatan 2
- Bentuklah tabel untuk tiap himpunan entitas dengan semua atribut lokal dan turunan.
- Bisa jadi tabel pada level tinggi tidak perlu di simpan jika spesialisasi adalah total. Jika diperlukan bisa dibuat view yang menggabungkan tabel-tabel spesialisasi.
Gambar 3 11 Representasi spesialisasi ke tabel metoda 1 |
21. Representasi Agregasi
Untuk merepresentasikan agregasi, buatlah tabel yang terdiri dari :
- Foreign key dari himpunan entitas yang berhubungan
- Setiap atribut deskriptif
- Atribut baru untuk primary key di tabel relasi
Gambar 3 12 Representasi Agregasi untk tabel mata kuliah, dosen dan Dosen mengajar mt kul |
Gambar 3 13 Representasi Agregasi untuk tabel Mahasiwa dan Mahasiwa Mengambil Mtkul |
22. Participation Constraint
Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya dengan entity lain .
Terdapat 2 macam Participation Constraint :
Keberadaan suatu entity tergantung pada hubungannya dengan entity lain.
b. Partial Participation
Keberadaan suatu entity tidak tergantung pada hubungannya dengan entity lain.
23. Weak entity
- Weak Entity adalah suatu Entity dimana keberadaan dari entity tersebut tergantung dari keberadaan entity lain.
- Entity yang merupakan induknya disebut Identifying Owner dan relationshipnya disebut Identifying Relationship.
- Weak Entity selalu mempunyai Total Participation constraint dengan Identifying Owner.
Daftar Pustaka:
Sekian artikel tentang Konsep Pemodelan Enhanced Entity Relationship Diagram.
Konsep Pemodelan Enhanced Entity Relationship Diagram
4/
5
Oleh
Unknown