Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Perancangan Basis Data

Presentasi serupa


Presentasi berjudul: "Perancangan Basis Data"— Transcript presentasi:

1 Perancangan Basis Data
Pertemuan 4 dan 5

2 Definisi Perancangan Basisdata
Perancangan Database adalah proses untuk menentukan isi dan pengaturan data yang dibutuhkan untuk mendukung berbagai rancangan sistem. Tujuan Perancangan Database : untuk memenuhi informasi yang berisikan kebutuhan-kebutuhan user secara khusus dan aplikasi-aplikasinya. memudahkan pengertian struktur informasi. mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan storage space)

3 Proses Perancangan Database
6 Fase proses perancangan database : 1. Pengumpulan data dan analisis 2. Perancangan database secara konseptual 3. Pemilihan DBMS 4. Perancangan database secara logika (data model mapping) 5. Perancangan database secara fisik 6. Implementasi Sistem database. 6 fase di atas tidak harus diproses berurutan. Pada beberapa hal, rancangan tsb dapat dimodifikasi dari yang pertama dan sementara itu mengerjakan fase yang terakhir (feedback loop antara fase) dan feedback loop dalam fase sering terjadi selama proses perancangan.

4 Fase 1 : Pengumpulan data dan analisa
Proses identifikasi dan analisa kebutuhan-kebutuhan data disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem database, pertama-tama harus mengenal bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem database, termasuk para pemakai yang ada dan para pemakai yang baru serta aplikasi- aplikasinya. Kebutuhan-kebutuhan dari para pemakai dan aplikasi-aplikasi inilah yang kemudian dikumpulkan dan dianalisa.

5 Aktifitas-aktifitas pengumpulan data dan analisa
Menentukan kelompok pemakai dan bidang-bidang aplikasinya. Peninjauan dokumentasi yang ada. Analisa lingkungan operasi dan pemrosesan data. Daftar pertanyaan dan wawancara.

6 Fase 2 : Perancangan database konseptual
Tujuan dari fase ini adalah menghasilkan conceptual schema untuk database yang tergantung pada sebuah DBMS yang spesifik. Sering menggunakan sebuah high-level data model seperti ER/EER model selama fase ini. Dalam conceptual schema, kita harus merinci aplikasi-aplikasi database yang diketahui dan transaksi-transaksi yang mungkin.

7 Aktifitas paralel perancangan database secara konseptual
Perancangan skema konseptual : menguji kebutuhan-kebutuhan data dari suatu database yang merupakan hasil dari fase 1, dan menghasilkan sebuah conceptual database schema pada DBMS independent model data tingkat tinggi seperti EER (enhanced entity relationship) model. Perancangan transaksi : menguji aplikasi-aplikasi database dimana kebutuhan-kebutuhannya telah dianalisa pada fase 1, dan menghasilkan perincian transaksi-transaksi ini.

8 Fase 3 : Pemilihan DBMS Pemilihan database ditentukan oleh beberapa faktor, diantaranya: Struktur data Jika data yang disimpan dalam database mengikuti struktur hirarki, maka suatu jenis hirarki dari DBMS harus dipikirkan. Personal yang telah terbiasa dengan suatu sistem Jika staf programmer dalam suatu organisasi sudah terbiasa dengan suatu DBMS, maka hal ini dapat mengurangi biaya latihan dan waktu belajar. Tersedianya layanan penjual Keberadaan fasilitas pelayanan penjual sangat dibutuhkan untuk membantu memecahkan beberapa masalah sistem. Teknik Keberadaan DBMS dalam menjalankan tugasnya seperti jenis-jenis DBMS (relational, network, hierarchical, dll), struktur penyimpanan, dan jalur akses yang mendukung DBMS, pemakai, dll.

9 Fase 4 : Perancangan database secara logika (pemetaan model data)
Fase selanjutnya dari perancangan database adalah membuat sebuah skema konseptual dan skema eksternal pada model data dari DBMS yang terpilih. Fase ini dilakukan oleh pemetaan skema konseptual dan skema eksternal yang dihasilkan pada fase 2. Pada fase ini, skema konseptual ditransformasikan dari model data tingkat tinggi yang digunakan pada fase 2 ke dalam model data dari DBMS yang dipilih pada fase 3.

