Selasa, 10 Januari 2012

MODEL DATA DAN DESAIN 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 Database
Buat para Database designer atau Database Administrator (DBA) mendesain database adalah hal yang sudah biasa dilakukan, namun bagaimana buat kita-kita yang baru saja mempelajari database, atau belum pernah sama sekali mendesain database?
Maka disini saya ingin sharing bagaimana langkah-langkah yang baik dan benar untuk mendesain sebuah database:
  1. Analisis Persyaratan: Langkah pertama dalam mendesain sebuah aplikasi database adalah memahami dan mengetahui data yang harus disimpan di dalam database, aplikasi apa yang harus dibangun diatasnya, dan jenis operasi apa yang lebih banyak digunakan, dan subjek untuk melakukan persyaratan yang ada. Dengan kata lain, kita harus tahu apa yang diinginkan pengguna database tersebut. Biasanya ini adalah sebuah proses informal yang melibatkan partisipasi kelompok pengguna, studi tentang lingkungan pegoprasian saat ini dan bagaimana perkiraan perubahan lingkungan tersebut, analisis dokumen yang ada dalam suatu aplikasi yang diharapkan akan diganti atau dilengkapi oleh database, dan seterusnya. Banyak metodologi yang diusulkan untuk menyusun dan menampilkan informasi yang dikumpulkan pada langkah tersebut. Beberapa alat otomatis pun telah dikembangkan untuk mendukung proses ini.
  2.  Desain Database Konseptual: Informasi dikumpulkan pada saat analisis persyaratan digunakan untuk mengembangkan deskripsi data tingkat tinggi yang harus disimpan dalam database, bersama dengan batasan yang telah diketahui untuk menetapkan penyimpanan data tersebut. Langkah ini sering dilakukan dengan menggunkan model ER. Model ER adalah salah satu dari model data tingkat tinggi, atau semantik, yang digunakan dalam desain database. Tujuannya adalah menciptakan gambaran sederhana tentang data yang mirip dengan pemikiran pengguna dan pengembang mengenai data tersebut (orang dan proses yang dinyatakan dalam data tersebut). Hal tersebut menfasilitasi diskusi di antara orang-orang yang terlibat dalam proses desain, bahkan mereka yang tidak mempunyai latar belakang teknis. Pada saat yang sama, desain awal harus akurat untuk membantu ketapatan translasi ke dalam sebuah model data yang didukung oleh sistem database komersial (yang dalam prakteknya berarti model relasional).
  3. Desain Database Logika: Kita harus memilih sebuah DBMS untuk mengimplementasikan desain database kita, dan mengubah konsep desain database menjadi sebuah skema database dalam model data dari DBMS terpilih. Kitah hanya akan memperhatikan DBMS relasional, dan dengan demikian tugas desain logika adalah mengubah skema ER menjadi skema database relasional.
  4. Perbaikan Skema: Langkah keempat dalam desain dataase adalah analisis sekumpulan relasi dalam skema database relasional untuk mengidentifikasi permasalahan yang muncul, dan memperbaikinya. Berbeda dengan alaisis persyaratan dan langkah-langkah desain konseptual, yang secara esensial bersifat subjektif, perbaikan skema dapat dipandu oleh beberapa teori yang kuat dan bagus.  Langkah keempat ini, para akademis IT lebih sering disebut dengan Normalisasi.
  5. Desain Database Fisik: pada langkah ini, kita juga mempertimbagkan beban kerja umum yang diharapkan dapat didukung oleh datagbase kita dan memperbaiki deswain database di masa mendatang untuk memastikan terpenuhinya kriteria performa yang diinginkan. Langkah ini hanya mencakup pembuatan indeks pada beberapa tabe dan mengelompokkan beberapa tabel, atau bahkan melibatkan desain ulang yang substansial terhadap beberapa bagian skema database yang didapat dari langkah pertama desain database. 
  6. Desain Aplikasi dan Keamanan: Semua proyek perangkat lunak yang melibatkan sebuah DBMS harus mempertimbangkan aspek aplikasi yang berada di luar database itu sendiri. Metodologi desain seperti UML mencoba menekankan desain perangkat lunak dan siklus pengembangan yang lengkap. Secara singkat, kita harus bisa mengidentifikasi entitas (contohnya pengguna, grup-grup pengguna, dan bagian-bagian lain) dan proses-proses yang terlibat dalam aplikasi. Kita harus menggambarkan peran setiap entitas dalam setiap proses yang akan direfleksikan pada beberapa tugas aplikasi, sebagai bagian dari aliran kerja lengkap untuk tugas tersebut. Untuk tiap peran, kita harus bisa mengidentifikasi bagian database yang harus bisa diakses dan yang tidak bisa diakses, dan kitah harus bisa menganmbil langkah untuk memastikan bahwa aturan akses terseut dilakukan. DBMS memberikan beberapa mekanisme untuk membantu langkah tersebut.
