March 24, 2015

MODUL 3 SBD (PERANCANGAN BASIS DATA MENGGUNAKAN MANUAL E-R DIAGRAM)

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.   Landasan Teori
Basis data dapat di modelkan sebagai :
1. Kumpulan dari entity (entitas)
2. Hubungan antar entity (entitas)

·         Entity Sets
Entity adalah suatu obyek yang dpat dikenali dari obyek yang lain.
Contoh : seorang yang khusus, perusahaan, peristiwa, tanaman dan lain-lain. Entity mempunyai atribut, contoh : seseorang mempunyai nama dan alamat. Kumpulan entity adalah suatu kumpulan entity dengan tipe yang sama yang berbagi properti yang sama pula. Contoh : kumpulan orang, perusahaan, tanaman, tempat liburan dan lain-lain.

·         Attributes
Entity ditampilkan oleh sekumpulan attributes, yang mana properti deskriptifnya dikuasai oleh seluruh anggota dalam kumpulan entitas.
Tipe attributes :
1.  Simple (sederhana) dan composite (gabungan) attributes.
2. Single-valued (satu-fungsi) dan multi-valued (multi-fungsi) attributes. Contoh : atribut multi-fungsi : nomor telepon.
3. Derived (asal) attributes : dapat diperhitungkan dari atribut lain. Contoh : umur, tanggal kelahiran.

·         Relationship Sets
Relationship adalah kesesuaian antar beberapa entitas. Relationship set adalah hubungan matematika antara entitas n>2, tiap bagiannya diambil dari satuan entitas {(e1,e2,..... en) | e1  E1, e2  E   E2,............., en   E    En} dimana (e1,e2,..... en) adalah relationship.
Attribute dapat merupakan properti dari relationship set.


Sebagai contoh : depositor merupakan relationship set antara entity sets costumer dan account mungkin baratribut acces-date.

·         Tingkatan Relationship Set
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 sets dalam sistem basis data adalah binary.
relationship sets mungkin melibatkan lebih dari dua entity sets.
Contoh : misal seorang pegawai bank bekerja (bertanggung jawab) dalam beberapa cabang, dengan tugas yang berlainan dalam setiap cabang yang lain pula. Maka disini terdapat relationship set ternary antara entity sets pegawai (employee), tugas (job) dan cabang (branch).
Relationships antara lebih dari dua entity sets sangat jarang.

·         Mapping Cardinalities (Cardinalitas Pemetaan)
Mengungkap jumlah entitas ke entitas yang lain bisa dihubungkan melalui relationship set. Cardinalitas pemetaan paling banyak digunakan dalam menggambarka relationship biner. Biner cardinalitas pemetaan untuk relationship set harus merupakan salah satu dari 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)



Catatan : Beberapa elemen di A dan B mungkin tidak di petakan ke elemen manapun di himpunan lain.



Catatan : Beberapa elemen di A dan B mungkin tidak dipetakan pada elemen manapun dihimpunan lain. Mapping Cardinalities mempengaruhi E-R Design.

·         ERD : Entity Relationship Diagram
Mencerminkan model basis data : hubungan antara entities (tabel-tabel) dan relationships (hubungan-hubungan) diantara entities tersebut.
Contoh ERD :



* Rectangles melambangkan set-set entitas.
* Diamonds melambangkan set-set hubungan (relationship).
* Lines menghubungkan atribut dengan set-set entitas serta set-set entitas dengan set-set hubungan (relationship).
* Ellipses mewakili attributes.
   - Double ellipses mewakili atribut multi-valued.
   - Dashed ellipses menunjukkan sifat yang didapat.
* Underline menunjukkan sifat kunci pokok (Primary Key).

·         Aturan untuk Model Basis Data
1.      Tiap baris harus berdiri sendiri (independent) : tidak bergantung baris-baris yang lain, dan urutan baris tidak mempengaruhi model basis data.
2.      Tiap baris harus unik : tidak boleh ada 2 atau lebih baris yang sama persis.
3.      Kolom harus berdiri sendiri (independent) : tidak bergantung kolom-kolom yang lain, dan urutan kolom tidak mempengaruhi model basis data
4.      Nilai tiap kolom harus berupa satu kesatuan : tidak berupa sebuah daftar.

·         Tahap Pembuatan Basis Data
Tahap 1: Tentukan Entities
Tentukan entities (obyek-obyek dasar) yang perlu ada di basis data.
Sifat-sifat entity:
* Signifikan     : memang perlu disimpan di basis data.
* Umum          : tidak menunjuk pada sesuatu yang khusus.
* Fundamental            : dapat berdiri sendiri sebagai entity yang dasar dan independent
* Unitary         : merupakan satu kesatuan yang tidak dapat dipecah lagi.

Tahap 2: Tentukan Atribut
Tentukan attributes (sifat-sifat) masing-masing entity sesuai kebutuhan database:
a. Tentukan sifat-sifat (fields atau kolom) yang dimiliki tiap entity, serta tipe datanya.
b. Attribute yang sesuai harus:
1.Signifikan : memang penting dan perlu dicatat didalam basis data.
2.Bersifat langsung (direct), bukan derived. Contoh attribute direct : tanggal_lahir. Contoh attribute derived : umur.
c. Tentukan attribute yang menjadi Primary Key untuk entity yang bersangkutan.
d. Jika satu attribute tidak cukup, gabungan beberapa attribute bisa menjadi Composite Primary Key.
e. Jika Composite Primary Key banyak (lebih dari 3 atribut), sebaiknya menambahkan attribute buatan yang menjadi Primary Key yang tunggal.

