ERD, EERD DAN PEMETAAN KE MODEL RELASIONAL

dokumen-dokumen yang mirip
Pertemuan 2-3 ER-MODEL

Modul ke: Pertemuan - 8. Model Relasi Entitas. Fakultas Ilmu Komputer. Ariefah Rachmawati. Program Studi Sistem Informasi.

ER-DIAGRAM (ENTITY RELATIONSHIP DIAGRAM)

Entity Relationship Model

C H A P T E R. Copyright 2005 PENS-ITS

Basis Data. Pemodelan Database dengan ER Diagram (Entity Relationship Diagram) Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

Review Basis Data 1. by: Ahmad Syauqi Ahsan

Pertemuan Transformasi ER-MODEL INDIKATOR. 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional.

Copyright 2005 PENS-ITS C H A P T E R

SISTEM BASIS DATA 1 Imam Asrowardi, S.Kom.

Outline. 1. Latar Belakang. 2. Superclass/Subclass Relationship. 3. Specialisasi dan Generalisasi. 4. Hierarchy dan Lattice

Enhanced Entity Relationship. Mata Ajar Basis Data 1

Database Design. Pemodelan data & Model Entity-Relationship. Pertemuan 4. Dahlia Widhyaestoeti, S.Kom

Adri Priadana. ilkomadri.com

PEMODELAN DATA (ER-D) Basis Data -1 / Dian Dharmayanti

ER (ENTITY RELATIONSHIP) MODEL

C H A P T E R DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI : KONSEP DASAR PERANCANGAN DATABASE

PERTEMUAN 5. Model Data Relational (Lanjut)

Pemetaan Diagram (E)ER ke Skema Relasional

Entity Relationship Model

MODEL ENTITY-RELATIONSHIP

Mahasiswa dapat melakukan perancangan basis data dengan model entity relationship

Pertemuan IV Advanced Entity Relationship Diagram Fak. Teknik Jurusan Teknik Informatika

ER (ENTITY RELATIONSHIP) MODEL

ENTITY RELATIONSHIP DIAGRAM. SiBaDa Sesi 4

MODEL ENTITY-RELATIONSHIP

PERTEMUAN 6 & 7 ENTITY RELATIONSHIP DIAGRAM (ERD)

PERTEMUAN 8 & 9 MODEL ENTITY RELATIONSHIP DIAGRAM (ERD) KONSEP DASAR MODEL ENTITY RELATIONSHIP

PERTEMUAN IV ADVANCED ENTITY RELATIONSHIP DIAGRAM FAK. TEKNIK JURUSAN TEKNIK INFORMATIKA

MODUL 1 SEPUTAR PERANCANGAN DATABASE. 1.1 Entity-Relationship Model (ER Model) dan Entity Relationship Diagram (ERD)

ER (Entity-Relationship) Model dan Mapping ke Model Relasional. Politeknik Elektronika Negeri Surabaya

Basis Data I. Pertemuan Ke-2 & Ke-3 (Rancangan Basisdata) Noor Ifada.

ENTITY RELATIONAL MODEL. Dr.Budi Setiyono, MT

Basis Data. Pemetaan ER Diagram ke Bentuk Skema Relasi Database. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

ENTITY RELATIONSHIP DIAGRAM (ERD) Basis data

Pertemuan III Entity Relationship Diagram Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

ENTITY RELATIONSHIP MODEL

C H A P T E R. DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI : Konsep Dasar PERANCANGAN Database. Information Technology, EEPIS-ITS

PERANCANGAN BASIS DATA. Alif Finandhita, S.Kom

Model Entity Relationship Bagian I

PERANCANGAN SISTEM DATABASE

Perancangan Basis Data Relasional. Bab IV Converting ER Model To Table

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

SISTEM BASIS DATA (Lanjutan) :

Model EER. (Enhanced Entity Relationship)

Laboratorium Database PENS C H A P T E R. Arif Basofi, S.Kom, MT. Teknik Informatika - PENS

STMIK AMIKOM YOGYAKARTA

MODEL ENTITY RELATIONSHIP DIAGRAM. Basis data

C H A P T E R. Copyright 2005 PENS-ITS

