Minggu, 03 Mei 2009

ERD QUIZ





ERD quiz

Is given by the following ERD :











Settlement:

From the ERD, there are some explanations that are less about the cardinality relationship between the BAGIAN entity with PROYEK entity and between PROYEK entities to the ternary. So I assume that the relationship between the BAGIAN entity with PROYEK entity are 1 : N where one can have the many projects and one project is owned by only one part only. For PROJECT entities to ternary, I use cardinality N where an employee can have many projects and one project is owned by an employee only.

At the PEGAWAI entity, there is composite attribute that is address attribute. In the making of 1NF is each of the attributes may not be composite, So to write the ALAMAT attribute which is a fraction of the written that address attribute is ALM1 attribute and KDPOS attribute.

From ERD diagram above there is 2 error, that is:


Ø Between table BAGIAN and PROYEK No cardinality .

Ø To determine foreign key between table PEGAWAI and BAGIAN on relation PIMPIN.

Ø No relation from table PROYEK to ternary, because table PROYEK has have relation KERJA with table PEGAWAI.
So, I try to improve ERD as following:
ERD

















• I give cardinality between table BAGIAN to table PROYEK with relation 1 to N (one to many).

• I give participation from table BAGIAN to table PEGAWAI the relation is total, in order to I can determine which one table that get foreign key from relation PIMPIN.

• I remove relation between table PROYEK to ternary, because table PROYEK has have relation KERJA with table PEGAWAI.

MAPPING
NORMALISASI
1NF and 2NF
































For table TANGGUNGAN and KERJA don’t need to normalization, because that tables don’t have primary key.
For the 3NF normalization. First, determine attribute from above which have transitive dependency, that is:

Minggu, 26 April 2009

NORMALIZATION


Database Design Process

There are some processes that must be done to design a database, that is:

Ø Gathering user needs / business

Ø Develop the E-R model based on user needs / business

Ø Convert E-R Model to set the relation (table)

Ø Normalization of relations, for the anomaly

Ø To implement the database for each table to create relationships that have been in the normalization

Database Normalization

Normalization process is the establishment of the database structure so that most of the ambiguity can be removed. Normalization is done at the design stage, before the database is implemented. Purpose to avoid update anomalies. To find out how to do normalization, we must first understand the concept of functional dependency and key.

The purposes normalization :

Ø Optimization table structures

Ø Increase the speed

Ø Eliminate income data the same

Ø More efficient use of storage media

Ø Reduce redundancy

Ø Avoiding anomalies (insertion anomalies, deletion anomalies, update anomalies).

Ø Improved data integrity

A table is good (efficient) if following the criteria:

Ø If there is decomposition (decomposition) table, then the decomposition will be guaranteed safe (Lossless-Join Decomposition). That is, after the table is described / in the decomposition into a new table-table, the table-table can generate a new table with the same exact.

Ø Maintain the functional dependence on the change data (Dependency preservation)

Ø No violate Boyce-Code Normal Form (BCNF)

If the three criteria (BCNF) can not be connected, at least the table does not violate the Normal Form of the third stage (3rd Normal Form / 3NF).

Why normalization is required because of the redundancy relations, not relations of good ?

That because possibility of "update anomalies" (when the insert, delete, update) because can impact on the data inconsistencies

The way to Handle anomaly are :

Ø Anomaly in the handle by programming language used to create the application database. Designer should note this anomaly and to tell a programmer.

Ø Anomaly does not handle the system, but submitted to the operator to be careful in making modifications, inserts and deletes. It is human error risk.

Ø Anomalies be avoided, with ways to secure the normalization.

Denormalization

Denormalization is a reverse process of normalization, ie, combine several relations, brought to normal form of a lower.

Functional Dependency (FD)

Functional dependency (abbreviated FD) is a restriction that comes from the meaning of attributes and relationships between attributes. Functional Dependency attributes describe the relationship in a relationship. An attribute said functionally dependant on the other, if we use the value attribute to determine the value of the other attributes.

First Normal Form - 1NF

Ø Functional Dependency dari tabel nilai

Nrp à Nama

Karena untuk setiap nilai Nrp yang sama, maka nilai Nama juga sama

{Mata_kuliah, NRP} à Nilai

Karena attribut Nilai tergantung pada Mata_kuliah dan NRP secara bersama-sama. Dalam arti lain untuk Mata_kuliah dan NRP yang sama, maka Nilai juga sama, karena Mata_kuliah dan NRP merupakan key (bersifat unik).

Mata_kuliah à NRP

NRP à Nilai

BENTUK NORMAL PERTAMA (First Normal Form - 1NF)

A table said to be normal I if it not in the unnormalizet table form, in that procces ther is same field duplication and able to happen the null field.

There is will be not :

Ø Multivalued attribute

Ø Composite attribute or combination of both.

So

Ø Domain value must be atomic value.

For example :















Or










Ø The tables above aren’t eligable 1NF

Second Normal Form - 2NF

