Jenis Hubungan dalam antar entitas.

Tiga jenis hubungan. Terdapat kemungkinan tiga jenis dasar hubungan antar-entitas, tergantung dari kardinalitas maksimum yang berhubungan dengan setiap entitas.cardinality-url

  1. Hubungan satu-ke-satu (one-to-one relationship) (1:1) terjadi saat kardinalitas maksimum untuk setiap entitas dalam hubungannya adalah 1 (lihat Gambar DD-7, Panel A).
  2. Hubungan satu-ke-banyak (one-to-many relationship) (1:N) terjadi saat kardinalitas maksimum dari suatu entitas dalam hubungan adalah 1 dan kardinalitas maksimum entitas lainnya dalam hubungan tersebut adalah N (lihat Gambar DD-7, Panel B dan C).
  3. Hubungan banyak-ke-banyak (many-to-many relationship) (M:N) terjadi saat kardinalitas maksimum kedua entitas dalam suatu hubungan adalah N (Gambar DD-7, Panel D).

Gambar DD-7Gambar-5-0007-aa-dd-7

 

Hal yang memungkinkan terjadinya hubungan 1:N (satu ke banyak).

Gambar DD=7, Panel B dan Gambar DD-7, Panel C menunjukkan dua cara kemungkinan terjadinya hubungan satu-ke-banyak (1:N). Gambar DD-7, Panel B memperlihatkan bahwa setiap kegiatan penjualan dapat dihubungkan dengan banyak kegiatan penerimaan kas.

Gambar DD-7Gambar-5-0007-aa
Hal ini menunjukkan bahwa pelanggan dapat melakukan pembayaran secara cicilan, walaupun bukan merupakan syaratnya. Akan tetapi, Gambar DD-7, Panel B juga memperlihatkan bahwa setiap kegiatan penerimaan kas dihubungkan dengan paling banyak satu kegiatan penjualan. Hal ini menunjukkan bahwa pelanggan harus membayar setiap transaksi penjualan secara terpisah; mereka tidak bisa membuat rekening saldo untuk suatu periode.

Sebaliknya, Gambar DD-7, Panel C memperlihatkan bahwa setiap kegiatan penjualan dapat dihubungkan dengan paling banyak satu kegiatan penerimaan kas. Hal ini menunjukkan bahwa pelanggan tidak dapat membayar secara cicilan. Gambar DD-7, Panel C juga memperlihatkan bahwa setiap kegiatan penerimaan kas dapat dihubungkan dengan berbagai kegiatan penjualan yang berbeda.

Hal ini menunjukkan adanya kebijakan yang mengizinkan pelanggan membuat beberapa pembelian selama suatu periode waktu (contoh: dalam satu bulan), dan kemudian membayar lunas pembelian mereka dengan satu kali pembayaran.mandatory-reltshp-url

Hal yang memungkinkan terjadinya hubungan M:N (banyak ke banyak).

Gambar DD-7, Panel D menunjukkan hubungan banyak-ke-banyak (M:N) antara kegiatan penjualan dan penerimaan kas:

many2manySetiap kegiatan penjualan dapat dihubungkan dengan satu atau lebih kegiatan penerimaan kas, dan setiap kegiatan penerimaan kas dapat dihubungkan dengan satu atau lebih kegiatan penjualan.

Hal ini mencerminkan situasi organisasi yang dapat melakukan beberapa penjualan tunai, penjualan yang memungkinkan pelanggan membayar secara cicilan, dan penjualan yang memungkinkan pelanggan membayar lebih dari satu pembelian dengan satu kali pengiriman uang.
Gambar DD-7Gambar-5-0007-aa

Aturan untuk Menspesifikasi Kardinalitas.

Pendesain database tidak menentukan sendiri kardinalitas. Sebaliknya, kardinalitas mencerminkan fakta mengenai organisasi yang dibuat modelnya dan juga praktik bisnis organisasi tersebut.

Informasi ini diperoleh dalam tahap definisi persyaratan dari proses desain database. Jadi, Perancang database harus dengan jelas memahami bagaimana perusahaan melakukan aktivitas-aktivitas bisnisnya untuk memastikan bahwa Gambar DD-6 sudah benar untuk kondisi PERUSAHAAN.

Akan tetapi, beberapa prinsip umum tertentu dapat memberikan titik awal untuk mulai membangun model data REA bagi organisasi jenis apa pun.
Gambar DD-6Gambar-5-0006-aa

Aturan Kardinalitas untuk Hubungan Pelaku-Kegiatan (Agent-Event Relationship)

Perhatikan bahwa di dalam Gambar DD-6 kardinalitas minimum dan maksimum yang berhubungan dengan entitas kegiatan dalam setiap hubungan pelaku-kegiatan adalah satu (1).

Gambar-5-0006-aaGambar DD=6.
Kondisi ini hampir selalu dapat ditemui di mana saja. Kardinalitas minimum yang berhubungan dengan entitas kegiatan bernilai 1 karena harus ada beberapa pelaku yang terlibat dalam kegiatan terscbut.

Contohnya, suatu kegiatan penjualan harus dihubungkan dengan seorang pelanggan. Kardinalitas maksimum juga biasanya bernilai 1, karena organisasi ingin agar ada seorang pelaku tertentu yang bertanggung jawab atas kegiatan tersebut.