Pertemuan 4 ENTITY RELATIONSHIP ENTITY RELATIONSHIP

MUHAMMAD ZEN S. HADI, ST. MSC.

ENTITY RELATIONSHIP DIAGRAM (ERD)

KONSEP SISTEM BASIS DATA

Model Entity Relationship Bagian II

Perancangan Basis Data Relasional. (Entity Relationship Model) By : Hanung N. Prasetyo

ENTITY RELATIONSHIP DIAGRAM SISTEM BASIS DATA

Pertemuan 6. Data Design

MODEL RELASI ENTITAS (E-R MODEL)

Modul 3 Konsep Perancangan Basis Data

Desain Data Base. Proses Desain Data Base

MODEL RELASIONAL. Model Data adalah kumpulan bentukanbentukan deskripsi data level tinggi yang menyembunyikan rincian penyimpanan data level rendah.

Pemetaan Diagram (E)ER ke Skema Relasional. Mata Ajar Basis Data 1

Sistem Basis Data ( )

MODEL ENTITY RELATIONSHIP

Basis data ERD. Entity. Atribut ENTITY RELATIONSHIP DIAGRAM 13/10/2015 TIU TIK. Entity

Hanif Fakhrurroja, MT

Bab 2 Pemodelan Data Menggunakan

Pengenalan Basis Data

BAB 2 MODEL RELASI ENTITAS (E-R MODEL)

Basis Data. Model E R (Lanjutan)

TEKNIK ENTITY RELATIONSHIP DIAGRAM (ERD)

PERTEMUAN 3. Model E-R (Lanjutan)

Pemodelan Data (1) Week 2

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

Pertemuan 4 ENTITY RELATIONSHIP ENTITY RELATIONSHIP

PRAKTIKUM BASIS DATA MODUL 1 PERANCANGAN DATABASE MENGGUNAKAN ER DIAGRAM

Sistem Basis Data. Chapter 5: Logical Database Design and the Relational Model Andronicus Riyono, M.T.

KONSEP BASISDATA. Kholid Fathoni, S.Kom., M.T.

Model adalah representasi kenyataan.

ENTITY RELATIONSHIP DIAGRAM

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

MODEL EER (ENHANCED ENTITY RELATIONSHIP)

ENTITY RELATIONSHIP DIAGRAM. By Tim Dosen

QUIZ 1 Introduction to Database. Page 1

Model Data. Universitas Darwan Ali Kalimantan Tengah. Author : Minarni, S.Kom.,MM

Perancangan Basis Data Relasional. (Lanjutan dengan EER) By : Hanung N. Prasetyo

ENTITY RELATIONSHIP MODEL

Enhanced ER Modeling Techniques. Yusuf 2010

Pemodelan Basis Data Entity-Relationship Diagram (contoh kasus 2) Yusuf 2010

Entity Relationship Model

Entity Relationship Diagram - ERD. Mardhiya Hayaty, ST

OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

ENTITY RELATIONSHIP DIAGRAM

Basis Data I Danny Kriestanto, S.Kom., M.Eng

PERTEMUAN 4 ENTITY-RELATIONSHIP DIAGRAM (ERD) JUM AT,

ENTITY RELATIONSHIP DIAGRAM

Pertemuan 4. Entity-Relationship Diagram (ERD)

PERANCANGAN SISTEM TERINCI DATABASE

ENTITY RELATIONSHIP DIAGRAM (ERD)

SISTEM BASIS DATA MODEL ENTITY-RELATIONSHIP

Transkripsi:

