Tugas Presentasi basis data lanjut Kelompok : I Made Sukarya

advertisement
Tugas
Presentasi basis data lanjut
Kelompok :
I Made Sukarya Dwija P (0808605007)
I Putu Eka Suparwita
(0808605008)
Oka Karmayasa
(0808605009)
Made Sakha Yudha
(0808605011)
Insidania Kartolegowo
(0808605012)
Jurusan Ilmu Komputer
Fakultas MIPA
Universitas Udayana
2010
Pemodelan Data
Model Data
Model Data pada hakekatnya adalah kumpulan perangkat konseptual untuk menggambarkan
data,relasi data, makna (semantik) data, dan batasan data. Ada sejumlah cara dalam
merepresentasikan Model Data untuk keperluan perancangan basis data, yaitu dikelompokkan
sebagai berikut:
o Model Hirarkis (Hierarchical Model)
o Model Jaringan (Network Model)
o Model Relasional (Relational Model)
o Model Relasi Entitas (Entity-Relationship Model)
o Model Berbasis Objek (Object Oriented Model)
1. Model Data Hirarkis
Model data hirarkis adalah model data paling tua yang pernah diterapkan dalam suatu DBMS.
Model ini mengikuti pola hirarki pada suatu organisasi atau pada suatu keluarga, dimana terdapat
rekaman data yang berfungsi sebagai “bapak” (parent-record) ada yang berfungsi sebagai “anak”
(child-record). Dalam model ini seorang “bapak” bisa memiliki lebih dari
satu “anak” tetapi seorang “anak” hanya boleh memiliki satu “bapak”.
Model ini akan menyebabkan timbulnya “redudansi” data, karena banyak kemungkinan bahwa
matakuliah yang sama diambil oleh beberapa mahasiswa, sehingga record-matakuliah tersebut
direkam berkali-kali dibawah record-mahasiswa yang mengambilnya. Disamping itu apabila ada
matakuliah yang tidak diprogram-kan oleh mahasiswa maka ada kemungkinan record-nya tidak
ada dalam database karena tidak memiliki parent.
Contoh model hirarkis yang menunjukkan hubungan Dosen-MataKuliah-Mahasiswa dapat pula
digambarkan dalam bentuk diagram sebagai berikut.
2. Model Data Jaringan
Model data jaringan adalah pengembangan dari model data hirarkis. Pada model jaringan
diperkenankan bahwa sebuah child-record bisa memiliki lebih dari satu parent-record. Pada
implementasi-nya berarti antara parent-record dan child-record diperlukan penghubung (link atau
pointer) yang bisa satu arah atau dua-arah.
Dengan model jaringan ini maka informasi dimana seorang mahasiswa dapat mengambil
beberapa matakuliah (pointer dari record mahasiswa tsb ke beberapa record-kuliah) dan juga
informasi bahwa satu matakuliah dapat di-program-kan oleh banyak mahasiswa (pointer dari
record-kuliah ke beberapa record-mahasiswa) keduanya dapat di-representasikan.
Model Jaringan dari Dosen-Matakuliah-Mahasiswa dapat digambarkan sebagai berikut.
Persoalan yang timbul adalah “terjadinya hutan pointer” akibat relasi antar record yang rumit
sehingga penelusuran data menjadi sangat sulit. Ketika model relasional menjadi lebih populer
maka model ini pun ditinggalkan orang.
3. Model Data Relasional
Salah seorang pencetus awal dari basis data relasional adalah E.F.Codd yang juga telah
menciptakan serangkaian operasi matematika relasional terhadap model data relasional.
Pada prinsipnya model data relasional dapat di-representasikan dalam bentuk table (tabel)
data,dimana:
hanya
memiliki satu tipe record saja, setiap record adalah baris
ld pada setiap record sama
mengenali satu record
Contoh: domain mahasiswa dapat diwakili oleh satu tabel mahasiswa dengan kunci utama adalah
NIM (Nomor Induk Mahasiswa), dan domain matakuliah dapat diwakili oleh satu tabel kuliah
dengan kunci utama kode-mkuliah.
Hubungan antara kedua domain ini dinyatakan dalam bentuk relasi, ada tiga kemungkinan relasi
antar
dua domain yaitu:
-satu (one-to-one relation) : bahwa satu mahasiswa hanya boleh mengambil satu
matakuliah, dan satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat
dengan simbol 1-to-1. Dalam implementasi dua file yang memiliki relasi 1-to-1 dapat digabung
menjadi satu file.
-banyak (one-to-many relation) : bahwa satu mahasiswa boleh ambil banyak
matakuliah tetapi satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat
dengan simbol 1-to-M atau M-to-1. Pada relasi 1-to-M atau M-to-1, kunci record dari file pada
sisi-1 harus ditambahkan sebagai kunci-tamu pada file sisi-M
-banyak (many-to-many relation) : bahwa satu mahasiswa boleh ambil banyak
matakuliah, dan satu matakuliah boleh diambil oleh banyak mahasiswa, relasi disingkat dengan
simbol M-to-M. Pada relasi M-to-M harus diciptakan sebuah file ‘relasi’ yang berisi minimal dua
field kunci record dari masing-masing file yang berelasi.
4. Model Relasi-Entitas
Model Relasi-Entitas atau (Entity Relationship Model) pada hakekatnya perwujudan dari model
relasional dalam bentuk diagram, yaitu E-R Diagram.
ERD (Entity Relationship Diagram) merupakan notasi grafis dalam pemodelan data konseptual
yang mendeskripsikan hubungan antara penyimpanan dan akan membantu mengorganisasikan
data dalam suatu proyek ke dalam entitas-entitas. Dengan ERD dapat menjawab data apa yang
diperlukan?, bagaimana data yang satu berhubungan dengan data yang lain?
Komponen ERD :
1. Entitas (Entity)
Definisi : sebuah barang atau obyek yang dapat dibedakan dari obyek lain (obyek yang
bisa diidentifikasi). Setiap entitas memiliki atribut.
Entitas dapat berupa :