Ø Normal form 2NF eliged in a table after to elig primary 1NF form, and all attributes beside primary key, and have Functional Dependency at primary key.

Ø A table is not eliged 2NF if there is Functional Dependency attribute.

Ø If there is a attribute that have not dependency to the primary key, so that attribute must be deleted.


Third Normal Form (3NF)


Third normal form (3NF) goes one large step further:

Ø Meet all the requirements of the second normal form.

Ø Remove columns that are not dependent upon the primary key.

Fourth Normal Form (4NF)


Finally, fourth normal form (4NF) has one additional requirement:

Ø Meet all the requirements of the third normal form.

Ø A relation is in 4NF if it has no multi-valued dependencies.
Remember, these normalization guidelines are cumulative. For a database to be in 2NF, it must first fulfill all the criteria of a 1NF database.


References:

  1. ER Ngurah Agus Sanjaya. Slide Part 6 - NORMALISASI.
  2. Siti Aminah. Slide Review_Normalisasi_untuk_Vcon_7_des.

Minggu, 19 April 2009

BASIS DATA DAN ER-DIAGRAM

DEFINISI BASIS DATA

Definisi basis data:

Basis data adalah Sekumpulan data yang tersimpan dalam magnetic disk, optical disk atau penyimpanan sekunder lainnya

DATABASE MANAGEMENT SYSTEM

¨ merupakan general purpose software yang digunakan untuk:

Mendefinisikan

Mengkonstruksi

Memanipulasi

Kumpulan/gabungan database dengan perangkat lunak aplikasi yang berbasis database

Program-program aplikasi ini digunakan untuk mengakses dan memelihara database

Tujuan utama DBMS adalah menyediakan suatu lingkungan yang mudah dan efisien untuk penggunaan, penarikan dan penyimpanan data dan informasi

Contoh-contoh DBMS yang ada adalah:

· Microsoft Acces, ORACLE, PostgreSQL, MySQL, SQL Server, dll.

BIT, BYTE, FIELD

Bit à merupakan bagian data terkecil yang berisi nilai 0 atau 1

Byte à kumpulan dari bit-bit yang sejenis

Ukuran 1 Byte = 8 Bit

Field à sekumpulan byte-byte yang sejenis, dalam basis data digunakan istilah atribut

ATRIBUT/FIELD

Merupakan sifat atau karakteristik dari suatu entitas yang menyediakan menyediakan penjelasan detail tentang entitas tersebut

Suatu relasi juga dapat memiliki atribut

Contoh atribut:

MAHASISWA: NIM, NAMA, ALAMAT

MOTOR: NOMOR_PLAT, WARNA, JENIS, CC

TIPE-TIPE ATRIBUT

Single vs multivalue

Single à Each entity has a single atomic value for the attribute.

Contoh Single value Atribut : NIM pada tabel mahasiswa

Multivalue à An entity may have multiple values for that attribute.

Contoh Multivalue atribut : Hobby(mancing, film, music), Persyaratan(cantik, muda, berbakat).

Atomic vs komposisi

Atomic à tidak dapat dibagi ke dalam atribut yang lebih kecil

Contoh : NIM, NIP, nama panggilan.

Komposisi à merupakan gabungan dari beberapa atribut yang lebih kecil

Contoh : Nama(nama depan, tengah, belakang), alamat(jalan, kota, kode pos)

TIPE-TIPE ATRIBUT (2)

Derived Attribute

atribut yang nilainya dapat dihasilkan dari nilai atribut lain, misal à umur yang dihasilkan dari atribut tanggal lahir

Null Value Attribute

Atribut yang tidak memiliki nilai untuk suatu record

Contoh : atribut yang bukan merupakan key

Mandatory Value Attribute

Atribut yang harus memiliki nilai

Contoh : atribut yang bersifat sebagai key.

RECORD/TUPLE

Merupakan suatu baris data dalam suatu relasi

Terdiri dari kumpulan atribut-atribut dimana atribut-atribut tersebut saling berhubungan untuk menginformasikan entitas/relasi secara lengkap

Contoh : satu record mewakili satu data/informasi -- > nim, nm_mhs, alamat.

ENTITAS/FILE

Entitas “sesuatu” atau “obyek” di dunia nyata yang dapat dibedakan dari “sesuatu” atau “obyek” yang lainnya. Entitas pada umumnya memiliki sejumlah property dimana property ini dapat digunakan untuk membedakan suatu entitas dengan entitas lainnya. Property ini kemudian disebut sebagai atribut dari entitas tersebut.

File merupakan kumpulan dari record yang sejenis dan mempunyai elemen yang sama, atribut sama namun berbeda-beda data valuenya.

Tipe File

Dalam pemrosesan aplikasi, file dapat dikatagorikan sbb:

File Induk

File Transaksi

File Laporan

File Sejarah

File Pelindung

File Kerja

DOMAIN

