pembuatan model data dan desain database - …fti.uajm.ac.id/ajar/sistem informasi akuntansi/04...
TRANSCRIPT
4/8/2016
1
PEMBUATAN MODEL DATA DAN DESAIN DATABASE
N. Tri Suswanto Saptadi
4/8/2016 nts/sia 1
Pendahuluan
– Bagaimana kita dapat mendokumentasikan SIA
yang diimplementasikan sebagai database
relasional?
■ Bab ini menjelaskan bagaimana cara
mendesain dan mendokumentasikan database
relasional untuk suatu SIA.
■ Memusatkan perhatian pada pembuatan
model data, yang merupakan salah satu aspek
desain database yang harus dipahami para
akuntan.
4/8/2016 nts/sia 2
4/8/2016
2
Pendahuluan
■ Bab ini juga memperkenalkan model akuntansi REA dan diagram Entity-Relationship (E-R).
■ Serta menunjukkan bagaimana mempergunakan alat-alat ini untuk membangun sebuah model data SIA.
■ Akhirnya, bab ini akan mendeskripsikan bagaimana mengimplementasikan hasil model data dalam database relasional.
4/8/2016 nts/sia 3
Perancangan dan Implementasi Sistem Database
■ Enam langkah dasar dalam mendesain dan mengimplementasikan sistem database:
1. Identifikasi kebutuhan informasi para pemakai.
2. Tahap pertama terdiri dari perencanaan awal untuk menetapkan kebutuhan dan kelayakan pengembangan sistem baru.
3. Pengembangan berbagai skema berbeda untuk sistem yang baru, pada tingkat konseptual, eksternal dan internal.
4/8/2016 nts/sia 4
4/8/2016
3
Perancangan dan Implementasi Sistem Database
4. Penerjemahan skema tingkat internal ke
struktur database sesungguhnya, yang akan
diimplementasikan ke dalam sistem yang baru
tersebut.
5. Mentransfer semua data dari sistem
sebelumnya ke database SIA yang baru.
6. Penggunaan dan pemeliharaan sistem yang
baru.
4/8/2016 nts/sia 5
Model Data REA
Pembuatan model data adalah proses of defining
a database so that it faithfully represents all
aspects of the organization, including its
interactions with the external environment.
REA (Sumber daya, Data, Kegiatan) data model
is a conceptual modeling tool that focuses on the
business semantics underlying an organization’s
value chain activities.
4/8/2016 nts/sia 6
4/8/2016
4
Model Data REA
■ Pembuatan model data dalam proses Desain database
Pengkodean
Implementasi
Operasi dan
PemeliharaanPerencanaan
Analisis
Persyaratan
Desain
Pembuatan model data terjadi di
sini
4/8/2016 nts/sia 7
Model Data REA
■ Model data REA memberikan struktur dalam dua cara:
1 Dengan mengidentifikasi entitas apa yang seharusnya dimasukkan dalam database SIA
2 Dengan cara menentukan bagaimana membuat struktur antar entitas dalam database SIA tersebut
4/8/2016 nts/sia 8
4/8/2016
5
Jenis-jenis Entitas
■ Entitas adalah segala sesuatu yang
informasinya ingin dikumpulkan dan disimpan
oleh organisasi.
■ Model data REA mengklasifikasi entitas ke
dalam tiga kategori yang berbeda, yaitu :
1 Sumber daya yang didapat dan dipergunakan
oleh organisasi
2 Kegiatan atau aktivitas bisnis yang dilakukan
organisasi
3 Pelaku yang terlibat dalam kegiatan tersebut
4/8/2016 nts/sia 9
Jenis-jenis Entitas
■ Sumber daya adalah hal-hal yang memiliki
nilai ekonomi bagi organisasi.
■ Contoh sumber daya organisasi adalah:
– Kas
– Persediaan
– Peralatan
4/8/2016 nts/sia 10
4/8/2016
6
Jenis-jenis Entitas
■ Kegiatan adalah berbagai aktivitas bisnis
yang informasinya ingin dikumpulkan
perusahaan untuk tujuan perencanaan dan
pengendalian.
■ Contoh kegiatan organisasi adalah :
– Kegiatan penjualan
– Kegiatan penerimaan kas
4/8/2016 nts/sia 11
Jenis-jenis Entitas
■ Pelaku adalah entitas jenis ketiga dalam model REA.
■ Pelaku adalah orang-orang dan organisasi yang terlibat dalam kegiatan yang informasinya ingin didapatkan untuk tujuan perencanaan, pengendalian, dan evaluasi.
■ Contoh pelaku organisasi adalah
– Pegawai
– Pelanggan
4/8/2016 nts/sia 12
4/8/2016
7
Membangun diagram REA
■ Membangun diagram REA untuk siklus transaksi
tertentu terdiri dari empat langkah berikut :
1 Identifikasi pasangan kegiatan pertukaran ekonomi
yang mewakili hubungan dualitas dasar memberi
untuk menerima, dalam siklus tersebut.
2 Identifikasi sumber daya yang dipengaruhi oleh
setiap kegiatan pertukaran ekonomi dan para
pelaku yang terlibat dalam kegiatan tersebut.
4/8/2016 nts/sia 13
Membangun diagram REA
3.Analisis setiap kegiatan pertukaran ekonomi untuk menetapkan apakah kegiatan tersebut harus dipecah menjadi suatu kombinasi dari satu atau lebih kegiatan komitmen dan kegiatan pertukaran ekonomi. Apabila perlu, ganti kegiatan pertukaran ekonomi aslinya dengan rangkaian kegiatan komitmen dan pertukaran ekonomi yang dihasilkan dari pemecahan kegiatan tadi.
4. Tetapkan kardinalitas setiap hubungan..
4/8/2016 nts/sia 14
4/8/2016
8
Pola dasar REA (Basic REA template)
Resource A
Economic
Duality
Internal AgentGET
Resource A
GIVE
Resource BResource B Internal Agent
External Agent
Outflow
Inflow
Participant
Participant
Participant
Participant
External Agent
4/8/2016 nts/sia 15
Contoh Diagram REA (Sample REA diagram)
Inventory
Economic
Duality
SalespersonSales
Cash
ReceiptsCash Cashier
Customer
Stock-flow
Stock-flow
Participant
Participant
Participant
Participant
4/8/2016 nts/sia 16
4/8/2016
9
Diagram REA, Langkah 1: Identifikasi kegiatan pertukaran ekonomi
■ Selama menggambar diagram REA untuk suatu
siklus transaksi, sangatlah berguna untuk
membagi kertas yang digunakan untuk
menggambar ke dalam tiga kolom, satu kolom
untuk setiap jenis entitas.
– Pergunakan kolom kiri untuk sumber daya
– Kolom tengah untuk kegiatan.
– Dan kolom kanan untuk pelaku.
4/8/2016 nts/sia 17
Diagram REA, Langkah 1: Identifikasi kegiatan pertukaran ekonomi
■ Pertukaran ekonomi dasar dalam siklus pendapatan melibatkan penjualan barang dagangan atau pelayanan, serta serangkaian penerimaan kas sebagai pembayaran dalam penjualan tersebut.
■ Diagram REA untuk siklus pendapatan S&S dengan membuat entitas kegiatan penjualan dan penerimaan kas dalam bentuk persegi panjang, dan hubungan dualitas ekonomi antara mereka, dalam bentuk wajik.
4/8/2016 nts/sia 18
4/8/2016
10
Diagram REA, Step 2: Identifikasi Sumber Daya dan Pelaku
■ Ketika kegiatan yang menjadi pusat perhatian telah ditentukan, sumber daya yang dipengaruhi oleh kegiatan tersebut perlu diidentifikasi.
■ Kegiatan penjualan dapat diterjemahkan menjadi pemberian persediaan kepada pelanggan.
■ Kegiatan penerimaan kas dapat diterjemahkan sebagai menerima kas dari pelanggan.
4/8/2016 nts/sia 19
Diagram REA, Langkah 2: Identifikasi Sumber Daya dan Pelaku
■ Setelah menentukan sumber daya yang
dipengaruhi oleh setiap kegiatan, langkah
selanjutnya yang perlu dilakukan adalah
mengidentifikasi pelaku yang terlibat dalam
kegiatan-kegiatan tersebut.
■ Paling tidak selalu terdapat satu pelaku internal
(pegawai) dan, di sebagian besar kondisi, seorang
pelaku eksternal (pelanggan/pemasok) yang
terlibat dalam setiap kegiatan.
4/8/2016 nts/sia 20
4/8/2016
11
Diagram REA, Langkah 3: Masukkan Kegiatan Komitmen
■ Langkah ketiga dalam menggambar diagram REA adalah menganalisis kegiatan pertukaran ekonomi untuk menetapkan apakah kegiatan tersebut dapat dipecah menjadi sebuah kombinasi dari satu atau lebih kegiatan komitmen dan pertukaran.
■ Contoh: Kegiatan penjualan dapat dipergunakan untuk mewakili baik penjualan dengan pengiriman maupun yang terjadi di toko. economic exchange event
4/8/2016 nts/sia 21
Decomposing Sales into Orders and Sales
Inventory
Inventory-
Orders
Participant CustomerCustomer
Orders
Sales
Customer
Salesperson
(1,N)
(0,N)
(0,1)
(0,1)
(1,1) (0,N)
(0,N)
(1,1)
(0,N)
(1,1)
(0,N)(1,1)
(0,N)Inventory-
Sales
(1,N)
Participant
Participant
Participant
Leads to
4/8/2016 nts/sia 22
4/8/2016
12
Diagram REA, Langkah 4: Menetapkan kardinalitas hubungan
■ Kardinalitas menunjukkan bagaimana perumpamaan dalam satu entitas dapat dihubungkan ke perumpamaan tertentu dalam entitas lainnya.
■ Kardinalitas sering diungkapkan sebagai pasangan nomor di setiap entitas.
■ Nomor pertama adalah kardinalitas minimum, dan nomor kedua adalah kardinalitas maksimum.
4/8/2016 nts/sia 23
Diagram REA, Langkah 4: Menetapkan kardinalitas hubungan
■ The minimum cardinality of a relationship indicates whether each row in that entity MUST be linked to a row in the entity on the other side of the relationship.
■ Minimum cardinalities can be either 0 or 1.
■ A minimum cardinality of zero means that a new row can be added to that table without being linked to any rows in the other table.
■ A minimum cardinality of 1 means that each row in that table MUST be linked to at least one row in the other table
4/8/2016 nts/sia 24
4/8/2016
13
Diagram REA, Langkah 4: Menetapkan kardinalitas hubungan
■ Kardinalitas minimemThe minimum cardinality of zero in the (0, N) cardinality pair to the left of the customer entity in the customer-sales relationship indicates that a new customer may be added to the database without being linked to any sales events.
Penjualan Made to Pelanggan(0, N)
4/8/2016 nts/sia 25
Diagram REA, Langkah 4: Menetapkan Kardinalitas Hubungan
■ Kardinalitas minimum of 1 in the
(1, 1) cardinality pair to the right of the sales entity in the customer-sales relationship indicates that a new sales transaction CAN ONLY be added if it is linked to a customer.
Penjualan Made to Pelanggan(0, N)
(1,1)
4/8/2016 nts/sia 26
4/8/2016
14
Diagram REA, Langkah 4: Menetapkan Kardinalitas Hubungan
■ Kardinalitas maksimem dari sebuah hubungan menunjukkan apakah setiap baris dalam entitas dapat dihubungkan lebih dari satu baris dalam entitas lainnya on the other side of the relationship.
■ Kardinalitas maksimem dapat baik 1 atau N.
■ Kardinalitas minimem 1 artinya bahwa setiap baris dalam tabel itu dapat dihubungkan ke hanya satu baris dalam tabel lainnya.
■ Kardinal maksimem N artinya bahwa setiap baris dalam tabel itu bisa dihubungkan lebih dari satu baris dalam tabel lainnya.
4/8/2016 nts/sia 27
Diagram REA, Langkah 4: Menetapkan Kardinalitas Hubungan
■ Kardinalitas maksimum N dalam (0, N) pasangan kardinalitas to the left of the customer entity in the customer-sales relationship indicates that a given customer MAY be linked to many sales events.
Penjualan Made to Pelanggan(0, N)
4/8/2016 nts/sia 28
4/8/2016
15
Diagram REA, Langkah 4: Menetapkan Kardinalitas Hubungan
■ Kardinalitas maksimum 1 dalam
(1, 1) pasangan kardinalitas to the right of the sales entity in the customer-sales relationship indicates that a given sales transaction can only be linked to one customer.
Penjualan Made to Pelanggan(0, N)(1,1)
4/8/2016 nts/sia 29
Diagram REA, Langkah 4: Menetapkan Kardinalitas Hubungan
■ Kardinalitas are not arbitrarily chosen by the database
designer.
■ They reflect facts about the organization being modeled and
its business practices obtained during the requirements
analysis stage of the database design process.
4/8/2016 nts/sia 30
4/8/2016
16
Hubungan antar Entitas
■ Terdapat kemungkinan tiga jenis dasar hubungan
antar entitas, tergantung dari kardinalitas
maksimum yang berhubungan dengan setiap
entitas.
1. Hubungan satu-ke-satu (1:1)
2. Hubungan satu-ke-banyak (1:N)
3. Hubungan banyak-ke-banyak (M:N)
4/8/2016 nts/sia 31
Jenis-jenis perbedaan hubungan)
Cash
ReceiptsSales (0,1) (1,1)
Panel A: One-to-One (1:1) Relationship
4/8/2016 nts/sia 32
4/8/2016
17
Jenis-jenis perbedaan hubungan
SalesCash
Receipts(0,N) (1,1)
Panel B: One-to-Many (1:N) Relationship
4/8/2016 nts/sia 33
Jenis-jenis perbedaan hubungan
SalesCash
Receipts(1,N)(0,1)
Panel C: One-to-Many (1:N) Relationship
4/8/2016 nts/sia 34
4/8/2016
18
Jenis-jenis perbedaan hubungan
SalesCash
Receipts(0,N) (1,N)
Panel D: Many-to-Many (M:N) Relationship
4/8/2016 nts/sia 35
Diagram Hubungan Entitas
■ Diagram Hubungan Entitas- (E-R) adalah satu metode untuk skema penggambaran database disebut diagram E-R karena it shows the various entities being modeled and the important relationships among them.
■ Dalam sebuah diagram E-R, entitas appear as rectangles, and relationships between entities are represented as diamonds.
4/8/2016 nts/sia 36
4/8/2016
19
Contoh Diagram E-R
SupervisorsEmployers
Departments
Part ofManages
Managed
By
Customer
OrdersSales
Cash
ReceiptsPart of Part of
Players Teams LeaguePart of Part of
4/8/2016 nts/sia 37
Contoh diagram E-R yang berdasar pada model REA
Inventory
Purchases-
Cash
Disbursements
Buyer
(Purchasing Agent)Purchases
Cash
DisbursementCash Cashier
Vendor
(1,N)(0,N)
(0,N)
(1,N)
(1,1)(0,N) (1,1) (0,N)
(1,1)
(1,1)
(0,N)(1,1)
Stockflow
Inventory-
Purchases
Participant
Participant
Participant
Participant
(0,N)
(0,N)
4/8/2016 nts/sia 38
4/8/2016
20
Mengimplementasikan Diagram REA Dalam Database Relasional
■ Diagram REA ini dapat dipergunakan untuk mendesain database relasional yang terstruktur baik.
■ Bahkan, membuat suatu rangkaian tabel berdasarkan diagram REA secara otomatis akan menghasilkan database relasional yang terstruktur baik, tanpa adanya masalah anomali pembaruan (update), penyisipan data (insert), dan penghapusan (delete).
4/8/2016 nts/sia 39
Mengimplementasikan Diagram REA Dalam Database Relasional
Mengimplementasikan diagram REA ke dalam database relasional melibatkan proses tiga tahap, yaitu :
1. Membuat sebuah tabel untuk setiap entitas berbeda dan untuk setiap hubungan banyak-ke-banyak
2. Memberikan atribut ke tabel yang tepat
3. Menggunakan kunci luar untuk mengimplementasikan hubungan satu-ke-satu dan hubungan satu-ke-banyak
4/8/2016 nts/sia 40
4/8/2016
21
Mengimplementasikan model REA
Inventory
Purchases-
Cash
Disbursements
Buyer
(Purchasing Agent)Purchases
Cash
DisbursementCash Cashier
Vendor
(1,N)(0,N)
(0,N)
(1,N)
(1,1)(0,N) (1,1) (0,N)
(1,1)
(1,1)
(0,N)(1,1)
Stockflow
Inventory-
Purchases
Participant
Participant
Participant
Participant
(0,N)
(0,N)
4/8/2016 nts/sia 41
Membuat Tabel
From the previously discussed REA diagram, nine tables would be created: one for each of the seven entities and one for each of the many-to-many relationships.
1.Persediaan
2.Pembelian
3.Pegawai
4.Pemasok
5.Kasir
6. Pengeluaran Kas
7. Kas
8. Pembelian-persediaan
9. Pembelian-pengeluaran kas
4/8/2016 nts/sia 42
4/8/2016
22
Menetapkan Atribut untuk Setiap Tabel
■ Menetapkan Kunci Utama: Biasanya, kunci utama of a table
representing an entity is a single attribute.
■ Other Attributes: Additional attributes are included in each
table to satisfy transaction processing requirements.
4/8/2016 nts/sia 43
Implementasi Hubungan Satu ke Satu dan Satu ke Banyak
■ Hubungan Satu ke Satu: Di dalam database relasional,
hubungan satu ke satu antara entitas dapat
diimplementasikan dengan memasukkan kunci utama suatu
entitas sebagai kunci luar dalam tabel yang mewakili entitas
satunya.
■ Tidak ada contohnya hubugnan 1:1 dalam diagram contoh
4/8/2016 nts/sia 44
4/8/2016
23
Implementasi Hubungan Satu ke Satu dan Satu ke Banyak
■ Hubungan Satu ke Banyak: Dalam database relasional, hubungan satu ke banyak dapat diimplementasikan juga dalam relasi ke database dengan menggunakan kunci luar.
■ Kunci utama dari entitas dengan kardinal maksimum N menjadi kunci luar dalam entitas dengan kardinal maksimum 1
■ Contoh: Nomor pegawai dan nomor pemasok adalah kunci luar dalam kegiatan pembelian dan kegiatan pengeluaran kas. i
4/8/2016 nts/sia 45
Dokumentasi Praktik Bisnis
■ Diagram REA secara khusus berguna untuk
mendokumentasikan SIA tingkat lanjut yang
menggunakan database.
■ Diagram REA menyediakan informasi mengenai
praktik bisnis organisasi dan pola pertukaran
ekonominya.
4/8/2016 nts/sia 46
4/8/2016
24
Dokumentasi Praktik Bisnis
■ The zero minimum for the sales event
indicates that credit sales are made
■ The N maximum for the sales event
means that customers may make
installment paymentsPenerimaan
kasPenerimaan kas
PenjualanPenjualan
(1, N) (0, N)
4/8/2016 nts/sia 47
Dokumentasi Praktik Bisnis
■ The one minimum for the cash receipts event
indicates that cash is not received prior to
delivering the merchandise
■ The N maximum for the cash receipts event
means that customers may pay for several sales
with one check
PenerimaanKas
PenerimaanKas-Penjualan Penjualan
(1, N) (0, N)
4/8/2016 nts/sia 48
4/8/2016
25
Organization Specificityof REA Diagrams
■ Due to the fact that S&S sells mass-produced goods, its REA diagram models the relationship between sales and inventory as being many-to-many.
■ An REA diagram for a rare art dealer would depict the relationship between sales and inventory as being one-to-many.
4/8/2016 nts/sia 49
Pengambilan Informasi dari SIA
■ Diagram REA yang lengkap juga berfungsi sebagai petunjuka yang berguna untuk meminta informasi dari database SIA.
■ Permintaan data dapat digunakan untuk menghasilkan jurnal dan buku besar dari database rasional yang dibuat dengan menggunakan model REA.
4/8/2016 nts/sia 50
4/8/2016
26
Pengambilan Informasi dari SIA
• Setiap transaksi penjualan dibayar penuh oleh kegiatan penerimaan kas.
• Setiap pembayaran pelanggan bisa dilakukan lebih dari satu penjualan.
• Apakah permintaan logis itu ?
• Total piutang dagang adalah jumlah dari seluruh penjualan yang tidak memiliki nomor pembayaran.
PenerimaanKasPenjualan
(0, 1) (1, N)
4/8/2016 nts/sia 51
Pengambilan Informasi dari SIA
■ Setiap transaksi penjualan dapat dibayar secara cicilan (angsuran).
■ Setiap pembayaran pelanggan hanya untuk satu penjualan.
■ Apakah permintaan logis itu ?
■ (1) Jumlah seluruh penjualan; (2) Jumlah penerimaan kas; then A/R = (1)-(2)
Penerimaan KasPenjualan
(0, N) (1, 1)
4/8/2016 nts/sia 52
4/8/2016
27
Pengambilan Informasi dari SIA
■ Setiap transaksi penjualan dibayar penuh oleh kegiatan penerimaan kas.
■ Setiap pembayaran pelanggan untuk satu penjualan.
■ Apakah permintaan logis itu?
■ Total piutang dagang adalah jumlah seluruh penjualan yang tidak memiliki nomor pembayaran.
PenerimaanKasPenjualan
(0, 1) (1, 1)
4/8/2016 nts/sia 53
Pengambilan Informasi dari SIA
■ Setiap transaksi penjualan dibayar secara cicilan (angsuran).
■ Setiap pembayaran dari pelanggan dapat membayar lebih dari satu penjualan.
■ Apakah permintaan logis itu ?
■ (1) Jumlah semua penjualan; (2) Jumlah semua penerimaan kas; Then A/R = (1)-(2)
PenerimaanKasPenjualan
(0, N) (1, N)
4/8/2016 nts/sia 54