Senin, 04 Juni 2012

RANGKUMAN KELOMPOK 8 ( MERANCANG APLIKASI BERBASIS DATABASE MENGGUNAKAN ERD ATAU CLASS DIAGRAM-UML )


MERANCANG APLIKASI BERBASIS DATABASE MENGGUNAKAN ERD ATAU CLASS DIAGRAM-UML

CLASS DIAGRAM

l  Menggambarkan Objek/Class Pada Sistem
Contoh :
¡  Object Class Program
¡  Tabel Data Pada Database

OBJET - CLASS DIAGRAM

l  Attribut
l  Operation/Function/Method
l  RelationShip
l  Note / Keterangan (Optional)
CLASS ICON – CLASS DIAGRAM

RELATION – CLASS DIAGRAM


Contoh
Kasus reservasi tiket pesawat

Reservasi tiket pesawat merupakan suatu proses pembelian tiket pesawat yang dillakukan oleh passanger mulai dari melihat jadwal, pembayaran harga tiket, dan sampai pada tiket yang sudah dicetak dan siap digunakan.






Rekayasa ulang proses bisnis untuk reservasi tiket pesawat
seperti gambar dibawah ini.


Entity Relationship Diagram (ERD)

Sebelum melakukan perancangan basis data dengan menggunakan ERD, maka terlebih dahulu ditentukan entity-entity yang akan terlibat beserta atributnya masing-masing, yaitu sbb :
1. Entity Passenger, Attribute : nama, no.KTP, alamat, Jenis kelamin, dan no. telepon.
2. Entity Teller, Attribute: nold dan nama
3. Entity Data_Penerbangan, Attribute : no.penerbangan, maskapai, kelas, asal, tujuan, waktu dan harga tiket.
4. Entity Tiket, Attribute : no.tiket, no.KTP, nama, no. penerbangan, kelas, asal, tujuan, tanggal, pukul, dan no.rekening
5. Entity Login, Attribute : user.Id, dan password
6. Entity Bank, Attribute : nama bank, alamat, dan no. rekening

Semua entity yang terlibat dalam perancangan telah ditentukan, maka selanjutnya dibangun tabel sesuai attribute yang dimiliki tiap entity.










Setelah tabel dan data yang disusun terbentuk, maka dilakukan perancangan basis data dengan menjelaskan hubungan antar entity menggunakan ERD.
Sehingga, diperoleh sbb :









Sabtu, 02 Juni 2012

RANGKUMAN KELOMPOK 7 ( NORMALISASI DATABASE )


NORMALISASI DATABASE

Apa Itu NORMALISASI ?

Normalisasi merupakan sebuah upaya untuk memperoleh sebuah database dengan struktur yang baik dengan cara menerapkan sejumlah aturan pada setiap tabel agar ruang penyimpanan efisien. Istilah normalisasi dapat disederhanakan menjadi memecah relasi menjadi beberapa tabel untuk mendapat database yang optimal

Istilah Penting Dalam Teknik Normalisasi

¨  Field / atribut kunci. Setiap file selalu terdapat kunci dari file berupa satu field atau satu field yang dapat mewakili record.
¨  Candidate key. Kumpulan atribut minimal yang secara unik mengidentifikasi sebuah baris fungsinya sebagai calon primary key.
¨  Composite key. Kunci kandidat yang berisi lebih dari satu atribut
¨  Primary key. Candidate key yang dipilih untuk mengidentifikasi baris secara unik
¨  Alternate key. Candidate key yang tidak dipilih sebagai primary key
¨  Foreign key. Key di tabel lain yang terhubung dengan primary key pada sebuah tabel

Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi 3 kriteria adalah sebagai berikut ;
1.   Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya  harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
2.      Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).
3.      Tidak melanggar Boyce-Code Normal Form (BCNF) (-akan dijelaskan kemudian-)

FUNCTIONAL DEPENDENCY (FD)

Notasi: A à B                                                   
A dan B adalah atribut dari sebuah tabel. Berarti secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama
Notasi: A  –> B           atau  A   x –> B
Adalah kebalikan dari notasi sebelumnya

Aturan Normalisasi

1.      Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)
2.      Bentuk Normal Tahap Kedua (2nd Normal Form / 2NF)
3.      Bentuk Normal Tahap (3rd Normal Form / 3NF)
4.      Boyce-Code Normal Form (BCNF)
5.      Bentuk Normal Tahap (4th Normal Form / 4NF)
6.      Bentuk Normal Tahap (5th Normal Form / 5NF)

1. Normalisasi Pertama (1st Normal Form)
¨  Mendefinisikan atribut kunci
¨  Tidak adanya group berulang
¨  Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi)
2. Normalisasi Kedua (2nd Normal Form)
¨  Sudah memenuhi dalam bentuk normal kesatu
¨  Sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci.

3. Normalisasi Ketiga (3rd Normal Form)
¨  Sudah berada dalam bentuk normal kedua
¨  Tidak ada ketergantungan transitif (dimana field bukan kunci tergantung pada field bukan kunci lainnya).

4. Boyce-Code Normal Form (BCNF)
¨  Bentuk BCNF terpenuhi dalam sebuah tabel, jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk:     X à Y
¨  tabel tersebut harus di-dekomposisi berdasarkan functional dependency yang ada, sehingga X menjadi super key dari tabel-tabel hasil dekomposisi
¨  Setiap tabel dalam BCNF merupakan 3NF. Akan tetapi setiap 3NF belum tentu termasuk BCNF . Perbedaannya, untuk functional dependency X à A, BCNF tidak membolehkan A sebagai bagian dari primary key.

5. Normalisasi Keempat (4rd Normal Form)
¨  Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute
¨  Untuk setiap multivalued dependencies (MVD) juga harus merupakan functional dependencies

