makalah pemodelan data revisi.docx

Upload: supiyan-sauri

Post on 18-Oct-2015

776 views

Category:

Documents


46 download

TRANSCRIPT

MAKALAH PEMODELAN DATASISTEM BASIS DATA

Oleh :Supiyan SauriAtri YulianyahIndra Gunawan

Sekolah Tinggi Manajemen Informatika & KomputerPERGURUAN TINGGI TEKNOKRATJl. Zainal Abidin Pagar Alam 9-11 KedatonBANDAR LAMPUNG

KATA PENGANTAR

Assalamualaikum wr.wbAlhamdulillahirabbilalamin, Segala puji bagi Allah, atas Rahmat dan Karunia-Nya Penyusun diberi kemampuan untuk menyelesaikan makalah tentang Model Basis Data ini sampai selesai.Ucapan Salam dan Keselamatan kepada Rasulullah SAW, para Sahabat dan Sahabiah, yang garis hidupnya telah memberikan teladan yang tak habis-habisnya untuk ditelaah. Semoga kita cukup diberi keberuntungan hidup yang penuh Rahmat dengan meneladani para teladan terbaik dari seluruh Umat tersebut.

Dalam makalah ini Penyusun akan membahas tentang Model Basis Data yang meliputi Pengertian Model Basis Data, dan Contoh.

Dalam penyusunan makalah ini Penyusun banyak memperoleh bantuan dari berbagai pihak. Oleh karena itu, penyusun ingin menyampaikan ucapan terima kasih kepada teman teman yang sudah memberikan konstribusinya dalam penyelesaian makalah Model Basis Data ini.

Penyusun menyadari bahwa dalam penyusunan makalah ini masih banyak kekurangan. Oleh sebab itu, penyusun sangat mengharapkan kritik dan saran yang membangun. Dan semoga dengan terselesaikannya makalah Model Basis Data ini dapat bermanfaat bagi pembaca.

Bandar Lampung, Maret 2014

Penyusun

DAFTAR ISI

KATA PENGANTAR iDAFTAR ISI ii

BAB I PENDAHULUAN 1 1.1 Pengertian Basis Data (database) 1 1.2 Bahasa Basis Data (database) 2 1.3 Objektif (Tujuan) Basis Data 3 1.4 Kegunaan Basis Data 4 1.5 Perangkat Lunak Basis Data 5

BAB II PEMODELAN BASIS DATA 72.1 Model Data 72.1.1 Model Data Hirarkis 72.1.2 Model Data Jaringan 82.1.3 Model Data Relasional 92.1.4 Model Data Relasi-Entitas 112.1.5 Model Data Berbasis Objek 14

iiMakalah Model Basis Data

BAB IPENDAHULUAN

1.1 Pengertian Basis Data (Database)Basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.

Istilah "basis data" berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis.

Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.

Istilah basis data mengacu pada koleksi dari data-data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut.

Basis data juga dapat diartikan sebagai kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk melakukan manipulasi untuk kegunaan tertentu.

1.2 Bahasa Basis Data (Database)Bahasa basis data merupakan bahasa yang digunakanoleh user untuk berkomunikasi/berinteraksi dengan DBMS yang bersangkutan. Misalnya SQL, dBase, QUEL, dan sebagainya.

Secara umum bahasa basis data terdiri atas:Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau sekunder.Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan menghapusnya atau hanya sekedar menampilkannya kembali.Jenis DML:1. Prosedural mensyaratkan agar pemakai menentukan data apa yang diinginkan serta bagaimana cara mendapatkannya.2. Nonprosedural pemakai menentukan data yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.SQL (Structured Query Language)SQL adalah bahasa yang digunakan untuk berkomunikasi dengan database. Menurut ANSI (American National Standards Institute), bahasa ini merupakan standar untuk relational database management systems (RDBMS).

Pernyataan-pernyataan SQL digunakan untuk melakukan beberapa tugas seperti : update data pada database atau menampilkan data dari database. Hampir semua software database mengimplementasikan bahasa SQL sebagai komponen utama dari produknya, salah satunya MySQL.

