Application Programs
0
3.2. Contoh Aplikasi Basis Data
Untuk keperluan penjelasan konsep dan penggunaan ER Model, digunakan satu contoh basis
data “Company” yang didalamnya terdapat :
- Data Pegawai (Employees)
- Data Departemen (Departement)
- Dataya Proyek (Project)
Keterangan sebagian darai data Company yang diperoleh setelah fase pengumpulan dan
analisis kebutuhan sbb:
1. Company terdiri dari sejumlah departement dimana setiap departement mempunyai satu
nama yang unik, nomor yang unik.
Dan seorang pegawai (employee) yang bertindak sebagai manager dari departement,
tanggal mulai bekerja dan manager juga dicatat dalam database (tanggal Pengangkatan
sebagai manager).
Satu departement dapat tersebar di sejumlah lokasi.
Company 1 N
Memiliki
Nama
Departement Nomor
1 N
Employee Manages Lokasi
Tgl Pengangkatan
2. Suatu departement dapat mengendalikan sejumlah project. Setiap project mempunyai satu
nama yang unik, nomor yang unik dan satu lokasi tertentu
Departement
1
Control
Nama
M Nomor
Project
Lokasi
1
3. Data pegawai yang perlu dicatat berupa : nama, social security, number, address, salary,
sex dan birthdate.
Seorang pegawai ditempatkan disatu departement, tetapi dapat bekerja di sejumlah project
yang tidak harus dikendalikan oleh departement dimana pegawai tersebut ditempatkan.
Jumlah jam per minggunya dari pegawai yang bekerja pada suatu project perlu dicatat,
juga perlu dicatat supervisor langsung dari setiap pegawai
1 N N 1
Tgl kerja
Supervision M 1 Manajer
Nama
Nomor Lokasi
4. Untuk tujuan / keperluan asuransi pegawai, maka perlu dicatat anggota keluarga dari
setiap pegawai
Data yang dicatat berupa : nama anggota keluarga, sex, birthdate dan hubungan keluarga
Pegawai
DepentOf
Dependent
Nama
Hubungan birthdate Sex
2
Dari keempat contoh diatas dapat digabungkan gambarnya menjadi satu gambar ER-Model
3
Ex. (AlamatTelp {Telp (Kodearea, NoTelp) }, Alamat (AlamatJalan
(No,Jalan,NoBlok),Kota,Negara,Kodepos))}
Dimana ( ) = Composite Attribute
{ } = Multivalued Attribute
2. Entity Types, Entity Sets, Keys dan Value Sets
a. Tipe Entity adalah atribut-atribut yang seusai dengan entity
b. Set Entity adalah kumpulan attribute-atribute dari suatu entity
c. Key Atribute adalah kunci attribute yang unik yang membedakan antara
record yang satu dengan record yang lain
d. Set value (Domain) adalah isi/nilai dari entity
Ex. Employee
Key Tipe Entity
Nip Name Age Salary
N01 Bella 18 500000 Domain
N02 Ruben 20 800000 (age(18,20))
4
Complex Attribute : WorksOn
d. Entity Dependent
Employee, Dependentname, Sex, Birthdate, Relationship
* #
* #
#
B. One To Many : Terjadi bila tiap anggota entity A boleh berpasangan
dengan lebih dari satu anggota B tetapi tidak berlaku sebaliknya
A 1 N B
* #
* #
#
C. Many To Many : Terjadi bila tiap anggota A boleh berpasangan dengan
lebih dari satu anggota B dan berlaku untuk sebaliknya
M N
A B
* #
* #
#
5
Ternary relationship adalah relasi yang melibatkan tiga entity, Ex Hubungan
Suply antara entity supplier, part dan project
Penamaan Roles adalah Penamaan dari sebuah hubungan misalnya Hubungan
Work-For terdiri dari entity Employee yang bisa menjadi Employee atau
Worker dan entity Departement bisa menjadi Departemen atau employer
Relasi Rekursif adalah hubungan yang terjadi pada dirinya (entity) sendiri,
Ex. Hubungan Supervision pada entity Employee dimana bisa sebagai
supervisi atau sebagai supervisor
3. Pembatas pada tipe Relasi
Relasi
B. Tidak Wajib
Hubungan dosen dengan mata kuliah
6
Tiap mata kuliah mungkin diajarkan oleh seorang dosen dan mungkin belum
ada yang mengajar.
A. Derajat 1:1 :
Person Kawin
7
B. Derajat 1:M :
1
Supervisi
Karyawan
M
C. Derajat M:N :
N
Mahasiswa Team OR
(No_Mhs,…..) (No_Mhs_Ketua,
M No_Mhs_Angg.)
8
Maksudnya adalah satu Employee hanya akan menjadi manager pada
satu departemen begitu sebaliknya satu departemen hanya dimanager
oleh 1 employee
b. Work_For : terjadi hubungan 1:N antara Departemen dengan Employee
Maksudnya adalah satu Departemen mempekerjakan banyak employee
tetapi sebaliknya satu employee hanya bekerja pada satu departemen
c. Controls : terjadi hubungan 1:N antara Departemen dan Project
Maksudnya adalah satu Departemen mengendalikan banyak Project
tetapi sebaliknya satu Project hanya dikendalikan oleh satu Departemen
d. Supervision : terjadi hubungan 1:N antara Employee Supervisor dengan
Employee supervisi
e. Work_On : terjadi hubungan M:N antara Employee dengan Project
Maksudnya adalah satu Employee bisa mnegerjakan banyak project
begitu sebaliknya satu project bisa dikerjakan dengan banyak employee
f. Dependents_Of : terjadi hubungan 1:N antara Employee dan Dependence
9
2. : Weak entity Type
Suatu entity yang tidak punya key atribut, keberadaannya tidak
perlu berdiri sendiri / diluar system
Didalam weak entity dimungkinkan 1 weak mempunyai
banyak entity
Setidak-tidaknya memiliki 1 relasi
Ex.
Karyawan Departemen
Salary
3. : Attribute
Keterangan yang dimiliki entity / sifat-sifat yang melekat pada
entity yang perlu dicatat
Ex. Pegawai : Nopeg, Nama, Alamat, Jenis Kel, tgl. Masuk
4. : Key Attribute
Bila didalam attribute terdapat nilai sama, maka kita perlu
membuat “Key attribute” sehingga dipastikan tidak akan
terjadi nilai/record sama
Ex. Pegawai : sebagai key adalah NoPeg
NoPeg Nama Alamat
P01 Bella Malang
P02 Bella Batu
5. : Multivalued Attribute
Satu entity yang memiliki 2 attribute sama
Ex. Departemen yang memiliki 2 lokasi pabrik
Departemen Lokasi
10
6. : Composite Attribute
Attribute yang mempunyai nilai attribute lebih dari Satu
Ex. Nama : Nama Depan Alamat : Jalan
Nama Tengah Nomer
Nama Belakang Kota
7. : Derived Attribute
Merupakan kombinasi dari attribute-attribute dimana
keberadaannya tidak perlu disimpan
Ex.
MHS Mata Kuliah
Nilai
8. : Relationship Type
Menyatakan hubungan antar attribute sehingga terjadi
pemetaan
Ex. M Bisa N
Mahasiswa Mat. Kul
ambil
* #
#
* #
Range #
Domain Kodomain
Hasil Dari Relasi :
- One To One (1:1)
- One To Many (1:N)
- Many To Many (1:M)
E1
E2
11
Mengapa ER Model :
- Model data tingkat tinggi yang populer untuk model data relasional
- Banyak Database Desain Tools yang melibatkan ER Model
Pembahasan :
- Konsep Dasar Penyusunan dan Constraint dari ER Model
- Penggunaan ER Model dalam desain skema Konseptual
Jenis Data Independence :
1. Logical Data Independence :
- Kemampuan untuk merubah skema konseptual tanpa harus merubah
skema eksternal
- Hanya definisi dari view dan mapping yang perlu diubah dalam
DBMS
- Constraint dari basis data juga dapat diubah dalam skema
konseptual tanpa mempengaruhi skema eksternal
2. Physical Data Independence :
- Kemampuan untuk merubah skema internal tanpa haarus merubah
skema konseptual (atau eksternal)
- Lebih mudah untuk dilakukan daripada logical data independence
karena adanya isolasi aplikasi dari susunan penyimpanan fisik.
CONTOH
Untuk keperluan penjelasan konsep dan penggunaan ER Model,digunakan satu contoh database “COMPANY” yang didalamnya mencatat :
12
1. COMPANY terdiri dari sejumlah Departements. Setiap department
mempunyai satu nama yang unik, nomor yang unik, dan seorang
pegawai (Employee) yang bertindak sebagai manager dari department.
Tanggal mulai bekerja dari manager juga dicatat dalam database
(Tanggal pengangkatan sebagai manager).
Satu department dapat tersebar di sejumlah lokasi.
2. Suatu department dapat mengendalikan sejumlah project. Setiap project
mempunyai satu nama yang unik, nomor yang unik, dan satu lokasi
tertentu.
3. Data pegawai yang perlu dicatat berupa : nama, social security number,
address, salary, sex dan birthdate.
Seorang pegawai ditempatkan di satu department, tetapi dapat bekerja
di sejumlah project yang tidak harus dikendalikan oleh department
dimana pegawai tersebut ditempatkan.
Jumlah jam perminggunya dari pegawai yang bekerja pada suatu project
perlu dicatat. Juga perlu dicatat supervisor langsung dari setiap
pegawai.
4. Untuk tujuan/keperluan asuransi pegawai, maka perlu dicatat anggota
keluarga dari setiap pegawai. Data yang dicatat berupa : nama anggota
keluarga, sex, birthdate dan hubungan keluarga (relationship)
N)
N Name Sex Salary Works-For Location
1) Department
Department
ate Employee NumbOfEmp
Startdate
Employee
(0,1) (1,1) Department (0,N)
Manager Managed Controlling
Manages Department Worker
13
Employee
me Number Location
Dependents_Of
dependent
(1,1)
Dependent
Relationship
14