2. Learning Objectives
• Understand the purpose of structure models
(Memahami tujuan dari model struktur)
• Understand and apply the building blocks for UML class or
structure Diagrams.
(Memahami dan menerapkan standart diagram struktur dari
UML Kelas atau struktur Diagram)
• Describe multiplicities for a UML Class Diagram
(menjelaskan multiplikasi untuk UML kelas Diagram)
• Understand how to implement a relational database from a
UML Class Diagram
(Memahami bagaimana menerapkan hubungan database dari
UML kelas Diagram)
• Describe business rules and various forms of rules
(menjelaskan aturan bisnis dan berbagai bentuk aturan)
3-2
4. Structure Models
• Describe the data and information structures inherent in a
business process
(Menggambarkan data dan struktur informasi yang melekat
dalam proses bisnis)
• Create a blueprint for the development of a relational
database to support the collection, aggregation, and
communication of process information
(Membuat rancangan dari data untuk pengembangan
hubungan database untuk mendukung pengumpulan,
agregasi, dan proses komunikasi informasi)
• Facilitate the use of databases after they are implemented
(Memfasilitasi penggunaan database setelah mereka
dilaksanakan) 3-4
LO# 1
5. Unified Modeling Language (UML)
• UML class diagram notation for structure models
(notasi diagram kelas UML untuk model struktur)
• Specifications for UML maintained by the Object Management Group, a not-for-
profit consortium of computer industry members
(Spesifikasi untuk UML dikelola oleh Object Management Group, tidak-untuk-
profit konsorsium anggota industri komputer)
• UML also includes notation for several other types of diagrams, including
several structure diagrams, behavior diagrams, and interaction diagrams
(UML juga termasuk notasi untuk beberapa jenis lain dari diagram, termasuk
beberapa diagram struktur, diagram perilaku, dan diagram interaksi)
• Class diagrams describe the logical structure of a database system
(diagram kelas menggambarkan struktur logis dari sistem database)
3-5
LO# 2
6. UML Class Diagram – Building Blocks
• Classes are separately identifiable collections of things about which
the organization wants to collect and store information
(Kelas adalah pemisahan koleksi yang diidentifikasi dari suatu hal
yang mana organisasi ingin mengumpulkan dan menyimpan
informasi)
• Associations depict the relationship between two classes
(Asosiasi menggambarkan hubungan antara dua kelas)
• Multiplicities describe the minimum and maximum number of
times instances of one class can be associated with instances in
another class
(Multiplikasi menggambarkan banyaknya jumlah minimum dan maksimum
contoh satu kelas dapat dikaitkan dengan contoh di kelas lain)
3-6
LO# 2
7. UML Class Diagram - Classes
• Classes can represent
– organization resources [e.g., trucks, machines, buildings, cash, investments]
(Kelas dapat mewakili sumber organisasi (misalnya, truk, mesin, bangunan, uang
tunai, investasi)
– persons (e.g., customers, employees)
(orang -> misalnya, pelanggan, karyawan)
– events (e.g., sales, purchases, cash disbursements, cash receipts), and
conceptual structures (e.g., accounts, product categories, budgets)
(peristiwa (misalnya, penjualan, pembelian, pengeluaran kas, penerimaan kas),
dan struktur konseptual (misalnya, akun, kategori produk, anggaran)
3-7
LO# 2
8. UML Class Diagram - Associations
• Associations depict the (business) relationship between two
classes
3-8
LO# 2
9. UML Class Diagram - Multiplicities
• Multiplicities describe the minimum and maximum number of
times instances in one class can be associated with instances
in another class
3-9
Each Person owns a minimum of 0 and a maximum of many Autos.
Each Auto is owned by a minimum of 1 and a maximum of 1 Person
LO# 2
11. Attributes
• Attributes are data elements that describe the characteristics of instances in a class (or
rows in a table)
(Atribut adalah elemen data yang menggambarkan karakteristik dari contoh di kelas
(atau baris dalam tabel)
• The full specification of attributes, i.e., a data dictionary, would also include data type,
default value (if any), constraints on the value (such as minimum and maximum possible
values), and other descriptive information)
(Spesifikasi lengkap dari atribut, yaitu, kamus data, juga akan termasuk tipe data, nilai
default (jika ada), kendala pada nilai (seperti minimum dan mungkin nilai maksimum),
dan informasi deskriptif lainnya)
• Attributes include the primary keys that uniquely define instances of the class, foreign
keys that support the links between classes shown in the associations, and other data
elements for each class
(Atribut termasuk kunci utama yang unik mendefinisikan contoh kelas, kunci asing yang
mendukung hubungan antara kelas ditampilkan dalam asosiasi, dan elemen data lain
untuk masing-masing kelas)
• Attributes will be specified in a table listing that accompanies each class diagram
(Atribut akan ditentukan dalam tabel daftar yang menyertai setiap diagram kelas)
3-11
LO# 2
12. Primary Keys
• “Primary Key” adalah kunci utama dari suatu tabel yang
menunjukkan bahwa yang menjadi kunci tersebut tidak bisa
diisi dengan data yang sama, atau dengan kata lain Primary
key menjadikan tiap record memiliki identitas sendiri-sendiri
yang membedakan satu sama lainnya (unik).
• Kunci utama tidak boleh kosong
• Kunci utama harus dikontrol oleh organisasi yang
memberikan, sehingga tidak akan berubah dari waktu ke
waktu
3-12
LO# 2
13. Primary Keys
Contoh yang tepat dalam menggunakan primary keys :
1) Apakah Anda menggunakan nomor jaminan sosial sebagai kunci
utama?
Tidak , karena ada pembatasan hukum dan tidak semua orang
memiliki nomor jaminan sosial
2) Apakah Anda menggunakan nama orang sebagai kunci utama?
Tidak , karena nama-nama orang tidak unik
3) Apakah Anda menggunakan nomor telepon sebagai kunci utama?
Tidak, karena nomor telepon seseorang dapat berubah dari waktu
ke waktu
4) Apakah Anda menetapkan kunci utama menggunakan nomor
urut?
Ya, karena lebih mudah untuk mengidentifikasi kesenjangan dan
Anda dapat mengontrol jumlah
3-13
LO# 2
14. Foreign Keys
• Sebuah atribut atau kombinasi atribut yang memungkinkan
tabel dihubungkan bersama-sama, Jadi Foreign Key adalah
kolom atau field pada suatu tabel yang berfungsi sebagai
kunci tamu dari tabel lain. Foreign Key sangat berguna bila
kita bekerja dengan banyak tabel yang saling berelasi satu
sama lain.
• Pengimplementasian hubungan antara kelas (dan tabel yang
dihasilkan) ditunjukkan oleh asosiasi
• Dalam model berikut, kunci utama dari kelas PERSON akan
menjadi kunci asing di kelas AUTO untuk melaksanakan
asosiasi
3-14
LO# 2
16. Notasi UML Hubungan Lainnya
• UML menyediakan notasi khusus untuk mendukung jenis
hubungan:
Generalisasi
Pengumpulan
Komposisi
• Notasi husus ini merupakan bentuk tangan pendek, tetapi
masing-masing juga dapat dimodelkan menggunakan notasi
dasar yang dijelaskan sebelumnya
3-16
LO# 2
18. Menerapkan Database dari Diagram Kelas
1. Map classes to tables
2. Map class attributes to table fields and assign primary keys
3. Map associations to foreign keys
4. Create new tables to implement many-to-many relationships
3-18
LO# 4
20. 2. Map Class Attributes to Table Fields and
Assign Primary Keys
3-20
LO# 4
21. 3. Map one-to-many associations to
foreign keys
3-21
One-to-many associations are defined by the maximum multiplicity on each end of the
association. The rule of thumb is to go toward the * to post the foreign key. So, in the
model above, the primary key of STATE would be a foreign key in AUTO; the primary
key of PERSON would be also be a foreign key in AUTO. See Table 1 in Chapter 3 for a
listing of posting rules based on multiplicities.
LO# 3
22. 4. Create New Tables to Implement Many-
to-Many Relationships
3-22
Many-to-many associations require the creation of a new, linking table to implement
the association. So, in the model above, the association between DEALERS and AUTO
would be implemented with a new table DEALER-AUTO with a primary key formed as
the combination of primary keys from the two classes.
LO# 3
23. Aturan Bisnis
• Aturan bisnis adalah mendifinisikan beberapa aspek bisnis
sebagai batasan yang harus diikuti ketika sistem beroperasi.
• Klasifikasi aturan bisnis:
1. Batasan struktural yaitu aturan-aturan yang mendifinisikan
struktur statis organisasi.
2. Batasan operasional yaitu aturan-aturan yang membatasi
operasi yang sedang berjalan.
• Contoh dari aturan bisnis ;
1. Jika berbelanja dengan lebih dari Rp 200,000, maka
pembeli akan dapat satu buah handuk.
2. Setiap mencuci motor atau mobil lebih dari 3 kali, maka
pelanggan mendapatkan satu kali cuci gratis.
3-23
LO# 4
24. • Schema memberikan deskripsi hubungan logik
antar data dalam bisnis data secara lengkap.
Didalam schema terdapat nama dan deskripsi
semua atribut, record dan batasan nilai untuk
semua aplikasi yang menggunakan basis data
tersebut.
24
25. Jenis Aturan Bisnis
1. Wajib
Formulir Aturan ini menyatakan apa yang harus terjadi.
Contoh: pembayaran harus dilakukan dalam U. S. dolar.
2. Dilarang
Bentuk Aturan ini menyatakan apa yang seharusnya
tidak terjadi. Contoh tidak ada pembayaran dengan cek.
3. Diizinkan
Bentuk Aturan ini mengatakan apa yang diperbolehkan
dalam kondisi tersebut. Contoh pembayaran kartu kredit
diperbolehkan jika kartu tersebut American Express.
3-25
LO# 5
26. Penegakan Aturan Bisnis
• Aturan harus ditegakkan
• Tingkat penegak adalah:
1. Penegakan hukum secara tegas - tidak ada
pelanggaran yang diperbolehkan
2. Pre-override - pelanggaran diperbolehkan jika resmi
di muka
3. Post-override - pelanggaran diizinkan jika disahkan
setelah pelanggaran
4. Guidelines - aturan diikuti tapi tidak ditegakkan
3-26
LO# 5