Minggu, 30 September 2018

Abstraksi data, Model relasional dan Kardinalitas


Abstraksi Data

Abstraksi data merupakan tingkatan-tingkatan pengguna dalm melihat bagaimana data diolah didalam system, sehingga nantinya dapat enjadi kondisi yang dilihat oleh pengguna seharihri.

Pada abstraksi data ini, tidak hanya diperhatikan bagaimana data masuk dan disimpna, tetapi menyangkut segala hal bagaimana data diabstraksikan.

Sebuah database management system seringkali menyembunyikan detail bagaiman data disimpan dan diolah dalam system database, hal ini bertujuan untuk memudahkan pengguna karena seringkali data yang sebelumnya berbeda engan data yan tersimpan secara fisik. Sehingga tujuan utama dari DBMS itu sendiri yakni menyediakan fasilitas antarmuka dengan sisyem yang telah menyembunyikan bentuk sebenarnya dari data itu.

Database dapat dipandang dari 2 yaitu:

1.      sudut pandang pengguna yakni orang-orang yang menggunakan database dan perancang database.

2.      perancang database adalah orang yang berperan sebagai perancang dan pengelola database

kedua Pandangan  tersebut menunjukkan level pandangan terhadap suatu database. Pandangan terhadap database sering disebut sebagai arsitektur database atau abtraksi database dan terbagi menjadi 3 Tingkatan pada abstraksi data, yakni :

1.      Level Fisik (Physical Level)

Level abstraksi data yang paling rendah, yang menggambarkan bagaimana (how) data disimpan dalam kondisi sebenarnya atau diorganisasikan decara fisik atau aktual. Represents berupa teks, anfka dan bit.Level ini sangat kompleks karena struktur data dijelaskan secara rinci.

Level ini dibutuhkan oleh system enginner, pakar software dan hardware.

Physical level sering disebut sebagai level eksternal merupakan bentuk implementasi konseptual, yaitu suatu pandangan perancang yang bekaitan dengan permasalahan teknik penyimpanan data dalam database ke dalam media penyimpanan yang digunakan. Pandangan ini bersifat sangat teknis danlebih berorientasi pada mesin, yaitu berkaitan dengan organisasi berkas database.



2.      Level Konseptual (Conceptual Level/ Global Logical)

Level konseptual merupakan level abstraksi yang berada diantara level logika pandangan pengguna dan level fisik. Level ini memberikan gambaran tentang data apa yang sebenarnya disimpan pada basisdata, dan juga menjabarkan hubungan-hubungan antardata secara keseluruhan (entitas,atribut, dan relasinya). Data Pengguna tidak mempedulikan kerumitan dalam struktur level fisik lagi, pengambaran cukup dengan memakai kotak, garis, dan hubungan secukupnya.



3.      Level pandangan pengguna (External  View/logic)

Level pandangan pengguna atau level eksternal merupakan pandangan para pengguna database pada masing-masing pengguna database, sehingga memiliki cara pandang yang berbeda-beda tergantung pada macam data apa saja yang tersedia atau dapat diakases oleh pengguna. Pada lapis ini pengguna hanya mengenal struktur data yang sederhana, yang berorientasi pada kebutuhan pengguna. Data yang dikenal oleh masing-masing pengguna bisa berbeda-beda dan barangkali hanya mencakup sebagian dari basis data. Pengguna tidak perlu tahu bagaimana sebenarnya data-data tersebut tersimpan. Pada level ecternal view ini data berbentuk narasi dan lebih ngalur ngindur sehingga perlu dianalisa dan berupa konseptual.   Misalnya: Bagian keuangan hanya membutuhkan data keuangan, jadi yang digambarkan hanya pandangan terhadap data keuangan saja, begitu juga dengan bagian akuntansi, hanya membutuhkan data akuntansi saja. Jadi tidak semua pengguna database membutuhkan seluruh informasi yang terdapat dalam database tersebut.





 Struktur Basis Data (Konsep Basis Data)

Arsitektur basis data merupakan serangkaian pengetahuan tentang pemodelan data. Pengetahuan tentang File, table, field, record indeks, abstraksi data dan serangkaian konsep yang digunakan untuk membuat diskripsi struktur basis data. Melalui diskripsi Struktur basis data dapat ditentukan jenis data, hubungan dan konstrain (keterbatasan) data yang ditangani. Dalam basis data, data diorganisasikan kedalam bentuk elemen data (field), rekaman (record), dan berkas (file).

·         Elemen (kolom atau field) data adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang bermakna. Misalnya Misalnya data siswa terdiri dari NIS, Nama, Alamat, Telepon atau Jenis Kelamin.