10 Pemetaan diproses dalam 2 tingkat
Pemetaan system-independent Pemetaan ke dalam model data DBMS dengan tidak mempertimbangkan karakteristik atau hal-hal yang khusus yang berlaku pada implementasi DBMS dari model data tsb. Penyesuaian skema ke DBMS yang spesifik mengatur skema yang dihasilkan pada langkah 1 untuk disesuaikan pada implementasi yang khusus di masa yang akan datang dari suatu model data yang digunakan pada DBMS yang dipilih.

11 Fase 5 : Perancangan database fisik
Perancangan database secara fisik merupakan proses pemilihan struktur- struktur penyimpanan dan jalur-jalur akses pada file-file database untuk mencapai penampilan yang terbaik pada bermacam-macam aplikasi. Selama fase ini, dirancang spesifikasi-spesifikasi untuk database yang disimpan yang berhubungan dengan struktur-struktur penyimpanan fisik, penempatan record dan jalur akses.

12 Petunjuk pemilihan perancangan database secara fisik
Response time Waktu yang telah berlalu dari suatu transaksi database yang diajukan Untuk menjalankan suatu tanggapan. Pengaruh utama pada response time adalah di bawah pengawasan DBMS yaitu : waktu akses database untuk data item yang ditunjuk oleh suatu transaksi. Response time juga dipengaruhi oleh beberapa faktor yang tidak berada di bawah pengawasan DBMS, seperti penjadwalan sistem operasi atau penundaan komunikasi. Space Utility Jumlah ruang penyimpanan yang digunakan oleh file-file database dan struktur-Struktur jalur akses. Transaction throughput Rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem database, dan merupakan parameter kritis dari sistem transaksi (misal, digunakan pada pemesanan tempat di pesawat, bank, dll). Hasil dari fase ini adalah penentuan awal dari struktur penyimpanan dan jalur akses untuk file-file database.

13 Fase 6 : Implementasi sistem database
Setelah perancangan secara logika dan secara fisik lengkap, kita dapat melaksanakan sistem database. Perintah-perintah dalam DDL dan SDL(storage definition language) dari DBMS yang dipilih, dihimpun dan digunakan untuk membuat skema database dan file-file database (yang kosong) kemudian database tsb dimuat (disatukan) dengan datanya. Jika data harus dirubah dari sistem komputer sebelumnya, perubahan- perubahan yang rutin mungkin diperlukan untuk format ulang datanya yang kemudian dimasukkan ke database yang baru. Transaksi-transaksi database sekarang harus dilaksanakan oleh para programmmer aplikasi.

14 ALASAN PERANCANGAN BASIS DATA
Sistem basis data telah menjadi bagian dalam sistem informasi suatu organisasi Kebutuhan menyimpan data dl jumlah besar semakin mendesak Fungsi-fungsi dalam organisasi semakin dikomputerisasikan Semakin kompleks data & aplikasi yg digunakan, maka relationship antar data harus dimodelisasikan Dibutuhkannya kemandirian data

15 KONVERSI & LOADING DATA
Tahap ini dilakukan apabila sistem basis data yg ada digantikan sistem basis data baru Semua data yg ada ditransfer ke basis data baru & konversi aplikasi yg ada utk basis data baru

16 PENGOPERASIAN & PERAWATAN
Pengoperasian basis data setelah divalidasi Memonitor kinerja sistem, jika tidak sesuai perlu reorganisasi basis data Perawatan & upgrade sistem aplikasi basis data jika diperlukan.

17 Model Konseptual Basis Data
Model konseptual merupakan kombinasi beberapa cara untuk memproses data untuk beberapa aplikasi. Pada perancangan model konseptual basis data ini penekanan dilakukan pada struktur data dan relasi antara field. Pada perancangan model konseptual ini dapat dilakukan dengan menggunakan model data relasional.

18 Teknik Normalisasi Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel- tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat menambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu Basis data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal.

19 Entity Entity atau entitas, dalam basis data entity
sama halnya dengan sebuah tabel.

20 Atribut Atribut, dalam basis data sama halnya dengan field.

21 Jenis Atribut Atribut Sederhana Atribut Komposit
Atribut Bernilai Tunggal Atribut Bernilai Jamak Atribut Harus Bernilai Atribut Bernilai Null Atribut Turunan