Melanjutkan contoh sebelumnya, sebuah penjualan dilakukan oleh beberapa pelanggan yang dapat diidentifikasi, yang diharapkan membayar untuk penjualan tersebut. Dengan cara yang hampir sama, kardinalitas maksimum entitas kegiatan dalam hubungan dengan pelaku internal (contoh untuk kegiatan penjualan, seorang staf penjualan) juga biasanya bernilai 1, untuk memberikan kredit ke pegawai terkait.

Prinsip Umum Kardinalitas dalam hubungan Pelaku-Kegiatan

Terdapat pula prinsip umum tentang kardinalitas yang berhubungan dengan entitas pelaku dalam hubungan pelaku-kegiatan. Perhatikan bahwa dalam Gambar DD-6, kardinalitas yang berhubungan dengan setiap pelaku dalam hubungan pelaku-kegiatan seluruhnya memiliki nilai minimum nol (0) dan maksimum N. Kombinasi ini juga umum dalam hubungan tersebut.
Gambar DD-6Gambar-5-0006-aa

Kardinalitas maksimum yang berhubungan dengan entitas pelaku internal dalam hubungan pelaku-kegiatan juga hampir selalu N, karena organisasi berharap pegawai mereka akan terlibat dalam berbagai kegiatan. Kardinalitasnya juga akan N untuk pelaku eksternal, karena organisasi sering kali terlibat dalam transaksi berulang-ulang dengan pemasok dan pelanggan yang sama.

Alasan Kardinalitas minimum Entitas Pelaku (Pelaku-Kegiatan) bernilai 0(nol)

Terdapat dua alasan mengapa kardinalitas minimum yang berhubungan dengan entitas pelaku di hubungan pelaku-kegiatan biasanya bernilai nol (0).

zero-card-urlPertama, organisasi ingin dapat menambah informasi mengenai pelanggan dan pemasok potensial, walaupun para pelaku tersebut mungkin saja tidak (belum) terlibat dalam transaksi bisnis apa pun.

Kedua, entitas kegiatan sesuai dengan file transaksi, sedangkan entitas pelaku sesuai dengan file utama (master file). Pada akhir tahun fiskal, isi tabel kegiatan biasanya akan diarsipkan dan tahun fiskal yang baru akan mulai dengan baris kosong dalam berbagai tabel kegiatan.

Sebaliknya, informasi mengenai pelaku bersifat permanen dan dibawa terus dari satu periode fiskal ke periode berikutnya. Oleh sebab itu, pada awal periode fiskal baru, pelanggan dapat tidak dihubungkan dengan kegiatan penjualan yang baru berjalan.

Asumsi Perancang Database untuk setiap hubungan Pelaku-Kegiatan.

Perancang database memulai dengan asumsi bahwa setiap hubungan pelaku-kegiatan dapat dimodelkan sesuai dengan pola berikut:

Kegiatan (l,l)-(0,N) Pelaku. Perancang database kemudian mewawancarai Manajemen untuk menetapkan apakah perancang database perlu memodifikasi asumsi tersebut atau tidak.

Setelah perancang database mengetahui bahwa tidak ada pengecualian dalam praktik umum ini, perancang database membiarkan kardinalitas tersebut sebagaimana adanya, seperti yang diperlihatkan dalam Gambar DD-6.
Gambar DD-6Gambar-5-0006-aa

Aturan Kardinalitas untuk Hubungan Sumber Daya-Kegiatan

Gambar-5-0006-aaGambar DD-6
Perhatikan bahwa dalam Gambar DD-6 kardinalitas minimum dan maksimum yang berhubungan dengan setiap sumber daya di hubungan sumber daya-kegiatan, bernilai nol (0) dan N. Hal ini umum untuk sebagian besar organisasi dan sumber daya. Alasannya sama dengan yang diberikan sebelumnya ketika menjelaskan kardinalitas minimum dan maksimum umum, yang berhubungan dengan pelaku dalam hubungan pelaku-kegiatan.

Satu pengecualian pada aturan umum ini adalah kardinalitas maksimum yang berhubungan dengan sumber daya persediaan kadang kala bernilai satu (1). Gambar DD-6 mencerminkan fakta bahwa PERUSAHAAN menjual barang dagangan yang diproduksi secara masal. Bagi setiap barang yang diterimanya, PERUSAHAAN harus mengetahui jumlah yang dimiliki dan jumlah yang tersedia untuk dijual.

Perusahaan tersebut juga harus mengetahui jumlah setiap barang yang dibeli atau dijual. Akan tetapi, PERUSAHAAN tidak mencoba untuk melacak barang tertentu yang secara fisik termasuk dalam sebuah transaksi.

Konsekuensinya, setiap baris dalam tabel persediaan di Gambar DD-6 mewakili jenis barang. Bagi PERUSAHAAN, kunci utama (primary key) adalah nomor barangnya. Organisasi lain mungkin akan menyebut kunci utama sebagai nomor bagian atau nomor SKU. Hal yang penting untuk dipahami adalah bahwa setiap baris dalam tabel persediaan PERUSAHAAN dapat dihubungkan dengan berbagai baris berbeda dalam tabel penjualan.