BAB 1 ERD, EERD DAN PEMETAAN KE MODEL RELASIONAL Tujuan Belajar: Memahami konsep dalam Model EntitasHubungan (EntityRelationship Model) Memahami dan bisa membuat Entity Relationship Diagram (ERD) Memahami dan bisa membuat Enhanced Entity Relationship Diagram (EERD) Memahami dan bisa membuat Pemetaan dari ERD/EERD ke Model Relasional 1.1 Model Entitas-Hubungan (Entity Relationship Model) Basis data dapat dimodelkan sebagai: Himpunan entitas Relasi antar entitas 1.1.1 Entitas (Entity) Definisi Entitas adalah: sesuatu atau objek di dunia nyata yang dapat dibedakan dari objek lain kelompok objek independen yang dapat diidentifikasi dan memiliki kesamaan properti. Entitas dapat berupa objek nyata atau objek konseptual. 1. Obyek nyata. Contohnya: Buku, Mahasiswa, Dosen, Barang, Kendaraan 2. Obyek konseptual. Contohnya: Matakuliah, Transaksi Contoh entitas yang ada pada sistem informasi di bengkel adalah: Kendaraan, Pegawai/Montir, Kendaraan, SparePart, Servis Representasi Entitas Entitas digambarkan dalam bentuk persegi panjang dengan label yang menunjukkan nama entitas, umumnya berupa kata benda tunggal. Kendaraan Gambar 1.1 Representasi Entitas (Entity) Jenis Entitas 1. Entitas kuat (strong entity) Entitas yang mandiri, yang keberadaannya tidak bergantung pada keberadaan entitas yang lainnya. Entitas kuat selalu memiliki karakteristik yang unik disebut identifier (sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain). Disebut juga entitas parent, owner, entitas domain Contoh: Kendaraan, Montir 1

2. Entitas lemah (weak entity) Entitas yang keberadaannya sangat bergantung pada keberadaan entitas yang lainnya. Entitas lemah tidak memiliki arti apa-apa dan tidak dikehendaki kehadirannya dalam diagram ER tanpa kehadiran entitas di mana mereka bergantung. Entitas yang tidak mempunyai primary key (PK) Disebut juga child, dependent, atau subordinat Contoh: Keluarga 1.1.2 Atribut (Attributes) Definisi Setiap entitas memiliki atribut yang mendeskripsikan karakteristik (properti) dari entitas tersebut. Contoh atribut dari kendaraan adalah: Kendaraan = (Jenis_Kendaraan, Merk, No_STNK, No_Mesin) Setiap atribut akan memiliki nilai (values) Domain (value set): Batas-batas nilai yang diperbolehkan bagi suatu atribut Tipe-Tipe Atribut 1. Atribut Sederhana (Simple) dan Komposit (Composite) Atribut Sederhana (simple)/atomik: Atribut yang terdiri atas komponen tunggal yang tidak dapat dibagi menjadi komponen yang lebih kecil; Contoh: atribut Jenis_Kendaraan, Merk, No_STNK, No_Mesin pada entitas kendaraan Atribut Komposit (Composite): Atribut yang dapat dibagi lagi dalam beberapa bagian; Atribut yang terdiri atas beberapa komponen independen (dapat berdiri sendiri). Contoh: Atribut Alamat pada entitas Pelanggan (Jalan Veteran no 8, Malang, 65145). Atribut ini dapat dibagi menjadi Jalan (Jalan Veteran no 8), Kota (Malang), dan KodePos (65145). 2. Single-valued dan multi-valued attributes Single-valued (tunggal) attributes: atribut yang memuat nilai tunggal. Contoh: atribut nama pada entitas pelanggan. Setiap Pelanggan hanya punya 1 nama Multi-valued attributes: atribut yang memuat beberapa nilai. Contoh: atribut NomorTelepon pada entitas Pelanggan. Pelanggan bisa mempunyai nomor telepon lebih dari 1 3. Atribut Turunan (Derived) Atribut yang menyatakan suatu nilai yang berkaitan dengan atribut-atribut lain Atribut yang diperoleh dari pengolahan dari atribut lain yang berhubungan. Contoh: atribut masa studi yang diperoleh dari TanggalLulus dikurangi TanggalDaftar 4. Primary Key (PK) PK adalah atribut yang mengidentifikasi entitas secara unik. Setiap strong entity/entitas kuat harus mempunyai Primary Key. Contoh: PK pada entitas kendaraan adalah No_STNK PK bisa berasal dari satu atau gabungan dari beberapa atribut 2