Obyek secara fisik : orang, kendaraan, rumah, pegawai,dll

Obyek dengan keberadaan konseptual : pekerjaan, mata kuliah, dll
Tipe entitas lemah (weak entity) : merupakan entitas yang tidak memiliki key,
keberadaannya bergantung pada entitas lain dan harus terelasi dengan entitas yang
memilikinya.
2. Atribut (Attribute)
Definisi : karakteristik atau property tertentu yang menggambarkan suatu entitas.
Contohnya : Mahasiswa mempunyai NIM, nama, tanggal lahir, jenis kelamin, alamat,
telepon, dll.
Jenis-Jenis atribut :
 Key atribut : merupakan atribut yang bernilai unik.
Misalnya Mahasiswa memiliki NIM yang tidak akan sama dengan mahasiswa
yang lainnya.
Penulisan key dalam ERD akan diberi garis bawah
 Atribut sederhana/Atomic : atribut yang tidak dapat dipecah-pecah.
Contohya : Jenis kelamin
 Atribut komposit : atribut yang dapat dipecah-pecah
Contohnya : Nama nama depan, nama tengah, nama belakang
Alamat  jalan, kota,kodepos
 Atribut bernilai banyak (multivalued) : atribut yang bisa memiliki nilai banyak
Contoh : Pengalaman, Hobby
 Atribut turunan (derived) : atribut yang nilainya bisa diturunkan dari atribut
lainnya.
Contoh : Umur bisa diturunkan dari tanggal lahir
 Null values : atribut yang bisa bernilai kosong. Karena atribut tersebut memang
tidak ada atau tidak diketahui keberadaannya. Ketidaktahuan ada dua jenis yaitu
ada tapi tidak diketahui (tinggi badan), atau tidak diketahui ada atau tidak (no
telepon).
3. Relasi (Relationship)
Definisi : hubungan dua atau lebih entitas yang terkait
Contoh : entitas departemen dan entitas pegawai dihubungkan oleh sebuah relasi
memiliki (misalnya departemen HRD memiliki pegawai David Adriana)
Derajat relasi : jumlah entitas yang terlibat didalam suatu relasi. Terdiri dari satu entitas
disebut Unary, terdiri dari dua disebut Binary, terdiri dari tiga disebut Ternary.
Relasi
dapat
pula memiliki
atribut, misalnya
pada relasi
mengambil
yang
menghubungkan antara mahasiswa dan matakuliah terdapat nilai (nilai dihasilkan sebagai
akibat mahasiswa mengambil suatu mata kuliah).
4. Kardinalitas (Ratio Constraint)
Definisi : angka yang menunjukkan banyaknya kemunculan suatu obyek terkait dengan
kemunculan obyek lain pada suatu relasi.
Kombinasi yang mungkin :
One to one (1:1) : pegawai mengepalai departemen
One to many (1:N) : dosen membimbing mahasiswa
Many to many (M:N) : mahasiswa mengambil matakuliah
5. Modalitas
Definisi : partisipasi sebuah entitas pada suatu relasi
0 jika partisipasi bersifat optional/parsial
1 jika partisipasi bersifat wajib/total
Contoh : Partisipasi total = setiap anak memiliki ibu
Partisipasi parsial = tidak setiap perempuan memiliki anak
Simbol – simbol ERD
5. Model Data Berbasis Objek
Model data berbasis objek dikembangkan searah dengan perkembangan pemrograman berbasis
objek. Salah satu karakteristik dari sistem berbasis objek adalah encapsulation yaitu suatu objek
terpisah dari objek lain sehingga setiap objek seakan-akan berada dalam kapsulnya masingmasing. Pada setiap kapsul terdapat komponen data (attribute) dikemas bersama dengan
komponen aksesnya (methods).
Sebagai contoh, berikut ini disajikan data pegawai dalam format berbasis objek.
Download