·         Rekaman (record) merupakan gabungan sejumlah elemen data yang saling terkait. Record terdiri dari satu atau lebih suatu field.  Istilah lain dari record adalah baris atau tupel.

·         Berkas(file) adalah himpunan seluruh record yang bertipe sama Didalam manajemen basis data, data disimpan dalam bentuk Berkas atau file. 
  • karakter bagian terkecil barupa angka dan huruf.
   








Model  Basis Data Relasional


Model Data Relasional adalah kumpulan tabel berdimensi dua dengan masing- masing relasi tersusun atas tuple(baris) dan atribut(kolom) yang menggambarkan sebuah berkas data.

Model ini menunjukkan cara mengelola/mengorganisasikan data secara fisik dalam memori sekunder, yang akan berdampak pula pada bagaimana mengelompokkan data dan membentuk keseluruhan data yang terkait dalam sistem yang kita buat.

Pada model data ini, data dan hubungan antar data memiliki nama yang unik yang berguna untuk merepresentasikan data. Sehingga tidak ada data yang kembar.
Pada model relasional, basis data akan disebar ( dipilah-pilih­) ke dalam berbagai tabel 2 dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang disebut dengan baris data (row/record) dan lajur vertikal biasa disebut dengan kolom (column/field). Disetiap pertemuan baris data dan kolom itulah, item-item data (satuan data terkecil) ditempatkan.

Model data ini dianggap mudah karena menggunakan table yang merupakan hal yang tidak asing di kehidupan sehari-hari. Contohnya mengenai informasi mahasiswa yang  direpresentasikan pada relasi MAHASISWA yang mengandung informasi nomor induk mahasiswa, nama, alamat, prodi dan fakultas tempat mahasiswa kuliah.



Tiga komponen yang mendasari model data relasional:

1.Struktur data

2.Pemanipulasi data

3.Integritas data



Istilah-istilah dalam model data relasional

Kunci Relasi :

1.      SUPERKEY : satu atau lebih atribut (kumpulan atribut) yang dapat membedakan setiap baris data dalam tabel secara unik.Berdasarkan contoh relasi sebelumnya, maka superkey-nya adalah : {nim, nama_mhs} dan {nim}.

2.      CANDIDATE KEY : relasi mungkin mempunyai lebih dari satu key. Masing-masing disebut candidate key.

3.      PRIMARY KEY (PK) : candidate key yang digunakan untuk mengidentifikasikan tuple yang unik pada suatu relasi. Berdasarkan contoh sebelumnya, maka primary key-nya adalah nim.

4.      FOREIGN KEY (FK) : suatu skema relasi dapat memiliki atribut yang menunjuk ke primary key dari relasi lain. Atribut ini disebut foreign key.



Relational Integrity Rules (Aturan Integritas Relasional)

1.Null : Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut. Nilai (konstanta) Null digunakan untuk menyatakan / mengisi atribut-atribut yang nilainya memang belum siap/tidak ada.

2.Entity Integrity : Tidak ada satu komponen primary key yang bernilai null.

3.Referential Integrity : Suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yang bersangkutan.



Bahasa Pada Basis Data Relasional

Bahasa Basis Data Relasional Menggunakan bahasa query pernyataan yang diajukan untuk mengambil informasi. Bahasa Query (Query Language) lebih ditekankan pada aspek pencarian data dari dalam tabel. Aspek pencarian ini sedemikian penting karena merupakan inti dari upaya untuk pengelolaan data.

Bahasa query terbagi 2 :

1. Bahasa Formal

Bahasa query yang diterjemahkan dengan menggunakan simbol- simbol matematis.
Contoh :

•Aljabar Relasional : Bahasa query prosedural, pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana untuk mendapatkannya.

•Kalkulus Relasional : Bahasa query non-prosedural, pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Kalkulus Relasional terbagi menjadi dua yaitu Kalkulus Relasional Tupel dan Kalkulus Relasional Domain.

2. Bahasa Komersial

Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi
agar pemakai lebih mudah menggunakannya (user friendly).

Contoh :
• QUEL : Berbasis pada bahasa kalkulus relasional
• QBE : Berbasis pada bahasa kalkulus relasional
• SQL : Berbasis pada bahasa kalkulus relasional dan aljabar relasional.





Model Data Rasional lebih luas dibandingkan yang lain .nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data . hal ini tidak terdapat pada model data herarkhi dan jaringan dimana manipulasi data dibatasi oleh bagaimana struktur data dibuat. Dengan model data relasional yang bentuknya sederhana sehingga seseorang mudah melakukan berbagai operasi data.


