Selasa, 24 Maret 2015

PRANCANGAN BASIS DATA




Praktikum Sistem Basis Data - Modul 3

PERANCANGAN BASIS DATA
MENGGUNAKAN E-R DIAGRAM MANUAL


A. Tujuan
1. Mahasiswa mampu merancang basis data melalui tahap-tahap perancangannya.
2. Mahasiswa mampu mewujudkan hasil perancangan basis data ke dalam diagram E-R secara manual.
B. Dasar Teori
Database dapat dimodelkan sebagai:
1. Kumpulan dari entity (entitas)
2. Hubungan antar entity (entitas)


Entity Sets
Entity adalah suatu obyek yang dapat dikenali dari obyek yang lain. Contoh: seseorang yang khusus, perusahaan, tanaman, dan lain-lain.


Attributes
Entity ditampilkan oleh sekumpulan attribute, yang mana properti deskriptipnya dikuasai oleh seluruh anggota dalam kumpulan entity.
Tipe attribute:
1. Sederhana dan gabungan attribute
2. Satu fungsi dan multi fungsi
3. Asal attribute


Relationship Sets
Relationship adalah kesesuaian antar beberapa entity. Relationship set adalah hubungan matematika antara entity n > 2, tiap bagiannya diambil dari satuanentity.


Tingkatan Relationship Sets
Mengacu pada jumlah entity set yang terlibat dalam relationship set.Relationship sets yang melibatkan dua entity sets adalah binary (atau tingkat dua). Umumnya hampir semua relationship set dalam sistem database adalah binary.


Mapping Cardinalities (Cardinalitas Pemetaan)
Menangkap jumlah entitas ke entitas yang lain yang bisa dihubungkan melaluirelationship set. Cardinalitas pemetaan paling banyak digunakan dalam menggambarkan relationship sets biner. Untuk relationship set biner cardinalitas pemetaan harus merupakan salah satudari tipe berikut:
1. One to one (satu ke satu)
2. One to many (satu ke banyak)
3. Many to one (banyak ke satu)
4. Many to many (banyak ke banyak)
·


ERD: Entity Relationship Diagram
Mencerminkan model database: hubungan antara entities (tabel-tabel) dan relationships (hubungan-hubungan) di antara entities tersebut.
1. Rectangles melambangkan set-set entitas.
2. Diamonds
3. Lines menghubungkan atribut dengan set-set entitas serta set-set entitas dengan set-set hubungan (relationship).
4. Ellipses mewakili attributes.
Aturan untuk Model Database
1. Tiap baris harus berdiri sendiri.
2. Tiap baris harus unik.
3. Kolom harus berdiri sendiri.
4. Nilai tiap kolom harus berupa satu kesatuan.


v Tahap Pembuatan Database
1. Tahap 1: Tentukan Entities
Tentukan entities (object-object dasar) yang perlu ada di database:
Sifat-sifat entity:
a. Signifikan
b. Umum
c. Fundamental
d. Unitary
2. Tahap 2: Tentukan Atribut
Tentukan attributes (sifat-sifat) masing-masing entity sesuai kebutuhandatabase:
a. Tentukan sifat-sifat (fields atau kolom) yang dimiliki tiap entity, serta tipe datanya.
b. Attribute yang sesuai harus:
1. Signifikan
2. Bersifat langsung
c. Tentukan attribute yang menjadi Primary Key untuk entity yang bersangkutan.
d. Jika satuattribute tidak cukup, gabungan beberapa attribute bisa menjadi Composite Primary Key.
e. Jika Composite Primary Key banyak sebaiknya menambahkanattribute buatan yang menjadi Primary Key yang tunggal.
3. Tahap 3: Tentukan Relationships
Menentukan hubungan-hubungan antar entitas:
a. Tentukan jenis hubungan di antara entity yang satu dengan entitas yang lain.
b. Macam hubungan ada 3:
1. One to one (1:1)
2. One to many (1:n)
3. Many to many (m:n)
c. Dalam membentuk hubungan di antara 2 entitas, tentukan attribute nama yang digunakan untuk menghubungkan kedua entitas tersebut.
d. Tentukan entity mana yang menjadi tabel utama dan mana yang menjadi tabel kedua.
e. Attribute (dari tabel utama) yang menghubungkannya dengan tabel kedua menjadi Foreign Key di tabel kedua.
4. Tahap 4: Pembuatan ERD
a. Buat Entity Relationship Diagram (ERD) berdasarkan hasil dari Tahap 1-3.
b. Ada berbagai macam notasi untuk pembuatan ERD.
c. Menggunakan software khusus untuk menggambar ERD.
5. Tahap 5: Proses normalisasi database
6. Tahap 6: Implementasi Database
C. Alat Bahan
1. Komputer dengan sistem operasi Windows
2. Modul Praktikum Sistem Berkas dan Basis Data