Akan tetapi, kadang kala organisasi melacak barang persediaan tertentu secara fisik. Contoh kondisi ini adalah berkaitan dengan karya seni asli, kendaraan bermotor, atau rumah. Bagi barang dagangan semacam ini, setiap baris dalam tabel persediaan akan mewakili lukisan atau rumah tertentu, dan akan diidentifikasi dengan kunci utama yang menjadi sejenis ID dengan nomor seri. Dalam kasus semacam ini, suatu baris dalam tabel persediaan dapat dihubungkan dengan paling banyak satu transaksi penjualan dan karenanya, akan memiliki kardinalitas maksimum 1, bukan N.

Prinsip Umum Kardinalitas Minimum entitas kegiatan dalam hubungan Sumber daya-Kegiatan.

Sekarang perhatikan kardinalitas yang berhubungan dengan entitas kegiatan dalam hubungan sumber daya-kegiatan.

Gambar-5-0006-aaGambar DD-6 mencerminkan prinsip umum bahwa kardinalitas minimum yang berhubungan dengan entitas kegiatan dalam hubungan sumber daya-kegiatan biasanya bernilai l.

Contohnya, setiap kegiatan penjualan harus memasukkan paling tidak satu baris dalam tabel persediaan (agar penjualan terjadi, PERUSAHAAN harus menjual sesuatu). Dengan cara yang hampir sama, setiap pembayaran yang diterima dari seorang pelanggan harus disimpan ke dalam akun kas.

Satu-satunya pengecualian dalam aturan umum ini muncul apabila sebuah kegiatan berpotensi dihubungkan dengan lebih dari satu entitas sumber daya. Bayangkan sebuah bisnis perbaikan mobil. Beberapa pelayanan, seperti pergantian ban, bisa jadi tidak melibatkan penjualan suku cadang apa pun; sementara pelayanan lainnya, seperti perbaikan rem; melibatkan baik tenaga kerja dan suku cadang. Jadi, kegiatan penjualan untuk bisnis perbaikan mobil seperti ini dapat dihubungkan ke sebuah entitas persediaan, atau ke sebuah entitas pelayanan perbaikan, atau dihubungkan pada kedua jenis sumber daya tersebut.

Konsekuensinya, kardinalitas minimum untuk kegiatan penjualan tersebut adalah 0 dalam hubungan¬-hubungan tersebut. (Catatan: Dalam situasi tertentu yang jarang terjadi, sebuah kegiatan dapat dihubungkan ke salah satu dari beberapa entitas pelaku khusus. Dalam kasus semacam ini, kardinalitas minimum yang berhubungan lagi dengan entitas kegiatan terkait akan bernilai 0, bukan seperti normalnya, yaitu 1).

Prinsip Umum Kardinalitas Maksimum entitas kegiatan dalam hubungan Sumber daya-Kegiatan.

Akan tetapi, tidak ada prinsip umum berkaitan dengan kardinalitas maksimum yang berhubungan dengan entitas kegiatan dalam hubungan sumber daya-kegiatan. Sebagai gantinya, kardinalitas maksimum untuk sebuah kegiatan tergantung pada sifat sumber daya yang dipengaruhi oleh kegiatan tersebut dan oleh kebijakan bisnis organisasinya.

Gambar-5-0006-aa-dd-6Contohnya, Gambar DD-6 memperlihatkan bahwa setiap kegiatan penerimaan kas dapat dihubungkan ke paling banyak satu akun kas. Hal ini menunjukkan bahwa PERUSAHAAN mengikuti praktik bisnis yang baik dan menyimpan seluruh pembayaran pelanggan dalam akun yang umum dipergunakan. (Manajemen dapat saja’ kadang-kadang mentransfer kelebihan uang ke akun khusus investasi.)

Sebaliknya, Gambar DD-6 memperlihatkan bahwa setiap pesanan pelanggan dan kegiatan penjualan dapat dihubungkan dengan beberapa baris dalam tabel persediaan; karena PERUSAHAAN mengizinkan, bahkan mendorong, para pelanggannya untuk memesan dan membeli berbagai jenis produk yang sesuai keinginan mereka. Contohnya, sebuah transaksi penjualan dapat memasukkan baik sebuah monitor 21 inci dan printer dengan kualitas mencetak foto. Konsekuensinya, di dalam Gambar DD-6, kardinalitas maksimum baik untuk pesanan pelanggan dan entitas penjualan dalam hubungannya dengan tabel persediaan, adalah N.

Aturan Kardinalitas untuk Hubungan Kegiatan-kegiatan (Event-event Relationship)

Gambar DD-7Gambar-5-0007-aa-dd-7
Gambar DD-7 memperlihatkan adanya kemungkinan hampir semua jenis pasangan kardinalitas untuk setiap entitas kegiatan dalam hubungan kegiatan-kegiatan. Praktik bisnis dan kebijakan organisasi harus dipahami untuk memutuskan kemungkinan mana yang benar.

Perancang database telah mempelajari bahwa PERUSAHAAN memperpanjang kredit ke para pelanggannya dan mengirimkan laporan bulanan ke mereka yang mendaftar semua pembelian yang belum dibayar. Perancang database juga telah mempelajari bahwa banyak pelanggan yang mengirim PERUSAHAAN satu cek untuk membayar seluruh pembelian mereka dalam suatu periode waktu tertentu.

Jadi, satu kegiatan penerimaan kas dapat dihubungkan dengan banyak kegiatan penjualan. PERUSAHAAN juga mengizinkan para pelanggannya membayar secara cicilan untuk pembelian dalam jumlah besar; jadi suatu kegiatan penjualan dapat dihubungkan dengan lebih dari satu kegiatan penerimaan kas. Inilah alasan mengapa Perancang database membuat model hubungan antara kegiatan penjualan dan penerimaan kas sebagai hubungan banyak-ke-banyak (many-to-many).many2many