1.3 Objektif (Tujuan) Basis DataSecara lebih lengkap, pemanfaatan basis data dilakukan untuk memenuhi sejumlah tujuan (objektif) seperti berikut:a. Kecepatan dan kemudahan (Speed)Yaitu agar pengguna basis data dapat menyimpan data, melakukan perubahan/manipulasi terhadap data, dan menampilkan kembali data dengan lebih cepat dan mudah dibandingkan dengan cara biasa (baik manual ataupun elektronis).b. Efisiensi ruang penyimpanan (Space)Dengan basis data kita mampu melakukan penekanan jumlah redundansi (pengulangan) data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-relasi antara kelompok data yang saling berhubungan.c. Keakuratan (Accuracy)Agar data sesuai dengan aturan dan batasan tertentu dengan cara memanfaatkan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint) tipe data, domain data, keunikan data, dsb.

d. Ketersediaan (Avaibility)Agar data bisa diakses oleh setiap pengguna yang membutuhkan, dengan penerapan teknologi jaringan serta melakukan pemindahan/penghapusan data yang sudah tidak digunakan / kadaluwarsa untuk menghemat ruang penyimpanan.e. Kelengkapan (Completeness)Agar data yang dikelola senantiasa lengkap baik relatif terhadap kebutuhan pemakai maupun terhadap waktu, dengan melakukan penambahan baris-baris data ataupun melakukan perubahan struktur pada basis data; yakni dengan menambahkan field pada tabel atau menambah tabel baru. f. Keamanan (Security)Agar data yang bersifat rahasia atau proses yang vital tidak jatuh ke orang / pengguna yang tidak berhak, yakni dengan penggunaan account (username dan password) serta menerapkan pembedaan hak akses setiap pengguna terhadap data yang bisa dibaca atau proses yang bisa dilakukan.g. Kebersamaan pemakaian (Sharability)Agar data yang dikelola oleh sistem mendukung lingkungan multiuser (banyak pemakai), dengan menjaga / menghindari munculnya problem baru seperti inkonsistensi data (karena terjadi perubahan data yang dilakukan oleh beberapa user dalam waktu yang bersamaan) atau kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data).

1.4 Kegunaan Basis DataSecara umum, seluruh sistem dalam kehidupan bisa menggunakan konsep basis data dalam pengelolaan informasi, karena semua sistem tersebut tak bisa lepas dari fakta.

Bidang-bidang fungsional yang memanfaatkan basis data dalam hal efisiensi, akurasi dan kecepatan operasi antara lain adalah: Kepegawaian, untuk berbagai perusahaan yang memiliki banyak pegawai. Pergudangan (inventory), untuk perusahaan manufaktur (pabrik), grosir (reseller), apotik dan lain-lain. Akuntansi, untuk berbagai perusahaan Layanan pelanggan (Customer care), untuk perusahaan yang berhubungan dengan banyak pelanggan (bank, konsultan, dan lain-lain).

Bentuk-bentuk Perusahaan yang memanfaatkan Basis Data: Perbankan, dalam melakukan pengelolaan data nasabah, tabungan, pinjaman, pembuatan laporan akuntansi, pelayanan informasi pada nasabah dan lain-lain. Pendidikan / sekolah, dalam melakukan pengelolaan data siswa, penjadwalan kegiatan, perkuliahan, nilai, dan lain-lain. Telekomunikasi, dalam melakukan pengelolaan data administrasi kabel / data pelanggan, menangani gangguan, dan lain-lain.

1.5 Perangkat Lunak Basis DataPerangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data aras tinggi (high level):1. Microsoft SQL Server13. Visual FoxPro2. Oracle14. Arago3. Force15. Sybase4. Recital16. Interbase5. dbFast17. XBase6. dbXL18. Firebird7. Quicksilver19. MySQL8. Clipper20. PostgreSQL9. FlagShip21. Microsoft Access10. Harbour22. dBase III11. Visual dBase23. FoxPro12. Paradox24. Lotus Smart Suite Approach.Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data aras rendah (low level), diantaranya:1. Btrieve2. Tsunami Record Manager.

BAB IIPEMODELAN DATA2.1 Model DataModel Data pada hakekatnya adalah kumpulan perangkat konseptual untuk menggambarkan data,relasi data, makna (semantik) data, dan batasan data. Ada sejumlah cara dalam merepresentasikan Model Data untuk keperluan perancangan basis data, yaitu dikelompokkan sebagai berikut:o Model Hirarkis (Hierarchical Model)o Model Jaringan (Network Model)o Model Relasional (Relational Model)o Model Relasi Entitas (Entity-Relationship Model)o Model Berbasis Objek (Object Oriented Model)