Demikianlah langkah-langkah desain database yang harus kita lakukan jika kita ingin membangun sebuah database yang baik dan benar. Secara realistis, meskipun kita mulai dari proses 6 langkah diatas, sebuah desain database yang lengkap mungkin akan memerlukan sebuah fase tuning (penyesuaian) sesudah itu sampai desain tersebut memuaskan.
Diagram Hubungan Entitas (Entity Relationship)
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhruyQwhsA38k2tbs3W6pH5y1ktSs4i0Cp78o7ToPh4US3MTXoHrs3JSxIhRe_D9RrfygjFY5bRIlb9PtyDCG5GgW8Zi57yyBbtAXKpy-RK-eH3L2SPmNs2wuScjzc4_dHFiiPIIMmpKFE/s400/673px-ER_Diagram_MMORPG.png

Desain database juga termasuk ER ( Entity-model hubungan ) diagram. Diagram ER diagram yang membantu untuk merancang database dalam cara yang efisien.
Atribut dalam diagram ER biasanya dimodelkan sebagai oval dengan nama atribut, terkait dengan entitas atau hubungan yang berisi atribut.
Dalam model relasional langkah terakhir secara umum dapat dibagi menjadi dua langkah lebih lanjut, bahwa untuk menentukan pengelompokan informasi dalam sistem, umumnya menentukan apa benda dasar tentang mana informasi disimpan, dan kemudian menentukan hubungan antara kelompok-kelompok informasi, atau benda. Langkah ini tidak diperlukan dengan Obyek database .
PENGARUH DESAIN TERHADAP PENERAPAN EFEKTIFITAS
DATABASE MELALUI BEBERAPA CONTOH KASUS
Dalam suatu sistem informasi, landasan yang utama adalah database dan implementasi prgoram. Database yang tidak efektif dan implementasi program yang tidak terstruktur dapat mempengaruhi performansi sistem informasi tersebut. Pengaruh desain terhadap database sangatlah besar, termasuk desain data, tipe data maupun relasinya. Pembuatan desain yang tidak dibangun dengan cermat dapat menyebabkan hilangnya data yang dibutuhkan, data yang tidak konsisten, redundansi data, proses update yang lambat dan banyak hal lain. Untuk menghindari hal tersebut, dibuatlah beberapa contoh kasus yang dapat menunjukkan betapa pentingnya desain sebelum pembuatan database yaitu pembuatan logical data model. Dari contoh kasus yang diberikan, dapat dilihat bahwa desain mempengaruhi database yang akan dibentuk.
Salah satu langkah dalam membangun suatu sistem informasi adalah melakukan perancangan
database. Database merupakan jantung dari system informasi. Data harus tersedia ketika user ingin
menggunakan, data juga harus akurat dan konsisten. Selain dari requirement tersebut, tujuan dari desain database adalah efisiensi penyimpanan data dan efisiensi pembacaan maupun update data.
Database merupakan suatu koleksi data. Efektifitas dari database harus dapat memenuhi kebutuhan :
· memastikan data agar dapat diakses oleh banyak user pada banyak aplikasi,
· maintain data secara akurat dan konsisten,
· memastikan data yang dibutuhkan baik sekarang maupun yang akan datang dapat tersedia,
· database dapat memenuhi kebutuhan sesuai dengan pertumbuhan user dan
· database dapat memenuhi kebutuhan pembacaan data tanpa memperdulikan bagaimana data secara fisik tersimpan.
Dari pengamatan yang dilakukan penulis, masih ada beberapa orang yang memiliki tidak mempertimbangkan efektifitas dalam mendesain database. Untuk menjelaskan lebih lanjut pentingnya efektifitas database, dibuatlah beberapa contoh kasus dalam desain logical data model

sumber : google

Tidak ada komentar:

Posting Komentar