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.
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.
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.
Model Data REA
■ Pembuatan model data dalam proses Desain database
Pengkodean Implementasi Operasi dan Pemeliharaan
Perencanaan
Analisis Persyaratan Desain Pembuatan model data terjadi di sini 4/8/2016 nts/sia 7Model 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
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
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
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.
Pola dasar REA
(
Basic REA template)
Resource A Economic Duality Internal Agent GET Resource A GIVE Resource B
Resource 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 Salesperson Sales Cash Receipts Cash Cashier Customer Stock-flow Stock-flow Participant Participant Participant Participant
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.
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.
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 Customer Customer 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 toDiagram 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
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
(0, N)Pelanggan
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)
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.
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
(1,1)Made to
(0, N)Pelanggan
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.
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 Receipts
Sales (0,1) (1,1)
Jenis-jenis perbedaan hubungan
Sales Cash
Receipts (0,N) (1,1)
Panel B: One-to-Many (1:N) Relationship
4/8/2016 nts/sia 33
Jenis-jenis perbedaan hubungan
Sales Cash
Receipts (1,N)
(0,1)
Jenis-jenis perbedaan hubungan
Sales Cash
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.
Supervisors Employers Departments Part of Manages Managed By Customer Orders Sales Cash Receipts Part of Part of
Players Part of Teams Part of League
4/8/2016 nts/sia 37
Contoh diagram E-R yang berdasar
pada model REA
Inventory Purchases-Cash Disbursements Buyer (Purchasing Agent) Purchases Cash Disbursement Cash 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)
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
Mengimplementasikan model REA
Inventory Purchases-Cash Disbursements Buyer (Purchasing Agent) Purchases Cash Disbursement Cash 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 41Membuat 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
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.
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.
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 payments
Penerimaan
kas Penerimaan kasPenjualan Penjualan
(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
Penerimaan Kas
Penerimaan
Kas-Penjualan Penjualan
Organization Specificity
of 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 jugaberfungsi 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.
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.
Penerimaan
Kas
Penjualan
(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
Kas
Penjualan
(0, N) (1, 1)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.
Penerimaan
Kas
Penjualan
(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)
Penerimaan Kas