Perancangan Basis Data Relasional (Entity Relationship Model) By : Hanung N. Prasetyo HanungNP/Basis Data/Politel/2012
Database Model
HanungNP/Basis Data/Politel/2012
Definisi Pemodelan ER • ER adalah salah satu pemodelan basis data ke dalam bentuk Entitas-Entitas dan Relasi yang terjadi di antara entitas-entitas yang ada. • Entitas diartikan sebagai ‘objek’ didunia nyata yang bisa dibedakan dengan ‘objek’ yang lain. • Relasi diartikan sebagai hubungan yang terjadi diantara satu entitas dengan entitas yang lainnya.
HanungNP/Basis Data/Politel/2012
KONSEP MODEL ER • Model ER = kumpulan konsep dari entitas, atribut, relationship serta konstrain lainnya yg menggambar kan struktur basis data dan transaksi pada basis data • Dikembangkan oleh Chen (1976) • Entitas = objek dalam bentuk fisik maupun konsep yang dapat dibedakan dengan objek lainnya. Contoh : entitas MAHASISWA, entitas BUKU, entitas MATAKULIAH HanungNP/Basis Data/Politel/2012
Entitas dan Himpunan Entitas • Entitas adalah objek yang dirasa penting di sistem tersebut, yg bisa berupa – Objek Konkrit -> Orang, Buku – Objek Abstrak -> Jadwal, Pinjaman, Tabungan • Himpunan Entitas (Entity Set): Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama. • Entitas menunjuk kepada pada individu suatu objek sedangkan himpunan entitas menunjuk pada rumpun (family) dari individu tersebut. Cth himpunan orang-orang yg mempunyai nim, prodi, dsb di sebut himpunan entitas mahasiwa HanungNP/Basis Data/Politel/2012
Notasi Entitas dan Himpunan entitas • Sebuah entitas / himpunan entitas dapat di gambarkan / di notasikan dengan sebuah gambar persegi panjang.
Mahasiswa
Jadwal
Pinjaman
• Setiap entitas mempunyai atribut yang melekat pada entitas tersebut. • Atribut adalah karakteristik dari sebuah entitas. Cth : atribut untuk entitas mahasiswa adalah nim, nama, alamat, ipk, program studi, dsb.
HanungNP/Basis Data/Politel/2012
Contoh Himpunan Entitas Bambang, susi, sumarno adalah entitas (* orang) Yang sama-sama mempunyai atribut nim, nama, program studi, dsb ..
Entitas orang Susi
entitas orang
Bambang
Sumarno
Mahasiswa Himpunan entitas orang yang mempunyai kesamaan karakteristik yaitu nim HanungNP/Basis Data/Politel/2012 membentuk himpunan entitas ‘mahasiswa’
Himpunan Entitas Mahasiwa Atribut Entitas
Entitas 1 Entitas 2 Entitas 3 MAHASISWA Himpunan Entitas
HanungNP/Basis Data/Politel/2012
KONSEP • Atribut = karakteristik atau properti dari suatu entitas. Contoh, entitas MAHASISWA mempunyai atribut-atribut NPM, Nama, Alamat, Kota, Tgl-lhr, Telp.
Diagram ER untuk Entitas MAHASISWA
HanungNP/Basis Data/Politel/2012
KONSEP (lanj.) • untuk mencatat semester berapa mahasiswa mengambil matakuliah, maka pada relationship mengambil ditambahkan atribut semester. semester
Diagram ER untuk Relationship Mengambil
HanungNP/Basis Data/Politel/2012
Atribut • Setiap entitas mempunyai atribut yang berisi karakteristik yang mendeskripsikan dari entitas tersebut. • Cth entitas mahasiwa mempunyai atribut -> nim, nama, prodi,ipk,hobi,alamat,dsb. • Setiap atribut mempunyai domain value set yaitu batasan batasan suatu dibolehkan bagi suatu atribut. • Tipe atribut : – Simple dan Composite – Single value dan multivalued – Derived attribute HanungNP/Basis Data/Politel/2012
Tipe Atribut • Simple dan Composite – Atribut Simple -> tidak bisa dibagi menjadi bagian yg lebih kecil lagi. – Atribut Composite -> dapat di bagi menjadi beberapa bagian. Cth Nama dpt di bagi menjadi nama depan dan nama belakang.
• Single value dan multivalued – Atribut Single valued -> bisa di isi paling banyak 1 nilai utk setiap baris data. – Atribut Multi valued -> bisa di isi lebih dari 1 nilai tetapi sejenis. Cth Alamat, hobi, no_telp
• Derived attribute – Atribut yg didapat dari hasil pengolahan atribut lain. – Cth umur adalah hasil pengolahan dari atribut tanggal lahir dan tanggal sekarang HanungNP/Basis Data/Politel/2012
Contoh Atribut Komposit
HanungNP/Basis Data/Politel/2012
Notasi Atribut • Notasi atribut digambarkan dengan tanda elips. • Atribut kunci biasa di beri tanda # atau garis bawah. • Cth himpunan entitas mahasiswa mempunyai atribut nim sebagai key, prodi, nama, ipk, dsb prodi nama
ipk #nim
Mahasiswa
HanungNP/Basis Data/Politel/2012
Relationship atau Relasi • Relationship = Hubungan yang terjadi antara satu entitas atau lebih. Contoh, relationship mengambil yang menggambarkan mahasiswa yang mengambil matakuliah.
Diagram ER untuk Relationship Mengambil
HanungNP/Basis Data/Politel/2012
Relasi • Relasi menggambarkan hubungan antara entitas satu dengan entitas yang lain. • Di gambarkan dengan notasi belah ketupat. • Cth Relasi antara Mahasiswa dan Organisasi Relasi mahasiswa mempunyai organisasi
Mahasiswa
mempunyai
Organisasi
Atribut deksriptif merupakan Atribut yang menjadi karakteristik dari himpunan relasi yang muncul karena adanya relasi tersebut. HanungNP/Basis Data/Politel/2012
Ilustrasi Relasi Mhs dan Org Susi
Sumarno
Organisai LINUX
Bambang
Organisai Pecinta Satwa
Sumarno Mempunyai organisasi
Organisai Pecinta Satwa
Relasi mahasiswa mempunyai organisasi
Mahasiswa
Organisasi HanungNP/Basis Data/Politel/2012
Derajat Himpunan Relasi • Unary (hanya me-relasi-kan 1 entitas) • Binary (hanya me-relasi-kan dari 2 entitas) • Ternary (me-relasi-kan 3 entitas)
HanungNP/Basis Data/Politel/2012
Derajat Himpunan Relasi • Unary (hanya me-relasi-kan 1 entitas)
HanungNP/Basis Data/Politel/2012
Derajat Himpunan Relasi • Binary (hanya me-relasi-kan 2 entitas)
HanungNP/Basis Data/Politel/2012
Derajat Himpunan Relasi • Ternary (hanya me-relasi-kan 3 entitas)
HanungNP/Basis Data/Politel/2012
Kardinalitas Relasi • Kardinalitas relasi menggambarkan banyaknya jumlah maksimum entitas dapat berelasi dengan entitas pada himpunan entitas yang lain.
• Pada himpunan relasi biner, pemetaan kardinaltias relasi dapat berupa salah satu dari berikut ini – – – –
Satu ke Satu Satu ke Banyak Banyak ke Satu Banyak ke Banyak
HanungNP/Basis Data/Politel/2012
Kardinalitas Relasi
HanungNP/Basis Data/Politel/2012
Kardinalitas Relasi
HanungNP/Basis Data/Politel/2012
Key • Penggunaan key merupakan cara untuk membedakan suatu entitas didalam himpunan entitas dengan entitas lain. • Key adalah satu atau gabungan dari beberapa atribut yang dapat membedakan semua row dalam relasi secara unik. • 3 Macam key – Super Key – Candidate Key – Primary Key
HanungNP/Basis Data/Politel/2012
3 Macam Key • Super Key – Satu atau lebih atribut (kumpulan atribut) yang dapat membedakan satiap baris data dalam sebuah relasi secara unik.
• Candidate Key – Kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah relasi secara unik.
• Primary Key – Merupakan salah satu dari candidate key yang terpilih
– Alasan pemilihan primary key • Lebih sering di jadikan acuan • Lebih ringkas • Jaminan keunikan key lebih baik
HanungNP/Basis Data/Politel/2012
3 Macam Key • Super Key – Cth • • • •
Nim, nama, alamat, kota Nim, nama, alamat Nim, nama Nim
• Candidate Key – Cth • Nim
• Primary Key – Cth
• Nim
HanungNP/Basis Data/Politel/2012
Diagram ER • Merupakan diagram model konseptual untuk menggambarkan struktur logis dari basisdata berbasis grafis
nama
#nim alamat
Mahasiswa ipk
kota
#kd_org
mempunyai prodi
umur
nama
Organisasi jenis
Garis : Link yang menghubungkan atara Entitas dengan atribut, dan entitas dengan relasi Elips dobel : Menunjukkan atribut yang multivalued Elips dengan garis terputus : Menunjukkan atribut turunan HanungNP/Basis Data/Politel/2012
Constraint Kardinalitas • Dalam menggambarkam kardinalitas pada Diagram ER, digunakan garis panah (→) yang menunjukkan “Satu” atau garis biasa (—) yang menunjukkan “Banyak”. nama
#nim alamat
Mahasiswa ipk
kota
#kd_jabatan
mempunyai
prodi umur
Nama_jabatan
Jabatan periode
Relasi 1 ke 1
1 Mahasiswa hanya boleh menjabat 1 jabatan dlm 1 periode
tertentu
1 Jabatan hanya boleh di jabat oleh 1 mahasiswa dlm 1 periode tertentu HanungNP/Basis Data/Politel/2012
Constraint Kardinalitas … #kd_jabatan
Jabatan periode
nama
Nama_jabatan #nim mempunyai
Nama_organisasi
kota
Mahasiwa ipk
Relasi 1 ke n / banyak
prodi umur alamat
1 Jabatan hanya boleh di jabat oleh 1 mahasiswa dlm 1 periode tertentu dan 1 organisasi tertentu 1 Mahasiswa boleh menjabat 1 jabatan dlm 1 periode tertentu di organisasi yang berbeda HanungNP/Basis Data/Politel/2012
Constraint Kardinalitas … #id_beasiswa
Jenis beasiswa mempunyai
Beasiswa
nama
#nim
Mahasiswa
alamat
sponsor beasiswa
kota
ipk
prodi umur
Relasi n/banyak ke 1 1 Jenis Beasiswa boleh di berikan untuk banyak mahasiwa 1 Mahasiwa hanya boleh mendapatkan 1 Jenis beasiwa HanungNP/Basis Data/Politel/2012
Constraint Kardinalitas … nama
#nim alamat
Mahasiswa ipk
#kd_kuliah
kota
sks
mengambili
MataKuliah
prodi umur
Nama mtkul
dosen
Relasi n/banyak ke n/banyak 1 Mahiswa boleh mengambil banyak mata kuliah 1 Mata kuliah boleh di ambil banyak mahasiwa
HanungNP/Basis Data/Politel/2012
Daftar Pustaka • ‘An Introduction of Relational Database Desaign’ by Igor T. Hawryszkiewycz • ‘Database System Concept’ by Silberschatz, Korth dan Sudarshan
HanungNP/Basis Data/Politel/2012
Studi Kasus (1) •
•
Juragan Ojek H. Ngatimin adalah seorang juragan ojek. Awalnya beliau memiliki 15 motor yang dikemudikan oleh 15 orang karyawannya. Usaha H. Ngatimin maju pesat sehingga tahun ini beliau sudah memiliki 100 motor dan 100 karyawan yang tersebar di 7 pangkalan ojek di kota Bandung. Tiap pangkalan dikepalai oleh seorang mandor untuk mengawasi kerja para karyawan. Setiap hari, karyawan harus menyetorkan 60% dari total penghasilannya kepada sang mandor. Agar pembagian rejeki lebih adil, karyawan diwajibkan memilih salah satu pangkalan dan tidak boleh beroperasi di luar pangkalannya. Tidak semua pangkalan sama ramainya maka tiap pangkalan dibatasi jumlah karyawannya, makin ramai pangkalan itu makin banyak jumlah karyawannya. H. Ngatimin baru saja wafat dan jandanya, Hj. Ngatiyem mewarisi usaha mendiang suaminya. Hj. Ngatiyem adalah seorang sarjana lulusan Teknik Informatika, namun karena sudah lama melupakan pelajaran databasenya, beliau meminta Anda membantunya merancang database untuk usaha ojeknya.
HanungNP/Basis Data/Politel/2012
Studi Kasus (2) • TK Semoga Pinter • TK Semoga Pinter memiliki 450 siswa dan 18 orang guru. 450 orang siswa ini dibagi menjadi 18 kelas yang masing-masing terdiri dari 25 siswa. Tiap kelas dipimpin oleh seorang wali kelas dari kalangan guru. Di TK Semoga Pinter siswa diajarkan lima bidang studi: Berhitung, Menggambar, Membaca, Bernyanyi dan Olahraga. Dari 18 orang guru yang ada, 1 diantaranya menjadi Kepala Sekolah, 1 menjadi Wakil Kepala Sekolah, 1 merangkap sebagai Bendahara Sekolah sedangkan 15 orang lainnya mengajar di kelas (3 orang guru tiap bidang studi). • Pak Ngatimin, Kepala Sekolah TK Semoga Pinter meminta Anda merancang database untuk sekolah ini. Asumsikan bahwa untuk sementara ini database Anda belum menangani jadwal pelajaran dan pengolahan nilai.
HanungNP/Basis Data/Politel/2012
Studi Kasus (3) • PT Bajaj Riang Gembira • Karyawan perusahaan terdiri atas karyawan tetap dan karyawan kontrak. Karyawan tetap bekerja di divisi keuangan, personalia dan lain-lain, sedangkan karyawan kontrak adalah supir bajaj. Istri anak dan orang tua (karyawan tetap) menjadi penerima tunjangan, tetapi anak istri dan orang tua karyawan kontrak tidak mendapat tunjangan (dunia memang tidak adil). Setiap karyawan kontrak (alis supir bajaj) mengoperasikan 1 buah bajaj. Setiap beberapa waktu sekali, karyawan tetap mendapatkan pelatikan Oracle, Java dan Windows yang diselenggarakan oleh oleh IT Telpon, pelatihan mysql, php dan linux yg diselenggarakan oleh Politeknik Telpon dan sebagainya HanungNP/Basis Data/Politel/2012