PERUSAHAAN mengirim setiap pesanan pelanggan secara terpisah, dan menunggu hingga seluruh barang terdapat dalam persediaan sebelum memenuhi suatu pesanan. Oleh sebab itu, Perancang database membuat model hubungan antara pesanan pelanggan dengan kegiatan penjualan sebagai hubungan satu-ke-satu (one-to-one).one2one-images

Prinsip Umum Pembuatan Model untuk hubungan Kegiatan-Kegiatan.

sampleERSatu-satunya prinsip umum pembuatan model yang dapat diaplikasikan dalam hubungan kegiatan-kegiatan adalah bahwa untuk dua kegiatan yang bersifat sementara, kardinalitas minimum untuk kegiatan pertama adalah 0, karena pada saat kejadiannya, kegiatan lainnya belum terjadi. Sering kali, tetapi tidak selalu, kardinalitas minimum untuk kegiatan kedua adalah 1, menunjukkan bahwa kegiatan pertama harus terjadi terlebih dahulu.

Contohnya, bagi perusahaan yang menjual baik melalui katalog ataupun melalui Website, pesanan pelanggan (kegiatan 1) mendahului pengiriman ke pelanggan (kegiatan 2). Akan tetapi, kadang kala kedua kegiatan tersebut tidak perlu terjadi. Contohnya, PERUSAHAAN menerima pesanan dari pelanggan korporatnya sebelum mengirim barang dagangan mereka. Akan tetapi, penjualan di dalam toko bagi para pelanggan yang langsung datang ke toko tidak dimulai dengan suatu kegiatan pesanan apa pun.

Konsekuensinya, dalam Gambar DD-6, kardinalitas minimum yang berhubungan dengan kegiatan kedua (penjualan) dalam hubungan pesanan pelanggan-penjualan juga bernilai 0.

Gambar-5-0006-aa-dd-6Gambar DD-6.
Gambar DD-6 memperlihatkan bagaimana diagram REA Perancang database untuk siklus pendapatan PERUSAHAAN setelah adanya penambahan informasi mengenai kardinalitas hubungan. Langkah berikuhnya adalah mengimplementasikan model ini dalam database relasional.

Mengimplementasikan Diagram REA dalam Database Relasional.

reaKetika diagram REA telah selesai dibangun, diagram ini dapat dipergunakan untuk mendesain database reiasional 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 (nsert), dan penghapusan (delete).

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 (many-to-many).
  2. Memberikan atribut ke tabel yang tepat.
  3. Menggunakan kunci luar (foreign key) untuk mengimplementasikan hubungan satu¬ke-satu (one-to-one) dan hubungan satu-ke-banyak (one-to-many).

Langkah 1: Membuat Tabel untuk Setiap Entitas dan Hubungan M:N

Database yang didesain dengan tepat memiliki sebuah tabel untuk setiap entitas yang berbeda, dan untuk setiap hubungan banyak-ke-banyak (many-to-many) dalam diagram REA.

Dalam kasus siklus pendapatan PERUSAHAAN yang diperlihatkan di Gambar DD-6, terdapat tujuh entitas berbeda, yaitu: persediaan, kas,, pesanan pelanggan, penjualan, penerimaan kas, pegawai, dan pelanggan. Walaupun diagram REA tersebut berisi entitas terpisah untuk staf penjualan dan kasir, hanya satu tabel, yaitu pegawai, yang diperlukan karena PERUSAHAAN perlu mengetahui informasi yang identik mengenai staf penjualan dan kasirnya, seperti nama, tanggal lahir, tanggal dipekerjakan, dan tingkat gaji.
Gambar DD-6Gambar-5-0006-aa-dd-6

Gambar DD-6 juga menunjukkan tiga hubungan M:N (pesanan pelanggan-persediaan, penjualan-persediaan, dan penjualan-penerimaan kas). Oleh sebab itu, 10 tabel akan dibuat untuk mengimplementasikan diagram REA yang diperlihatkan dalam Gambar DD-6-satu tabel untuk tiap ketujuh entitas dan satu tabel untuk setiap ketiga hubungan M:N.

Merupakan langkah yang baik untuk memberikan nama yang sama seperti entitas yang diwakili untuk setiap tabel. Akan tetapi, tabel yang menunjukkan hubungan M:N sering kali diberi judul dengan cara memberi tanda hubung di antara kedua nama entitas yang dihubungkannya. Jadi, sehubungan dengan Gambar kita akan membuat tabel pesanan pelanggan-persediaan, penjualan-persediaan, dan penjualan-penerimaan kas, untuk semua hubungan M:N tersebut.
Tabel DD-1gbr-table-5-100011-a

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(1)

Langkah berikutnya adalah menetapkan atribut mana yang seharusnya dimasukkan ke
dalam setiap tabel. Selama proses pembuatan model data, pemakai dan manajemen akan mengidentifikasi fakta-fakta yang ingin mereka kumpulkan.

gbr-table-5-100011-aTabel DD-1 mendaftar fakta–fakta yang diketahui Perancang database penting untuk database siklus pendapatan PERUSAHAAN yang sedang didesainnya.gbr-table-5-100012-a-dd-8