1.1.3 Hubungan/Relasi (Relationship) Definisi Relasi adalah hubungan antar entitas yang dapat diidentifikasi dan bermakna. Relasi dinyatakan dengan nama yang menunjukkan fungsinya. Contoh: memiliki yang menghubungkan entitas Pelanggan dan Kendaraan Relasi dimungkinkan memiliki atribut. Representasi Relasi Relasi digambarkan dalam bentuk belah ketupat (diamond) dengan label yang menunjukkan nama relasi, umumnya berupa kata kerja. Nama relationship Gambar 1.2 Representasi Hubungan (Relationship) Derajat Relasi Derajat relasi menunjukkan jumlah entitas yang terhubung dalam suatu relasi. Entitas-entitas yang terhubung dalam suatu relasi disebut partisipan. 1.1.4 Jenis-Jenis Relationship 1.1.4.1 Relasi Biner (Binary Relationship) Relasi berderajat dua dinamakan relasi biner (binary), yakni relasi yang melibatkan dua himpunan entitas. Secara umum himpunan relasi dalam sistem basis data adalah biner. Dosen membimbing Mahasiswa Gambar 1.3 Contoh representasi relasi biner 1.1.4.2 Relasi Ternier (Ternary Relationship) Relasi berderajat tiga dinamakan relasi ternier (ternary). Relasi antara lebih dari dua entitas jarang terjadi. Terdapat tiga entitas yang berpartisipasi dalam relasi ternier. Contoh: relasi Mendaftar yang menghubungkan entitas Staf, KantorCabang, dan Klien. Relasi ini menyatakan seorang staf mendaftar klien di suatu kantor cabang. Gambar 1.4 Contoh representasi relasi ternier 1.1.4.3 Relasi Rekursif/Uner (Unary) Relasi rekursif adalah tipe relasi yang menghubungkan satu entitas tunggal dengan dirinya sendiri (uner/unary). Relasi rekursif Mengaudit yang merepresentasikan relasi dosen dengan auditor, seorang auditor merupakan bagian entitas dosen. Dengan kata lain, relasi ini menyatakan seorang dosen melakukan pemeriksaan (mengaudit) dosen lain. 3

Relasi ini dapat ditambahkan nama peran untuk menunjukkan posisi partisipasinya, pada contoh di atas: relasi Mengaudit menghubungkan entitas Dosen yang berperan sebagai Auditor dengan dosen lain yang berperan sebagai Auditee. Gambar 1.5 Contoh representasi relasi rekursif/uner (unary) 1.1.5 Atribut Pada Relationship Relasi juga bisa mempunyai atribut. Atributnya muncul karena adanya relasi. Contoh atribut pada relasi adalah atribut Quantity yang ada pada relasi SUPPLY muncul karena supplier melakukan pasokan PART pada PROJECT Gambar 1.6 Contoh representasi atribut pada relasi 1.2 Diagram Entitas Relasional (Entity Relationship Diagram) Definisi Diagram ER merupakan model konseptual untuk menggambarkan struktur logis dari basis data berbasis grafis. 1.2.1 Notasi Diagram ER (ERD) Gambar 1.7 Notasi Entity Relationship Diagram (ERD) 1.2.2 Langkah-Langkah Membuat Diagram ER 1. Mengidentifikasi dan menetapkan seluruh entitas yang terlibat. 2. Menentukan atribut dari setiap entitas. 3. Menentukan key dari setiap entitas. 4. Mengidentifikasi dan menetapkan relasi antar entitas yang ada. 5. Menentukan kardinalitas/derajat relasi untuk setiap relasi yang ada. 6. Melengkapi entitas dan relasi dengan atribut-atribut deskriptif. 4

