data modelling using the entity relationship model

Download Data Modelling Using the Entity Relationship Model

Post on 30-Jun-2015

1.108 views

Category:

Documents

19 download

Embed Size (px)

TRANSCRIPT

Data Modelling Using the Entity Relationship ModelMinggu 3 dan 4 Rusydi Umar, S.T. M.T. Teknik Informatika UAD

Tujuan dan manfaatMenjelaskan konsep pemodelan dari Entity-Relatinoship (ER) Model ER Model sering disebut juga konseptual data model tingkat tinggi Digunakan untuk merancang konsep aplikasi basis data Banyak tools perancangan basis data menggunakan konsep ini

Perancangan Basis Data menggunakan Konsep Model Data Tingkat TinggiMengumpulkan dan menganalisa kebutuhan Wawancara dengan pengguna untuk mengetahui mendokumentasikan kebutuhan data pengguna Diusahakan selengkap mungkin dan sedetil mungkin Disamping itu juga penting untuk diketahui kebutuhan fungsional pengguna yang berisi operasi-operasi yang di akan diterapkan pada basis data, termasuk membaca, dan menulis basis data

Data Flow Diagram (DFD)Untuk menspesifikasikan kebutuhan fungsional pengguna, digunakan data flow diagram. Lebih lanjut tentang data flow diagram dapat dilihat di mata kuliah rekayasa Perangkat Lunak

Perancangan Basis Data menggunakan Konsep Model Data Tingkat TinggiLangkah berikutnya adalah Merancang Basis Data Konseptual Yaitu membuat Skema Konseptual untuk Basis Data menggunakan Konsep Model Data Tingkat Tinggi Skema ini berisi penjelasan tentang kebutuhan data dan tipe data, hubungan dan batasan Karena tidak berhubungan dengan media penyimpanan maka mudah dikomunikasikan dengan pengguna non teknis

Perancangan Basis Data Lojik/Pemetaan Model Data Langkah berikutnya adalah implementasi dari basis data. Kebanyakan DBMS menggunakan data model, maka langkah selanjutnya mengubah skema konseptual menjadi model data implementasi Langkah terakhir Merancang Basis Data Fisik

Contoh Kasus : Basis Data Perusahaaan (Company)Mengumpulkan kebutuhan data Membuat Skema Konseptual langkah demi langkah sekaligus memperkenalkan konsep pemodelan dari model ER Hasil Dari pengumpulan kebutuhan pengguna adalah sebagai berikut

Basis Data PerusahaanPerusahaan terdiri dari departemendepartemen. Departemen mempunyai nama yang unik, nomor yang unik, manager, mulai-kerja dari manager, departemen mungkin berada di beberapa lokasi Departemen mengontrol beberapa proyek, masing-masing mempunyai nama yang unik, nomer yang unik, dan menempati satu lokasi terntentu

Basis Data PerusahaanPerusahaan mempunyai karyawan-karyawan. Karyawan mempunyai data tentang nama, nomer ID, alamat, gaji, jenis kelamin, tgl lahir. Tiap karyawan berada di bawah satu departemen tapi dapat melaksanakan beberapa proyek yang proyek2 tersebut tidak harus dikontrol oleh departemen yang sama. jamkerja/minggu/proyek dari karyawan dicatat, tiap karyawan mempunyai supervisor Karyawan mempunyai data tentang tanggungan untuk keperluan asuransi, masingmasing tanggungan memiliki data nama, jenis kelamin, tgl lahir dan hubungannya dengan karyawan

Skema ER diagram untuk Basis Data Perusahaan

Entities and AttributesObjek dasar dari model ER adalah entitas Objek riil yang dapat dibedakan satu dengan lainnya dan keberadaanya tidak saling bergantungan Entitas mungkin berupa objek yang bersifat fisik. Contoh : mobil, pegawai, rumah Entitas Konseptual, Secara fisik tidak ada, entitas yang bersifat konsep. Contoh : perusahaan, pekerjaan, mata kuliah

Entities and Attributes

Entities and AttributesTiap entitas mempunyai karakteristik tertentu yang disebut Attributes, yang menggambarkan entitas. Contoh, Entitas Karyawan dapat digambarkan dengan namanya, umur, alamat, gaji. Entitas tertentu akan mempunyai nilai tertentu dari tiap atributnya Attribute adalah Sifat yang digunakan untuk membedakan instance entitas dengan instance entitas yang lain

Types of AttrributesSimple (Sederhana) vs Composite (Komposit) Single-valued (bernilai tunggal) vs multivalued (bernilai banyak) Stored (tersimpan) vs derived (turunan)

Simple (Sederhana) vs Composite (Komposit)Atribut komposit : atribut yang terdiri dari beberapa atribut yang lebih mendasar Contoh : Atribut alamat dapat terdiri dari Nama Jalan dan No Rumah Atribut sederhana/atomik : atribut yang tidak dapat dibagi-bagi menjadi atribut yang lebih lebih mendasar Contoh : Atribut umur

Hirarki dari atribut komposit

Single-valued (bernilai tunggal) vs multivalued (bernilai banyak)Atribut Berharga Tunggal (Single-valued Attribute) : atribut yang hanya mempunyai satu harga untuk suatu entitas tertentu. Contoh : atribut umur hanya mempunyai satu nilai untuk satu entitas, misal 20th Atribut Berharga Ganda (Multi-valued Attribute) : atribut yang dapat terdiri dari sekumpulan harga untuk suatu entitas tertentu Contoh : atribut warna dari mobil, mungkin sebuah mobil mempunyai banyak warna yaitu hitam, biru dan merah.