2.1.1 Model Data HirarkisModel data hirarkis adalah model data paling tua yang pernah diterapkan dalam suatu DBMS. Model ini mengikuti pola hirarki pada suatu organisasi atau pada suatu keluarga, dimana terdapat rekaman data yang berfungsi sebagai bapak (parent-record) ada yang berfungsi sebagai anak (child-record). Dalam model ini seorang bapak bisa memiliki lebih dari satu anak tetapi seorang anak hanya boleh memiliki satu bapak.

Model ini akan menyebabkan timbulnya redudansi data, karena banyak kemungkinan bahwa matakuliah yang sama diambil oleh beberapa mahasiswa, sehingga record-matakuliah tersebut direkam berkali-kali dibawah record-mahasiswa yang mengambilnya. Disamping itu apabila ada matakuliah yang tidak diprogram-kan oleh mahasiswa maka ada kemungkinan record-nya tidak ada dalam database karena tidak memiliki parent.

Contoh model hirarkis yang menunjukkan hubungan Dosen-MataKuliah-Mahasiswa dapat pula digambarkan dalam bentuk diagram sebagai berikut.

2.1.2 Model Data JaringanModel data jaringan adalah pengembangan dari model data hirarkis. Pada model jaringan diperkenankan bahwa sebuah child-record bisa memiliki lebih dari satu parent-record. Pada implementasi-nya berarti antara parent-record dan child-record diperlukan penghubung (link atau pointer) yang bisa satu arah atau dua-arah.

Dengan model jaringan ini maka informasi dimana seorang mahasiswa dapat mengambil beberapa matakuliah (pointer dari record mahasiswa tsb ke beberapa record-kuliah) dan juga informasi bahwa satu matakuliah dapat di-program-kan oleh banyak mahasiswa (pointer dari record-kuliah ke beberapa record-mahasiswa) keduanya dapat di-representasikan.

Model Jaringan dari Dosen-Matakuliah-Mahasiswa dapat digambarkan sebagai berikut.

Persoalan yang timbul adalah terjadinya hutan pointer akibat relasi antar record yang rumit sehingga penelusuran data menjadi sangat sulit. Ketika model relasional menjadi lebih populer maka model ini pun ditinggalkan orang.

2.1.3 Model Data RelasionalSalah seorang pencetus awal dari basis data relasional adalah E.F.Codd yang juga telah menciptakan serangkaian operasi matematika relasional terhadap model data relasional.

Pada prinsipnya model data relasional dapat di-representasikan dalam bentuk table (tabel) data,dimana: Satu tabel mewakili satu domain data atau entity, bila direkam merupakan satu file yang hanya memiliki satu tipe record saja, setiap record adalah baris Setiap record terdiri atas beberapa field (atribut) atau tuple, atau kolom Jumlah tuple / field pada setiap record sama Setiap record memiliki atribut kunci utama (primary key) yang unik dan dapat dipakai untuk mengenali satu record Record dapat diurutkan menurut kunci utama,

Contoh: domain mahasiswa dapat diwakili oleh satu tabel mahasiswa dengan kunci utama adalah NIM (Nomor Induk Mahasiswa), dan domain matakuliah dapat diwakili oleh satu tabel kuliah dengan kunci utama kode-mkuliah.

Hubungan antara kedua domain ini dinyatakan dalam bentuk relasi, ada tiga kemungkinan relasi antar dua domain yaitu: Relasi satu-satu (one-to-one relation) : bahwa satu mahasiswa hanya boleh mengambil satu matakuliah, dan satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1-to-1. Dalam implementasi dua file yang memiliki relasi 1-to-1 dapat digabung menjadi satu file. Relasi satu-banyak (one-to-many relation) : bahwa satu mahasiswa boleh ambil banyak matakuliah tetapi satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1-to-M atau M-to-1. Pada relasi 1-to-M atau M-to-1, kunci record dari file pada sisi-1 harus ditambahkan sebagai kunci-tamu pada file sisi-M Relasi banyak-banyak (many-to-many relation) : bahwa satu mahasiswa boleh ambil banyak matakuliah, dan satu matakuliah boleh diambil oleh banyak mahasiswa, relasi disingkat dengan simbol M-to-M. Pada relasi M-to-M harus diciptakan sebuah file relasi yang berisi minimal dua field kunci record dari masing-masing file yang berelasi.2.1.4 Model Relasi-EntitasModel Relasi-Entitas atau (Entity Relationship Model) pada hakekatnya perwujudan dari model relasional dalam bentuk diagram, yaitu E-R Diagram.