Pada model relasional, jumlah tupel suatu relasi disebut kardinalitas dan jumlah atribut suatu relasi disebut derajat (degree) atau terkadang disebut arity. Relasi yang berderajat satu (hanya memiliki satu atribut) disebut unary. Relasi yang berderajat dua disebut binary dan relasi yang berderajat tiga disebut ternary. Relasi yang berderajat n disebut n-ary.
Ada beberapa sifat yang melekat pada suatu relasi:
1. Tak ada tupel (baris) data yang kembar
2. Urutan tuple tidaklah penting (tupel-tupel dapat dipandang dalam sembarang urutan)
3. Setiap atribut memiliki nama yang unik
4. Letak atribut bebas ( urutan atribut tidak penting)
5. Setiap atribut memiliki nilai tunggal dan jenisnnya sama untuk semua tupel


Sebagaimana dikatakan didepan, tupel-tupel yang terdapat pada suatu relasi tidak ada yang kembar. Sesungguhnya bagian yang menyebabkan tidak adannya tupel yang kembar adalah yang disebut kunci primer. Kunci primer adalah kunci kandidat yang dipilih sebagai kunci utama untuk mengidentifikasi baris dalam tabel.

C. Keuntungan & kelemahan model data reasional
Keuntungan lain menggunakan model data relasional dibandingkan dengan model data herarkhi dan jaringan adalah:
1. model data rasional lebih luas dibandingkan yang lain .nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data . hal ini tidak terdapat pada model data herarkhi dan jaringan dimana manipulasi data dibatasi oleh bagaimana struktur data dibuat.
2. Model data relasional mempunyai latar belakang teori matematik. Hal ini akan memudahkan dalam pembentukan hubungan matematis sebagai dasar dalam prosedur pemrosesan data disamping pemrograman komputer . sebab bagaimanapun juga dalam pelaksanaan sistem harus dilakukan dalam bahasa program tertentu .
3. Pengorganisasian model relasional sangat sederhana , sehingga mudah dipahami .
4. Basis data yang sama biasanya dapat disajikan lebih sedikit terjadi data rangkap (Redun-dansy data) dengan menggunakan model relasional dibandingkan dengan model data herarkhi dan jaringan.

5. menggunakan table, sehingga lebih muda dimengerti.
Sedangkan kelemahannya adalah :
1. Lebih sulit dalam implementasinya terutama untuk data dala,m jumlah besar dan tingkat kompleksitasnya tinggi.
2. Proses pencarian informasinya lebih lambat. Hal ini disebabkan beberapa tabel tidak dihubungkan secara fisik (seperti pada model hirarkhi atau jaringan).dalam manipulasi data menggunakan beberapa tabel akan memerlukan waktu yang lama , karena tabel-tabel haus dihubungkan terlebih dahulu.


Pengertian Menurut Entity Relationship Diagram (ERD)

          Dalam rekayasa perangkat lunak, sebuah Entity-Relationship Model (ERM) merupakan abstrak dan konseptual representasi data. Entity-Relationship adalah salah satu metode pemodelan basis data yang digunakan untuk menghasilkan skema konseptual untuk jenis/model data semantik sistem. Dimana sistem  seringkali memiliki basis data relasional, dan ketentuannya bersifat top-down. Diagram untuk menggambarkan model Entitiy-Relationship ini disebut Entitiy-Relationship diagram, ER diagram, atau ERD.

 Menurut salah satu para ahli, Brady dan Loonam (2010), Entity Relationship diagram (ERD) merupakan teknik yang digunakan untuk memodelkan kebutuhan data dari suatu organisasi, biasanya oleh System Analys dalam tahap analisis persyaratan proyek pengembangan system. Sementara seolah-olah teknik diagram atau alat peraga memberikan dasar untuk desain database relasional yang mendasari sistem informasi yang dikembangkan. ERD bersama-sama dengan detail pendukung merupakan model data yang pada gilirannya digunakan sebagai spesifikasi untuk database. Notsinya IDEF1X.



Dalam pembentukan ERD terdapat 3 komponen yang akan dibentuk yaitu :

a. Entitas

 (entitas) yaitu suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis data. Pengertian lainnya menurut Brady dan Loonam (2010), entitas adalah objek yang menarik di bidang organisasi yang dimodelkan.

Contoh : Mahasiswa, Kartu Anggota Perpustakaan (KAP), dan Buku.

b.  Hubungan (relasi/relationship)

Suatu hubungan adalah hubungan antara dua jenis entitas dan direpresentasikan sebagai garis lurus yang menghubungkan dua entitas. merepresentasikan hubungan antar obyek di dunia nyata.

Macam-Macam Relasi antar tabel:

One-to-many. Misalkan terdapat relasi antara tabel ibu dan tabel anak dengan nama relasi “mempunyai” dan relasinya one-to-many. Artinya satu record pada tabel ibu boleh berelasi (mempunyai) dengan banyak record pada tabel anak. Namun satu record pada tabel anak hanya boleh berelasi dengan satu record saja pada tabel ibu Gambar relasi one-to-many:

One-to-one. Jika dua tabel berelasi one-to-one artinya setiap record di entitas pertama hanya akan berhubungan dengan satu record di entitas kedua begitu pula sebaliknya. Conrohnya relasi antara tabel pegawai dan alamat pegawai. Satu record pegawai hanya berhubungan dengan satu record alamat pegawai beitu pula sebaliknya. Entitas 3 merupakan atribut yang unik di entitas 4. Gambar relasi one-to-one:

Many-to-many. Jika tabel satu berelasi dengan tabel dua dengan relasi any-to-many artinya ada banyak record di entitas satu dan entitas dua yang saling berhubungan satu sama lain. Contohnya relasi many-to-many antara tabel transaksi dan barang. Satu record transaksi bisa berhubungan dengan banyak record barang, begitu pula sebaliknya. Gambar relasi many-to-many:

c.  Atribut

Atribut memberikan informasi lebih rinci tentang jenis entitas. Atribut memiliki struktur internal berupa tipe data. Atribut adalah ciri-ciri kualitatif yang dimiliki oleh suatu obyek, yang mencerminkan sifat-sifat dari obyek tersebut. Field menyatakan data terkecil yang memiliki makna. Istilah lain untuk field yaitu elemen data, kolom item. Contoh field yaitu nama seseorang, jumlah barang yang dibeli, dan tanggal lahir seseorang.

Derajat Relasi Minimum-Maximum

Menunjukkan hubungan (korespondensi) minimum yang boleh terjadi dalam sebuah relasi antar entitas. Misalnya: pada relasi “bekerja untuk” pada entitas pegawai terhadap departemen Derajat relasi minimumnya adalah satu. Dalam arti lain, setiap pegawai minimal harus memiliki sebuah relasi terhadap Departemen, atau setiap pegawai selalu memiliki tempat di mana dia bekerja. Notasi (x,y) pada relasi menunjukkan derajat minimum (x) dan derajat maksimum (y) pada sebuah relasi. Partisipasi total bisa dinotasikan dengan memberikan derajat relasi minimum (x) = 1.

 Jenis-jenis atribut :

Atribut Key

Atribut Key adalah satu atau gabungan dari beberapa atribut yang dapat membedakan semua baris data ( Row/Record ) dalam tabel secara unik. Dikatakan unik jika pada atribut yang dijadikan key tidak boleh ada baris data dengan nilai yang sama

Contoh : Nomor induk mahasiswa (NIM), NISS dan nomor pokok lainnya

Atribut simple

atribut yang bernilai atomic, tidak dapat dipecah/ dipilah lagi

Contoh : Alamat, penerbit, tahun terbit, judul buku.

Atribut Multivalue

nilai dari suatu attribute yang mempunyai lebih dari satu (multivalue) nilai dari atrribute yang bersangkutan

Contoh : dari sebuah buku, yaitu terdapat beberapa pengarang.

Atribut Composite

Atribut composite adalah suatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu yang masih bisah dipecah lagi atau mempunyai sub attribute.

Contoh : dari entitas nama yaitu nama depan, nama tengah, dan nama belakang

Atribut Derivatif

Atribut yang tidak harus disimpan dalam database Ex. Total. atau atribut yang dihasilkan dari atribut lain atau dari suatu relationship. Atribut ini dilambangkan dengan bentuk oval yang bergaris putus-putus




Menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Macam-macam kardinalitas adalah:

Satu ke satu (one to one), Setiap anggota entitas A hanya boleh berhubungan dengan satu anggota entitas B, begitu pula sebaliknya.

Satu ke banyak (one to many), Setiap anggota entitas A dapat berhubungan dengan lebih dari satu anggota entitas B tetapi tidak sebaliknya.

Banyak ke banyak (many to many), Setiap entitas A dapat berhubungan dengan banyak entitas himpunan entitas B dan demikian pula sebaliknya.

Notasi Simbolik dalam Diagram ER

Persegi panjang : himpunan entitas

Elips : atribut (atribut yang sebagai kunci digarisbawahi)

Belah ketupat : himpunan relasi

Garis : penghubung antara himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atributnya

Kardinalitas Relasi dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, 1 dan M untuk relasi satu-ke-banyak, M dan M untuk relasi banyak-ke-banyak)




Tidak ada komentar:

Posting Komentar

Catatan Manajemen Proyek Perangkat Lunak

Pengertian (1) Manajemen proyek perangkat lunak terdiri dari 3 suku kata yakni manajemen, proyek, dan perangkat lunak. Manajemen berarti M...