05 Database Dan Pengembangan Software
05 Database Dan Pengembangan Software
COM60016
2 sks
Slide 3
BASIS DATA
informasi sebagai aset
Siapa yang mempunyai
informasi akan menjadi
pemenang
Informasi menjadi aset
dalam perusahaan
Slide 4
BASIS DATA
Pengelolaan data
diterapkan dengan
menggunakan Basis Data
Slide 5
Definisi Data Data
Fakta yang dapat disimpan dan mempunyai arti
“Data adalah deskripsi tentang benda, kejadian,
aktifitas, dan transaksi, yang tidak berpengaruh
langsung kepada pemakai” (Abdul Kadir).
Penggambarannya fakta tersebut direkam dalam
bentuk simbol seperti : angka, tulisan, atau gambar.
Slide 6
Informasi
Informasi :
Hasil analisis dan sintesis terhadap data.
Informasi dapat dikatakan sebagai data yang telah
diorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan
seseorang, entah itu manajer, staff, ataupun orang lain di dalam
suatu organisasi
Data adalah bahan baku pembuatan informasi.
Untuk menghasilkan informasi diperlukan sejumlah proses
pengolahan data
Bila data sebagai bahan baku tidak baik/berkualitas buruk, maka
dapat dipastikan informasi yang dihasilkan pun tidak baik.
Slide 7
Apa Basis data ?
Kumpulan data yang saling berhubungan
Kumpulan data yang disimpan di dalam komputer secara
sistematik sehingga dapat diperiksa menggunakan suatu
program komputer untuk memperoleh informasi
Kumpulan data yang disusun untuk kemudahan dan
kecepatan dalam pencarian dan pengambilan data
Tujuan : kemudahan dan kecepatan dalam pengambilan data
Slide 8
DBMS (Da ta ba se Ma na gement System)
Perangkat lunak yang digunakan untuk mengelola dan memanggil
kueri (query) basis data.
Program yang memungkinkan pengguna basis data untuk membuat
dan memelihara suatu basisdata.
Sistem software yang multiguna, yang menyediakan fasilitas untuk
mendefinisikan, membangun dan memanipulasi basis data untuk
aplikasi yang beraneka ragam.
Tujuan utama dari DBMS
Untuk menyimpan dan menampilkan database
Contoh : Oracle, SQL-Server, My-SQL, DB2, Ms Access, PostGre SQL
Slide 9
Contoh Aplikasi Basis Data
Perbankan :informasi nasabah, rekening, pinjaman,
transaksi perbankan
Slide 10
Aplikasi Perdagangan Online
Katalog produk
Pemesanan produk
Pencarian produk
Slide 11
Penerbangan & Kereta Api
Reservasi dan Jadwal
Slide 12
Manfaat Penggunaan DBMS
1. Kecepatan dan kemudahan
Dalam pengambilan data dan informasi (Hubungan logis
query language memungkinkan pemakai mengambil data
dalam hitungan detik atau menit)
Dalam pemrosesan data
2. Efisiensi penggunaan ruang penyimpanan
Mengurangi pengulangan data
Mengurangi penyimpanan data yang rangkap
3. Pembatasan hak akses
4. Keakuratan
Slide 13
Manfaat Penggunaan DBMS
5. Ketersediaaan
6. Multiuser
7. Tersedianya informasi yang up to date
8. Mencapai independensi data.
Spesifikasi data disimpan dalam tiap program aplikasi.
Perubahan dapat dibuat pada struktur data tanpa
mempengaruhi program yang mengakses data.
9. Mengintegrasikan data dari beberapa file.
Saat file dibentuk sehingga menyediakan kaitan logis,
organisasi fisik tidak lagi menjadi kendala
Slide 14
Manfaat Penggunaan DBMS
10. Meningkatkan keamanan.
Baik DBMS mainframe maupun komputer mikro
dapat menyertakan beberapa lapis keamanan
seperti kata sandi, directori pemakai, dan bahasa
sandi.
11. Meningkatkan presentasi kesiapan data (data
availability) yang berarti tersedia pada waktu
dibutuhkan.
12. Mempermudah pemrograman karena lebih fleksibel
Slide 15
Kapan bisa tidak menggunakan database ?
1. Basis data dan aplikasi yang dibutuhkan sederhana,
terdefinisikan dengan baik dan diharapkan tidak banyak
perubahan terhadap datanya
2. Tidak perlu multiple akses terhadap data
Slide 16
Komponen DBMS
Secara sederhana, DBMS dapat dikatakan memiliki komponen-
komponen :
Perangkat keras (hardware)
Data
Perangkat lunak (software)
Pengguna (user)
Slide 17
Bahasa Basis Data
DBMS merupakan perantara antara user dengan basis data
yang tersimpan dalam disk.
Cara berkomunikasi keduanya diatur dalam suatu bahasa
khusus yang ditetapkan oleh perusahaan pembuat DBMS.
Bahasa itu disebut Bahasa Basis Data. Disediakan dua tipe
bahasa yaitu :
DDL (Data-definition Language)
tipe bahasa yang dipergunakan untuk
menspesifikasikan skema basis data
DML (Data-manipulation Language)
tipe bahasa yang dipergunakan untuk
mengekspresikan queri atau update basis data.
Slide 18
Data-definition Language
Skema basis data dispesifikasikan oleh sekumpulan definisi
dengan sebuah bahasa khusus yang disebut data-definition
language (DDL).
Hasil kompilasi DDL berupa tabel-tabel yang disimpan dalam
sebuah file, disebut data dictionary (kamus data) atau data
directory.
Kamus data adalah sebuah file yang berisi metadata. File ini
yang dikonsultasi sebelum data yang sebenarnya dibaca atau
dimodifikasi oleh sistem basis data.
Slide 19
Data-manipulation Language
Adalah bahasa untuk memanipulasi data yaitu:
Pengambilan informasi yang disimpan dalam basis data
Penyisipan informasi baru ke basis data dan penghapusan
informasi dari basis data
Modifikasi informasi yang disimpan dalam basis data
Query adalah statemen yang ditulis untuk mengambil
informasi. Bagian dari DML yang menanganipengambilan
informasi ini disebut bahasa query.
Slide 20
Desain Data Base
Ada banyak Model yang umum digunakan untuk memodelkan
data. Diantaranya 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 dengan
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.
Slide 21
ERD (Entity Realtionship Diagaram)
Slide 22
Model Relasional
Slide 23
Tabel dan isinya
Slide 24
Perlu diperhatikan !
Basis data tidak hanya sekedar kumpulan berkas (tabel),
tetapi juga mencakup hal-hal lain, seperti hubungan antar
tabel, view (tabel yang bersifat logis, yang merupakan
paduan sejumlah tabel), dan bahkan kode yang disebut
prosedur tersimpan
Slide 25
Pengembagan Software
(Perangkat Lunak)
Slide 26
Perangkat Lunak
Perangkat lunak (software) / program adalah
Deretan instruksi yang digunakan untuk mengendalikan komputer
sehingga komputer dapat melakukan tindakan sesuai yang
dikehendaki pembuatnya (Abdul Kadir, 2003)
Seluruh perintah yang digunakan untuk memproses informasi.
Perangkat lunak dapat berupa program atau prosedur.
Program adalah kumpulan perintah yang dimengerti oleh komputer
sedangkan prosedur adalah perintah yang dibutuhkan oleh
pengguna dalam memproses informasi (O’Brien, 1999).
Slide 27
Perangkat Lunak
Sedangkan menurut Roger S. Pressman, Perangkat lunak adalah:
1. perintah (program komputer) yang bila dieksekusi
memberikan fungsi dan unjuk kerja seperti yang diinginkan.
2. Struktur data yang memungkinkan program memanipulasi
informasi secara proporsional,
3. dokumen yang menggambarkan operasi dan kegunaan
program.
Slide 28
RPL(Rekayasa Perangkat Lunak)
RPL adalah suatu disiplin ilmu yang membahas semua aspek
produksi perangkat lunak, mulai dari tahap awal yaitu analisa
kebutuhan pengguna, menentukan spesifikasi dari kebutuhan
pengguna, disain, pengkodean, pengujian sampai
pemeliharaan sistem setelah digunakan.
RPL tidak hanya berhubungan dengan cara pembuatan
program komputer. Pernyataan ”semua aspek produksi”
mempunyai arti semua hal yang berhubungan dengan proses
produksi seperti manajemen proyek, penentuan personil,
anggaran biaya, metode, jadwal, kualitas sampai dengan
pelatihan pengguna merupakan bagian dari RPL
Slide 29
Tujuan RPL secara umum
Slide 30
Tujuan RPL secara lebih khusus
Memperoleh biaya produksi perangkat lunak yang rendah
Menghasilkan perangkat lunak yang kinerjanya tinggi, andal
dan tepat waktu
Menghasilkan perangkat lunak yang dapat bekerja pada
berbagai jenis platform
Menghasilkan perangkat lunak yang biaya perawatannya
rendah
Slide 31
RUANG LINGKUP
Slide 32
RUANG LINGKUP
Software Requirements berhubungan dengan spesifikasi
kebutuhan dan persyaratan perangkat lunak
Software Design mencakup proses penampilan arsitektur,
komponen, antar muka, dan karakteristik lain dari perangkat
lunak
Software Construction berhubungan dengan detail
pengembangan perangkat lunak, termasuk algoritma,
pengkodean, pengujian dan pencarian kesalahan
Software Testing meliputi pengujian pada keseluruhan
perilaku perangkat lunak
Slide 33
RUANG LINGKUP
Software Maintenance mencakup upaya-upaya perawatan
ketika perangkat lunak telah dioperasikan
Software Configuration Management berhubungan dengan
usaha perubahan konfigurasi perangkat lunak untuk
memenuhi kebutuhan tertentu
Software Engineering management berkaitan dengan
pengelolaan dan pengukuran RPL, termasuk perencanaan
proyek perangkat lunak
Software Engineering Tools And Methods mencakup kajian
teoritis tentang alat bantu dan metode RPL
Slide 34
RUANG LINGKUP
Software Engineering Process berhubungan dengan definisi,
implementasi pengukuran, pengelolaan, perubahan dan
perbaikan proses RPL
Software Quality menitikberatkan pada kualitas dan daur
hidup perangkat lunak
Slide 35
Tantangan dalam pengembangan PL
Slide 37
SIKLUS HIDUP PENGEMBANGAN SISTEM
Untuk melakukan pendekatan secara sistematis, penganalisis
sistem melakukan analisa dan merancang sistem informasi
yang semuanya berada dalam apa yang disebut siklus hidup
pengembangan sistem.
SDLC adalah pendekatan yang dilakukan melalui tahapan-
tahapan untuk menganalisa dan merancang sebuah sistem.
Slide 38
SIKLUS HIDUP PENGEMBANGAN SISTEM
SDLC memiliki beberapa variasi dan tidak ada siklus hidup
pengembangan sistem yang dijadikan acuan baku
dikarenakan
beberapa analis sistem tidak sepakat dengan tahapan-
tahapan yang ada dalam siklus hidup pengambangan
sistem tersebut karena akan sangat bergantung dengan
kebutuhan dan tipe organisasi dari pengguna
Slide 39
SIKLUS HIDUP PENGEMBANGAN SISTEM
Dalam bukunya Kendall & Kendall, Systems Analysis and Design
Slide 40
SIKLUS HIDUP PENGEMBANGAN SISTEM
Slide 41
SIKLUS HIDUP PENGEMBANGAN SISTEM
2. Menentukan syarat-syarat kebutuhan informasi
Pada tahap ini akan didaftar dan dimasukkan kebutuhan
informasi apa saja yang dibutuhkan oleh para pengguna
sistem.
3. Menganalisa kebutuhan sistem
Tahap ini diperlukan perangkat dan teknik tertentu untuk
membantu penganalisis menentukan kebutuhan. Jangan
salah dalam menentukan kebutuhan sistem
Slide 42
SDLC (Software Development Life Cycle)
Slide 43
SIKLUS HIDUP PENGEMBANGAN SISTEM
4. Merancang Sistem
Dalam tahap desain penganalisa sistem menggunakan informasi
yang sudah terkumpul untuk membentuk sebuah desain informasi
logik.
Contoh bagian dari perancangan sistem informasi logik adalah
antarmuka user.
Antarmuka akan bertindak sebagai penghubung antara sistem dan
user.
Pada tahap perancangan juga mencakup perancangan file dan
baisdata. Penganalisis sistem juga harus merancang prosedur-
prosedur lain seperti backup dan kontrol untuk melindungi sistem
dan data.
Slide 44
SIKLUS HIDUP PENGEMBANGAN SISTEM
5. Pengembangan dan dokumentasi perangkat lunak
Pada tahap ini , penganalisis sistem akan bekerja sama
dengan pengembang perangkat lunak atau programmer
untuk mengembangkan perangkat lunak.
6. Menguji dan mempertahankan sistem
Sebelum sistem dapat digunakan, penganalisis sistem
harus melakukan pengujian terhadap sistem terlebih
dahulu.
Pengujian sistem dapat dilakukan bersama-sama dengan
pengembang perangkat lunak.
Pengujian akan dilakukan dengan data aktual yang
sudah ada yang digunakan sehari-hari pada proses bisnis
organisasi.
Slide 45
SIKLUS HIDUP PENGEMBANGAN SISTEM
Slide 46
Model-model SDLC
Model-model:
Waterfall/Classic
V
Prototyping
Spiral
RAD (Rapid Applicaction Development),
USDP (Unified Software Development Process), Agile, XP
Slide 47
Waterfall model
Model ini merupakan model
yang paling banyak dipakai
oleh para pengembang
software
Model ini biasanya
digunakan untuk membuat
software dalam skala besar
dan akan dipakai dalam
waktu lama.
Cocok untuk sistem yang
memiliki requirement yang
stabil
Slide 48
Kelebihan Waterfall model
Slide 49
Kekurangan Waterfall model
1. Ketika problem muncul, maka proses berhenti, karena tidak
dapat menuju ketahapan selanjutnya. Bahkan jika
kemungkinan problem tersebut muncul akibat kesalahan dari
tahapan sebelumnya, maka proses harus membenahi tahapan
sebelumnya agar problem ini tidak muncul.
2. Karena pendekatannya secara sequential, maka setiap tahap
harus menunggu hasil dari tahap sebelumnya. Oleh karena
itu, seringkali model ini berlangsung lama pengerjaannya.
3. Pada setiap tahap proses tentunya dipekerjakan sesuai
spesialisasinya masing-masing. Oleh karena itu, ketika tahap
tersebut sudah tidak dikerjakan, maka sumber dayanya juga
tidak terpakai lagi. Oleh karena itu, seringkali pada model
proses ini dibutuhkan seseorang yang “multi-skilled”, sehingga
minimal dapat membantu pengerjaan untuk tahapan
berikutnya.
Slide 50
V model
Model ini merupakan
perluasan dari model
waterfall, karena tahap-
tahapnya mirip dengan yang
terdapat dalam model
waterfall. Jika dalam model
waterfall proses dijalankan
secara linear, maka dalam
model V proses dilakukan
bercabang.
Dalam model V ini
digambarkan hubungan antara
tahap pengembangan
software dengan tahap
pengujiannya
Slide 51
Kekurangan dan Kelebihan Model V
Kekurangan Kelebihan
Slide 52
Prototyping model
Slide 53
Prototyping model
Komponen potensial
menggunakan prototype dan
menyediakan masukan tim
pengembang sebelum
pengembangan skala besar
dimulai.
Dengan menggunakan
pendekatan ini, konsumen dan
tim pengembang dapat
mengklarifikasi kebutuhan
pengembangan software dan
intrepetasi mereka
Slide 54
Kekurangan dan Kelebihan Model Prototype
Kekurangan Kelebihan
Proses analisis dan End user dapat
perancangan terlalu singkat. berpartisipasi aktif.
Mengesampingkan alternatif Penentuan kebutuhan
pemecahan masalah.
lebih mudah diwujudkan.
Bisanya kurang fleksibel dalam
menghadapi perubahan. Mempersingkat waktu
pengembangan software.
Prototype yang dihasilkan
tidak selamanya mudah
dirubah.
Prototype terlalu cepat selesai.
Slide 55
Spiral model
Model spiral yang pada
awalnya diusulkan oleh
Boehm adalah model proses
perangkat lunak yang
evolusioner yang merangkai
sifat iteratif dari prototipe
dengan cara kontrol dan aspek
sistematis dari model
sekuensial linier
Model spiral menjadi sebuah
pendekatan yang realistis bagi
perkembangan system dan
perangkat lunak skala besar.
Slide 56
Spiral model
Slide 57
Terimakasih
Slide 58