22 Atribut Sederhana Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak dapat lagi dipecah menjadi atribut lain. Contoh: Entitas mahasiswa mempunyai atribut sederhana berupa NIM, NamaMahasiswa .

23 Atribut Komposit Atribut Komposit : atribut komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tesendiri. Contoh: Entitas mahasiswa mempunyai atribut alamat. Maka alamat disini dapat dipecah menjadi sub atribut seperti kota, kab, kode_pos. Entitas dosen mempunyai atribut nama_dosen. Maka nama disini dapat dipecah menjadi sub atribut lain seperti glr_dpn, nama, glr_blk.

24 Atribut Bernilai Tunggal
Atribut Bernilai Tunggal : atribut yang hanya memiliki satu nilai untuk setiap barisnya. Contoh: entitas mahasiswa mempunyai atribut NIM, nama, alamat isi data dari atribut ini hanya boleh diisi dengan 1 data. Setiap mahasiswa hanya memiliki 1 NIM, 1 Nama, 1 Alamat.

25 Atribut Bernilai Jamak
Atribut Bernilai Jamak : yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya. Contoh: entitas mahasiswa mempunyai atribut Hobby isi data dari atribut ini boleh lebih dari 1 data. Mahasiswa Roshita memiliki NIM beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga, Nyanyi, Masak dan Nonton TV)

26 Atribut Harus Bernilai (not null)
Atribut Harus Bernilai : yaitu atribut yang harus memiliki nilai data untuk setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian di kosongi akan terjadi kesalahan. Contoh: entitas mahasiswa mempunyai atribut NIM dan nama_mahasiswa yang harus diisi datanya, sebab jika tidak diisi akan terjadi kesalahan (error) dalam basis data

27 Atribut Bernilai Null (is null)
Atribut Bernilai Null : yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya. Contoh: entitas mahasiswa mempunyai atribut hobby, nama_pacar yang boleh tidak terisi.

28 Atribut Turunan Atribut Turunan : yaitu atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut lain yang berkaitan. Contoh: entitas mahasiswa mempunyai atribut IPK yang diperoleh dari pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM mahasiswa yang sama dan diproses sehingga menghasilkan IPK untuk mahasiswa yang bersangkutan.