Domain merupakan kumpulan dari nilai-nilai yang diperbolehkan untuk berada dalam satu atau lebih atribut. Setiap atribut dalam suatu basis data relasional didefinisikan sebagai suatu domain

KUNCI ELEMEN DATA

Key adalah elemen record yang dipakai untuk menemukan record tersebut pada waktu akses atau bisa juga digunakan untuk mengidentifikasi setiap entity/record/baris.

JENIS-JENIS KEY

Superkey merupakan satu atau lebih atribut dari suatu tabel yang dapat digunakan untuk mengidentifikasi entityty/record dari tabel secara unik (tidak semua atribut dapat menjadi superkey)

Cadidate Key adalah super key dengan atribut minimal. Candidate key tidak boleh berisi atribut dari tabel yang lain sehingga candidate key sudah pasti superkey namun belum tentu sebaliknya.

Primary Key

Salah satu atribut dari candidate key dapat dipilih/ditentukan menjadi primary key dengan tiga kriteria sbb:

1. Key tersebut lebih natural untuk digunakan sebagai acuan

2. Key tersebut lebih sederhana

3. Key tersebut terjamin keunikannya

JENIS-JENIS KEY (2)

Alternate Key adalah atribut dari candidate key yang tidak terpilih menjadi primary key.

Foreign Key merupakan sembarang atribut yang menunjuk kepada primary key pada tabel yang lain. Foreign key akan terjadi pada suatu relasi yang memiliki kardinalitas one to many (satu ke banyak) atau many to many (banyak ke banyak). Foreign key biasanya selalu diletakkan pada tabel yang mengarah ke banyak.

Akan terjadi pada suatu relasi yang memiliki kardinalitas one to many atau many to many

External Key merupakan suatu lexical atribut (atau himpunan lexical atribut) yang nilai-nilainya selalu mengidentifikasi satu object instance.

ERD (ENTITY RELATIONSHIP DIAGRAM)

ERD adalah suatu model jaringan yang menggunakan susunan kata yang disimpan dalam sistem secara abstrak.

Perbedaan antara DFD dan ERD

DFD merupakan suatu model jaringan fungsi yang akan dilaksanakan oleh sistem

ERD merupakan model jaringan data yang menekankan pada struktur dan relationship data

Biasanya digunakan oleh profesional sistem untuk berkomunikasi dengan pemakai eksekutif tingkat tinggi dalam perusahaan yang tidak tertarik pada pelaksanaan operasi sistem sehari-hari, namun lebih kepada :

Data apa saja yang diperlukan untuk bisnis mereka?

Bagaimana data tersebut berelasi dengan data lainnya?

Siapa saja yang diperbolehkan mengakses data tsb?

ELEMEN-ELEMEN ERD

ENTITY

Pada ER Diagram Entity digambarkan dengan bentuk persegi panjang. Rntity adalah sesuatu yang ada dalam sistem nyata maupun abstrak dimana data tersimpan atau dimana terdapat data.

Relationship

Pada ER Diagram relationship dapat digambarkan dengan sebuah bentuk belah ketupat. Relationship adalah hubungan alamiah yang terjadi antara entitas. Pada umumnya diberi nama dengan kata kerja dasar sehingga memudahkan untuk melakukan pembacaan relasinya.

Relationship Degree

adalah jumlah entitas yang berpartisipasi dalam satu relationship. Derajat yang sering dipakai dalam ERD.

Atribut

adalah sifat atau karakteristik dari tiap entitas maupun relationship

Digambarkan dengan symbol oval

Gambar diatas adalah atribut dengan nama “Nama”

Kardinalitas

menunjukkan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain

Derajat relationship

Unary Relationship

adalah model relationship yang terjadi antara entity yang berasal dari entity set yang sama.

Binary Relationship

adalah model relationship yang terjadi antara 2 entitas.

Ternary Relationship

merupakan relationship antara instance dari 3 tipe entitas secara sepihak.

KARDINALITAS

Terdapat 3 kardinalitas relasi yaitu

One to One : Tingkat hubungan satu ke satu dinyatakan dengan satu kejadian pada entitas pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas yang kedua dan sebaliknya.

One to Many atau Many to One : Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu tergantung dari arah mana hubungan tersebut dilihat.Untuk satu kejadian pada entitas pertama dapat mempunyai banyaj hubungan dengan kejadian pada entitas yang kedua, jika sebaliknya satu kejadian pada entitas yang kedua hanya dapat mempunyai hubugan dengan satu kejadian pada entitas yang pertama.

Many To Many : terjadi jika setiap kejadian pada sebuah entitas mempunyai banyaj hubungan dengan kejadian pada entitas lainnya.

NOTASI (DIAGRAM E-R)

Notasi simbolik dalam diagram ER adalah

1. Persegi panjang menyatakan himpunan entitas

2. Lingkaran menyatakan atribut

3. Belah Ketupat menyakatan himpunan relasi

4. Garis sebagai penghubung antara himpunan relasi dengan himpunan entitas dan Himpunan Entitas dengan atributnya