p-2 pemodelan data - er

41
Pemodelan Data – Entity Relationship Rinta Kridalukmana, S.Kom, MT

Upload: sandy-junda

Post on 30-Sep-2015

29 views

Category:

Documents


3 download

DESCRIPTION

P-2 Pemodelan Data - ER

TRANSCRIPT

Pemodelan & Pemrograman

Pemodelan Data Entity RelationshipRinta Kridalukmana, S.Kom, MT1Berdasarkan terminologi Basis pangkalan, tempat berkumpul, markasData representasi fakta dunia nyata yang mewakili suatu objek seperti manusia, hewan, barang, peristiwa, konsep, keadaan yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya

Sistem Basis Data2Definisi dari berbagai sudut pandang (1)Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudahKumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis3Definisi dari berbagai sudut pandang (2)Kumpulan data yang saling berhubungan yang disinpan secara bersama sedemikian rupa dan tanpa pengulangan (redundansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan

Prinsip Utama : pengaturan data & arsipTujuan utama : kemudahan dan kecepatan dalam pengambilan kembali data/arsip4AnalogipegawaiproduksipenjualanpembelianDiskFile pembelianFile produksiFile penjualanFile pegawai

5Mengapa menggunakan database?Apa yang terjadi jika seorang kontraktor mengubah nomor teleponnya ?Jika seorang kontraktor tidak jadi meminjam peralatan ?Ingin menambahkan informasi kontraktor ?Terjadi kesalahan pengetikan (misal KH. Services KJ Services) ?Kesalahan memasukkan data (misal end date tidak dimasukkan) ?Jika data akan dibagikan ?

6

Database sebagai kelompok tabel yang berkaitan & mengekspresikan hubunganSELECT dbo.job.name AS Job, dbo.contractors.contractor, dbo.contractors.phone, dbo.equipment.equipment_type AS [Equipment Type], dbo.equipment.equipment_number AS [Equipment Number], dbo.equipment.daily_rate AS [Daily Rate], dbo.rental.start_date AS [Start Date], dbo.rental.end_date AS [End Date], DATEDIFF(day, dbo.rental.start_date, dbo.rental.end_date) + 1 AS Days, (DATEDIFF(day, dbo.rental.start_date, dbo.rental.end_date) + 1) * dbo.equipment.daily_rate AS CHARGEFROM dbo.job RIGHT OUTER JOIN dbo.rental ON dbo.job.job_id = dbo.rental.job_id LEFT OUTER JOIN dbo.contractors ON dbo.rental.contractor_id = dbo.contractors.contractor_id LEFT OUTER JOIN dbo.equipment ON dbo.rental.equipment_id = dbo.equipment.equipment_idSQL STATEMENT :7Entity Relationship Model (1)Diperkenalkan oleh Chen (1976)Berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas serta hubungan antar entitas (relationship)Tidak bergantung DBMS dan platform perangkat keras8Entity Relationship Model (2)Digunakan untuk : Mengembangkan model konseptualMenjelaskan struktur basis dataMemberikan gambaran kepada pengguna terhadap data

3 Komponen penting dalam model ER adalah : EntityAtributRelasi9Entity / EntitasAdalah obyek di dunia nyata yang dapat dibedakan dengan obyek lainnyaSet Entitas Himpunan entitasDapat berupa : Fisik : Mahasiswa, pasien, kendaraanKonsep/Logik : Pekerjaan, Mata Kuliah, KursusSimbol Entity :

Berupa kotak segi empatMahasiswa10AtributAdalah ciri atau karakteristik yang bermakna untuk mendeskripsikan entitasAda karakteristik bermakna & tidak bermaknaContoh : mahasiswaNim, nama IPK atribut bermaknaTinggi badan, berat badan tidak bermakna

Bertujuan untuk membedakan obyek-obyek dalam entitas

11Simbol Atribut

Berbentuk elips dan dihubungkan dengan garis ke entitas125 Jenis Atribut Atribut TunggalAtribut yang disusun hanya dari satu komponen tunggal dengan keberadaan bebasTidak dapat dibagi lagi atribut atomikMisal : nama, jenis kelamin

Atribut KompositAtribut yang disusun dari banyak komponen yang masing-masing keberadaannya bebas. Misal : alamat jalan, no_rumah, kecamatan135 Jenis Atribut Atribut KeyDigunakan untuk mengidentifikasikan suatu entitas secara unikMisal : NIM, NIP, AgamaAtribut bernilai jamak / multivalueAtribut yang mengandung banyak nilaiMisal : hobi, nomer telponAtribut Turunan / deritativeAtribut yang mengandung nilai di mana nilai tersebut bisa diperoleh dari hasil kalkulasi atribut lainMisal : atribut umur bisa diperoleh dari tanggal lahir14Cara penggambaran jenis atribut

15Domain AtributHimpunan nilai yang diberikan ke suatu atributTermasuk di antaranya : Tipe dataPanjang karakter yang diijinkanKonstrainFormat DllAtribut yang berbeda boleh memiliki domain nilai yang sama16KeyAdalah sejumlah atribut yang mengidentifikasikan record / baris dalam sebuah relasi secara unikBeberapa jenis key : Super keyCandidate keyPrimary keyAlternate keyComposite keyForeign key17Jenis KeySuper KeySatu atribut atau kumpulan atribut yang secara unik mengidentifikasikan sebuah record di dalam relasi atau himpunan dari satu atau lebih entitas yang dapat digunakan untuk mengidentifikasikan secara unik sebuah entitas dalam entitas setCandidate KeyAtribut-atribut yang menjadi determinan yang dapat dijadikan identitas record. Pada sebuah relation bisa terdapat satu atau lebih candidate key18Jenis KeyPrimary KeyCandidate key yang menjadi identitas record karena dapat mengidentifikasikan record secara unikAlternate KeyCandidate kay yang tidak dijadikan primary keyComposite KeyKey yang terdiri dari 2 atribut atau lebih. Atribut-atribut tersebut bila berdiri sendiri tidak menjadi identitas record, tetapi bila dirangkaikan menjadi satu kesatuan akan dapat mengidentifikasikan secara unik19Jenis KeyForeign KeyNon key atribut pada sebuah relasi yang juga menjadi key (primary) atribut di relasi lainnya. Foreign key biasanya digunakan sebagai penghubung antara record-record dari kedua relasi tersebut.

20RelasiAdalah hubungan antara suatu himpunan entitas dengan himpunan entitas lainnyaSimbol yang digunakan adalah belah ketupatContoh :

21Atribut Relasi Uraian tentang suatu hubunganBerguna untuk menjelaskan suatu hubunganJika atribut hubungan cukup banyak maka perlu dipertimbangkan untuk menjadi entitas baru

22Derajat RelasiUnary relationship / rekursif relationshipHanya melibatkan 1 entitas / berderajad 1

23Derajat RelasiBinary RelationshipMelibatkan 2 entitas / berderajad 2

24Derajat RelasiTernary RelationshipMelibatkan 3 entitas / berderajad 3

25Cardinality Ratio Constraint (1)Menyediakan batasan jumlah relasi suatu entitas dengan entitas lainnyaJenis rasio kardinalitas : One to one (1 : 1)One to many (1 : M)Many to many (M : M)26Kardinalitas Maksimum & MinimumBatasan Kardinalitas : Kardinalitas minimumJumlah contoh atribut yang harus ada agar obyek valid. Biasa diwakilkan dengan angka 0 dan 1.0 atribut tidak diharuskan memiliki nilai1 atribut harus memiliki nilai

Kardinalitas maksimumAngka maksimum contoh atribut yang bisa dimiliki obyek. Biasa diwakilkan dengan angka 1 & N.1 atribut dapat memiliki tidak lebih dari satu nilaiN atribut dapat memiliki banyak nilai, angka absolut tidak ditentukan27DepartmenName (1.1)Diperlukan persis satu nilai untuk nama departemenPhoneNumber (1.N)Departemen diharuskan memiliki paling tidak 1 nomor telepon, tetapi dapat memiliki banyak nomorFaxPhoneNumber(0.1)Departemen dapat memiliki 0 atau 1 nomor faxContoh K. Maks & Min.

28Jenis Relasi 1 : 1

29Jenis Relasi 1 : M

30Jenis Relasi M : M

31Partisipasi HubunganAdalah partisipasi atau keterlibatan tiap anggota entitas dalam membentuk instansiasi hubunganAda 2 jenis partisipasi : Full / total participation / wajibKeberadaan suatu entitas tergantung pada hubungan dengan entitas lainnya. Partial participation / tidak wajibKeberadaan suatu entitas tidak tergantung pada hubungan dengan entitas lain32Full & Partial ParticipationSimbol :

33Entitas Lemah & KuatEntitas kuat : keberadaannya tidak tergantung entitas lainEntitas lemah : keberadaannya sangat tergantung keberadaan entitas lainSimbol :

34Transformasi ER ke Relational Database Atribut Tunggal

35Transformasi ER ke Relational Database Atribut Composit

36Transformasi ER ke Relational Database Atribut Multivalue

37Transformasi ER ke Relational Database Pemetaan hubungan 1 : M

38Transformasi ER ke Relational Database Pemetaan hubungan M : M

39Transformasi ER ke Relational Database Pemetaan Hubungan M : M

40Istilah dalam model relasional

41