Gambar DD-8
Tabel-tabel yang Dibuat untuk Mengimplementasikan Diagram REA dalam Gambar DD-6Gambar-5-0006-aa-dd-6

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(2)

Gambar DD-8.gbr-table-5-100012-a-dd-8
Menetapkan Kunci Utama (primary key) Setiap tabel di dalam database relasional harus memiliki sebuah kunci utama, yang terdiri dari sebuah atribut, atau kombinasi dari beberapa atribut, yang secara unik mengidentifikasi setiap baris dalam tabel tersebut.

Perusahaan sering kali membuat pengidentifikasi numeris untuk sumber daya, kegiatan dan pelaku tertentu. Pengidentifikasi numeris ini merupakan kandidat yang baik untuk menjadi kunci utama. Contohnya, PERUSAHAAN dapat mempergunakan nomor faktur penjualan sebagai kunci utama tabel penjualan, dan nomor pelanggan sebagai kunci utama dalam tabel pelanggan.

Umumnya, kunci utama dalam suatu tabel yang mewakili sebuah entitas merupakan atribut tunggal. Akan tetapi, kunci utama untuk tabel hubungan M:N selalu terdiri dari dua atribut yang mewakili kunci utama dari setiap entitas yang dihubungkan dalam hubungan tersebut.

Contohnya, kunci utama tabel penjualan-persediaan terdiri dari baik nomor faktur penjualan (yang merupakan kunci utama dalam entitas penjuatan) dan nomor barang (yang merupakan kunci utama dalam entitas persediaan). Kunci utama dengan atribut lebih dari satu semacam ini disebut sebagai kunci yang saling berhubungan (concatenated key).

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(3)

Menetapkan atribut lain ke tabel yang tepat. Atribut tambahan selain kunci utama dimasukkan dalam setiap tabel untuk memenuhi persyaratan pemrosesan transaksi dan kebutuhan informasi manajemen.
Gambar DD-8gbr-table-5-100012-a-dd-8

Gambar DD-8 memperlihatkan atribut-atribut yang ditetapkan Perancang database keberbagai tabel yang dibuatnya untuk mengimplementasikan diagram REA siklus pendapatan PERUSAHAAN. Beberapa atribut tersebut, seperti tanggal dan jumlah tiap penjualan, merupakan informasi penting untuk memproses transaksi secara akurat dan lengkap.

Atribut-atribut tersebut juga penting untuk pembuatan laporan keuangan dan manajerial. Atribut lainnya disimpan karena mereka memfasilitasi manajemen yang efektif atas sumber daya, kegiatan, dan pelaku perusahaan. Contohnya. Manajemen dapat menggunakan data mengenai waktu saat terjadinya transaksi penjualan untuk mendesain jadwal kerja staf.

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(4)

Atribut Non-Kunci (nonkey atribute) dalam Tabel Hubungm M:N Mari kita pelajari penempatan atribut yang bukan berupa kunci dalam setiap inbel M:N, untuk melihat alasan mengapa mereka harus disimpan dalam tabel-tabel. tersebut.

atribute-urlPertama-tama bayangkanlah tabel penjualan-penerimaan kas. Ingatlah kembali bahwa PERUSAHAAN mengizinkan para pelanggannya untuk membuat beberapa pembelian secara kredit, dan untuk rnelakukan pembayaran secara cicilan atas sisa utang mereka. Jadi, satu pembayaran dari pelanggan mungkin perlu diaplikasikan ke beberapa faktur penjualan berbeda (transaksi penjualan).

Oleh sebab itu, atribut “jumlah yang dibebankan” tidak dahat ditempatkan dalam tabel penerimaan kas karena hal ini akan menimbulkan nilai lebih dari satu, yang akhirnya akan melanggar persyaratan dasar database relasional yaitu setiap atribut dalam setiap baris harus bernilai tunggal (yaitu, persyaratan bahwa setiap tabel haruslah berupa flat file). Atribut “jumlah yang dibebankan” juga tidak dapat ditempatkan dalam tabel penjualan, karena kemungkinan pembayaran secara cicilan menimbulkan situasi kemungkinan adanya nilai ganda suatu atribut. Atribut “jumlah yang dibebankan” merupakan fakta mengenai pembayaran pelanggan dan transaksi penjualan. Oleh sebab itu, termasuk dalam tabel M:N yang menghubungkan dua kegiatan tersebut.

Sekarang pelajari tabel penjualan-persediaan. Setiap baris dalam tabel ini berisi informasi mengenai suatu barang dalam faktur penjualan. Walaupun banyak pelanggan PERUSAHAAN yang hanya membeli satu jenis produk dari berbagai jenis produk yang dijual PERUSAHAAN, beberapa penjualan ke beberapa pelanggan melibatkan jumlah yang besar.

Konsekuensinya, PERUSAHAAN harus mencatat jumlah yang dijual untuk setiap harang. Akan tetapi, setiap kegiatan penjualan dapat melibatkan lebih dari satu barang persediaan. Jadi, atribut “jumlah yang dijual” dapat memiliki beberapa nilai dalam satu :aktur penjualan. Sebagai tambahan, PERUSAHAAN melacak persediaan melalui jenis barangnya, bukan melalui identifikasi tertentu.

