480 likes | 715 Views
Analisis dan Perancangan Perangkat Lunak. PEMODELAN DATA . Quit. Konsep Pemodelan Data. 1. PEMODELAN DATA DENGAN E/R DIAGRAM. The data model also describes the relationship among data and any constraints that have to be defined on the data.
E N D
Analisis dan Perancangan Perangkat Lunak PEMODELAN DATA Quit
1. PEMODELAN DATA DENGAN E/R DIAGRAM • The data model also describes the relationship among data and any constraints that have to be defined on the data. • Data models can broadly be classified into two categories: • Object-based logical model – focuses on describing the data, the relationship among the data, and any constraints defined. • Record-based logical model – focuses on describing the data structure and the access techniques in a Database Management System. • A data model is a description of the organization of data in a database.
Entity-Relationship Model • There are various object-based models. The most widely used is the entity-relationship model (E/R model). • The entity-relationship model is based on a real-world perception that comprises a collection of objects or entities and the relationships among these. • The diagram used to represent an E/R model is called an E/R diagram. • The components of an E/R diagram are: • Entities • Relationships • Attributes
Entities • An entity is any object, place, person, or activity about which data is recorded. • Entities are named and represented inside a box. • There are two types of entities: • Dependent • Independent • Dependent entities are also called weak entities, and independent entities are called regular entities. • Weak entities are represented by double-lined boxes.
Relationships • A relationship is an association among entities. • A relationship is depicted as a diamond with the name of the relationship type. • A relationship can associate an entity with itself. • Multiple relationships can also exist between the same entities. • There are three types of relationships: • One-to-One • One-to-Many • Many-to-Many
Attributes • An attribute is a property of a given entity. • Attributes are depicted as ellipses, labeled with the name of the property. The key properties are underlined. • A relationship can also have attributes.
Weak entity • A weak entity is an entity whose existence depends on some otherentity.
Subtypes and Supertypes • Subtypes and Supertypes • A subtype is a subset of another entity. • A subtype is always dependent on the supertype for its existence. • Each entity type (subtype or supertype) maps to a separate table. • The primary key of the supertype is the foreign key of the subtype. It creates a link between the two. • The foreign key of the subtype is also its primary key.
Each entity type (subtype or supertype) maps to a separate table.
If there are any entities with common attributes, merge the entities.
Dua Pendekatan dalam mendesain Database Relasional • Pendekatan Top – Down : menggunakan E/R Diagram • Pendekatan Bottom – Up : menggunakan proses Normalisasi dan denormalisasi
Normalisasi dilakukan langkah-demi langkah, sehingga dari record data yang kompleks dapat diubah menjadi record data yang simple. • Pengulangan-pengulangan data direduksi tanpa menghilangkan informasi yang diinginkan.
Contoh tabel tanpa proses normalisasi Pada tabel tersebut, Student ID, Student Name muncul lebih dari sekali dengan nilai yang sama. Namun demikian ada antribut lain yang ikut diulang : StudentAddress, StudentBirthdate, StudentCity, StudentZip, yang merupakan pengulangan data yang tidak perlu.
Keuntungan dari proses Normalisasi • Dengan mereduksi pengulangan data, maka akan mempercepat proses pengurutan dan pencarian data. • Data dengan nilai Null menjadi lebih minimal sehingga meminimalkan ketidakkonsistenan data • Dengan normalisasi, database menjadi lebih compact
Normalisasi tahap I • Setiap sell dari tabel harus memiliki satu nilai data yang presisi. • Pada berikut kolom Hours berisi data lebih dari satu
Normalisasi tahap I • Hasil normalisasi tahap I diperoleh tabel dengan setiap sell hanya berisi satu nilai, walaupun akhirnya terdapat pengulangan data pada kolom tertentu
Tahap kedua normalisasi dilakukan jika didapatkan beberapa atribut berulang, sehingga memungkinkan beberapa atribut tadi dipecah pada tabel berbeda Normalisasi tahap II
Normalisasi tahap II • Dari normalisasi tahap II diperoleh dua buah tabel yaitu tabel EmployeeDept dan tabel Project
Normalisasi tahap III • Normalisasi tahap ini dilakukan jika terdapat beberapa atribut (bukan atribut kunci) pada suatu tabel dan muncul berulang –ulang, sehingga memungkinkan untuk dipecah pada tabel berbeda.
Normalisasi tahap III • Atribut Dept dan DeptHead masuk tabel baru dengan nama Departement
Boyce-Codd Normal Form • Jika pada suatu tabel terdapat lebih dari satu atribut yang memungkinkan berfungsi sebagai kata kunci (overlapping candidate keys), maka candidate keys dapat dipecah pada tabel yang berbeda
Fourth Normal Form • If a relation has many-to-many relationships with two or more relations, then the attributes of all the three or more relations cannot be depicted in the same relation. • When you model such situations in a relational database, you will either have redundant data or use null values. • A condition that requires duplication of values and thus enforces mutual independence of multivalued attributes is called multivalued dependency.
Fourth Normal Form (Contd..) • You can use fourth normal form (4 NF) to remove multivalued dependencies. • A table is in 4 NF if it is in 3 NF and has no multivalued dependencies. • To apply 4 NF, you need to put all multivalued attributes in individual tables containing the key to which the attribute values apply.
Fourth Normal Form Hasil Normalisasi ke 4
Other Normal Forms • Some constraints like business rules result in the need for fifth normal form (5 NF). • For a table to be in 5 NF, it has to be in 4 NF and should abide by some business rules. • The purpose of 5 NF is to have tables that cannot be further decomposed. • If the business rule does not exist, then there is no need of 5 NF. • In addition to 5 NF, there is another normal form called the domain-key normal form (DKNF). • A table is in DKNF if every constraint on the table is a result of the definitions of domains and keys.
Other Normal Forms • Pada tabel berikut untuk departement Computer Science terdapat 3 kode subject yang berbeda : CS150, CS103 dan CS104 yang masing masing diambil oleh 3 student yang berbeda. • Oleh karena itu departemen ini merupakan domain sehingga kita bisa memecah tabel baru kolaborasi antara atribut Departement dengan Subject, Departement dengan Student atau Subject dengan Student
Other Normal Forms • Diperoleh 3 tabel • Dept – Stud • Dept – Sub • Sub - Stud