ERD / Entity Relationship Diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan satu dengan penyimpan yang lain. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang memiliki hubungan 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. 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.
ERD adalah suatu pemodelan dari basisdata relasional yang didasarkan atas persepsi di dalam dunia nyata, dunia ini senantiasa terdiri dari sekumpulan objek yang saling berhubungan antara satu dengan yang lainnya. Suatu objek disebut entity dan hubungan yang dimilikinya disebut relationship. Suatu entity bersifat unik dan memiliki atribut sebagai pembeda dengan entity lainnya. Contoh : entity Mahasiswa, mempunyai atribut nama, umur, alamat, dan nim.
Diagram hubungan entitas digunakan untuk mengkonstruksikan model data konseptual, memodelkan struktur data dan hubungan antar data dan mengimplementasikan basis data secara logika maupun secara fisik dengan DBMS(Database Management system). Dengan diagram hubungan entitas ini kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. Diagram hubungan entitas dapat membantu dalam menjawab persoalan tentang data yang diperlukan dan bagaimana data tersebut saling berhubungan.
Simbol Simbol dalam Entity Relationship Diagram
Simbol–simbol yang digunakan dalam entity relationship diagram adalah sebagai berikut ini :
1. Entity (rectangler)
Digunakan untuk menggambarkan obyek yang diidentifikasikan ke dalam lingkungan.
1. Entity (rectangler)
Digunakan untuk menggambarkan obyek yang diidentifikasikan ke dalam lingkungan.
2. Atribut (oval)
Digunakan untuk menggambarkan elemen-elemen dari suatu entity, yang menggambarkan karakter entity.
3. Hubungan (diamond)
Entity dapat berhubungan satu sama lain. Hubungan ini disebut dengan relationship.
4. Garis (line)
Digunakan untuk menghubungkan entity dengan relasi/hubungan, maupun entity dengan atribut.
Tahapan Perancangan ERD
1. Identifikasi dan menetapkan seluruh himpunan Entitas
2. Menentukan Atribut Key dari masing-masing himpunan entitas.
3. Identifikasi dan menetapkan seluruh himpunan Relasi di antara himpunan Entitas yang ada beserta kunci tamunya (foreign key).
4. Derajat relasi untuk setiap himpunan relasi.
5. Melengkapi himpunan relasi dengan atribut- atribut deskriptif.
1. Identifikasi dan menetapkan seluruh himpunan Entitas
Sebagaimana telah disebutkan, himpunan entitas mewakili sebuah kumpulan entitas yang jelas eksistensinya dan dapat berdiri sendiri. Akan tetapi, himpunan entitas mana saja yang kita pilih tidak hanya tergantung pada jenis topik/sistem yang kita tinjau, tetapi juga ditentukan oleh seberapa jauh ruang lingkup yang kita ingin akomodasi dalam rancangan basis data. Dalam lingkup sistem perkuliahan sesungguhnya ada banyak sekali himpunan entitas yang bisa kita libatkan seperti Mahasiswa, Kuliah, Praktikum, Dosen, Asisten, Ruang, Jurusan dll.
Namun dalam lingkup sistem perkuliahan yang sederhana, kita dapat identifikasi adanya tiga buah himpunan entitas , yaitu Mahasiswa, Kuliah dan Dosen
2. Menentukan Atribut Key dari masing-masing himpunan entitas.
Atribut-atribut key yang kita sertakan di masing-masing himpunan entitas merupakan atribut terpenting yang dapat mengidentifikasi(membedakan) setiap entitas yang ada didalamnya. Keberadaan atribut ini juga akan memberikan keyakinan tentang kebenaran eksistensi dari setiap himpunan entitas. Salah satu ciri dari himpunan entitas adalah kemandiriannya. Dengan mudah dapat kita sepakati, bahwa pengidentifikasi setiap entitas secara unik, dihimpunan entitas Mahasiswa adalah atribut nim, lalu dihimpunan entitas Kuliah adalah atribut kode_kul, dan dihimpunan entitas Dosen adalah atribut nama_dosen
3. Identifikasi dan menetapkan seluruh himpunan Relasi di antara himpunan Entitas yang ada beserta kunci tamunya (foreign key).
Langkah ke-3 ini sangat penting dalam pembentukan Diagram E-R. Ketepatan dalam menentukan relasi yang terjadi diantara himpunan entitas akan menentukan kualitas rancangan basis data yang kita bangun. Relasi yang kita tetapkan harus dapat mengakomodasi semua fakta yang ada dan menjamin kebutuhan pengajian data, akan tetapi dalam sisi lain juga harus dibuat seoptimal mungkin agar tidak memakai ruang penyimpanan yang lebih besar. Untuk itulah , relasi yang sifatnya tidak langsung harus ditiadakan. Himpunan relasi mempelajari dan mengajar merupakan relasi langsung yang terjadi diantara himpunan entitas Mahasiswa dan Kuliah serta antara himpunan entitas Dosen dan Kuliah , dapat di gambarkan sebagai berikut:
Himpunan relasi Mempelajari akan dapat mengakomodasi adanya fakta tentang sejumlah Mhs yang menganmbil mata kuliah tertentu, demikian juga dengan himpunan relasi mengajar yang dapat mengakomodasi fakta tentang dosen yang mengajar mata kuliah tertentu.
4. Menentukan derajat relasi untuk setiap himpunan relasi.
Karena memang fakta memperlihatkan bahwa seseorang mahasiswa boleh mengambil beberapa mata kuliah sekaligus, maka derajat relasi antara himpunan entitas mahasiswa & kuliah adalah banyak ke banyak. Sementar itu fakta yang menunjukan bahwa dosen dapat mengajar beberapa mata kuliah , maka derajat relasi antara himpunan entitas dosen dan kuliah adalah satu ke banyak, maka dapat kita gambarka Diagram E-R sebagai berikut:
5. Melengkapi himpunan relasi dengan atribut- atribut deskriptif
Langkah terakhir ini merupakan langkah pelengkap sehingga tidak seperti langkah-langkah sebelumnya. Keberadaan atribut deskriptif ini merupakan refleksi pengakomodasian terhadap fakta.
Menurut Al Bahra bin Ladjamudin B (2004:189) ERD adalah suatu model jaringan yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. Jadi, jelaslah bahwa ERD ini berbeda dengan DFD yang merupakan suatu model jaringan fungsi yang dilaksanakan oleh sistem. Sedangkan ERD merupakan model jaringan data yang menekankan pada struktur-struktur dan relationship data.
Diagram hubungan entitas atau yang lebih dikenal dengan sebutan ER diagram, adalah notasi grafik dari sebuah model data atau sebuah model jaringan yang menjelaskan tentang data yang tersimpan (data storage) dalam sistem secara abstrak. Diagram hubungan entitas tidak menyatakan bagaimana memanfaatkan data, membuat data, mengubah data, dan menghapus data.
Elemen-elemen Diagram Hubungan Entitas
- Entity
Pada ER diagram, entity digambarkan dengan sebuah bentuk persegi panjang.Entity adalah sesuatu apa saja yang ada di dalam sistem, nyata maupun abstrak dimana data tersimpan atau dimana terdapat data. Entitas diberi nama dengan kata benda dan dapat dikelompokkan dalam empat jenis nama yaitu orang, benda, lokasi, kejadian (terdapat unsur waktu di dalamnya).
- Relationship
Model relasional adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data. Setiap tabel memiliki sejumlah kolom, setiap kolom memiliki nama yang unik. Model relasional memiliki struktur record berformat tertentu dimana masing-masing isinya memiliki tipe-tipe yang berbeda (Misalnya tipe data untuk nomor induk pegawai adalah string, tentu berbeda dengan tipe data untuk nama [misalnya: string] yang panjangnya tidak ditentukan, bergantung pada komputer tempat aplikasi diimplementasikan.
Pada ER diagram, relationship dapat digambarkan dengan sebuah bentuk belah ketupat. Relationship adalah hubungan alamiah yang terjadi antara entitas. Pada umumnya penghubung (Relationship) diberi nama dengan kata kerja dasar, sehingga memudahkan untuk melakukan pmbacaan relasinya (bisa dengan kalimat aktif atau kalimat pasif). Penggambaran hubungan yang terjadi adalah sebuah bentuk belah ketupat dihubungkan dengan dua bentuk empat persegi panjang.
- Relationship Degree
Relationship degree atau derajat relationship adalah jumlah entitas yang berpartisipasi dalam satu relationship. Derajat relationship yang sering dipakai di dalam ERD:
· Unary Relationship
Unary relationship adalah model relationship yang terjadi diantara entityyang berasal dari entity set yang sama. Sering juga disebut sebagai Recursive Relationship atau Reflective Relationship.
· Binary Relationship
Binary relationship adalah model relationship antara instance-instance dari suatu tipe entitas (dua entity yang berasal dari entity yang sama). Relationship ini paling umum digunakan dalam pembuatan model data.
· Ternary Relationship
Ternary relationship merupakan antara instance-instance dari tiga tipe entitas secara serentak.
- Atribut Value
Atribut value atau nilai attribute adalah suatu occurrence tertentu dari sebuah attribute di dalam suatu entity atau relationship. Ada dua jenis atribut:
· Identifier (key) digunakan untuk menentukan suatu entity secara unik (primary key).
· Descriptor (nonkey attribute) digunakan untuk menspesifikasikan karakteristik dari suatu entity yang tidak unik.
- Kardinalitas (Cardinality)
Kardinalitas relasi menunjukkan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain. Terdapat tiga macam kardinalitas relasi yaitu:
· One to One
Tingkat hubungan satu ke satu, dinyatakan dengan satu kejadian pada entitas pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas yang kedua dan sebaliknya.
Yang berarti setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B, dan begitu juga sebaliknya setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
· One to Many atau Many to One
Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu. Tergantung dari arah mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas yang pertama dapat mempunyai banyak hubungan dengan kejadian pada entitas yang kedua. Sebaliknya satu kejadian pada entitas yang kedua hanya dapat mempunyai satu hubungan dengan satu kejadian pada entitas yang pertama.
o One to Many (satu ke banyak)
Yang berarti satu tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
o Many to One (banyak ke satu)
Yang berarti setiap tupel pada entitas A dapat berhubungan dengan paling banyak satu tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B.
· Many to Many
Tingkat hubungan kebanyakan terjadi jika tiap kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejadian pada entitas lainnya. Baik dilihat dari sisi intitas yang pertama, maupun dilihat dari sisi yang kedua.
Yang berarti setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian juga sebaliknya, dimana setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A.
Macam – macam kunci Relasional
Antara data base dengan relasional merupakan data yang saling berhubungan. Pada dasar nya basis data menggunakan model Relasional karena pada model ini menggunakan kunci untuk membedakan antara satu table dengan table lainnya. Kunci-kunci yang digunakan memiliki fungsi masing-masing dalam membedakan nya. Dibawah ini macam-macam kunci pada sebuah model relasional.
1. Super Key
Super key merupakan salah satu atau lebih atribut yang dimiliki agar dapat membedakan setiap baris data dalam table secara unik. Seperti contoh nya untuk melihat akademik suatu kampus dbutuhkan yang dapat membuka database akademik tersebut. Kata kunci nya seperti npm, nama, mhs, tanggal lahir.
2. Candidate KeyDalam candidate key ini merupakan atribut yang mempunyai nilai unik dan memiliki satu atribut yang dapat mengidentifikasi secara unik suatu kejadian nyata. Ada satu atribut juga yang menyatakan secara tidak langsung dimana tidak dapat membuang atribut tanpa merusak kepemilikan. Contohnya seperti npm dan nama mhs.
3. Primary Key
Dapat mengidentifikasi secara unik suatu kejadian tapi dapat juga mewakili setiap kejadian dari suatu data. Candidate key dapat mewakili secara menyeluruh terhadap data yang ada karna dapat menjadi peluang Primary Key. Contohnya : npm
4. Foreign Key
Atribut dengan menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya atribut biasa dari suatu relasi memiliki atribut yg menuju ke Primary Key dari relasi lain. Contohnya : npm, kode_matkul
5. Alternate KeyAtribut yang tidak terpilih atau tidak dipakai sebagai Primary Key dan Candidate Key
6. Composite Key
Merupakan atribut gabungan dua key atau lebih yang secara unik dapat mengidentifikasi sebuah tupel.
Merupakan atribut gabungan dua key atau lebih yang secara unik dapat mengidentifikasi sebuah tupel.
Untuk melakukan mapping (pemetaan) dari skema ER Diagram ke skema relasi terdapat langkah-langkah yang harus diperhatikan.
Langkah-langkah mapping:
- Untuk setiap entitas skema relasi R yang menyertakan seluruh Simple Atributedan Simple Attribute dari Composite Attribute yang ada, pilih salah satuatribut kunci sebagai Primary Key.
- Untuk setiap Entitas Lemah, buatlah skema relasi R dengan mengikutsertakanseluruh Simple Attribute. Tambahkan Primary Key dari entitas kuatnya(Owner Entity type) yang akan digunakan sebagai Primary Key bersama-samaPartial Key dari Entitas Lemah (digabung).
- Untuk setiap relasi binary 1:1, tambahkan Primary Key dari sisi yang lebih ”ringan” ke sisi (entitas) yang lebih ”berat”. Suatu sisi dianggap lebih ”berat” timbangannya apabila mempunyai partisipasi total. Tambahkan juga Simple Attribute yang terdapat pada relasi tersebut ke sisi yang lebih ”berat”.
Apabila kedua partisipasi adalah sama total, maka kedua entitas tersebut boleh digabung menjadi satu skema relasi.
- Untuk setiap relasi binary 1:N yang tidak melibatkan entitas lemah, tentukan mana sisi yang lebih ”berat”. Sisi dianggap lebih ”berat” timbangannya adalah sisi-N. Tambahkan Primary Key dari sisi yang ”ringan” ke skema relasi sisi yang lebih ”berat”. Tambahkan juga seluruh simple attribute yang terdapat pada relasibiner tersebut.
- Untuk setiap relasi binary M:N, buatlah skema relasi baru R dengan menyertakan seluruh simple attribute yang terdapat pada relasi biner tersebut. Tambahkan masing-masing primary key dari kedua sisi ke skema relasi R tersebut (sbg foreign key), lalu digabung menjadi satu membentuk Primary Key dari skema relasi R.
- Untuk setiap Multivalued Attribute, buatlah skema relasi R yang menyertakanatribut dari multivalue tersebut. Tambahkan Primary Key dari relasi yang memiliki multivalued tersebut. Kedua atribut tersebut membentuk Primary Key dari skema relasi R.
- Untuk setiap relasi n-ary dengan n>2, buatlah skema relasi R yang menyertakan seluruh Primary Key dari entitas yang ikut serta. Sejumlah n Foreign Key tersebut akan membentuk Primary Key untuk skema relasi R. Tambahkan seluruh Simple Attribute yang terdapat pada relasi n-ary tersebut.
Diagram Skema Konsepsual / ER Diagram for the company schema
Referensi :
http://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model
http://id.wikipedia.org/wiki/Diagram_hubungan_entitas
http://ahroihan.blogspot.com/2010/06/bab-ii-tinjauan-pustaka-2.html
http://www.edrawsoft.com/entity-relationship-diagrams.php
http://www.dbforum.com
http://artidari.blogspot.com/2012/04/simbol-simbol-dalam-entity-relationship.html
Tidak ada komentar:
Posting Komentar