Oleh sebab itu, suatu barang, seperti monitor 21 inci dengan Merek X, dapat dijual dalam beberapa transaksi penjualan. Konsekuensinya, “jumlah yang dijual” tidak dapat dipergunakan sebagai atribut dalam tabel persediaan, karena dapat memiliki beberapa nilai. Oleh sebab itu, dengan pertimbangan bahwa atribut “jumlah yang dijual” dapat diaplikasikan ke suatu barang yang termasuk dalam transaksi penjualan tertentu, maka atribut ini termasuk dalam tabel hubungan M:N yang menghubungkan kedua tabel tersebut.

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(5)

Data harga
Di dalam Gambar DD-8, perhatikan bahwa informasi mengenai harga disimpan sebagai atribut baik dalam tabel persediaan, maupun tabel penjualan-persediaan. Tabel persediaan menyimpan daftar harga yang disarankan untuk setiap barang. Harga tersebut umumnya tidak berubah dalam suatu periode fiskal. Tabel penjualan-persediaan menyimpan harga penjualan yang sebenarnya, yang dapat berbeda-beda selama masa berjalan periode fiskal, sebagai hasil dari adanya promosi penjualan.
Gambar DD-8gbr-table-5-100012-a-dd-8

Langkah 2: Menetapkan Atribut untuk Setiap Tabel(6)

Data kumulatif
Gambar DD-8.gbr-table-5-100012-a-dd-8
Gambar DD-8 juga memasukkan beberapa atribut, seperti “jumlah yang dimiliki” dalam tabel persediaan dan “saldo rekening” dalam tabel pelanggan, yang mewakili data kumulatif.

Secara teoritis, tidaklah penting untuk menyimpan atribut-atribut tersebut secara terpisah dalam database, karena sistem tersebut dapat menghitungnya apabila diperlukan. Contohnya, informasi mengenai jumlah yang dijual untuk setiap barang, disimpan dalam tabel penjualan-persediaan. Informasi mengenai jumlah yang dibeli akan disimpan dalam tabel yang hampir sama untuk menghubungkan pembelian dan persediaan.

Dalam rangka menetapkan jumlah yang dimiliki, SIA dapat langsung menghitung perbedaan antara jumlah yang dijual dengan jumlah yang dibeli. Dengan cara yang hampir sama, tabel penerimaan kas dan pembayaran kas berisi informasi mengenai arus masuk dan keluar kas. SIA dapat menghitung perbedaan tersebut untuk menampilkan saldo terakhir dalam akun kas.

Akan tetapi, menyimpan secara eksplisit jumlah total dan saldo dapat meningkatkan waktu respons atas permintaan informasi, yang menjelaskan alasan mengapa Gambar DD-8 memperlihatkan beberapa atribut ringkasan semacam ini untuk tabel-tabel yang sesuai. Akan tetapi, hal ini seharusnya dilakukan hanya bila DBMS memiliki kemampuan untuk secara otomatis memperbarui nilai ringkasan ini ketika suatu kegiatan baru terjadi; jika tidak, nilai ringkasan tersebut biasanya tidak benar.

Langkah 3: Menggunakan Kunci Luar (Foreign Key) untuk Mengimplementasikan Hubungan 1:1 dan 1:N…(1)

many2manyHubungan M: N harus diimplementasikan sebagai tabel-tabel terpisah untuk membuatnya menjadi database relasional yang terstruktur baik, walaupun hubungan 1:1 dan 1:N juga dapat diimplementasikan sebagai tabel-tabel terpisah, biasanya lebih efisien apabila mengimplementasikan mereka dengan menggunakan kunci luar.

1-1-urlIngatlah bahwa kunci luar adalah atribut suatu entitas yang sebenarnya juga merupakan kunci utama dari entitas lain. Contohnya, atribut “nomor pelanggan” dapat muncul baik dalam tabel pelanggan maupun penjualan. Atribut itu dapat menjadi kunci utama dalam tabel pelanggan, tetapi merupakan kunci luar dalam tabel penjualan.

Langkah 3: Menggunakan Kunci Luar (Foreign Key) untuk Mengimplementasikan Hubungan 1:1 dan 1:N…(2)

Hubungan Satu-ke-Satu (one-to-one relationships) 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. Demi mendesain database yang terstruktur baik, pilihan tabel mana yang akan dipergunakan tmtuk menempatkan kunci luar merupakan pilihan individual. Analisis yang dilaksanakan dengan hati-hati atas kardinalitas minimum hubungan tersebut dapat memberikan saran pendekatan mana yang tampaknya lebih efisien.Gambar-5-0007-aa-dd-7

Gambar DD-7.
Lihatlah hubungan l:l antara penjualan dan pembayaran pelanggan yang ditunjukkan dalam Gambar DD-7, Panel A. Kardinalitas minimum untuk kegiatan penjualan adalah 0, menunjukkan adanya penjualan secara kredit, sedangkan kardinalitas minimum untuk kegiatan penerimaan kas adalah 1, menunjukkan bahwa pembayaran dari pelanggan hanya terjadi setelah adanya penjualan (contoh tidak ada pembayaran di muka).

Pada kasus ini, memasukkan nomor faktur penjualan (kunci utama dalam kegiatan penjualan) sebagai kunci luar dalam kegiatan penerimaan kas, mungkin lebih efisien karena nantinya hanya satu tabel itu saja yang perlu diakses dan diperbarui untuk memproses data mengenai tiap pembayaran dari pelanggan. Selanjutnya, untuk hubungan 1:1 antara dua kegiatan yang berurutan, memasukkan kunci utama dari suatu kegiatan yang pertama kali terjadi sebagai kunci luar dalam kegiatan yang terakhir terjadi, dapat meningkatkan pengendalian internal.

