Selasa, 22 November 2011

DATABASE


PEMBUATAN MODEL DATA DAN DESAIN DATABASE
Model Data

Model data digunakan untuk mendeskripsikan rancangan basis data pada level lojik. Ada beberapa model data, antara lain:1. Model Entity-RelationalshipPada model ini suatu basis data merupakan representasi dari sekumpulan objek dasar dan relasi yang menghubungkan entitas.2. Model RelasionalModel relasional menggunakan bentuk table-tabel untuk mempresentasikan data dan relasinya. Model ini menempati level abstraksi yang lebih rendah daripada model E-R karena sifatnya langsung menunjukkan bentuk record yang akan dikirimkan dalam suatu file.3. Selain model tersebut terdapat model-model lain seperti objectobject-oriented, object-relasional dsb.Dalam model data juga terdapat konsep yang penting, yaitu:• Constraint, yaitu batasan yang harus dipenuhi dalam suatu struktur basis data.• Key, berfungsi mengidentifikasikan atribut khusus yang membedakan setiap entitas. Contoh: primary key, foreign key.• Query adalah statemen yang digunakan user mengakses basis data.

Tujuan desain database.

Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di simpanan luar komputer dan digunakan perangkat lunak tertentu untuk memanipulasinya. Database merupakan salah satu komponen yang penting di sistem informasi, karena berfungsi sebagai basis penyedia informasi bagi para pemakainya. Penerapa database dalam sistem informasi disebut dengan database system. Sistem basis data (database system) ini adalah suatu sistem informasi yang mengintegrasikan kumpulan dari data yang saling berhubungan satu dengan lainnya dan membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di dalam suatu organisasi.

Tujuan dari desain database adalah untuk menentukan data-data yang  dibutuhkan dalam sistem,  
sehingga informasi yang dihasilkan dapat terpenuhi dengan baik. Terdapat beberapa alasan mengapa desain database perlu untuk dilakukan, salah satu adalah untuk menghindari pengulangan data.

Adapun metode untuk meminimasi pengulangan data (data redudancy) antara
lain dengan :
a. Normalisasi. Adalah proses yang berkaitan dengan model data relational untuk mengorganisasi himpunan data dengan ketergantungan dan keterkaitan yang tinggi atau erat. Hasil dari proses normalisasi adalah himpunan himpunan data dalam bentuk normal Kegunaan normalisasi :
a. Meminimasi pengulangan informasi.
b. Memudahkan indentifikasi entiti / obyek.

b. Dekomposisi lossless.
Diperlukan jika ada indikasi bahwa tabel yang kita buat tidak baik (terjadi pengulangan informasi, potensi inkonsistensi data pada operasi pengubahan, tersembunyinya informasi tertentu) dan diperlukan supaya  jika tabel-tabel yang didekomposisi kita gabungkan kembali dapat menghasilkan tabel awal sebelum didekomposisi, sehingga diperoleh tabel  yang baik. 
c. ERD (Entity Relationship Diagram).
d. Menentukan kardinalitas relasi.

Terdapat beberapa pengertian tentang key sehubungan dengan normalisasi dan ERD, antara lain :
a. Superkey adalah gugus dari sejumlah atribut entiti yang dapat digunakan untuk mengidentifikasi obyek secara unik.
b. Candidate key adalah superkey dengan jumlah atribut minimal dan dapat berdiri sendiri.
c. Primary key adalah superkey yang dipilih oleh desainer atau administrator basis data.

Langkah-langkah desain database.

Untuk tahap desain database yang perlu dilakukan adalah mengidentifikasi terlebih dahulu file-file yang diperlukan dalam sistem informasi yang dibangun. File-fila database yang dibutuhkan oleh system dapat dilihat pada desain model yang digambarkan dalam bentuk diagram arus data (DFD).

Langkah-langkah desain database secara umum adalah sebagai berikut :
a. Menentukan kebutuhan file database untuk sistem yang baru. File yang dibutuhkan dapat ditentukan dari DAD sistem baru yangtelah  dibuat.  

b. Menentukan parameter daru file database.
Setelah file-file yang dibutuhkan telah dapat ditentukan, maka parameter  dari file selanjutnya juga dapat ditentukan. Parameter tersebut, meliputi: 

• Tipe dari file : file induk, file transaksi, file sementara (temporary).
• Media dari file : hardisk, disket, pita magnetik, CD.
• Organisasi dari file : fila sequential, random, berindek.
• Field kunci dari file.

Proses Desain Terdiri Dari Langkah - Langkah Berikut :

