[Summary]
Sistem Informasi Perusahaan
Chapter 4
Pola REA untuk memodelkan tingkatan proses bisnis bebas menggunakan apa saja, antara lain dengan :
Deskripsi naratif
Berbagai diagram dengan notasi yang berbeda Bahasa terstruktur
Predicate logic notations
Tags seperti yang digunakan pada XML (Extensible Markup Language) & XBRL (Extensible Business Reporting Language)
Notasi bahasa pemrograman
Tetapi notasi yang akan digunakan: diagram & bahasa terstruktur yang merupakan turunan dari kumpulan constructs yang dinamakan entity-relationship (ER) modeling (pemodelan relasi entitas)
Conceptual Modelling Constructs :
1. Entitas = kumpulan objek riil, baik bersifat fisik maupun konseptual (berarti himpunan entitas).
*Contoh : pelanggan ZARA membentuk himpunan entitas “pelanggan” dan
mereka memiliki identitas yang sama (nama, no tlp, alamat) -> kata instance berarti anggota suatu himpunan
2. Relasi = kumpulan asosiasi / hubungan antar entitas (berarti himpunan relasi). *Contoh : entitas pelangga IM3 & entitas paket full BB service, relasinya mungkin adalah pendaftaran langganan paket
3. Atribut = karakteristik / sifat dasar yang dimiliki entitas dan atau relasi. - Atribut kunci primer (primary key attributes) = untuk
mendeskripsikan anggota dari suatu himpunan entitas atau relasi secara unik dan universal (harus punya data yang memiliki nilai berbeda, misal no KTP kan tiap orang beda2 tuh).
*Contoh : lagi buat data entitas pelanggan ZARA, trs di dalam
tabelnya ada atribut = nama, alamat, no telp, jumlah pembelian, no KTP, jenis kelamin. Yang jadi primary key attribute yang pasti beda nilainya untuk tiap pelanggan, misal no KTP .
- Atribut sederhana = tidak dapat dipecah lagi.
*Contoh : jenis kelamin(gak mungkin juga kan dipecah jadi jenis kelamin pagi dan jenis kelamin malam wkwk piz)
- Atribut komposit = dapat dipecah menjadi beberapa atribut lain. *Contoh : alamat, bisa dipecah jadi alamat rumah, alamat kantor, dll. - Atribut derivatif = dapat diturunkan atau dihitung dari nilai atribut
lain dalam basis data.
*Contoh : IPK, ranking kelas, biaya konsumsi, dll. Jenisnya ada 2, yaitu :
(1) Statik = tidak dapat berubah, contoh : atribut “total sale
amount” dari entitas “sale”-> kalo ada data penjualan dari pelanggan baru di-input, data jumlah penjualan dari tiap pelanggan lama gak akan berubah.
(2) Volatile = akan berubah kalau ada data baru di-input lagi ke
sistem, contoh : atribut “IPK” dari entitas “mahasiswa” -> kan kalo nilai2 lo di semester baru udah masuk otomatis IPK lo bakal berubah kan
4. Kardinalitas partisipasi = untuk merepresentasikan aturan bisnis, berapa kali suatu himpunan entitas diperbolehkan berpartisipasi dalam suatu relasi.
*Contoh : entitas “pelanggan” dengan “penjualan”, relasinya adalah
“transaksi jual-beli”, misal aturan kardinalitas bagi “pelanggan” (1,N) artinya minimum “pelanggan” harus melakukan transaksi pembelian 1 kali dan maksimum tak terhingga. Sedangkan aturan kardinalitas bagi “penjualan” (0,N) artinya minimum “penjualan” melakukan transaksi jual beli dengan 0 pelanggan (gaada yg beli samsek, sedih :”|) dan maksimum tak terhingga. Baca (min, max).
- Kardinalitas minimum : jumlah minimum partisipasi yang harus dilakukan. 0 = partisipasi opsional (boleh gak ada samsek), 1 = partisipasi wajib (min harus 1 kali berpartisipasi)
- Kardinalitas maksimum : jumlah maksimum partisipasi yang boleh dilakukan. 1 = partisipasi max hanya 1 kali, N = partisipasi tak terhingga, sebanyak yang dibutuhkan
-
5. Mekanisme abstraksi = untuk merepresentasikan kategori entitas / hirarkhi entitas.
- Typification : bisa menyimpan karakteristik suatu kategori / tipe dari entitas.
*Contoh : universitas menyimpan karakteristik jumlah maksimum
SKS yang boleh diambil per semesternya, Menteri Perekonomian menyimpan karakteristik wage rate per hour dari buruh Indonesia, dll.
*Gambarnya :
- - - -
- Generalization : bisa menyimpan entitas subtype (anggota entitas yang lebih spesifik) dan supertype (entitas yang lebih general) dengan relasi “is - a”.
*Contoh : supertype = “instrumen musik” subtype = “alat music tiup”,
supertype = “jus buah” subtype = “jus manga” :9 NOMNOM haha. Dipakai kalau sebagian karakteristik dimiliki oleh semua entitas subtype, tapi ada juga sebagia karakteristik yang hanya dimiliki subtype tertentu. *Contoh : kita bisa masukin semua atribut karyawan kaya NIK, nama, alamat, no tlp, TTL. Tapi atribut SIM Cuma dimiliki oleh beberapa karyawan aja.
Student Type Student
typification
Student Type
Student Type Name Tuition per Credit Fee Assessment Maximum Semester Credits
Undergraduate $ 600 $200 21 Graduate-MBA $1,000 $450 18 Graduate-PhD $1,000 $350 9 Graduate-Medical $1,500 $1,400 12 Graduate-Law $1,100 $600 18 Student
Student ID Last Name First Name Address Telephone Student Type 12345678 Anderson Abigail 123 Pine 219-882-1230 Graduate-PhD 23456789 Bishop Brian 45 Elm 219-882-1356 Bachelors 34567890 Clark Christy 999 Oak 219-882-5126 Graduate-MBA 45678901 Davis Danny 876 Fir 219-882-7129 Graduate-MBA 56789012 Edgar Elizabeth 3551 Ash 219-882-8327 Bachelors 67890123 Fredericks Faye 7623 Beech 219-882-2544 Graduate-Law
*Gambarnya :
Conceptual Modeling Notations :
Beberapa notasi digunakan untuk mengkomunikasikan konsep pemodelan konseptual yang sama.
*Contoh : Pak Fulan bisa berbicara dengan Bahasa Indonesia, Inggris, Jerman, dan
Prancis. -> dibahas lebih jelas lagi next dibawah yaa :D
- Entity Relationship (ER) grammar notation = notasi menggunakan kata – kata / kalimat.
*Contoh format notasinya :
Entity: ENTITY NAME
Attributes: ATTRIBUTE NAMES
Identifiers: PRIMARY KEY ATTRIBUTE -> yg jd pembeda utama
Relationship: RELATIONSHIP NAME Connected entities: (min,max) ENTITY1
(min,max) ENTITY2 Attributes: ATTRIBUTE NAMES (if any)
Student StudentID
Name
Name
Address
MBA student PhD student
Dissertation topic
GMAT score
StudentID Name Address Student TypeFK 111222 Joe 14 Irish St. UG
222333 Rebecca 22 Irish St. MBA 444555 Victor 147 Green Dr. MBA 555666 Rob 765 Lucky Dr. MBA 666777 Julie 912 Navy St. PhD 777888 Sandra 577 Early Dr. UG 888999 James 822 Rose Ave. UG 999000 Bethany 171 Turkey St. UG 000111 Chris 288 Park Ave. PhD
StudentID GMAT score 222333 630 444555 670 555666 650 Student MBA Student PhD Student
StudentID Dissertation Topic
666777 The REA ontology as a foundation for Ecommerce
**Objek biasanya disimpan berdasarkan urutan alphabet dari nama dan relasi entitas (urut a-z), nulisnya relasi dulu baru entitas.
**Nama lain notasi ini : BNF Grammar oleh Backus-Nour Form.
- Entity Relationship (ER) diagram notation = alternatif untuk merepresentasikan constructs yang sama kaya di ER Grammar. Cuma bedanya ini menggunakan simbol gambar / diagram
Entitas
# ER Grammars = diurut berdasarkan nama (secara alfabetis, urut dari a-z) &
tiap nama didahului oleh kata “Entity” dan “tanda titik dua”.
*Contoh -> Entity : Customer
# ER Diagrams = menggunakan lambang persegi panjang & diberi nama
entitas.
*Contoh ->
Relasi
# ER Grammars = diurut berdasarkan nama (secara alfabetis, urut dari a-z) &
tiap nama didahului oleh kata “Relationship” dan “tanda titik dua”. Lalu di bawahnya ditulis kata “Connected Entities” dan “tanda titik dua” nama entitas terkait.
*Contoh -> Relationship: IS-MADE-TO
Connected entities: (1,1) Sale
(0,N) Customer
# ER Diagrams = menggunakan lambang belah ketupat & dihubungkan
dengan garis lurus ke entitas yang saling memiliki relasi tsb.
*Contoh ->
Atribut
# ER Grammars = diurut berdasarkan nama dalam deskripsi entitas dan atau
relasi. Dipaling bawah tulis juga kata “Identifier” dan “tanda titik dua” lalu nama primary key nya.
Customer
Customer
*Contoh -> Entity: Customer
Attributes: ID#
Customer_Name Customer_Phone Identifiers: ID#
# ER Diagrams = menggunakan lambang lingkaran kecil yang dihungkan
dengan garis pendek ke entitas atau relasi terkait. Lingkaran untuk primary key attribute digelapkan (dikasih warna hitam)
*Contoh ->
Kardinalitas partisipasi
# ER Grammars = masukin ke deskripsi relasi, ditulis setelah nama entitas
pada pernyataan “Connected Entities” dan “tanda titik dua”.
*Contoh -> Relationship: Assigned-to
Connected Entities: (0,1) Employee
(1,N) Department
# ER Diagrams = menggunakan lambang label pada garis antara entitas &
relasi. * Contoh -> Customer ID # Name Phone Department Employee Assigned to (0,1) (1,N)
Latihan kardinalitas
In other words, all sales are paid for immediately with cash, and sales are the company’s only source of cash
Sale (1,1) (1,1) Cash Receipt
Pays for
Q1: Can at least one sale exist in the database without a related instance of cash receipt? NO! - 1 min on sale
Q2: Can at least one sale in the database relate to multiple instances of cash receipt? NO! – 1 max on sale
Q3: Can at least one cash receipt exist in the database without a related instance of sale? NO! – 1min on cahs receipt
Q4: Can at least one cash receipt in the database relate to multiple instances of sale? NO! – 1 max on cash receipt
Langkah – langkah membuat REA business process level :
1. Identifikasi Economic Exchange Events (EEE) -> pakai value chain(kalau ada), mana yang menggunakan resources dan mana yang menghasilkan, tiap EEE menjadi suatu entitas dan bukan relasi dualitas.
2. Tambahkan resources EEE -> pakai value chain (kalo ada), tentuin mana yg increment event dana decrement event, tiap resources jadi suatu entitas dan buat relasi stockflow antara resources EEE terkait
3. Tambahkan internal agents pada EEE -> pakai value systems (kalo ada), buat relasi partisipasi diantara event dan agent, tentukan external agent yang jadi sumber dan tujuan aliran resources
4. Tambahkan internal agents pada EEE -> relasi partisipasi, pihak – pihak yang bikin increment dan decrement event
5. Tambahkan atribut pada entitas dan relasi
6. Tambahkan kardinalitas partisipasi pada tiap relasi 7. Lakukan validasi model (periksa)
REA business process level with extensions : 1. Entitas = *Resources dan resources type
*Events :
(1) Instigation = event yg memulai aktivitas pada proses bisnis,
internal (event pemasaran), eksternal (telepon dari orang supplier kita bagian pemasaran).
(2) Mutual Commitment Event = event tentang komitmen antara
perusahaan dengan mitra bisnis eksternalnya.
(3) Economic Exchange Event = event ttg inflow dan outflow
resources.
2. Relasi = *Event – Event relationships :
(1) Dualitas, menghubungkan encrement dan decrement events. (2) Reciprocal, menghubungkan increment dan decrement commitment event.
(3) Fulfillment, menghubungkan commitment event dengan economic
event).
*Event - Resources relationships :
(1) Stockflow, menghubungkan economic events dan resources atau
resource types.
(2) Reservation, menghubungkan commitment events dan resources
atau resource types.
*Event - Agent relationships :
Partisipasi, menghubungkan events dan agents yang betpartisipasi dalam events.
*Agent – Agent relationships :
(1) Assignment, menghubungkan agen internal dan
eksternal hanya bila relasinya independen.
(2) Responsibility, menghubungkan agen internal dan
eksternal hanya bila agent internal bertanggung jawab atas agent internal lainnya dan relasinya independen.
*Resources – Agemt relationships :
Custody, menghubungkan resource dan internal agent
hanya bila pertanggungjawaban seorang agen internal atas suatu resource di-track secara terpisah dari tiap event.
*Resources – Resources relationships :
Linkage, menghubungkan dua resources untuk identifikasi resource yang dibuat dari resource lain.
*Typification :
Tiap resource, event, atau agent dapat dihubungkan pada suatu resource type, event type, atau agent type.
*Generalization :
Tiap resource, event, agent, dan commitment dapat pula berpartisipasi dalam suatu relasi dengan subclass or
superclass melalui suatu relasi generalisasi.
Kesimpulan :
1. Tujuan model konseptual REA pada proses bisnis untuk merancang arsitektur basis data suatu perusahaan dengan menggunakan pola objek tertentu
2. Komponen-komponen arsitektur basis data yang disertakan dalam pemodelan REA adalah entitas, atribut, relasi dan kardinalitas
3. Tiga jenis entitas utama dalam REA ontology adalah Resources, Events, and Agents 4. Tiga jenis relasi utama dalam REA ontology adalah duality, stockflow, dan
participation; jenis tambahan adalah assignment, custody, fulfillment, linkage, reciprocal, reservation, dan responsibility. REA ontology juga membolehkan relasi generalization and typification
5. Tambahannya : assignment, custody, fulfillment, linkage, reciprocal, reservation, responsibility, serta generalization dan typification