Langkah 3: Menggunakan Kunci Luar (Foreign Key) untuk Mengimplementasikan Hubungan 1:1 dan 1:N…(3)

Hubungan Satu-ke-Banyak (one-to-many) Sebagaimana dengan hubungan l:l, hubungan 1:N juga dapat diimplementasikan dalam database relasional dengan menggunakan kunci luar.

gbr-table-5-100012-a-dd-8Dalam rangka melakukan hal ini, tempatkan kunci utama dari suatu entitas yang memiiiki kardinalitas maksimum N sebagai kunci luar dalam entitas yang memiliki kardinalitas maksimum 1. Contohmya, dalam Gambar DD-8, kunci utama tabel staf penjualan dan pelanggan dimasukkan sebagai kunci luar dalam tabel penjualan. Dengan cara yang hampir sama, kunci utama dalam tabel kas, pelanggan, dan kasir dimasukkan sebagai kunci luar dalam tabel penerimaan kas.
Gambar DD-7.Gambar-5-0007-aa-dd-7

Apabila kita akan membuat tabel untuk Gambar DD-7, Panel B, atribut “nomor faktur penjualan” akan muncul sebagai kunci luar dalam tabel penerimaan kas. Akan tetapi, apabila kami akan membuat tabel untuk Gambar DD-7, Panel C, atribut “nomor pengiriman uang” akan muncul sebagai kunci luar dalam tabel penjualan.

Kemungkinan pengecualian atas peraturan umum untuk mengimplementasikan hubungan 1:N ini dapat terjadi apabila hubungan tersebut terdiri dari dua entitas kegiatan yang berurutan, dan kegiatan yang biasanya terjadinya pertama kali juga merupakan kegiatan yang dapat terjadi beberapa kali dalam hubungan tersebut. Pada kasus ini, mengimplementasikan hubungan tersebut sebagai tabel terpisah dapat meningkatkan pengendalian internal.

Pemeriksaan Kelengkapan (Completeness Check)…(1)

Untuk mengimplementasikan model data REA dari siklus pendapatan PERUSAHAAN yang ditunjukkan pada Gambar DD-6, Perancang database telah membuat serangkaian tabel seperti yang ditampilkan pada Gambar DD-8.
Gambar DD-8.gbr-table-5-100012-a-dd-8
Akan tetapi, ketika meninjau daftar fakta (Tabel DD-1) yang disimpan dalam database, Perancang database melihat bahwa perancang database perlu menentukan tabel database untuk fakta-fakta yang berhubungan dengan kunjungan penjualan (sales call). Perancang database ingat bahwa Manajemen ingin mulai mengumpulkan informasi tambahan mengenai kinerja staf penjualan luar, yang kerjanya mengunjungi pelanggan korporat.
Tabel DD-1.gbr-table-5-100011-a

Secara khusus, mereka ingin tahu berapa banyak pelanggan yang didatangi oleh setiap tenaga penjual setiap hari, produk apa yang didemonstrasikan oleh tenaga penjual tersebut, dan hasil dari kunjungan tersebut. Perancang database menyadari bahwa perancang database harus memodifikasi model dari REA yang ada dan mungkin membuat tabel tambahan untuk menampung hal-hal tersebut.

Pemeriksaan Kelengkapan (Completeness Check)…(2)

Perancang database membuat suatu entitas kegiatan, yang disebutnya “mengunjungi pelanggan (call on custorner).” Perancang database menghubungkannya dengan entitas tenaga penjual dan pelanggan untuk menunjukkan hubungan pelaku-kegiatan (agent-event relationship) yang relevan.phone_cartoon

Setiap kunjungan penjualan (sales call) mencakup satu tenaga penjual yang berbicara dengan satu pelanggan. Selama satu tahun, setiap tenaga penjual akan melakukan banyak kunjungan penjualan dan setiap pelanggan mungkin akan mendapatkan lebih dari satu kali kunjungan. Oleh sebab itu,

Perancang database menetapkan model hubungan pelaku-kegiatan sebagai 1:N, dengan kardinalitas minimum dan maksimum yang sama untuk setiap entitas seperti yang digunakan dalam hubungan pelaku-kegiatan (agent-event relationship) yang mencakup kegiatan pesanan pelanggan.

Pemeriksaan Kelengkapan (Completeness Check)…(3)

Selama kunjungan penjualan, seorang tenaga penjual biasanya membicarakan dan mendemonstrasikan lebih dari satu produk. Sama juga halnya, suatu produk dapat didemonstrasikan dalam berbagai kunjungan penjualan. Oleh sebab itu, Perancang database menetapkan model hubungan mengunjungi pelanggan-persediaan sebagai M:N, dengan kardinalitas minimum dan maksimum yang sama dengan yang digunakan dalam hubungan pesanan pelanggan-persediaan (customer order-inventory relationship).

Jika kunjungan penjualan berhasil, pelanggan akan memesan produk PERUSAHAAN. Namun demikian, tidak setiap kunjungan akan menghasilkan pesanan. Beberapa pelanggan mungkin tidak langsung memesan setelah kunjungan pertama, melainkan setelah beberapa kali kunjungan. Untuk tujuan evaluasi kinerja, Manajemen meminta Perancang database menganggap pesanan tersebut sebagai hasil dari kunjungan penjualan yang, paling terakhir.

