PROSES PERANCANGAN
PROSES PERANCANGAN
Database
System Development Live cycle
(
SDLC
) merupakan
komponen yang
penting dalam sistem database
karena
aplikasi dari database
life cycle
berkaitan
dengan sistem informasi yang ada.
Proses perancangan database merupakan
bagian (
micro life cycle
) dari proses
Analisa Sistem
Operasi dan pemeliharaan Sistem
Operasi dan pemeliharaan Sistem siap untuk operasi Implementasi
kurang lengkap Adaanya
Komponen Sistem informasi berbasiskan komputer, antara lain :
1.Database, sebagai media penyimpanan data.
2.DBMS, sebagai perangkat lunak pembangun dan manajemen
database.
3.Aplikasi perangkat lunak, sebagai antarmuka penggunaan Sistem Informasi.
4.Perangkat keras komputer termasuk media penyimpanan.
• Sebuah Model Data adalah struktur logik
dari database.
Model Relational Concepts
Tables − A table has rows and columns, where rows represents records and columns represent the attributes.
Tuple − A single row of a table, which contains a single record for that relation is called a tuple.
Relation key − Each row has one or more attributes, known as relation key, which can identify the row in the relation
(table) uniquely.
Every relation has some conditions that must hold for
it to be a valid relation. These conditions are called
Relational Integrity Constraints
.
There are 3 main integrity constraints:
•Key constraints
•Domain constraints
•Referential integrity constraints
Proses Pembuatan stuktur database sesuai
dengan data yang dibutuhkan oleh user
.
Tujuan Desain Database untuk :
Menyajikan data dan hubungan antar data
yang diperlukan oleh pemakai dan aplikasi
Mempermudah pemahaman informasi
Melengkapi model data yang mendukung
transaksi-transaksi yang diperlukan
Mendukung proses permintaan dan
System defnition :
Mendefnisikan Scope dari sistem basis data, pemakai dan aplikasi
Antarmuka untuk pemakai, batasan response time, kebutuhan penyimpan dan pemrosesan diidentifkasi.
Database design
Pada akhir dari tahap ini , desain konseptual, desain logika dan fsik dari sistem basis data dari DBMS sudah siap.
Database implementation
Meliputi proses menentukan defnisi basis data eksternal, konseptual dan internal, membuat fle basis data kosong dan implementasi aplikasi perangkat lunak.
Loading or data conversion
Application conversion
Aplikasi perangkat lunak dari sistem lama dikonversikan ke sistem baru.
Testing and validation
sistem baru diuji coba dan divalidasi
Operation
Sistem basis data dan aplikasi dioperasikan. Biasanya sistem lama dan baru dioperasikan secara paralel dalam beberapa waktu.
Monitoring and maintenance
6 Tahap proses desain database
Pengumpulan dan analisis kebutuhan data
Pengumpulan dan analisis kebutuhan data
Kebutuhan data (DFD)
Diagram ER atau EER
Relasi yang bersifat logis
Pemilihan DBMS Pemilihan DBMS
Implementasi Implementasi
Tidak tergantung pada DBMS
PERENCANAAN
DATABASE
Evaluasi sistem yg ada
Pengembangan standarisasi dari
pengumpulan data, format data, proses perancangan & implementasi
Kelayakan secara teknologi
Kelayakan secara operasional Kelayakan secara ekonomi
PENDEFINISIAN SISTEM
Pendefnisian ruang lingkup sistem basis data, para pengguna, & aplikasi2 yg digunakan
Para pengguna & aplikasi untuk masa akan datang
Pendefnisian batasan2 dari sistem basis data & hubungannya dengan bagian dari sistem
Proses desain terdiri dari dua
proses yang paralel yaitu:
proses desain dari data dan
struktur dari database
(
data
driven
)
proses desain dari program
aplikasi dan pemrosesan database
TAHAP 1:
Aktiftas yang dilakukan :
Area aplikasi mayor dan kelompok pemakai
yang akan menggunakan basis data atau pekerjaan / aplikasinya
Dokumen yang sudah ada yang berhubungan
dengan aplikasi dipelajari dan dianalisa.
Dokumen lain seperti police manual, form, report dan struktur organisasi ditinjau kembali untuk menentukan dan menguji apakah dokumen-dokumen tersebut berpengaruh terhadap
kumpulan data dan proses spesifkasi.
Lingkungan operasi saat ini dan rencana
penggunaan informasi. Menganalisa tipe transaksi dan frekuensi penggunaannya dan aliran informasi dalam sistem. Karakteristik geograf seperti
pemakai, transaksi asli, tujuan pelaporan. Data input dan output diperinci
Penulisan respon dari kuesioner pemakai
TAHAP
3 Pendekatan yaitu : (a) Terpusat (centrelized), (b) View Integration,
(c) kombinasi keduanya
Terpusat (centrelized)
TAHAP
2 aktiftas paralel : Desain skema konseptual & Desain transaksi dan aplikasi
Tahap 2A: Desain skema konseptual
Memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, dan batasan-batasan.
Conceptual schema bersifat tetap
Alat komunikasi antar pemakai basis data, designer, dan analis
Harus bersifat:
Mampu menyatakan relationship, batasan-batasan
Diagram
Formal, minimum dalam menyatakan spesifkasi data (tidak ada duplikasi)
TAHAP
1. Expressiveness :
model data cukup ekspresif untuk membedakan perbedaan data,relationship dan konstrain
2. Simplicity & Understandability
model cukup sederhana untuk pemakai yang kurang mengerti
3. Minimality
model mempunyai sejumlah kecil konsep dasar yang berbeda dan tidak overlapping
4. Diagrammatic representation
menggunakan notasi diagram untuk
menampilkan skema konseptual yang mudah di interpretasikan
5. Formality
TAHAP
- mulai dengan beberapa high level entity type
- bagi lagi (top down) menjadi beberapa lower-level entity type dan
relationship type
Bottom Up
- mulai dengan atribut
- kelompokkan menjadi entity type & relationship type
- tambahkan relationship-relationship
Inside Out
- bentuk khusus dari bottom-up
-mula-mula ditentukan entity type yang
merupakan pusat/bagian terpenting tambahkan entity type dan relationship lain yang
Tahap 2a
Untuk desain database besar skema individual
gabungkan Dibagi menjadi :
1.Identifkasi Korespondensi dan konfik diantara skema
antara lain :
- Naming Confict - Type Confict - Domain Conflict
- Constraint Conflict
2. Modifkasi View untuk kesesuaian dengan yg lain 3. Menggabungkan View
TAHAP
Pada saat basis data didesain, aplikasi dari transaksi utama harus sudah diketahui
Transaksi-transaksi baru dapat didefnisikan kemudian
Tentukan karakteristik dari transaksi dan periksa apakah basis data sudah memuat semua
informasi untuk melaksanakan transaksi
Transaksi dapat dibagi dalam 3 bagian yaitu: retrieval, - update, mixed
TAHAP
Teknik yang umum digunakan adalah
mengidentifkasi parameter input/output dan aliran fungsi internal.
Transaksi dikelompokkan dalam 3 kategori :
(1)Retrieval transaction
Untuk menampilkan data ke layar atau untuk produksi pelaporan.
(2) Update transaction
Untuk memasukkan data baru atau memodifkasi data yang sudah ada pada basis data.
(3) Mixed transaction
Untuk aplikasi yang komplek yang melakukan retrieval dan update. Contoh : Pemesanan tiket secara online, retrieval transaction
TAHAP
Beberapa aturan pokok dalam merancang User Interface :
1.Pemberian nama form jelas, menerangkan kegunaan dari form dan laporan
2.Pemberian Intruksi dapat dimengerti 3.Pengelompokan secara logik dan pengurutan feld
4.Tampilan form/report secara visual 5.Nama feld familiar
6.Pemakaian istilah dan singkatan konsisten 7.Penggunaan warna konsisten
8.Ruang yang tersedia dan cakupan untuk feld pemasukan data
9.Perpindahan kursor yang tepat
10.Perbaikan kesalahan untuk karakter
individual, maupun feld secara keseluruhan 11.Pesan kesalahan untuk nilai yang tdk diterima
12.Field pilihan ditandai dengan jelas 13.Pesan penjelasan untuk feld
TAHAP
3:
Pemilih
an
DBMS
TAHAP
3:
Pemilih
an
DBMS
Langkah Utama dalam memilih DBMS : (Connoly)
Lihat informasi DBMS dari referensi
Buat daftar 2 atau 3 produk
Evaluasi produk
Faktor dalam Pemilihan DBMS :
Faktor teknis: berhubungan dengan
ketepatan DBMS yang dipilih (tipe DBMS : relational, object relational dll) Struktur penyimpanan, storage, akses path,
ketersediaan user interface dan programmer, bahasa query, dll
Faktor ekonomi: Biaya Software, biaya
Hardware, Biaya pembuatan database dan konversi, biaya Maintenance, Personal
cost ,training, operasi.
Tahap 3
Faktor teknis
1. DBMS (relational, hirarki, atau jaringan)
2. Struktur penyimpan dan akses path yang didukung DBMS
3.Ketersediaan antar muka pemakai dan
pemrogram, tipe bahasa query tingkat tinggi, ketersediaan alat bantu pengembangan,
kemampuan berhubungan dengan DBMS lain melalui media standard
TAHAP
Faktor Ekonomi
1.Software acquisiton cost :
Pembelian perangkat lunak, termasuk pilihan bahasa, pilihan antar muka seperti form, menu dan antar muka Web berbasis GUI, pilihan recovery/backup
2. Maintenance cost
Berhubungan dengan harga layanan pemeliharaan standar dari vendor dan untuk menjaga versi DBMS tetap up to date.
3. Hardware acquisition cost
Perangkat keras baru mungkin diperlukan, seperti
memory, terminal, disk drive dan controller baru, atau penyimpan DBMS khusus.
5. Personal cost
Akuisisi perangkat lunak DBMS untuk pertama kali oleh organisasi biasanya dilakukan dengan reorganisasi departemen data processing.
6. Training cost
Karena DBMS biasanya berupa sistem komplek, personal harus ditraining menggunakan dan memprogram DBMS. Training diperlukan pada semua level, termasuk programming,
pengembangan aplikasi dan administrasi basis data.
7. Operating cost :
Biaya operasi lanjutan dari sistem basis data biasanya tidak termasuk dalam evaluasi.
TAHAP
1. Struktur data
Jika data yang disimpan dalam database mengikuti struktur hirarki, maka suatu jenis hirarki dari DBMS harus dipikirkan.
2. Familiarity of personnel with the system
Jika staf programming dalam organisasi familiar dengan DBMS tertentu, dapat mengurangi biaya training dan waktu pembelajaran.
3.Availability of vendor service Kedengan sistem sangat penting, karena
TAHAP
Membuat skema konseptual dan skema eksernal dalam model data dari DBMS terpilih
Proses pemetaan dalam dua bentuk :
1.Pemetaan yg tidak tergantung pada sistem (System-independet mapping )
Pada bentuk ini, pemetaan tidak mempertimbangkan karakteristik khusus atau kasus khusus yang
diaplikasikan ke implementasi DBMS dari model data.
2. Penyesuaian skema ke DBMS yang spesifk (Tailoring the schemas to specifc DBMS
DBMS yang berbeda mengimplementasikan model data dengan menggunakan pemodelah khusus.
TAHAP
Proses pemilihan struktur penyimpanan
dan jalur akses pada fle-fle basis data untuk mencapai penampilan yang terbaik pada
bermacam aplikasi.
Dirancang spesifkasi-spesifkasi untuk basis
data yang disimpan yang berhubungan
dengan struktur-struktur penyimpanan fsik, penempatan record dan jalur akses.
TAHAP
Beberapa petunjuk dalam pemilihan perancangan basis data secara fsik :
1. Waktu respon
waktu transaksi basis data untuk menerima respon selama eksekusi.
Waktu respon dipengaruhi waktu akses basis data untuk data item yang ditunjuk oleh suatu transaksi.
2. Penggunaan ruang penyimpanan
jumlah ruang penyimpanan yang digunakan oleh fle basis data dan struktur- struktur jalur akses.
3. Transaction throughput
rata-rata jumlah transaksi yang dapat
TAHAP
Implementasi Basis Data dan Tuning
• DBA bersama desainer basis data
menggunakan pernyataan dalam DDL , SDL (storage defnition language) dari DBMS
terpilih digunakan untuk membuat skema basisdata dan fle basis data (kosong).
• Basis data kemudian dipopulasikan dengan
data.
• Jika data diubah dari sistem komputerisasi
TAHAP 6:
Implement asi Basis Data
TAHAP 6:
Implement asi Basis Data
•Transaksi basis data harus
diimplementasikan dengan aplikasi yang dibuat programmer
•melakukan uji coba kode porgram
dengan perintah DML.
•Jika transaksi siap dan data disimpan
ke basis data, tahap rancangan dan
TAHAP 7:
KONVERSI & LOADING DATA
TAHAP 7:
KONVERSI & LOADING DATA
KONVERSI & LOADING DATA
Tahap ini dilakukan apabila sistem basis data yg ada
digantikan sistem basis data baru
TESTING & EVALUASI
TESTING & EVALUASI
Tahap 7 :
TESTING &
TESTING &
EVALUASI
EVALUASI
Tahap 7 :
TESTING &
TESTING &
EVALUASI
EVALUASI
Dilakukan pengujian utk kinerja, integritas, pengaksesan konkuren, keamanan dari
basis data
Dilakukan paralel dg pemrograman aplikasi Jika hasil gagal dilakukan maka :
Diuji berdasarkan referensi manual Modifkasi perancangan fsik
Modifkasi perancangan logik
PENGOPERASIAN & PERAWATAN
TAHAP 7 :
PENGOPERA SIAN &
PERAWATAN
TAHAP 7 :
PENGOPERA SIAN &
PERAWATAN
Pengoperasian basis data setelah divalidasi
Memonitor kinerja sistem, jika tidak sesuai perlu reorganisasi basis data
LATIHAN SOAL :
1. Sebutkan 6 tahap perancangan basis data!
2. Manakah dari 6 tahap tersebut sebagai aktiftas utama dalam proses perancangan basis data ? Mengapa ?
3. Mengapa perancangan skema dan aplikasi dilakukan secara parallel ?
4. Mengapa digunakan model data implementation-independent selama perancangan skema konseptual ?
5. Mengapa diperlukan koleksi dan analisa kebutuhan ?
6. Buatlah aplikasi actual dari suatu system basis data. Tentukan kebutuhan dari level pemakai yang berbeda dalam hal kebutuhan data, tipe query dan transaksi yang diproses.
7. Bagaimana karakteristik dari model data untuk rancangan skema konseptual harus diproses ?
8. Apa perbedaan dua pendekatan utama dalam rancangan skema konseptual
9. Strategi apa yang digunakan untuk merancang skema konseptual dari kebutuhan ?
10. Sebutkan langkah-langkah view integration ke rancangan skema konseptual.
11. Sebutkan factor untuk memperlancar pemilihan paket DBMS untuk system
informasi dalam organisasi.
12. Apa yang dimaksud pemetaan data model
Concurrency : banyak transaksi yang dijalankan
secara bersamaan.
Alasan transaksi konkuren banyak dipilih dari
transaksi serial:
a.
Idle time (waktu menganggur) kecil.
b.
Response time (waktu tanggap) lebih
baik
Masalah umum yang terjadi pada sistem konkuren:
1.
Masalah kehilangan modifikasi
2.
Masalah modifikasi sementara
Dengan adanya masalah di atas,
maka dibutuhkan suatu
concurrency
control
.
Mekanisme Concurrency Control:
1.Locking.
1. LOCKING
Locking
: satu mekanisasi pengontrolan konkuren.
Konsep dasar: ketika suatu transaksi memerlukan
jaminan kalau record yang diinginkan tidak akan berubah
secara mendadak, maka diperlukan kunci untuk record
tersebut.
Kunci X dan kunci S akan dilepaskan pada saat
synchpoint (synchronization point). Synchpoint
menyatakan akhir dari suatu transaksi dimana basis
data berada pada state yang konsisten.
Bila synchpoint ditetapkan maka:
•Semua modifikasi program menjalankan operasi
commit atau rollback.
•Semua kunci dari record dilepaskan
2. TIME STAMPING
Concurrency control yang dapat menghilangkan
deadlock adalah time stamping. Timestamping (TS)
adalah penanda waktu saat transaksi terjadi. Hal
ini untuk mengurutkan eksekusi transaksi agar
sama dengan eksekusi serial.
Time stamp dapat berupa:
1.waktu sistem saat transaksi dimulai
2.penghitung logik (logical counter) yang terus
bertambah nilainya tiap kali terjadi transaksi baru.
Contoh:
Selain transaksi, item data juga memiliki nilai time
stamp. Untuk setiap item data Q, ada 2 nilai time stamp,
yaitu:
•Read
timestamp
atau
R-timestamp(Q),
yang
menunjukkan nilai TS terbesar dari setiap transaksi yang
berhasil menjalankan operasi read(Q).
•Write
timestamp
atau
W-timestamp(Q),
yang
menunjukkan nilai TS terbesar dari setiap transaksi yang
berhasil menjalankan operasi write(Q).
Time-stamping Ordering Protocol
Protokol ini menjamin bahwa tiap operasi read dan write yang memiliki konflik dieksekusi sesuai urutan TS.
1. Untuk transaksi Ta yang menjalankan operasi read(Q)
•Jika TS(Ta) < W-TS(Q) maka transaksi Ta perlu membaca kembali nilai Q yang telah ditulis dan transaksi Ta akan dibatalkan (rollback).
•Jika TS(Ta) ≥ W-TS(Q) maka operasi read dieksekusi, dan R-TS(Q) diisi dengan nilai terbesar diantara TS(Ta) dan R-TS(Q).
2. Untuk transaksi Ta yang menjalankan operasi write(Q):
•jika TS(Ta) < R-TS(Q) maka nilai Q yang baru dihasilkan Ta tidak akan dimanfaatkan lagi, dan sistem berasumsi bahwa nilai tersebut tidak pernah dihasilkan. Karena itu operasi write ditolak, dan transaksi Ta di rollback.
•jika TS(Ta) < W-TS(Q) maka itu berarti transaksi Ta sedang berusaha melakukan penulisan nilai Q yang kadaluarsa. Maka operasi wrwite ini akan ditolak dan transaksi Ta akan di rollback.
3. Di luar kondisi a dan b di atas, operasi write dieksekusi dan W-TS(Q) diberi nilai baru yang sama dengan TS(Ta).
Transaksi dan Pemrosesan
• Transaksi : satu atau beberapa aksi program
aplikasi yang mengakses/mengubah isi basis
data.
• DBMS harus menjamin bahwa setiap transaksi
harus dapat dikerjakan secara utuh atau tidak
sama sekali
Sifat-sifat Transaksi
•
Atomik
, semua operasi dapat dikerjakan seluruhnya atau
tidak sama sekali.
•
Terisolasi
, semua transaksi yang dilaksanakan pada saat
yang bersamaan harus dapat dimulai dan bisa berakhir.
•
Bertahan
, perubahan data yang terjadi setelah sebuah
transaksi berakhir dengan baik, harus dapat bertahan
bahkan jika seandainya sistem menjadi mati.
konsisten konsisten
Commi t
Commi t
konsisten konsisten
Rollbac k
Rollbac k
Status Transaksi
Status Transaksi
Status Transaksi
Rollback: -restart, atau -kill
-Memori utama
Status Transaksi
- Memori utama
Konsep Sistem Recovery
Recovery : upaya untuk mengembalikan basis data ke keadaaan yang dianggap benar setelah terjadinya suatu
kegagalan.
Jenis – jenis kegagalan :
1. Kegagalan sistem: mempengaruhi semua transaksi yang sedang berjalan tetapi tidak merusak database secara fisik.
Contoh : system error, software error
2. Kegagalan media : merusak database dan semua transaksi yang sedang berjalan pada saat itu.
Contoh : head crash
Berbagai kemungkinan yang harus diantisipasi :
· Gangguan Listrik · Kerusakan Disk · Kesalahan Perangkat Lunak
· Pengaksesan oleh orang yang tidak berhak
Fasilitas Recovery
Fasilitas recovery didalam DBMS :
•Back up mechanism
Membuat back up database dan log fle secara periodik, ke media penyimpanan eksternal.
Prosedur pemulihan
•Loging facility (File Log)
Mencatat semua transaksi yang sedang berjalan
Pemulihan berbasis log
Rekaman log mendeskripsikan satu penulisan ke
basisdata dan memiliki feld-feld berikut :
1. Nama transaksi
2. Nama item data
3. Nilai lama
•Checkpoint facility
Synchronization point antara database dengan transaksi log fle
Pemulihan dengan checkpoint
Diperlukan mengkonsultasi log untuk menetukan transaksi yang perlu dijalankan kembali dan transaksi-transaksi yang tak perlu dijalankan ulang. Seluruh log perlu ditelusuri untuk menetukan hal ini. Terdapat dua kesulitan dengan pendekatan ini :
Proses pencairan memerlukan banyak waktu.
Kebanyakan transaksi yang perlu dilakukan telah
dituliskan ke basisdata.
Pemulihan menjadi lebih lama, maka diperlukan checkpoint. Sistem secara periodik membuat checkpoint sebagai berikut :
Tulis semua rekaman log yang saat itu berada di memori utama kepenyimpan stabil.
Tulis semua blok bufer yang telah dimodifkasi ke disk.
Teknik Recovery (pemulihan) :
1. Defered upate / perubahan yang ditunda :
Perubahan pada basis data tidak akan berlangsung sampai transaksi COMMIT. Jika terjadi kegagalan maka tidak akan terjadi perubahan, tetapi diperlukan operasi
redo untuk mencegah akibat dari kegagalan tersebut.
2. Immediate Update / perubahan langsung :
3. Shadow Paging :
Menggunakan page bayangan dimana pada prosesnya terdiri dari 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai tabel
cadangan. Ketika transaksi mulai berlangsung kedua tabel ini sama dan selama berlangsung tabel transaksi yang menyimpan semua perubahan ke database, tabel bayangan akan digunakan jika terjadi kesalahan.