Contoh: Diagram ER (ERD) pada Company Gambar 1.8 Contoh ERD pada Company (Sumber: Elmasri, 2016) Keterangan Dari kardinalitas di atas menunjukkan bahwa satu Employee hanya bisa bekerja pada 1 Department. Sebaliknya setiap Department terdiri dari banyak Employee. Hanya 1 Employee yang akan menjadi Manager dari setiap Department. Setiap Employee bisa bekerja lebih dari 1 Project. Setiap Project bisa terdiri dari banyak Employee. Setiap Department akan mengontrol beberapa Project. Setiap Employee bisa punya lebih dari 1 Dependent. Ada Employee yang menjadi Supervisor. 1.3 Model Enhanced Entity-Relationship (EER) EER dibuat untuk merancang skema basis data yang lebih akurat. EER mencerminkan sifat data dan kendala lebih tepat. EER persyaratannya lebih kompleks daripada ERD. Model EER mencakup semua konsep pemodelan pada ER. EER meliputi: Subclasses and superclasses Specialization and generalization Category or union type Attribute and relationship inheritance Enhanced ER atau EER diagrams: diagram untuk menampilkan konsep dalam sebuah skema EER. Sub kelompok/kelas (subtype/subclass) dari jenis entitas: sub kelompok entitas yang diperlukan Direpresentasikan secara eksplisit karena signifikansi mereka untuk aplikasi basis data Pewarisan jenis entitas subclass mewarisi semua atribut dan relasi dari superclass 1.3.1 Spesialisasi (Specialization) Proses desain top-down. Proses mendefinisikan satu himpunan sub kelompok (sub class) dari suatu entitas Didefinisikan atas dasar beberapa karakteristik yang berbeda dari entitas di superclass. Mendesain sub kelompok dalam suatu himpunan entitas yang berbeda dari entitas lain di dalam himpunan. 5

Sub kelompok ini menjadi entitas tingkat rendah yang memiliki atribut atau berpartisipasi pada relasi yang tidak berlaku untuk level entitas yang lebih tinggi Pewarisan atribut entitas tingkat yang lebih rendah yang mewarisi semua atribut dan dari entitas level atasnya. Subclass dapat mendefinisikan o Specific attributes o Specific relationship types Gambar 1.9 Contoh specialization/generalization (Sumber: Elmasri, 2016) 1.3.2 Generalisasi (Generalization) Sebuah proses desain bottom-up. Menggabungkan sejumlah himpunan entitas yang berbagi fitur yang sama ke entitas dengan tingkat yang lebih tinggi (superclass). Entitas asli adalah subclass khusus. Spesialisasi dan generalisasi adalah inversi sederhana satu sama lain. Diwakili dalam diagram E-R dengan cara yang sama. Istilah spesialisasi dan generalisasi yang digunakan secara bergantian. Gambar 1.10 Contoh ERD pada University dengan constraint Disjoint, Overlapping (Sumber: Elmasri, 2016) Constraint pengaturan spesialisasi: Disjoint (d) Entitas dapat menjadi milik hanya satu entitas tingkat lebih rendah (subclass). Representasi di ERD dituliskan disjoint di samping notasi specialization/generalization (ISA triangle). Overlapping (o) Suatu entitas dapat menjadi anggota beberapa entitas tingkat lebih rendah (subclass). 6