Tentukan tujuan dari database Anda - ini akan membantu mempersiapkan Anda untuk langkah-langkah yang tersisa. Mencari dan mengatur informasi yang diperlukan - Kumpulkan semua jenis informasi yang Anda mungkin ingin merekam dalam database, seperti nama produk dan nomor pesanan.
Bagilah informasi ke dalam tabel - Membagi item informasi Anda ke dalam entitas besar atau subjek, seperti Produk atau Pesanan.
Setiap subyek kemudian menjadi sebuah tabel. Belok item informasi ke dalam kolom - Tentukan informasi apa yang Anda ingin menyimpan di setiap tabel. Setiap item menjadi lapangan, dan ditampilkan sebagai kolom dalam tabel. Sebagai contoh, sebuah tabel Karyawan mungkin mencakup bidang-bidang seperti Nama terakhir dan Tanggal Sewa.

Tentukan kunci primer - Pilih kunci primer masing-masing meja. Kunci utama adalah kolom yang digunakan untuk secara unik mengidentifikasi setiap baris. Sebuah contoh mungkin Produk ID atau ID Pesanan.
Mengatur hubungan tabel - Lihatlah di setiap meja dan memutuskan bagaimana data dalam satu tabel berhubungan dengan data dalam tabel lainnya. Menambahkan kolom untuk tabel atau membuat table baru untuk memperjelas hubungan, seperti yang diperlukan.
Pertajam desain Anda - Menganalisis desain Anda untuk kesalahan. Membuat tabel dan menambahkan beberapa catatan data sampel. Lihat jika Anda bisa mendapatkan hasil yang Anda inginkan dari tabel Anda.
 Melakukan penyesuaian terhadap desain, sesuai kebutuhan. Menerapkan aturan normalisasi - Terapkan aturan normalisasi data yang untuk melihat apakah tabel Anda terstruktur dengan benar. Melakukan penyesuaian table.

DIAGRAM HUBUNGAN ENTITAS


Diagram Hubungan Entitas atau entity relation diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang hubungannya satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Chen mencoba merumuskan dasar-dasar model dan setelah itu dikembangkan dan dimodifikai oleh Chen dan banyak pakar lainnya. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas.

Kegunaan

Diagram hubungan entitas digunakan untuk mengkonstruksikan model data konseptual, memodelkan struktur data dan hubungan antar data dan mengimplementasikan basis data secara logika maupun secara fisik dengan DBMS (Database Management system). Dengan diagram hubungan entitas ini kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. Diagram hubungan entitas dapat membantu dalam menjawab persoalan tentang data yang diperlukan dan bagaimana data tersebut saling berhubungan.

Symbol

Entitas

Entitas adalah suatu objek yang dapat didefinisikan dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Sebagai contoh pelanggan, pegawai dll. Seandainya A adalah seorang pegawai maka A adalah isi dari pegawai, sedangkan jika B adalah seorang pelanggan maka B adalah isi dari pelanggan. Karena itu harus dibedakan entitas sebagai bentuk umum dari deskripsi tertentu dan isi entitas seperti A dan B dalam contoh di atas.
  • Fisik Entitas
Entitas yang bersifat fisik. Contoh : pegawai, guru, dan karyawan.
  • Konsep Entitas
Entitas yang tidak bersifat konsep. Contoh: gaji,sekolah

  • Entitas Kuat
Entitas yang mempunyai atribut kunci. Entitas ini bersifat mandiri, keberadaanya tidak bergantung pada entitas lainnya. Percepatan entitas kuat selalu memiliki karakteristik yang unik disebut identifier (sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain).
Kebanyakan entitas dalam suatu organisasi dapat digolongkan sebagai entitas kuat (strong entity) yaitu entitas yang mandiri, yang keberadaannya tidak bergantung pada keberadaan entitas yang lainnya. Instansiasi entitas kuat selalu memiliki karakteristik yang unik (dinamakan identifier atau sering disebut sebagai atribut pengidentifikasi) yaitu, sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain.
  • Entitas Lemah
Entitas yang tidak mempunyai atribut kunci. Entitas lemah diidentifikasikan dengan menghubungkan entitas tertentu dari tipe entitas yang lain ditambah atribut dari entitas lemah. Tipe entitas lain yang dipakai untuk mengidentifikasikan suatu entitas lemah disebut identifying owner dan relasi yang menghubungkan entitas lemah dengan owner disebut identifying relationship Contoh entitas pegawai

Atribut