Stored (tersimpan) vs derived (turunan)Dalam beberapa kasus sebuah atribut berhubungan dengan atribut yang lain. Contoh : atribut umur berhubungan dengan atribut tanggal lahir. Untuk orang tertentu atribut umur dapat dihitung dengan mengurangi tanggal sekarang dengan tanggal lahir. Maka atribut umur disebut dengan atribut turunan, yaitu diturunkan dari tanggal lahir. Atribut tanggal lahir ini maka disebut sebagai atribut tersimpan.

Atribut yang komplek dari AddressPhone

Dua entitas EMPLOYEE dan COMPANY dan anggotanya

Tipe entitas CAR dan atributnya

Null ValueDalam beberapa kasus mungkin terjadi tidak ada sebuah nilai pun yang dapat dimasukkan kedalam atribut.(bermakna not applicable) Contoh : Jenjang pendidikan, atribut ini hanya mempunyai nilai untuk orang yang pernah bersekolah dan tamat Untuk kasus tersebut dibuatlah nilai null Nilai null juga digunakan bila nilai dari suatu atribut tidak diketahui (bermakna unknown)

Entity Types,Entity Types (Tipe Entitas) adalah sekumpulan entitas yang mempunyai atribut yang sama Tipe entitas dalam diagram ER dilambangkan dengan kotak. Atribut dilambangkan dengan oval dan dihubungkan dengan tipe entitasnya melalui sebuah garis Extension adalah sebagian dari tipe entitas

Atribut Kunci (Key Attribute) :identifier unik dari suatu entitas karena nilai dari atribut kunci ini akan berbeda untuk masingmasing entitas dapat terdiri dari atribut sederhana/ komposit Contoh :NomorMobil dari entitas MOBIL komposit NIM dari entitas mahasiswa sederhana

Dalam diagram ER atribut kunci diberi garis bawah. Atribut kunci tidak boleh mempunyai harga yang sama untuk entitas yang berbeda

Value Sets (Domains) of Attributeskumpulan harga/nilai yang dapat dimiliki oleh atribut dari suatu entitas Contoh :Atribut umur karyawan domainnya 16 sampai 70 Atribut nama pada entitas barang domainnya nama barang (sekumpulan karakter.)

Desain Konseptual Awal dari Basis Data Perusahaan (1)Berdasarkan hasil wawancara dengan pengguna tentang kebutuhan basis data pengguna, maka dapat ditentukan empat tipe entitasTipe entitas Department dengan atribut Name, Number, Locations, Manager dan ManagerStartDates. Satu-satunya multivalued attribute adalah Locations. Atribut kuncinya adalah Name dan Number

Desain Konseptual Awal dari Basis Data Perusahaan (2)1.

2.

3.

Tipe entitas Project, dengan atribut Name, Number, Location, dan ControllingDepartment. Atribut kuncinya adalah Name dan Number Tipe entitas Employee, dengan atribut Name, SSN, Sex, Address, Salary, BirthDate, Department, dan Supervisor. Name dan Address mungkin atribut komposit, karena tidak ditentukan saat wawancara pertama, maka temui kembali pengguna untuk menentukannya. Tipe entitas Dependent, dengan atribut Employee, DependentName, Sex, BirthDate, dan Relationship (hubungan dengan karyawan)

Beberapa hal yang tak terlihat adalahJumlah jam kerja perminggu karyawan yang bekerja pada proyek tertentu karakteristik ini diperoleh dari wawancara solusinya :Dibuat menjadi atribut composite multivalued pada Employee yang disebut WorksOn dengan komponen (Project, Hours) Atau dapat dibuat menjadi atribut composite multivalued dari Project yang disebut Workers dengan komponen (Employee, Hours)

Preliminary DesignDEPARTMENT Name, Number, {Locations}, Manager, ManagerStartDate PROJECT Name, Number, Location, Controlling Department EMPLOYEE Name(Fname, Minit, Lname), SSN, Sex, Address, Salary, BirthDate, Department, Supervisor, {WorksOn(Project, Hours)} DEPENDENT Employee, DependentName, Sex, BirthDate, Relationship

Implicit RelationshipJika atribut dari salah satu entitas merujuk pada entitas yang lain maka, muncul relationship. Atribut Manager dari entitas Department merujuk pada karyawan yang memimin Departemen Atribut ControllingDepartment dari Project merujuk pada departemen yang mengontrol Project Atribut Supervisor dari entitas Employee merujuk pada Employee (yang berperan sebagai supervisee dari karyawan ini) Atribut Department dari Empolyee merujuk pada Departement dimana Employee bekerja Dll

Implicit RelationshipDalam model ER, rujukan ini tidak di wakili oleh atribut tetapi oleh relationship. Dalam desain awal relationship pada umumnya tetangkap sebagai atribut Dengan perbaikan desain maka atribut tersebut diubah menjadi relationship

Relationships Relationship Types R diantara n entitas E1, E2, .En mendefinisikan sekumpulan asosiasi diantara entitas dari tipe tersebut R adalah sekumpulan relationship instance ri Lihat contoh berikut :

Relationships

Degree of relationship typeDerajat relasi adalah jumlah tipe entitas yang berpartisipasi dalam relasi. Derajat relasi WORKS_FOR adalah 2. Relasi yang berderajat 2 disebut binary relationships. Relasi yang berderajat 3 disebut ternary relationships.

Ternary relationship

Role names and recursive relationshipsMasing-masing tipe entitas memegang peranan dalam hubungan antar tipe entitas (relationship). Nama peran menjadi penting bila tipe entitas yang sama terlibat lebih dari satu kali pada satu relationship dengan peran yang berbeda. Relationship seperti ini dikenal d