D. Langkah Kerja
Rancanglah sebuah database untuk menyelesaikan masalah berikut:
Suatu perusahaan software diminta membuktikan basis data yang akan menangani data-data perbankan. Data-data yang ditanganinnya adalah: data pribadi mengenai nasabah, data accoun membauka depositnya, dan data nasabah, cabang bank di mana nasabah mebuka depositnya, dan data transaksi yang dilakukan nasabah. Nasabah boleh mempunyai lebih dari satu account deposit, dan satu account deposit boleh dimiliki oleh lebih dari satu nasabah sekaligus (joint account).
Langkah-langkah perancangan database perbankan:
1. Menentukan entities (object-object) yang perlu ada di database.
· Nasabah: menyimpan semua data pribadi semua nasabah.
· Rekening: menyimpan informatika semua rekening yang telah dibuka.
· Cabang_bank: menyimpan informasi semua cabang bank
· Transaksi: menyimpan informasi tentang semua transaksi yang telah terjadi
2. Menentukan antribut masing-masing entity sesuai kebutuhan database
· Nasabah:
o Id_nasabah
o Nama_nasabah
o Alamat_nasabah
· Rekening:
o No_rekening
o Pin
o saldo
· Cabang_bank:
o Kode_cabang
o Nama_cabang
o Alamat_cabang
· Transaksi:
o No_transaksi
o Jenis_transaksi
o Tanggal
o Jumlah
3. Menggambar ER Diagram manual:




E. Analisa
Dalam pembuatan rancangan database harus mengetahui apa saja entitas yang dibutuhkan dan atribut apa saja yang diperlukan. Dapat menentukan dan memahami relasi atau hubungan antar entitas. Dengan menggunakan ERD, dapat mempermudah kita untuk melihat hubungan antar entitas serta memodelkan struktur data dan hubungan antar data. ERD juga bisa digunakan untuk mendokumentasikan data yang ada dengan cara mengidentifikasikan tiap entitas dan hubungannya.




F. Tugas
1. Buat rancangan sebuah database untuk menangani data-data kuliah. Data-data yang akan ditanganinya adalah: data pribadi mengenai mahasiswa, data pribadi mengenai dosen, data matakuliah dan data ruang kelas. Mahasiswa boleh mengambil lebih dari satu mata kuliah, dan satu mata kuliah boleh diambil oleh lebih dari satu mahasiswa sekaligus (joint account).
Buatlah ER Diagram manual untuk kasus tersebut dari tahap 1- tahap 4!
· Menentukan entitas:
o Mahasiswa: menyimpan semua data pribadi semua mahasiswa.
o Dosen: menyimpan semua data pribadi semau dosen.
o Matakuliah: menyimpan informasi tentang semua mata kuliah yang ada.
o Ruang: menyimpan informasi tentang semua ruang kelas yang digunakan.
· Menentukan attributes:
Mahasiswa:
o Nama_Mahasiswa : nama lengkap mahasiswa
o NIM : nomor induk mahasiswa
o Alamat : alamat lengkap mahasiswa
Dosen:
o Nama_Dosen: nama lengkap dosen
o NIK/NIP : nomor induk kepegawaian dosen
o Alamat : alamat lengkap mahasiswa
Matakuliah:
o Nama_Mata Kuliah: nama mata kuliah
o Jumlah_SKS : jumlah sks mata kuliah
o Kode_Mata Kuliah : kode mata kuliah
Ruang:
o Nama_Ruang: identitas kelas seperti gedung, lantai dan nomor ruang
o Kapasitas: jumlah kursi atau kapasitas maksimal yang dapat ditampung