Entytas mempunyai elemen yang disebut atribut, dan berfungsi mendekripsikan karakter dari entitas. Atribut adalah properti atau karakteristik yang dimiliki oleh suatu entitas dimana properti atau karakteristik itu bermakna atau berarti bagi organisasi atau perusahaan, misalnya untuk pencatatan data pegawai di suatu instansi, entitas pegawai mungkin memiliki atribut-atribut nomor induk pegawai, nama, alamat, nomor telepon, gaji pokok dan lainnya. Setiap diagram hubungan entitas bisa terdapat lebih dari satu atribut. Atribut digambarkan dalam bentuk elips.Entitas memiliki himpunan atribut yang berasosiasi dengannya.

Macam-Macam Atribut

Atribut terdiri dari atribut sederhana atau atormis, atribut komposit, atribut berharga tunggal. atribut null-value, atribut kunci, atribut bernilai banyak dan atribut turunan. Masing-masing atribut memiliki ciri tersendiri. Atribut atormis tidak dapat dibagi-bagi menjadi atribut yang sederhana. Atribut komposit adalah atribut yang dapat dipecah menjadi atribut lain, misalnya atribut alamat dapat dipecah menjadi atribut jalan, kecamatan, kelurahan,kota serta kode pos. atribut komposit digunakan pada database untuk kemudahan menjawab pertanyaan-pertanyaan tertentu dalam database atribut berharga tunggal mempunyai satu harga untuk entitas tertentu, atribut null-value tidak mempunyai nilai, atribut kunci merupakan atribut unik dari suatu entitas dan nilai dari atribut kunci akan berbeda untuk masing-masing entitas.atribut bernilai banyak adalah atribut yang entitasnya lebih dari satu, misalnya adalah atribut hobi. Atribut hobi ini bisa terdiri dari atribut berenang, atribut voli dan atribut berbelanja.atribut turunan merupakan atribut yang didapat dari atribut lainnya.Pada entitas pegawai terdapat atribu nomor induk yang biasanya terkandung nilai tahun masuk, misalnya NIP =5195025, berarti Pegawai yang bersangkutan masuk pada tahun 1995), maka jika kita tambahkan atribut Lama_Kerja pada entitas Pegawai, atribut Lama_Kerja dapat kita hitung dengan cara mengurangkan tahun dimana perhitungan dilakukan (katakanlah 2005) dengan tahun mahasiswa yang bersangkutan masuk ke Instansi (Hasilnya 10 tahun).

Hubungan Relasi

Relasi adalah hubungan antara suatu himpunan dengan himpunan entitas yang lainnya. Pada penggambaram diagram hubungan entitas, relasi adalah perekat yang menghubungkan suatu entitas dengan entitas lainnya. Relasi merupakan hubungan yang berarti antara suattu entitas dengan entitas lainnya. Frasa ini berimplikasi bahwa relasi mengijinkan untuk menjawab pertanyaan-pertanyaan yang berkaitan dengan hubungan suatu entits dengan lainya. Hubungan dibedakan antar bentuk hubungan antar entitas dengan isi. Misalnya kasus hubungan antara entitas pegawai dan entitas bagian adalah jam kerja, sedangkan isi hubungannya dapat berupa total jam kerja, gaji lembur. Relasi digambarkan dalam bentuk intan. Pada model data relasi hubungan antar data dihubungkan dengan kunci relasi. Tipe hubungan di antara beberapa buah tipe entitas adalah kumpulan dari relasi di antara entitas-entitas dari tipe entitas tersebut.

Karakteristik dari Relasi

Relasi mempunyai karakteristik terdiri dari kumpulan tuple-tuple, urutan dari tuple-tuple merepresenrasikan data pada tingkat abstrak logis dan urutam data dianggap penting.

Batas Keikutsertaan ( Participation onstrain)

Batas keikutsertaan dari relasi terdiri dari total, parsial, satu ke satu, satu ke banyak atau banyak ke satu, dan banyak ke banyak. Batas total menunjukkan pada semua elemen, misalnya semua karyawan harus bekerja pada suatu departemen. Batas parsial menunjukkan pada suatu entitas tertentu hanya berhubungan dengan satu entitas yang lain. Batas satu ke satu menunjukkan pada atribut kunci pada derajat relasi dapat ditempatkan pada salah satu entitas. Batas satu ke banyak menunjukkan attribut kunci pada derajat relasi ini hanya dapat dimasukan sebagai atribut dari tipe entitas pada sisi N dan batas banyak ke banyak menunjukkan sejumlah entitas berhubungan dengan sejumlah entitas B. Atribut ini harus tetap di nyatakan sebagai atribut relasi dan tidak dapat digabungkan pada salah satu entitas yang terlibat.

Model Relasional