6. Normalisasi Kelima (5rd Normal Form)
¨  Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decomposition menjadi tabel-tabel yg lebih kecil.
¨  Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula
Contoh Kasus Normalisasi Database

Diberikan tabel Mahasiswa di bawah ini, akan dilakukan  normalisasi sampai bentuk normal ke tiga


Perhatikan bahwa tabel di atas sudah dalam bentuk normal ke Satu(1NF)
Bentuk Normal ke dua(2NF) :


Belum memenuhi kriteria 3NF, Karena atribut non-key Nilai dan bobot masih memiliki ketergantungan fungsional.


Bentuk Normal ke tiga(3NF) :



Query :








Minggu, 27 Mei 2012

RANGKUMAN KELOMPOK 6 ( ERD (Entity Relationship Diagram) )


ERD (Entity Relationship Diagram)

Sejarah ERD

  Model Entity Relationship diperkenalkan pertama kali oleh P.P. Chen  pada tahun 1976. Model ini dirancang untuk menggambarkan persepsi dari pemakai  dan berisi obyek-obyek dasar yang disebut entity dan hubungan antar entity-entity tersebut yang disebut relationship.

Data Modeling
Data Modeling merupakan cara untuk menyusun dan mengorganisasikan data sehingga dapat digunakan dengan mudah oleh database.  ERD adalah salah satu cara permodelan data (data modeling).

Apakah yang dimaksud dengan Entity Relationship Diagram (ERD)?

Sebuah ERD menggambarkan data dalam konteks entitas dan hubungan
nya.
Tujuan utama dari sebuah ERD adalah untuk mendokumentasikan struktur logis dari database
.

Komponen ERD
}  Entity (Entitas)
}  Attribute (Atribut)
}  Relationship (Relasi)
}  Kardinality (Kardinalitas)
Contoh Pembuatan ERD


A.  Permasalahan:
Membuat database yang sederhana untuk suatu sistem informasi akademis.


B.  Tahap 1: Penentuan Entities
·         mahasiswa: menyimpan semua informasi pribadi mengenai semua mahasiswa
·         dosen: menyimpan semua informasi pribadi mengenai semua dosen
·         mata_kuliah: menyimpan semua informasi mengenai semua mata kuliah yang ditawarkan
·         ruang: menyimpan semua informasi mengenai ruang kelas yang digunakan


C.  Tahap 2: Penentuan Attributes
·         mahasiswa:
·         nim: nomor induk mahasiswa (integer) PK
·         nama_mhs: nama lengkap mahasiswa (string)
·         alamat_mhs: alamat lengkap mahasiswa (string)
·         dosen:
·         nip: nomor induk pegawai (integer) PK
·         nama_dosen: nama lengkap dosen (string)
·         alamat_dosen: alamat lengkap dosen (string)
·         mata_kuliah:
·         kode_mk: kode untuk mata kuliah (integer) PK
·         nama_mk: nama lengkap mata kuliah (string)
·         deskripsi_mk: deskripsi singkat mengenai mata kuliah (string)
·         ruang:
·         kode_ruang: kode untuk ruang kelas (string) PK
·         lokasi_ruang: deskripsi singkat mengenai lokasi ruang kelas (string)
·         kapasitas_ruang: banyaknya mahasiswa yang dapat ditampung (integer)


D.  Tahap 3: Penentuan Relationships


mahasiswa
dosen
mata_kuliah
ruang
mahasiswa
-
n:1
m:n
-
dosen

-
1:n
-
mata_kuliah


-
1:1
ruang



-

Hubungan:
·         ruang digunakan untuk mata_kuliah:
·         Tabel utama: ruang
·         Tabel kedua: mata_kuliah
·         Relationship: One-to-one (1:1)
·         Attribute penghubung: kode_ruang (FK kode_ruang di mata_kuliah)
·         dosen mengajar mata_kuliah:
·         Tabel utama: dosen
·         Tabel kedua: mata_kuliah
·         Relationship: One-to-many (1:n)
·         Attribute penghubung: nip (FK nip di mata_kuliah)
·         mahasiswa mengambil mata_kuliah:
·         Tabel utama: mahasiswa, mata_kuliah
·         Tabel kedua: mhs_ambil_mk
·         Relationship: Many-to-many (m:n)
·         Attribute penghubung:  nim, kode_mk (FK nim, kode_mk di mhs_ambil_mk)
·         dosen membimbing mahasiswa:
·         Tabel utama: dosen
·         Tabel kedua: mahasiswa
·         Relationship: One-to-many (1:n)
·         Attribute penghubung:  nip (FK nip di mahasiswa)

Entity

Entity adalah obyek yang dapat dibedakan dengan yang lain dalam dunia nyata. Entity Set adalah kumpulan dari entity yang sejenis
Contoh:
       Individu : Pegawai, pelanggan, mahasiswa, distributor
       Tempat : ruang, bangunan, kantor, lapangan, kampus
       Objek : Buku, Motor, paket, software, produk
       Peristiwa : Pendaftaran , pemesanan, penagihan
       Konsep : Rekening, kualifikasi

Atribut

Atribut adalah karakteristik dari entity atau relationship, yang menyediakan penjelasan detail tentang entity atau relationship tersebut. Nilai Atribut  merupakan suatu data aktual atau informasi yang disimpan  pada suatu  atribut di dalam suatu entity atau relationship. Atribut digambarkan dalam bentuk oval. 

Jenis-Jenis Atribut
Jenis-jenis atribut :
  1. Key
    Atribut yang digunakan untuk menentukan suatu entity secara unik.
  2. Atribut Simple
    Atribut yang bernilai tunggal.
  3. Atribut Multivalue
    Atribut yang memiliki sekelompok nilai untuk setiap instan entity.