Tahap 3: Tentukan Relationships
Tentukan relationships (hubungan-hubungan) diantara entitas tersebut:
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 mana yang digunakan untuk menghubungkan kedua entitas tersebut.
d. Tentukan entity mana yang menjadi tabel utama, dan entity mana yang menjadi tabel kedua.
e. Attribute (dari tabel utama) yang menghubungkannya dengan tabel kedua menjadi Foreign Key di tabel kedua.

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.

Tahap 5: Proses Normalisasi Database
Tahap 6: Implementasi Database


Alat dan Bahan
1.      Komputer dengan sistem operasi Windows 7
2.      Modul Praktikum Sistem Berkas dan Basis Data

Langkah-langkah Praktikum
Rancanglah sebuah database untuk menyelesaikan masalah berikut:
Suatu perusahaan software diminta membuktikan basis data yang akan menangani data-data perbankan. Data-data yang ditanganinya adalah: data pribadi mengenai nasabah, data account  deposit yang dimiliki oleh nasabah, cabang bank di mana nasabah membuka 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 dasar) 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 attributes (sifat-sifat) masing-masing entity sesuai kebutuhan database
·         Nasabah:
   o Id_nasabah                        : nomor id untuk nasabah (integer) PK
   o Nama_nasabah      : nama lengkap nasabah (varchar(45))
   o Alamat_nasabah    : alamat lengkap nasabah (varchar(255))
·         Rekening:
   o No_rekening         : nomor rekening (integer) PK
   o Pin                         : personal identification number (varchar(10))
   o saldo                      : jumlah saldo rekening dalam Rp (integer)
·         Cabang_bank:
   o Kode_cabang        : kode untuk cabang bank (varchar(10)) PK
   o Nama_cabang       : nama lengkap cabang bank (varchar(20))
   o Alamat_cabang     : alamat lengkap cabang bank (varchar(255))
·         Transaksi:
   o No_transaksi         : nomor transaksi (integer) PK
   o Jenis_transaksi      : kredit dan debit (varchar(10))
   o Tanggal                 : tanggal terjadinya transaksi (date)
   o Jumlah                   : besarnya transaksi dalam Rp (integer)

3. Menentukan relationships (hubungan-hubungan) di antara entities tersebut


nasabah
rekening
Cabang_bank
transaksi
Nasabah
-
m:n
-
1:n
Rekening

-
n:1
1:n
Cabang_bank


-
-
transaksi



-

Hubungan
·         nasabah memiliki rekening:
  1. Tabel utama                 : nasabah, rekening
  2. Tabel kedua                 : nasabah_has_rekening
  3. Relationship                : many-to-many(m:n)
  4. Attribute penghubung : id_nasabah, no_rekening (FK id_nasabah, no_rekening di nasabah_has_rekening)

·         nasabah melakukan transaksi:
  1. Tabel utama                 : nasabah
  2. Tabel kedua                 : transaksi
  3. Relationship                : one-to-many(1:n)
  4. Attribute penghubung : id_nasabah (FK id_nasabah di transaksi)

·         cabang_bank menangani rekening:
  1. Tabel utama                 : cabang_bank
  2. Tabel kedua                 : rekening
  3. Relationship                : one-to-many(1:n)
  4. Attribute penghubung : kode_cabang (FK kode_cabang di rekening)

·         rekening terlibat dalam transaksi:
  1. Tabel utama                 : rekening
  2. Tabel kedua                 : transaksi
  3. Relationship                : one-to-many(1:n)
  4. Attribute penghubung : no_rekening (FK no_rekening di transaksi)

4. Menggambar ER Diagram manual:



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!

1. Menentukan entities (object-object dasar) yang perlu ada di database
·         Mahasiswa     : menyimpan semua data pribadi semua mahasiswa.
·         Dosen              : menyimpan semua data pribadi semua dosen.
·         Matakuliah    : menyimpan informasi tentang semua mata kuliah yang ada.
·         Ruang             : menyimpan informasi tentang semua ruang kelas yang digunakan.

2. Menentukan attributes (sifat-sifat) masing-masing entity sesuai kebutuhan database
·         Mahasiswa:
   o NIM                      : nomor induk mahasiswa (integer) PK
   o Nama_mhs           : nama lengkap mahasiswa (varchar(60))
   o  Alamat_mhs        : alamat mahasiswa (varchar(225))
   o Jurusan                : jurusan kuliah mahasiswa (varchar(30))
·         Dosen:
   o NIK                      : nomor induk kepegawaian (integer) PK
   o Nama_dosen        : nama lengkap dosen (varchar(60))
   o Alamat_dos          : alamat lengkap dosen (varchar(225))
·         Matakuliah:
  o  Kode_Makul        : kode mata kuliah (integer) PK
  o  Nama_Makul       : nama mata kuliah (varchar(30))
·         Ruang:
  o Kode_ruang          : kode untuk ruang kelas (integer) PK
  o Nama_kls              : nama ruang kelas (varchar(30))
  o Area_kls                : area/lantai ruang kelas digedung (varchar(30))

3. Menentukan relationships (hubungan-hubungan) di antara entities tersebut

4. Menggambar ER Diagram manual:

Maaf Tugas kedua belum ter-update

No comments:

Post a Comment