Model relasional adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data. Setiap tabel memiliki sejumlah kolom, setiap kolom memiliki nama yang unik. Model relasional memiliki struktur record berformat tertentu dimana masing-masing isinya memiliki tipe-tipe yang berbeda (Misalnya tipe data untuk nomor induk pegawai adalah string, tentu berbeda dengan tipe data untuk nama [misalnya: string] yang panjangnya tidak ditentukan, bergantung pada komputer tempat aplikasi diimplementasikan.

Model REA


Model REA adalah suatu alat pemodelan konseptual yang khusus dirancang untuk
melengkapi struktur dalam perancangan database SIA. Dalam model REA ditentukan:
entity apa yang harus disertakan dalam database SIA dan bagaimana susunan
relationship antara entity dalam database SIA.
Tipe entity dalam model REA dibedakan dalam tiga kategori, yaitu: Resources,
Events, dan Agents. Resources didefinisikan sebagai sesuatu yang memiliki nilai
ekonomis bagi organisasi tersebut. Contoh resources adalah kas, inventaris, peralatan,
persediaan, gudang, pabrik, dan tanah. Events menunjukkan aktivitas-aktivitas bisnis,
dimana manajemen ingin mengumpulkan informasi untuk tujuan perencanaan atau
pengawasan. Sebagai contoh, aktivitas penjualan akan mengurangi persediaan dan
aktivitas penerimaan kas akan menambah jumlah kas. SIA harus dirancang untuk
memperoleh dan menyimpan informasi aktivitas tersebut. Sedangkan Agents adalah
orang dan organisasi yang berpartisipasi dalam aktivitas dan kepada siapa informasi
diserahkan untuk tujuan perencanaan, pengawasan, dan pengevaluasian. Contoh agent
adalah pengawai, pelanggan, dan pemasok.
Model REA dapat dilihat pada Gambar 8. Setiap entity event dihubungkan dengan
entity resources yang berpengaruh secara langsung atau tidak langsung. Setiap entity
event juga dihubungkan dengan dua entity agent. Internal agent adalah pegawai yang
bertanggung jawab pada resources yang terlibat dalam event. Sedangkan external
agent adalah pihak luar yang berhubungan dengan transaksi. Gambar 7 menunjukkan
event yang mengubah jumlah resource dihubungkan dengan relationship give-to-get ke
event lain yang juga mengubah jumlah resources. Relationship give-to-get
mencerminkan prinsip dasar bisnis, dimana organisasi yang menggunakan resources
dalam aktivitas diharapkan dapat mengubah resource yang lain. Setiap siklus
akuntansi dapat digambarkan dalam relationship give-to-get

Menyusun Diagram REA
Dalam rangka menyusun diagram REA diperlukan informasi tentang: resource,
aktivitas bisnis, agent dan kebijaksanaan perusahaan. Informasi tersebut dapat
diperoleh dengan mewawancarai pihak manajemen. Karena aktivitas perencanaan,
pengawasan, dan pengevaluasian yang ditangani manajemen untuk setiap perusahaan
berbeda. Untuk menggambarkan diagram REA, kertas dibagi tiga kolom, satu kolom
untuk setiap entity. Gunakan kolom kiri untuk resource, kolom tengah untuk event,
dan kolom kanan untuk agent. Penggambaran event sebaiknya diurutkan dari atas ke
bawah berdasarkan urutan aktivitas. Langkah-langkah untuk menyusun diagram REA
suatu siklus transaksi adalah:
a. Tentukan pasangan aktivitas yang saling memberi dalam siklus tersebut.
Seperti tampak dalam Gambar 8, model REA terdiri dari sepasang event, satu
menambah resource dan yang lain mengurangi resource. Tentukan event-event
bisnis yang perlu dimodelkan dalam siklus tersebut.
b. Tentukan resource yang dipengaruhi oleh event dan agent yang berpartisipasi pada
event tersebut.
Setelah event ditentukan, resource yang dipengaruhi oleh event tersebut ditentukan.
Resource digambarkan pada kolom resource. Kemudian gambarkan relationship
Jurnal Akuntansi & Keuangan Vol. 3, No. 1, Mei 2001: 67 - 88
Jurusan Ekonomi Akuntansi, Fakultas Ekonomi - Universitas Kristen Petra
Http://Puslit.Petra.Ac.Id/Journals/Accounting/
78
antara entity resource dengan entity event. Langkah selanjutnya menentukan agent
yang berpartisipasi dalam event. Akan selalu terdapat paling sedikit satu internal
agent dan external agent yang terlibat dalam event. Gambarkan relationship untuk
menunjukkan agent mana yang berpartisipasi dalam event tertentu. Sedapat
mungkin penggambaran agent tidak ganda.
c. Tetapkan cardinality untuk setiap relationship.
Cardinality yang ditentukan harus mencerminkan perusahaan dan praktek bisnis
yang dimodelkan.

Mengimplementasikan Diagram REA pada Database Relational
Setelah diagram REA selesai disusun, diagram REA dapat digunakan untuk
merancang struktur database relational yang baik. Struktur database relational yang
baik memenuhi aturan normalisasi, sehingga tidak ditemukan masalah anomaly
update, insert, dan delete. Untuk mengimplementasikan diagram REA kedalam
database relational dibutuhkan tiga langkah berikut:
a. Buat tabel untuk setiap Entity dan Relationship N:M
Database relational yang memenuhi aturan normalisasi memiliki satu tabel untuk
setiap entity dan setiap relationship N:M. Nama setiap tabel harus sama dengan
nama entity yang diwakilinya. Nama tabel untuk relationship N:M merupakan
gabungan dari dua nama entity yang dihubungkan.
b. Menentukan Attribute untuk Setiap Tabel
Langkah selanjutnya adalah menentukan attribute-atribute yang harus
dicantumkan pada setiap tabel. Setiap tabel harus memiliki primary key yang
membuat unik baris dalam tabel. Primary key untuk tabel relationship N:M berisi
minimal dua attribute, masing-masing mewakili primary key untuk setiap entity
yang dihubungkan dalam relationship tersebut. Sedangkan attribute-attribute lain
yang bukan primary key harus memenuhi aturan:
· Setiap attribute dalam suatu tabel harus memiliki nilai tunggal.
· Setiap attribute dalam suatu tabel harus menggambarkan karakteristik dari
objek yang diwakili oleh primary key, atau attribute tersebut bisa juga berupa
foreign key.
c. Mengimplementasikan Relationship 1:1 dan 1:N
Relationship 1:1 dan 1:N dapat diimplementasikan dengan foreign key. Sebagai
contoh attribute Nomor Pelanggan adalah primary key tabel PELANGGAN,
dimasukkan sebagai attribute pada tabel PENJUALAN, attribute ini dinyatakan
sebagai foreign key pada tabel PENJUALAN.
Dalam database relational, relationship 1:1 dapat diimplementasikan dengan
memasukkan primary key suatu entity sebagai foreign key pada entity lain. Untuk
tujuan normalisasi pemilihan tabel yang menempatkan foreign key tidak ada
ketentuan. Minimum cardinality relationship dapat digunakan untuk menentukan
mana yang lebih efisien.
Relationship 1:1 antara sales dan cash collection yang digambarkan pada Gambar
6(A), minimum cardinality sales event adalah 0, menunjukkan penjualan kredit.
Sedangkan minimum cardinality cash collection event adalah 1, menunjukkan cash
collection hanya terjadi setelah penjualan dilakukan (contoh menunjukkan tidak
adanya uang muka). Untuk masalah tersebut memasukkan nomor invoice sebagai
foreign key dalam cash collection event akan lebih effisien, karena hanya satu tabel
yang diakses dan diperbaharui pada pemrosesan data cash collection event. Selain
itu relationship 1:1 antara dua event yang berhubungan, menyertakan primary key
event yang terjadi lebih dahulu sebagai foreign key pada event yang terjadi
berikutnya. Hal tersebut dilakukan guna meningkatkan internal control.
Relationship 1:N diimplementasikan dalam database relational dengan
menempatkan foreign key. Untuk masalah ini primary key dari entity yang
berperan 1 dalam relationship tampak sebagai foreign key pada entity yang berperan
banyak dalam relationship.

Manfaat Diagram REA
Diagram REA digunakan sebagai dokumentasi pelengkap, yang berguna untuk
mendokumentasi pembentukan advanced SIA. Diagram REA menyediakan dua
informasi database SIA, yang tidak ditunjukkan oleh bentuk dokumentasi lain.
Informasi yang disajikan oleh diagram REA adalah relationship antara data dan
praktek bisnis perusahaan. Diagram REA secara tegas menggambarkan relationship
antara bermacam-macam data item yang disimpan dalam database akuntansi.
Cardinality diagram REA menyajikan informasi yang berguna untuk
menggambarkan prinsip dan kebijaksanaan perusahaan yang dimodelkan.
Menaksirkan dengan benar cardinality diagram REA membutuhkan pemahaman
secara tepat yang menunjukkan kejadian setiap entity. Setiap kejadian dari entity
agent menunjukkan orang atau organisasi tertentu. Hal yang sama setiap kejadian
suatu entity event menunjukkan aktivitas atau transaksi bisnis spesifik

Tidak ada komentar:

Posting Komentar