Lebih lanjut, menurut Manajemen, ada beberapa pelanggan korporat yang memesan setelah menerima katalog produk PERUSAHAAN atau setelah mengunjungi Website PERUSAHAAN. Oleh sebab itu, Perancang database menetapkan model hubungan mengunjungi pelanggan-pesanan pelanggan sebagai 1:1, dengan kardinalitas minimum 0 untuk setiap kegiatan.
Gambar DD-9.Gambar-5-0008-aa-dd-9

Gambar DD-9 menunjukkan revisi dari diagram REA yang dibuat oleh Perancang database, dan Gambar DD-10 menunjukkan isi dari dua tabel baru yang dibuat oleh Perancang database. Perancang database juga memodifikasi tabel pesanan pelanggan pada Gambar DD-8 untuk memasukkan atribut “nonor kunjungan” sebagai kunci luar yang menghubungkan kegiatan tersebut dengan kegiatan mengunjungi pelanggan.

Gambar DD-10.Gambar-5-0009-a-1a-dd-10

Pemeriksaan Kelengkapan (Completeness Check)…(4)

Bukanlah hal yang aneh jika Perancang database memodifikasi diagram REA agar dapat menampung fakta tambahan. Bahkan, sering kali berguna untuk membuat tabel bahkan sebelum menyelesaikan diagram REA, dan kemudian memodifikasi diagram agar mencakup entitas tambahan dan hubungan yang ada dalam proses penempatan atribut dalam tabel.
Gambar DD-8.gbr-table-5-100012-a-dd-8

Gambar DD-9.Gambar-5-0008-aa-dd-9

Pada tahap ini, Perancang database telah hampir menyelesaikan desain database siklus pendapatan PERUSAHAAN. Menurutnya, Gambar DD-8, DD-9, dan DD-10 telah memenuhi persyaratan dasar untuk mendesain database relasional yang terstruktur dengan baik. Persyaratan dasar tersebut adalah:

  1. Setiap tabel memiliki kunci utama.
  2. Atribut non-kunci lainnya dalam setiap tabel merupakan fakta mengenai sesuatu yang ditugaskan oleh kunci utama, atau merupakan kunci luar yang digunakan untuk menghubungkan tabel tersebut dengan tabel lainnya.
  3. Setiap atribut dalam setiap tabel bernilai tunggal yaitu: setiap tabel adalah flat-file atau ‘file datar’).

Gambar DD-10.Gambar-5-0009-a-1a-dd-10
Perhatikan bahwa rangkaian tabel pada Gambar DD-8 dan DD-10 merupakan hasil yang alami dari penggunaan model data REA. Oleh sebab itu, rangkaian tersebut tidak hanya memenuhi persyaratan database yang tepat, tetapi juga menunjukkan semantik/ hubungan dasar mengenai bagaimana PERUSAHAAN nelaksanakan aktivitas bisnis siklus pendapatan.

Memadukan Diagram REA Antar-Siklus……(1).

Seperti yang telah disebutkan, untuk mendesain SIA yang dapat berfungsi untuk PERUSAHAAN, Perancang database harus mengembangkan diagram REA untuk siklus tambahan dan kemudian memadukan diagram-diagram tersebut.
Gambar DD-11.Gambar-5-0009-a-2a-dd-11

Gambar DD-11 menunjukkan diagram REA yang pertama perancang database kembangkan untuk siklus pengeluaran PERUSAHAAN. Diagram ini hanya mencakup kegiatan pertukaran ekonomi (bandingkan dengan Gambar DD-3).
Gambar DD-3Gambar-5-0003-a-dd-3

Perancang database kemudian menggabungkan diagram siklus pendapatan dan pengeluaran agar Manajemen mendapat gambaran umum tingkat tinggi mengenai hal-hal yang akan dimasukkan dalam SIA mereka. Gambar DD-12 menampilkan hasil perpaduan diagram REA.

ASAL MULA DAN PERKEMBANGAN SOSIOLOGI.

Asal Usul Sosiologi
Dari bukti peninggalan bersejarah, manusia prasejarah hidup secara berkelompok. Aristoteles mengatakan bahwa manusia adalah zoon politicon (makhluk sosial). Sejak dilahirkan manusia mengalami ketergantungan kepada manusia lain. Dalam ketergantungannya dia mengalami proses bersosialisasi. Manusia dalam kelompoknya mengembangkan cara hidup tertentu untuk mempertahankan hidupnya. Cara hidup ini disebut kebudayaan.Sociology-tree

  • Sosiologi merupakan salah satu rumpun dalam ilmu sosial.
  • Sosiologi lahir dari kekuatiran seorang ahli filsafat Perancis yang bernama Auguste Comte terhadap maraknya anarki (tidak dipatuhinya aturan) dalam masyarakat Perancis setelah pecahnya Revolusi Perancis.
  • Lahirnya sosiologi tercatat pada tahun 1842 melalui karya Auguste Comte yang berjudul Cours de Philosophie Positive.
  • Auguste Comte membagi Sosiologi menjadi dua bagian besar:
    • Statika Sosial (Social Static), yang mewakili stabilitas & kemantapan.
    • Dinamika Sosial (Social Dynamics) yang mewakili perubahan.