Minggu 04
Fungsi Kamus Data/Data Dictionary:
▪
Menjelaskan arti aliran data dan penyimpanan
data dalam DFD
▪
Mendeskripsikan komposisi paket data (elemen
data) yang bergerak melalui aliran data
▪
Mendeskripsikan nilai dan satuan (struktur data)
yang relevan bagi penyimpanan dan aliran
▪
Mendiskripsikan hubungan detail antar
Hubungan DFD dan Kamus Data:
▪
Semua aliran data dalam DFD pada level yang
tidak dapat dipecah lagi dan semua data store
(penyimpanan data) harus didefinisikan dalam
kamus data
▪
Semua elemen data dan semua elemen data store
Isi Kamus Data:
▪
Nama data
▪
Deskripsi data
▪
Sumber/Source
▪
Tujuan/Destination
▪
Bentuk dan volume data
▪
Struktur data (berisi elemen-elemen dan struktur
dengan menggunakan simbol-simbol dalam
kamus data)
Nama Data T.Anggota
Deskripsi Tabel yang berisi data anggota
Sumber Tujuan
Bentuk Tabel
Struktur data T.Anggota = @kode_anggota + nrp + nama + alamat + tlp +
jenis_kelamin
@kode_anggota = 7 {0|..|9} Nrp = {0|..|9}
Nama = *karakter valid*
Alamat = *nama jalan diikuti nomor rumah* Jenis_kelamin = [P|L]
nama_lengkap= gelar_depan + nama_pertama
+ (nama_tengah) + nama_akhir +
2{gelar_belakang}10
gelar_depan = [Drs. | Dra. | Ir. | dr. | Dr. |
Professor]
nama_pertama = {legal-character}
nama_tengah = {legal-character}
nama_akhir = {legal-character}
gelar_belakang = [A-Z|a-z|.|,]
legal-character = [A-Z|a-z|0-9|’|-| |]
informasi_barang = @kode_barang +
nama_barang + unit_jual + harga_satuan +
total_harga
kode_barang = {[A-Z|0-9]}
nama_barang={legal-character}
unit_jual=1{0-9}3
harga_satuan=3{0-9}
total_harga = 3{0-9}
legal-character = [A-Z|a-z|0-9|’|-| |]
tinggi = *unit: meter; range: 100-200*
Jenis_kelamin = *values: [P|L]*
order = nama_customer + alamat_kirim +
1{item}10
Artinya bahwa order selalu mempunyai
nama customer, alamat dimana order akan
dikirim dan mempunyai item pemesanan
antara 1 sampai 10
Jumlah Kamus Data harus sesuai dengan jumlah
aliran data pada DFD level terakhir
Dapat Diuji dengan :
▪
Apakah semua kamus data telah dideklarasikan
dalam DFD?
▪
Apakah semua komponen elemen data sudah
didefinisikan sebagai contoh karakter valid?
▪
Apakah semua notasi yang digunakan sudah dikoreksi
dengan benar?
▪
Apakah masih ada elemen data yang tidak dijelaskan.
Selanjutnya dari kamus data, dapat disusun
Nama Data
Data_anggota
Deskripsi
Data anggota yang harus diberikan jika ingin menjadi
anggota perpustakaan
Bentuk Data
Form
Struktur Data
Data_anggota = @nrp + nama + fakultas + no_telepon
@nrp = 7{0-9}
nama = {karakter_legal}
fakultas = [kedokteran | psikologi | teknik | IT]
no_telepon = 8{0-9}15
Digunakan untuk mendeskripsikan proses
yang terjadi pada DFD yang levelnya tidak
dapat dipecah lagi / level terendah
Hubungan DFD dan PSPEC:
▪
Semua proses dalam DFD yang tidak dapat
dipecah lagi harus didefinisikan dalam PSPEC
▪
Aliran data masuk (input) dan keluar (otput)
dalam DFD dan hubungan ke data store harus
sesuai dan relevan dalam PSPEC
▪
Setiap elemen data dalam PSPEC harus:
▪
Nama dari aliran data atau data store
▪
Atau komponen dalam kamus data untuk suatu aliran
data atau data store yang berhubungan dalam DFD
Syarat dari PSPEC :
▪ Dapat diverifikasi oleh pemakai dan penganalisa sistem, sehingga user dan penganalis mengetahui isi dari proses
▪ Mampu berkomunikasi secara efektif dari pemakai yang bervariasi. Umumnya para analis membuat PSPEC dengan bahasa Inggris
▪ PSPEC dibuat ada yang sampai pada algoritma, tetapi yang penting adalah memudahkan dalam pengimplementasian.
▪ Untuk membuat hasil PSPEC yang bagus perlu didukung
konstruksi-konstruksi, seperti : (Konstruksi dapat berupa Structured english (SE) atau Pseudocode) ▪ If-Then-Else ▪ Do Case…Case…EndCase ▪ For ▪ Do While Condition…EndDo ▪ Repeat_Until Condition
▪ Model Pre/Post Conditions
If-Then-Else : Digunakan untuk mendeskripsikan pilihan secara
biner (pada satu saat hanya ada dua pilihan),bentuknya:
Contoh 1:
If
pelanggan tinggal di Bandung Then
Buka prospek_pemasaran
*membuka penyimpanan pemasaran*
Tulis pelanggan ke prospek_pemasaran
Endif
Contoh 2:
If
umur_pelanggan > 65 Then
Set tarif_pemesanan ke pelanggan_senior
Else
Set tarif pemesanan ke tarif_normal
Endif
if kondisi then | if kondisi then | if kondisi-1 then Tindakan | Tindakan-1 | Tindakan-1
endif | else | else if kondisi-2 then | Tindakan-2 | Tindakan-2
| endif | else
| Tindakan-3 | endif
Do Case…Case…EndCase : Digunakan untuk mendeskripsikan pilihan pada satu saat secara
jamak (multivalued decision), bentuknya: Do case Case variabel=nilai(1) tindakan-(1) ... Case variabel=nilai(n) tindakan-(n) Otherwhise kalimat(n+1) Endcase Contoh: Do case Case umur_pelanggan < 13
Set tarif_pemesanan ke tarif_anak
Case umur_pelanggan > 12 dan umur_pelanggan < 20 Set tarif_pemesanan ke tarif_remaja
Case umur_pelanggan > 19 dan umur_pelanggan < 65 Set tarif_pemesanan ke tarif_dewasa
Otherwise
Set tarif_pemesanan ke tarif_senior Endcase
Catatan: otherwise digunakan untuk spesifikasi alternative yang tidak memenuhi semua
kemungkinan yang sudah disediakan sebelumnya atau sudah tidak perlu didefinisikan lagi karena konsekuensi bagi pilihan(otherwise) tersebut sama.
For : Digunakan untuk mendefinisikan
pengulangan instruksi sampai kondisi tertentu
terpenuhi, bentuknya:
For each_item
Tindakan
Contoh:
Read jumlah_barang
For masing-masing barang
Read data nilai penjualan(unit dan harga)
Compute nilai_barang yaitu unit dikalikan harga
Display dalam satu baris hasilnya
Compute jumlah
Do While Condition…EndDo : Digunakan
untuk mendefinisikan pengulangan instruksi
selama memenuhi kondisi tertentu,
bentuknya:
Do while kondisi_1 tindakan_1
EndDo
Contoh:
Do while (masih ada item_pemesanan)
Nilai_transaksi = harga_item x jumlah_item
Repeat_Until Condition : Digunakan untuk
mendefinisikan pengulangan instruksi selama
memenuhi kondisi tertentu, bentuknya:
Repeat
tindakan_1
Until
kondisi_1
Contoh:
Repeat
Read
record dari file
Isi PSPEC:
▪
Nomor Proses *
▪
Nama Proses *
▪
Deskripsi Proses *
▪
Masukan/Input
▪
Keluaran/Output
▪
Masukan/Input Data Source
▪
Keluaran/Output Data Source
▪
Logika Proses *
Nomor 1.1.
Nama Tambah Data Barang
Deskripsi Menambahkan data barang baru ke database data barang
Input data_barang
Output informasi_data_barang_berhasil_disimpan
Input Data Source data_barang
Output Data Source data_barang
Logika Proses If data_barang is valid Then
Tambah data_barang ke datasource data barang
Tampilkan pesan “informasi_data_barang_berhasil_disimpan”
Else
Tampilkan pesan “data_barang_invalid”
Nomor 2.6.3
Nama Tambah Siswa
Deskripsi Proses untuk menambah data siswa Input data_siswa
Output Kode_anggota, nama, alamat, tlp, jenis_kelamin,
Logika Proses
1. Terima input data siswa 2. Cek data_siswa
3. IF data_siswa valid THEN
data_siswa ditambahkan ke tabel T.Anggota ELSE muncul pesan error
Nama Data Dt_siswa_update
Deskripsi Data anggota untuk proses edit anggota
Sumber Tujuan
Bentuk form
Struktur data Dt_siswa_update = nama + alamat + (telp) + jenis_kelamin
Nama = Alamat =
Nomor 2.6.4
Nama Ubah Siswa
Deskripsi Proses untuk mengubah data siswa
Input data_siswa_update
Output Kode_anggota, nama, alamat, tlp, jenis_kelamin
Logika Proses
1. Menerima kode_anggota
2. Menampilkan data sesuai kode_anggota 3. Menerima data_siswa_update
4 Cek data_siswa_update
5. IF data_ siswa_update valid THEN update ke tabel anggota ELSE muncul pesan error