1.4 Algoritma Pemetaan ERD/EERD ke Skema Relasional Untuk melakukan pemetaan dari skema ERD ke skema relasional ada 7 langkah: Langkah Pertama 1. Untuk setiap jenis entitas E yang regular (non weak) dalam skema ER, buat satu relasi R yang atributnya meliputi semua atribut sederhana dari E. 2. Untuk suatu atribut komposit, hanya komponen simple atributnya yang dipetakan. 3. Kemudian pilih satu atribut key dari E sebagai primary key (PK) dari R. 4. Jika key terpilih adalah komposit, maka PK dari R dibentuk dari satu himpunan atribut sederhana dari komposit. 5. Pada langkah pertama ini, keterlibatan foreign key (FK) dan atribut relasi jangan dipikirkan dulu. Langkah Kedua 1. Untuk setiap jenis weak entity W dalam skema ER dengan jenis owner entity E, buat satu relasi R yang atributnya meliputi semua atribut sederhana (atau komponen sederhana dari atribut komposit). 2. Masukkan sebagai FK ke dalam R, PK ke atribut dari relasi-relasi yang merupakan owner dari W (dapat diperoleh dengan memperhatikan identifying relationship dari W). 3. PK dari R dibentuk dari kombinasi antara PK dari relasi dan pemilik dan partial key dari weak entity W (jika ada). Langkah Ketiga 1. Untuk setiap relasi biner 1:1 R dalam skema ER, perhatikan relasi-relasi S dan T yang berkorespondensi dengan entitas yang berpartisipasi dalam R. 2. Kemudian ambil salah satu relasi (misal S) dan cantumkan PK dari T sebagai FK dalam S. Untuk kasus ini, S sebaiknya dipilih dari entitas yang berpartisipasi total dalam R (untuk mengurangi NULL value dari FK yang diambil dari T). 3. Sebagai alternatif pemetaan dari relasi 1:1 ini adalah dengan menggabungkan kedua entitas menjadi satu relasi tunggal. 4. Cara ini terutama sangat sesuai jika kedua entitas berpartisipasi total dan tidak berpartisipasi dalam relasi yang lain. Langkah Keempat 1. Untuk setiap relasi biner biasa 1:N perhatikan relasi S yang mewakili entitas yang berpartisipasi pada relasi di sisi-n. 2. Cantumkan PK dari relasi yang berperan pada sisi-1 sebagai FK dalam S. 3. Cantumkan semua atribut sederhana (atau komponen dari atribut komposit) dari relasi biner 1:N sebagai atribut dalam S. Langkah Kelima 1. Untuk setiap tipe R relasi biner M:N buat relasi baru S untuk mewakili R. 2. Cantumkan PK dari relasi-relasi yang mewakili entitas yang berpartisipasi dalam R sebagai FK dalam S. 3. Cantumkan semua atribut sederhana (atau komponen dari atribut komposit) dari relasi biner M:N sebagai atribut dalam S. 7

Catatan Relasi biner 1:1 atau 1:N selalu dapat dipetakan seperti pada relasi M:N. Alternatif ini terutama sangat berguna jika relationship instances yang ada sangat sedikit (menghindari NULL value dalam FK). Untuk kasus ini PK dari relasi hanya akan menjadi FK dalam satu entitas-relasi yang berpartisipasi. Untuk 1:1 adalah entitas-relasi yang berpartisipasi total yang dipilih. Langkah Keenam 1. Untuk setiap atribut multi-value A buat satu relasi baru R yang mencantumkan 1 atribut yang mewakili A + PK K (sebagai FK dalam R) dari relasi yang mewakili entitas atau relasi yang mempunyai A sebagai atributnya. 2. PK dari R kombinasi A dan K. 3. Jika atribut multi-value adalah komposit, maka hanya komponennya yang dicantumkan. Langkah Ketujuh 1. Untuk setiap relasi n-ary R (n>2), buat suatu relasi baru S yang mewakili R. 2. Cantumkan PK dari relasi-relasi yang mewakili entitas yang berpartisipasi dalam R sebagai FK dalam S 3. Cantumkan semua atribut sederhana (atau komponen dari atribut komposit) dari relasi n-ary sebagai atribut dalam S 4. PK dari S biasanya merupakan kombinasi dari semua FK yang mengacu pada relasirelasi yang mewakili entitas yang berpartisipasi 1.5 Latihan Industri rumahan (home industry) An-Nissa mempunyai berbagai produk makanan olahan. Produk tersebut berbahan dasar kacang. Macam produknya antara lain: ada kacang telur, kacang sembunyi, kacang kapri, kacang shanghai dll. Produknya selain dijual sendiri juga dititipkan ke beberapa toko/swalayan. Jika produk yang dititipkan ke toko habis, maka An-Nissa akan segera mengirim ke toko tersebut lagi, atau paling tidak sebulan sekali akan mengganti produk yang tidak laku dengan produk baru. Untuk memperlancar usahanya, industri rumahan tersebut punya beberapa karyawan yang dibagi dalam beberapa kelompok/bagian, yakni bagian pengolahan, penggorengan dan packing. Oleh karena semakin berkembang, industri rumahan tersebut ingin membuat sistem untuk usahanya. Bantu An-Nissa untuk merancang sistem informasinya. An-Nissa ingin mencatat juga di toko apa dia biasa membeli bahan-bahannya, selain karyawan, serta tokotoko yang dititipinya. 1. Buat Entity Relationship Diagram (ERD). 2. Buat Enhanced Entity Relationship Diagram EERD. 3. Buat Model Relasionalnya. 8