1 / 49

Pemodelan Data (2) Entity Relationship Diagram

Pemodelan Data (2) Entity Relationship Diagram. Sub Topik. Menentukan entity Kardinalitas Batasan Partisipasi Mapping dari ER Diagram ke dlm Tabel. Menentukan Entity. Cara Menemukan Entitas. Buat ilustrasi/gambaran cerita tentang sistem yang akan dicari entitasnya

jock
Download Presentation

Pemodelan Data (2) Entity Relationship Diagram

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pemodelan Data (2)Entity Relationship Diagram

  2. Sub Topik • Menentukan entity • Kardinalitas • Batasan Partisipasi • Mapping dari ER Diagram ke dlm Tabel

  3. Menentukan Entity

  4. Cara Menemukan Entitas • Buat ilustrasi/gambaran cerita tentang sistem yang akan dicari entitasnya • Tandai setiap objek yang diwakili oleh kata benda yang ada di dalam ilustrasi tersebut • Untuk setiap objek tersebut yakinkan bahwa ia memiliki karakteristik yang nanti disebut sebagai atribut • Tentukan objek yang merupakan entitas (Jika memang ia memiliki karakteristik jadikan ia sebagai entitas)

  5. Contoh Cara Menemukan Entitas(1) • Contoh : Sistem Kepegawaian di perusahaan A • Langkah 1: Buat ilustrasi/gambaran cerita tentang sistem kepegawaian di perusahaan A • Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin pengawas/mandor dari pegawai perusahaan itu sendiri dan tidak semua pegawai memimpin pegawai yang lain. sehingga satu pengawas dapat memimpin beberapa pegawai. Setiap pegawai bekerja untuk suatu departemen dan dalam suatu departemen dapat terdiri dari beberapa pegawai. Setiap departemen dikepalai oleh seorang pegawai yang bekerja mulai tanggal tertentu. Sebuah departemen dapat berada di beberapa lokasi. Selain bekerja di suatu departemen pegawai dapat bekerja pada beberapa proyek. Setiap proyek dikendalikan/diatur oleh suatu departemen, namun suatu departemen tidak harus mengendalikan/mengatur proyek. Satu departemen dapat mengendalikan beberapa proyek dan satu proyek hanya dikendalikan oleh satu departemen Satu proyek dapat terdiri dari beberapa pegawai. Untuk keperluan penggajian perusahaan memerlukan data tanggungan pegawai. Seorang pegawai dapat menanggung beberapa tanggungan. Jika seorang pegawai pindah maka datanya akan dipindahkan/dihapus berikut data tanggungan/keluarganya. PPPGT VEDC MALANG

  6. Contoh Cara Menemukan Entitas(2) • Langkah 2: Tandai setiap objek yang diwakili oleh kata benda yang ada di dalam ilustrasi tersebut • Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin pengawas/mandor dari pegawai perusahaan itu sendiri dan tidak semua pegawai memimpin pegawai yang lain. sehingga satu pengawas dapat memimpin beberapa pegawai. Setiap pegawai bekerja untuk suatu departemen dan dalam suatu departemen dapat terdiri dari beberapa pegawai. Setiap departemen dikepalai oleh seorang pegawai yang bekerja mulai tanggal tertentu. Sebuah departemen dapat berada di beberapa lokasi. Selain bekerja di suatu departemen,pegawai dapat bekerja pada beberapa proyek. Setiap proyek dikendalikan/diatur oleh suatu departemen, namun suatu departemen tidak harus mengendalikan/mengatur proyek. Satu departemen dapat mengendalikan beberapa proyek dan satu proyek hanya dikendalikan oleh satu departemen Satu proyek dapat terdiri dari beberapa pegawai. Untuk keperluan penggajian perusahaan memerlukan data tanggunganpegawai. Seorang pegawai dapat menanggung beberapa tanggungan. Jika seorang pegawai pindah maka datanya akan dipindahkan/dihapus berikut data tanggungan/keluarganya. PPPGT VEDC MALANG

  7. Contoh Cara Menemukan Entitas(2) • Langkah 3: Untuk setiap objek tersebut yakinkan bahwa ia memiliki karakteristik yang nanti disebut sebagai atribut • Perusahaan: NoPerusahaan, nama, alamat • Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji • Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji • Departemen: Nomor, Nama, lokasi, jumlah pegawai • Lokasi : lokasi • Proyek: Nomor, nama, lokasi • Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan pegawai PPPGT VEDC MALANG

  8. Contoh Cara Menemukan Entitas(3) • Langkah 4: Tentukan objek yang merupakan entitas (Jika memang ia memiliki karakteristik jadikan ia sebagai entitas) • Perusahaan: NoPerusahaan, nama, alamat (hanya berisi satu baris data)  bukan entitas • Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji  entitas kuat • Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji  sama dengan entitas Pegawai • Departemen: Nomor, Nama, lokasi, jumlah pegawai  entitas kuat • Lokasi : lokasi (karakteristiknya departemen, tidak memiliki karakteristik lain (unik))  bukan entitas • Proyek: Nomor, nama, lokasi  entitas kuat • Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan pegawai  entitas lemah (tergantung pada pegawai) PPPGT VEDC MALANG

  9. Kardinalitas

  10. Nama_Perusahaan Nama NIP Pegawai Bekerja Perusahaan Alamat ID Alamat_Perush Notasi ER Diagram • Entity sets digambarkandengan • Relationship sets digambarkandengan • Hubunganantara Entity sets – Relationship sets sertaatribut – entity sets digambarkandengangaris • Atributdigambarkandengan • AtributMultivalue • Atribut Key

  11. Diagram E-R dengan atribut Composite, Multivalued dan derived

  12. Himpunan Relasi dengan Atribut

  13. ERD Perusahaan

  14. Derajat kardinalitas relasi (Cardinality Ratio) Kardinalitas relasi menunjukkan jumlah maksimum data entitas yang dapat berelasi dengan entitas lain

  15. Satu ke satu (one to one) Setiap data pada entitas A berhubungan dengan maksimal satu data pada entitas B, begitu pula sebaliknya Contoh: relasi “mengepalai” antara entitas Pegawai dengan entitas Departemen

  16. Satu ke Banyak (one to many) Setiap data pada entitas A bisa berhubungan dengan banyak data pada entitas B, tetapi data pada entitas B berhubungan maksimal hanya dengan sebuah data di A Contoh: relasi “menanggung” antara entitas pegawai terhadap entitas tanggungan

  17. Banyak ke Satu (many to one) Merupakan kebalikan dari relasi satu-ke-banyak Contoh: relasi “bekerja untuk” pada entitas pegawai terhadap entitas departemen

  18. Banyak ke banyak (many to many) Setiap data pada entitas A bisa berhubungan dengan banyak data pada entitas B, demikian pula sebaliknya Contoh: relasi “bekerja pada” pada entitas Pegawai terhadap entitas proyek

  19. Batasan Partisipasi

  20. Batasan Partisipasi (Participation Constraint) Menentukan apakah keberadaan sebuah entitas tergantung pada hubungannya ke entitas lain melalui jenis relasinya Ada 2 jenis: 1. Partisipasi Totalpartisipasi pegawai dalam relasi “bekerja untuk”, memberikan arti bahwa setiap data pada pegawai, harus direlasikan pada sebuah departemen. Atau tidak ada data pegawai yang tidak berelasi dengan data departemen 2. Partisipasi sebagianpartisipasi pegawai dalam relasi “mengepalai” terhadap departemen, tidak setiap data pada pegawai dihubungkan dengan departemen dengan relasi ini. Atau tidak semua pegawai mengepalai departemen

  21. (Min,max) PartisipasiTotal Contoh: Semua pegawaiharus bekerja di bawah suatu departemen (relasi disisi pegawai adalah relasi total) Notasi : • Partisipasi total:digambarkan dengan garis ganda pada relasi disisi pegawai • Partisipasi total:digambarkan dengan satu garis pada relasi disisi pegawai digabungkan dengan minimum 1 (minimum bekerja pada 1 departemen) PPPGT VEDC MALANG

  22. Partisipasi Parsial • Contoh:Beberapa pegawai mengepalai sebuah departemen (setiap pegawai tidak harus mengepalai suatu departemen) • Notasi: • Partisipasi parsial:digambarkan dengan satu garis pada relasi disisi pegawai • Partisipasi parsial:ditandai dengan satu garis pada relasi disisi pegawai digabungkan dengan minimum 0 (tidak mengepalai departemen) PPPGT VEDC MALANG

  23. Derajat Relasi Minimum • Menunjukkan hubungan (korespondensi) minimum yang boleh terjadi dalam sebuah relasi antar entitas. • Notasi (x,y) pada relasi menunjukkan derajat minimum (x) dan derajat maksimum (y) pada sebuah relasi • Partisipasi total bisa dinotasikan dengan memberikan derajat relasi minimum (x) = 1 Contoh: pada relasi “bekerja untuk” pada entitas pegawai terhadap departemen Derajat relasi minimumnya adalah satu

  24. Notasi lain untuk relasi

  25. Macam relasi • relasi Biner (binary relation) • relasi tunggal (unary relation) • relasi Multi entitas (n-ary relation) • relasi ganda (redundant relation)

  26. Relasi Biner (Binary Relation) Merupakan relasi yang terbentuk antar 2 buah entitas Contoh: relasi “bekerja pada” pada entitas pegawai terhadap entitas proyek

  27. Relasi Tunggal (Unary Relation) Merupakan relasi yang terjadi dari sebuah entitas ke entitas yang sama Contoh: relasi memimpin pada entitas pegawai

  28. Relasi Multi Entitas (N-ary Relation) Merupakan relasi dari 3 buah entitas atau lebih. Seharusnya dihindari, karena akan mengaburkan derajat relasi yang ada dalam relasi. Contoh:

  29. Relasi Ganda (Redundant Relation) Relasi yang jumlahnya lebih dari satu untuk dua buah entitas Contoh:

  30. Mapping ER Diagram ke Tabel

  31. Konsep Foreign Key • Foreign key adalah kolom yang diambil dari primary key entitas lain yang menggunakan hubungan antar 2 tabel tsb. Fakta Adi, Budi dan Cici bekerja pada bagian Persinalia. Sedangkan Rudi dan Santo bekerja pada bagian Gudang Dari fakta diatas dan panah relasi sebelah kiri, bagaimana cara menuliskan data yang menunjukkan hubungan/relasi antar tabel pegawai dan departemen?

  32. Algoritma 1 • Untuk setiap entitas kuat EK, buat tabel baru EK yang memasukkan semua attribut sederhana (simple attribut) • Untuk atribut komposit, hanya atribut sederhananya yang disertakan • Pilih salah satu key attribute dari EK sebagai primary key. Jika key yang terpilih merupakan atribut komposit, seluruh atribut sederhananya merupakan primary key

  33. Algoritma 1 Tabel PEGAWAI NoKTP NmDepan Inisial NmBlk JenisKel Alamat Gaji Langkah 1 Atributkompositnamatidakmenjadi field/kolompadatabel PEGAWAI, tetapiygdimasukkanadalahbagian simple attributnya.

  34. Algoritma 2 • Untuk setiap entitas lemah EL yang dimiliki oleh entitas kuat EK, buat tabel baru EL yang memasukkan semua atribut sederhana EL • Tambahkan pada EL foreign key yang diambil dari primary key EK • Primary key yang dibentuk merupakan gabungan primary key EK dan partial key dari EL (jika ada)

  35. Algoritma 2 Tabel TANGGUNGAN Peg_NoKTP Nama JenisKel TglLahirHubungan Langkah 2

  36. Algoritma 3 Untuk setiap relasi 1:1 antara entitas EK1 dan EK2: • Jika sama-sama merupakan partisipasi total, pilih salah satu. Tambahkan semua semua simple attribut dari entitas yang lain • Jika sama-sama merupakan partisipasi parsial, pilih salah satu. Tambahkan foreign key dari primary key entitas yang lain • Jika salah satu merupakan partisipasi total, pilih yang berpartisipasi total. Tambahkan foreign key dari primary key entitas yang lain Kemudian tambahkan semua simple atribut dari relasi tersebut

  37. Algoritma 3 Tabel DEPARTEMEN ……Peg_NoKTPKepala Langkah 1-3 Kolom-kolom yang telah dibentuk pada langkah-langkah sebelumnya

  38. Algoritma 4 • Untuk setiap relasi 1:N antara entitas EK1 dan EK2, pilih entitas yang memiliki derajat maksimum relasi=1 • Tambahkan sebuah foreign key dari primary key entitas lain yang memiliki derajat maksimum relasi = N • Tambahkan pula seluruh atribut dari relasi tersebut

  39. Algoritma 4 Tabel PEGAWAI ……Dep_NomorBekerjaDep_NamaBekerja Langkah 4 Kolom-kolom yang telah dibentuk pada langkah-langkah sebelumnya

  40. Algoritma 5 • Untuk setiap relasi M:N antara entitas EK1 dan EK2, buat tabel baru MN • Tambahkan seluruh simple attribut dari relasi tersebut • Tambahkan pula foreign key yang diambil dari primary key masing-masing entitas yang direlasikan • Primary key merupakan gabungan dari seluruh foreign key tersebut

  41. Algoritma 5 Tabel BEKERJAPADA Peg_NoKTP Pro_Nomor Pro_NamaLamaJam Langkah 5

  42. Algoritma 6 • Untuk setiap multivalued attribute, buat tabel baru MV • Tambahkan seluruh simple attributnya • Tambahkan pula sebagai foreign key, primary key dari entitas yang memiliki • Primary key merupakan gabungan dari dari seluruh fieldnya

  43. Algortima 6 Tabel DEP_LOKASI Dep_Nomor Dep_Nama Lokasi Langkah 6

  44. ERD Perusahaan

  45. Contoh Berdasarkan ERD Step 1: Langkah pertama mendefinisikan entitas kuat Tabel Pegawai Entitas pegawai memiliki atribut NoKTP,JenisKel,Alamat,Gaji dan atribut composit Nama (NmDepan,Inisial,NmBlk). Sehingga skema tabel pegawai sbb: Tabel Departemen Entitas departemen memiliki atribut Nomor,Nama, JmlPegawai dan atribut multi valued lokasi yang bisa menjadi tabel lain yang mengacu ke tabel departemen. Skemanya adalah sbb:

  46. Contoh Tabel proyek Entitas proyek terdiri dari atribut Nomor, Nama,Lokasi. Skema dari tabel proyek adalah Step 2: Langkah kedua adalah mendefinisikan entitas lemah Tabel Tanggungan Entitas tanggungan bergantung pada entitas pegawai. Atibutnya adalah Nama,JenisKel,TglLahir,Hubungan. Primary key dari entitas pegawai masuk ke entitas tanggungan

  47. Contoh Step 3: Tabel Departemen Pada relasi mengepalai, suatu departemen dikepalai oleh 1 pegawai sehingga primary key entitas pegawai masuk ke entitas departemen, ditambahkan dengan atribut tglMulai Step 4: Tabel Pegawai Pada relasi memimpin dan bekerja, primary key dari departemen masuk ke entitas pegawai dan setiap pegawai memiliki pimpinan

  48. Contoh Tabel Proyek Berdasarkan relasi mengatur,maka primary key dari entitas departemen masuk ke entitas proyek Step 5: Tabel BekerjaPada Pada relasi bekerja pada memiliki relasi many to many sehingga akan muncul tabel baru yang primary keynya berasal dari entitas pegawai dan proyek

  49. Contoh Step 6: Tabel Departemen_Lokasi Dari atribut muti valued lokasi akan dibuat tabel baru yang skemanya sebagai berikut

More Related