29 Field (Atribut) Kunci setiap field selalu terdapat kunci berupa field atau satu set field yang dapat mewakili record. Misalnya Nomor Induk Mahasiswa (NIM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi, setiap pencarian cukup dengan menyebut NIM mahasiswa tersebut maka dapat diketahui identitas mahasiswa lainnya seperti nama, alamat dan atribut lainnya. Contoh lain: Nomor Pegawai (NIDN) bagi data dosen, NIK untuk data karyawan, Kode_Kuliah untuk data Mata kuliah, dan lain sebagainya.

30 Kunci Kandidat (Candidate Key)
Kunci kandidat adalah satu atribut atau satu set atribut yang mengidentifikasikan secara unik suatu kejadian spesifik dari entity. Satu set atribut menyatakan secara tidak langsung dimana anda tidak dapat membuang beberapa atribut dalam set tanpa merusak kepemilikan yang unik.

31 Kunci Kandidat (Candidate Key)
Kunci kandidat dalam tabel pegawai di disamping dapat dipilih sbb : nik no_ktp nama_pegawai (tidak dapat dipakai karena sering seseorang punya nama yang sama dengan orang lain) tmp + tgl Lahir (mungkin bisa dipakai sebagai kunci karena kemungkinan orang dengan nama yang sama dan tanggal lahir yang sama cukup kecil) nama + tmp + tgl_lahir (dapat dipakai sebagai kunci) alamat dan kota (bukan kunci) Contoh: Tabel pegawai berisi field: nik no_ktp nama_pegawai tmp_lahir tgl_lahir alamat kota

32 Kunci Kandidat (Candidate Key)
Contoh Kasus: Tentukan Kunci Kandidat dari tabel tersebut Tabel mt_kuliah berisi field: id_matkul kode_matkul nama_matkul kurikulum semester sks nilai_minimum Kunci kandidat dalam tabel mt_kuliah di disamping dapat dipilih sbb : id_matkul kode_matkul nama_matkul (mungkin bisa dipakai sebagai kunci karena kemungkinan nama matkul dengan yang lain ada perbedaan) kurikulum + semester + sks + nilai_minimum (tidak dapat dipakai karena sering matkul punya data yang sama dengan matkul lain)

33 Kunci Primer (Primary Key)
Primary key adalah satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kejadian spesifik, tetapi juga dapat mewakili setiap kejadian dari suatu entity. Catatan: Setiap kunci kandidat dapat menjadi kunci primer tetapi sebaliknya sebaiknya dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entity yang ada.

34 Kunci Primer (Primary Key)
Contoh : nik (karena sifatnya yang unik maka tidak mungkin pegawai mempunyai Nomor Induk Karyawan yang sama). no_ktp (bisa dipakai misalnya untuk pegawai yang baru belum mendapatkan nomor pegawai maka bisa digunakan nomor KTP untuk sementara sebagai kunci primer. kode_mtkuliah (bisa dipakai untuk data mata kuliah karena kode mata kuliah bersifat unik untuk tiap mata kuliah)

35 Kunci Primer (Primary Key)
Contoh Kasus: Tentukan Kunci Primer dari tabel tersebut Tabel mt_kuliah berisi field: id_matkul kode_matkul nama_matkul kurikulum semester sks nilai_minimum

36 Kunci Alternatif (Alternate Key)
Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci primer. Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya dalam membuat laporan.

37 Kunci Alternatif (Alternate Key)
Contoh Kasus: Tentukan Kunci Alternatif dari tabel tersebut Tabel krs berisi field: no_krs id_matkul nim nilai_angka nilai_huruf lulus BACK NEXT

38 Kunci Tamu (Foreign Key)
Kunci tamu adalah satu atribut atau satu set minimal atribut yang melengkapi satu hubungan yang menunjukkan ke induknya. kunci tamu ditempatkan pada entity anak dan sama dengan kunci primer induk yang direlasikan. Hubungan antara entity induk dengan anak adalah hubungan satu lawan banyak (one to many relationship)

39 Kunci Tamu (Foreign Key)
Contoh Kasus: Tentukan Kunci Tamu dari tabel tersebut

40 Kamus Data Contoh Kamus Data : Nama Database : akademik
Nama Tabel : mahasiswa Fungsi : menyimpan data mahasiswa

41 Bahasa Basisdata Contoh Kamus Data : Nama Database : akademik
Nama Tabel : dosen Fungsi : menyimpan data profil dosen Nama Field Tipe Panjang Karakter Keterangan id Integer 3 Primary Key nidn Varchar 15 Unique glr_dpn nama 20 glr_blk jab_akademik 50 telp 30

42 Bahasa Basisdata Contoh Kamus Data : Nama Database : akademik
Nama Tabel : mt_kuliah Fungsi : menyimpan data mata kuliah Nama Field Tipe Panjang Karakter Keterangan id Integer 3 Primary Key mtk_kode Varchar 10 mtk_nama 30 sks Char 1 semester kurikulum 9 nilai_min

43 Bahasa Basisdata Contoh Kamus Data : Nama Database : akademik
Nama Tabel : mtk_open Fungsi : menyimpan data mata kuliah yang dibuka Nama Field Tipe Panjang Karakter Keterangan id Integer 10 Primary Key mtk_id 3 dosen_id thn_ajaran Char 9 aktif 1

44 ERD (Entity Relationship Diagram)
Keterangan : Banyak pegawai bekerja pada satu departemen.

45 ERD (Entity Relationship Diagram)
Contoh Kasus : Sebuah perusahaan retail memiliki banyak pelanggan yang telah memesan sejumlah barang produksi. Gambarkan diagram ER dari proses transaksi pembelian tersebut dan buatkan tabel-tabelnya!

46 SOLUSI ER Diagram : Keterangan:
PELANGGAN Order PENJUALAN BARANG Proses 1 N Keterangan: Satu pelanggan dapat memesan banyak barang. Banyak barang dapat diproses pada satu kali penjualan.

47 SOLUSI Tabel :


Download ppt "Perancangan Basis Data"

Presentasi serupa


Iklan oleh Google