· Menetukan relationship antar entitas:

Mahasiswa
Dosen
Matakuliah
Ruang

Mahasiswa
-
n:1
m:n
-

Dosen
-
n:1
-

Matakuliah
-
1:1

Ruang
-

Hubungan:
· Mahasiswa dibimbing oleh Dosen:
o Tabel utama: dosen
o Tabel kedua: mahasiswa
o Relationship: many to one (n:1)
o Attribute penghubung: NIK/NIP (FK NIK/NIP di dosen)
· Mahasiswa mengambil Matakuliah:
o Tabel utama: Mahasiswa
o Tabel kedua: Matakuliah
o Relationship: many to many (m:n)
o Attribute penghubung: NIM, Kode_Matakuliah (FK NIM, KODE_MK)
· Dosen mengampu Matakuliah:
o Tabel utama: Matakuliah
o Tabel kedua: Dosen
o Relationship: many to one (n:1)
o Attribute penghubung: NIK/NIP(FK Kode_Matakuliahdi Matakuliah)
· Matakuliah menempati Ruang:
o Tabel utama: Ruang
o Tabel kedua: Matakuliah
o Relationship: 1:1
o Attribute pendukung: Nama (FK Nama di Ruang)


· Menggambar ER Diagram manual:





2. Ambil contoh sembarang database. Buatlah rancangan ER Diagram manuual database tersebut dari tahap 1 sampai tahap 4, dengan ketentuan database minimal mengundang 4 buah entitas.
· Menentukan entitas:
o Pemain: menyimpan semua data pribadi Pemain.
o Pelatih: menyimpan semua data pribadi Pelatih.
o Stadion: menyimpan informasi tentang Stadion.
o Kompetisi: menyimpan informasi tentang semua Kompetisi yang diikuti.
· Menentukan attributes:
Pemain:
o Nama_Pemain : nama lengkap Pemain
o No_Sepatu : ukuran sepatu pemain
o Posisi_Pemain : dimana posisi pemain bermain
Pelatih:
o Nama_Pelatih: nama lengkap Pelatih
o Usia : usia pelatih
o Strategi : strategi yang dimiliki pelatih
Stadion:
o Nama_Stadion: nama stadion
o Kapasitas_stadion : jumlah kursi stadion
o Lokasi_stadion: lokasi stadion
Kompetisi:
o Liga : liga lokal maupun internasional
o Cup : cup lokal maupun internasional


· Menetukan relationship antar entitas:

Pemain
Pelatih
Stadion
Kompetisi

Pemain
-
n:1
n:1
m:n

Pelatih
-
n:1
-

Stadion
-
1:n

Kompetisi
-

Hubungan:
· Pemain dilatih oleh pelatih:
o Tabel utama: Pemain
o Tabel kedua: Pelatih
o Relationship: many to one (n:1)
o Attribute penghubung: Strategi (FK Strategi di pelatih)
· Pemain menggunakan Stadion:
o Tabel utama: Pemain
o Tabel kedua: Stadion
o Relationship: many to one (n:1)
o Attribute penghubung: Posisi_Pemain (FK Posisi_Pemain)
· Stadion untuk Kompetisi:
o Tabel utama: Stadion
o Tabel kedua: Kompetisi
o Relationship: one to many (1:n)
o Attribute penghubung: Liga, CUP (FK Liga, CUP diKompetisi)
· Pemain mengikuti Kompetisi:
o Tabel utama: Pemain
o Tabel kedua: Kompetisi
o Relationship: m:n
o Attribute pendukung: Posisi (FK Posisi di Pemain)


· Menggambar ER Diagram manual:

Tidak ada komentar:

Posting Komentar