ERD (Entity Relationship Diagram) merupakan notasi grafis dalam pemodelan data konseptual yang mendeskripsikan hubungan antara penyimpanan dan akan membantu mengorganisasikan data dalam suatu proyek ke dalam entitas-entitas. Dengan ERD dapat menjawab data apa yang diperlukan?, bagaimana data yang satu berhubungan dengan data yang lain?

Komponen ERD :1. Entitas (Entity)Definisi : sebuah barang atau obyek yang dapat dibedakan dari obyek lain (obyek yang bisa diidentifikasi). Setiap entitas memiliki atribut.Entitas dapat berupa : Obyek secara fisik : orang, kendaraan, rumah, pegawai,dll Obyek dengan keberadaan konseptual : pekerjaan, mata kuliah, dllTipe entitas lemah (weak entity) : merupakan entitas yang tidak memiliki key, keberadaannya bergantung pada entitas lain dan harus terelasi dengan entitas yang memilikinya.

2. Atribut (Attribute)Definisi : karakteristik atau property tertentu yang menggambarkan suatu entitas.Contohnya : Mahasiswa mempunyai NIM, nama, tanggal lahir, jenis kelamin, alamat, telepon, dll.Jenis-Jenis atribut : Key atribut : merupakan atribut yang bernilai unik.Misalnya Mahasiswa memiliki NIM yang tidak akan sama dengan mahasiswa yang lainnya.Penulisan key dalam ERD akan diberi garis bawah Atribut sederhana/Atomic : atribut yang tidak dapat dipecah-pecah.Contohya : Jenis kelamin Atribut komposit : atribut yang dapat dipecah-pecahContohnya : Nama nama depan, nama tengah, nama belakangAlamat jalan, kota,kodepos Atribut bernilai banyak (multivalued) : atribut yang bisa memiliki nilai banyakContoh : Pengalaman, Hobby Atribut turunan (derived) : atribut yang nilainya bisa diturunkan dari atribut lainnya.Contoh : Umur bisa diturunkan dari tanggal lahir Null values : atribut yang bisa bernilai kosong. Karena atribut tersebut memang tidak ada atau tidak diketahui keberadaannya. Ketidaktahuan ada dua jenis yaitu ada tapi tidak diketahui (tinggi badan), atau tidak diketahui ada atau tidak (no telepon).

3. Relasi (Relationship)Definisi : hubungan dua atau lebih entitas yang terkaitContoh : entitas departemen dan entitas pegawai dihubungkan oleh sebuah relasi memiliki (misalnya departemen HRD memiliki pegawai David Adriana)Derajat relasi : jumlah entitas yang terlibat didalam suatu relasi. Terdiri dari satu entitas disebut Unary, terdiri dari dua disebut Binary, terdiri dari tiga disebut Ternary.Relasi dapat pula memiliki atribut, misalnya pada relasi mengambil yang menghubungkan antara mahasiswa dan matakuliah terdapat nilai (nilai dihasilkan sebagai akibat mahasiswa mengambil suatu mata kuliah).

4. Kardinalitas (Ratio Constraint)Definisi : angka yang menunjukkan banyaknya kemunculan suatu obyek terkait dengan kemunculan obyek lain pada suatu relasi.Kombinasi yang mungkin :One to one (1:1) : pegawai mengepalai departemenOne to many (1:N) : dosen membimbing mahasiswaMany to many (M:N) : mahasiswa mengambil matakuliah

5. ModalitasDefinisi : partisipasi sebuah entitas pada suatu relasi0 jika partisipasi bersifat optional/parsial1 jika partisipasi bersifat wajib/totalContoh : Partisipasi total = setiap anak memiliki ibu Partisipasi parsial = tidak setiap perempuan memiliki anak

Simbol simbol ERD

2.1.5 Model Data Berbasis ObjekModel data berbasis objek dikembangkan searah dengan perkembangan pemrograman berbasis objek. Salah satu karakteristik dari sistem berbasis objek adalah encapsulation yaitu suatu objek terpisah dari objek lain sehingga setiap objek seakan-akan berada dalam kapsulnya masing-masing. Pada setiap kapsul terdapat komponen data (attribute) dikemas bersama dengan komponen aksesnya (methods).

Sebagai contoh, berikut ini disajikan data pegawai dalam format berbasis objek.