Materi PSI Int_LPKIA[2007]-OK

Download Report

Transcript Materi PSI Int_LPKIA[2007]-OK

Desain Internal Sistem
KBS-SI
Perancangan Sistem Informasi
Perancangan Internal Sistem
Sesi 10
Desain Internal Sistem
– Tujuan:
• Mengembangkan lebih lanjut subsistem
yang diotomatisasi.
• Merancang detail proses komputer dan
database dari kebutuhan sistem untuk
pembangunan software aplikasi.
– Hasil:
•
•
•
•
•
Dokumen desain spesifikasi database
Konfigurasi HW/SW
Spesifikasi Fungsional Program
Dokumen desain proses komputer
‘Update’ Rencana Proyek.
Perancangan Internal Sistem
2
Sesi 10
Perancangan Data
Menggunakan Metodologi
Pengembangan Data yang meliputi:
•
•
•
•
Model Relasi antar Entitas (Entity
Relationship Model)
Model Data Konseptual/logikal
(Conceptual/logical Data Model)
Model Data Fisikal (Physical Data Model)
Normalisasi dan Sintesis
Perancangan Internal Sistem
4
Sesi 10
Normalisasi
Kriteria Bentuk Normal
1. Tidak Mengandung Grup Berulang.
2. Untuk tabel dengan Primery-Key yang Komposit,
tidak ada atribut biasa yang tergantung hanya
pada sebagian atribut dari Primary-Key
Komposit tsb.
3. Tidak ada atribut-biasa yang bergantung pada
atribut-biasa (bukan Primary-Key) yang lain.
4. Tidak ada atribut-biasa yang memiliki
ketergantungan bernilai banyak kepada PrimaryKey.
Perancangan Internal Sistem
5
Sesi 10
Tahapan Normalisasi
Normalisasi Bentuk 1 (1NF):
• Memisahkan Grup Berulang dari Tabel.
Normalisasi Bentuk 2 (2NF):
• Sudah dalam bentuk normal 1
• Memisahkan atribut-biasa yang tergantung pada
sebagian atribut Primary-Key (Komposit)
Normalisasi Bentuk 3 (3NF):
• Sudah dalam bentuk normal 2
• Memisahkan atribut-biasa yang tergantung pada
atribut-biasa lainnya bukan Primary-Key dari tabel ybs.
Normalisasi Bentuk 4 (4NF):
• Sudah dalam bentuk normal 3
• Memisahkan atribut-biasa yang memiliki tergantungan
bernilai-banyak Perancangan
pada Primary-Key.
Internal Sistem
6
Sesi 10
Sintesis
•
•
Normalisasi telah selesai.
Menggabungkan relasi-relasi dari semua
tabel dan mengevaluasi tabel yang memiliki
hubungan satu ke satu (1:1) dengan
kemungkinan mempunyai primary-key yang
sama.
Perancangan Internal Sistem
7
Sesi 10/5
Kasus Perancangan Sistem:
Menagih Pembayaran – PT. PAPIRUS MAKMUR
PT. PAPIRUS MAKMUR adalah sebuah perusahaan yang
mendistribusikan berbagai jenis kertas di wilayah Jawa-barat.
Untuk setiap pesanan (Order Penjualan) yang diterima ditindaklanjuti dengan pengiriman kertas yang sesuai dan untuk setiap
pengiriman tersebut akan diperoleh tanda terima dalam bentuk
dokumen BAPB (Berita Acara Penerimaan Barang).
Pengiriman ini untuk satu Order Penjualan umumnya dilakukan
berkali-kali di waktu yang berbeda. Jadi satu Order Penjualan
berhubungan dengan banyak BAPB. Proses berikutnya adalah
Menagih Pembayaran untuk penjualan yang telah lengkap
pengirimannya. Berikut uraian mengenai transaksi “Menagih
Pembayaran” ini.
Perancangan Internal Sistem
8
Sesi 10/5
Setiap pagi, Bagian Penagihan akan memeriksa arsip ORDER-JUAL dan BAPB
yang belum ditagih pembayarannya. Jika jumlah total pengiriman kertas seperti
yang tercantum di BAPB telah sesuai dengan jumlah di ORDER-JUAL-nya, maka
piutangnya dianggap sudah jatuh tempo dan dapat ditagih.
Untuk itu akan disusun SURAT-TAGIHAN yang sesuai dan kemudian dikirimkan ke
Pelanggan yang bersangkutan. Secara lebih sistematis hal ini dilakukan sbb:
1. Pilih ORDER-JUAL yang belum ditagih, yalni yang
statusnya “OPEN”.
2. Hitung total pengiriman per jenis kertas untuk ORDERJUAL “OPEN” tersebut dengan melihat data BAPB-nya.
3. Bandingkan jumlah total pengiriman dengan jumlah
pesanan di ORDER-JUAL. Jika jumlahnya sama, maka
ORDER-JUAL ini “dapat ditagih”.
4. Untuk ORDER-JUAL yang dapat ditagih ini disusun
SURAT-TAGIHAN dan dikirimkan ke Pelanggan.
5. Set Status = ‘CLOSE” untk ORDER-JUAL yang telah
ditagih ini.
9
Perancangan Internal Sistem
Sesi 10/5
Kamus Data: DATA STORE:
1. ORDER-JUAL = NoOrdJual+ TgOrdJual+ NoCust+
NmCust+ AlCust+ StaOrd+ {KdATK+NmATK+KtSat+
JmPsn+ HgSat}
2. BAPB = NoBAPB+ TgBAPB+ NoOrdJual+ NoCust+
NmCust+ {KdATK+ NmATK+KtSat+ JmTerima}
Tugas Anda:
1. Rancang komputerisasi untuk transaksi “Menagih
Pembayaran” ini dengan menggambarkan DFD Fisikal
yang dilengkapi batas otomatisasi.
2. Uraikan secara naratif/tekstual mengenai cara kerja sistem
sesuai hasil butir 1.
3. Lakukan Normalisasi terhadap ORDER-JUAL dan BAPB
hingga diperoleh bentuk Normal ke 3(4). Gambarkan hasil
akhirnya.
10
4. Sintesis-kan hasil
butir 3.
Perancangan Internal Sistem
Sesi 10/5
Jawaban Kasus Perancangan Sistem:
Menagih Pembayaran – PT. PAPIRUS MAKMUR
•
DFD Fisikal Level 1 – Menagih Pembayaran
Bapb
Tagihan
Order-jual
4.2
Hitung
Total kirim
4.1
Pilih
Order-jual
Total kirim
Order ‘open’
4.3
Bandingkan
Order dpt
Order & kirim ditagih
Perancangan Internal Sistem
4.4
Cetak
Tagihan
Surat-tagihan
‘Close
’
Order-jual
11
Sesi 10/5
Penjelasan Naratif:
Setiap pagi, bagian Penagihan berkewajiban memeriksa
Order-Jual untuk menentukan Order yang sudah selesai
pengirimannya kemudian menagihnya ke Pelanggan.
Seluruh proses ini diotomatisasi sbb:
a. Order-Jual yang berstatus ‘open’ dipilih.
b. Berdasarkan order ‘open’ tersebut, dicari BAPB yang
berhubungan dan jumlah pengirimannya di-total per
jenis kertas.
c. Total pengiriman per jenis kertas dibandingkan jumlah
pesanannya. Jika untuk setiap jenis kertas jumlah
pengirimannya sudah sesuai dengan jumlah yang
diorder, maka order tersebut sudah dapat ditagih.
d. Untuk order yang dapat ditagih ini dicetak SuratTagihan yang sesuai dan dikirim ke Pelanggan.
e. Set Status = ‘CLOSE” untk ORDER-JUAL yang telah
12
Perancangan Internal Sistem
ditagih ini.
Sesi 10/5
Normalisasi:
1. ORDER-JUAL = NoOrdJual+ TgOrdJual+ NoCust+
NmCust+ AlCust+ StaOrd+ {KdATK+NmATK+KtSat+
JmPsn+ HgSat}
2. BAPB = NoBAPB+ TgBAPB+ NoOrdJual+ NoCust+
NmCust+ {KdATK+ NmATK+KtSat+ JmTerima}
ORDER-JUAL:
ORDER-JUAL = NoOrdJual+ TgOrdJual+ NoCust+ NmCust+
AlCust+ StaOrd+ {KdATK+ NmATK+ KtSat+ JmPsn+
HgSat}
Order
= NoOrdJual+ TgOrdJual+ NoCust+ StaOrd
Customer = NoCust+ NmCust+ AlCust
Order-ATK= NoOrdJual+KdATK+ JmPsn
ATK
= KdATK+ NmATK+ KtSat + HgSat
Perancangan Internal Sistem
13
Sesi 10/5
Normalisasi:
BAPB:
BAPB = NoBAPB+ TgBAPB+ NoOrdJual+ NoCust+ NmCust+
{KdATK+ NmATK+ KtSat+ JmTerima}
BAPB
= NoBAPB+ TgBAPB+ NoOrdJual
Oeder
= NoOrdJual+ NoCust
Customer = NoCust+ NmCust
BAPB-ATK = NoBAPB+KdATK+ JmTerima
ATK
= KdATK+ NmATK+ KtSat
Perancangan Internal Sistem
14
Sesi 10/5
Sintesis
Digabung:
Order dan Order
 HEAD-ORDJUAL
Customer dan Customer  CUSTOMER
ATK dan ATK
 ATK
Tidak digabung:
Order_ATK  TAIL-ORDJUAL
BAPB
 HEAD-BAPB
BAPB-ATK  TAIL-BAPB
Hasil Akhir:
HEAD-ORJUAL= NoOrdJual+ TgOrdJual+ NoCust+ StaOrd
TAIL-ORDJUAL= NoOrdJual+ KdATK+ JmPsn+ HgSat
HEAD-BAPB= NoBAPB+ TgBAPB+ NoOrdJual
TAIL-BAPB= NoBAPB+KdATK+ JmTerima
CUTOMER= NoCust+ NmCust+ AlCust
15
ATK= KdATK+ NmATK+
KtSat
Perancangan Internal Sistem
Sesi 10/5
Perancangan Database
•
Merancang Database logikal dan fisikal
secara rinci.
•
Hanya memperhatikan Data-Store yang
ada pada sub-sistem yang diotomatisasi
(batch, on-line, real-time)
•
Data masukan utama untuk tahap ini
adalah Data Dictionary-Data Store dan
elemen Data Elemen seperti yang telah
dihasilkan dalam tahap Analisis Sistem.
Perancangan Internal Sistem
16
Sesi 10/5
Data Dictionary: DATA-STORE
Nama
Deskripsi
: FAKTUR
: Permintaan pembayaran dari Supplier atas pembelian
baranag ketika barang telah selesai dikirimkan dan
diterima
Volume
Akses
: 25 buah/hari. Rata-rata ada 4 item barang per Faktur.
: Di-batch-kan untuk diproses secara berurutan setiap
pagi hari.
: Umur aktif rata-rata 6 bulan.
Pengarsipan data pasif dilakukan 1 tahun sekali.
Dapat dimusnahkan setelah 15 tahun sesuai aturan
pemerintah
Retensi
Struktur Tabel:
Faktur = No_Faktur+ Tg_Faktur+ No_Order+ Tg_Order+ Total+
{Kd_Barang+ Nm_Barang+ Hg_Satuan+ Jm_Barang}
Perancangan Internal Sistem
17
Sesi 10
• Dalam perancangan database fisikal, perlu
diketahui kapasitas penyimpanan data, maka
harus diketahui volume dari data yang harus
disimpan (demikian juga untuk yang manual)
• Sebelum menghitung kapasitas memory yang
dibutuhkan (byte), ditentukan dulu volume dalam
satuan record-nya; berapa record yang harus
dapat ditampung dalam arsip tsb. Misal: Untuk
siswa berjumlah 4500 orang, perlu tabel database
yang dapat menampung 4500 record.
Perancangan Internal Sistem
18
Sesi 10
 Untuk data kejadian/transaksi (Order, Faktur, Surat dll)
tidak dapat ditentukan secara langsung, karena data
seperti ini dari waktu ke waktu bertambah secara dinamis
dan data yang pasif pada suatu waktu akan dibuang.
Untuk data seperti ini kapasitasnya dapat dihitung
menggunakan persamaanberikut:
Volume-Record =
(Umur Aktif + Periode Pengarsipan) * Frekuensi
Keterangan:
Volume-Record
: besarnya tempat penyimpanan
dalam satuan record. Secara manual
dapat berarti baris atau lembar
Periode-Pengarsipan : Interval waktu untuk memisahkan
data yang tidak digunakan lagi
(pasif) dari tempat penyimpanannya.
Frekuansi
: Jumlah data yang terjadi per satuan
waktu.
19
Perancangan Internal Sistem
Sesi 10
Contoh untuk data Faktur:
1. Frekuensi = 25 Faktur/hari atau
sekitar 550 Faktur/bln (25X22)
2. Umur aktif = 6 bulan
3. Periode Pengaesipan = 1 thn atau 12 bln
4. VolumeRecord = (6 + 12) * 550 = 9.900 Faktur
Ini berarti, jika faktur tersebut akan disimpan di
laci, maka volume laci harus dapat menampung
9.900 Faktur.
Perancangan Internal Sistem
20
Sesi 10
Tahap Perancangan Database
1. Buat daftar data-store yang diperlukan.
2. Lakukan Normalisasi dan Sintesa.
3. Berdasarkan hasil butir 2 serta informasi
statistik, buat daftar file berikut:
Nama File
1. Ord_Jl
2. Det_Ord_Jl
3. …
Frekuansi
660/bln
1980/bln
….
4. Tentukan …
Perancangan Internal Sistem
Umur Aktif
6 bln
6 bln
…
Volume
11880
35640
…
21
Sesi 10
Tahap Perancangan Database (lanjutan…)
4. Tentukan Metoda Akses:
• Secara umum dapat ditentukan berdasarkan
karakteristik pengaksesannya: Sequential,
Random dll.
• Untuk sistem online, umumnya diperlukan
pengaksesan random berdasarkan primary-key
pada saat pemeliharaan data (isi, edit dan
hapus) dan akses sequential hanya pada saat
pencetakan laporan.
• Oleh karena itu gunakan Index-Sequential
berdasarkan Primary-Key.
• Penggunaan Index kedua dapat
dipertimbangkan.
Perancangan Internal Sistem
22
Sesi 10
Tahap Perancangan Database (lanjutan…)
5. Hitung volume file-data dan file-Index:
a. Volume file-data =
1024 + (PanjangRecord + 1) x VolumeRecord
b. Volume file Index =
(PanjangPrimaryKey+4) x VolumeRecord x (1+%Free)
Catatan untuk %Free:
- dBASE = 0.3; Foxbase = 0.5; dll
Nama File
Primary Key
Nama
Panjang
PanjangRecord
(byte)
Perancangan Internal Sistem
Volume
(record)
Volume
(Kbyte)
Sesi 11
Perancangan Konfigurasi HW-SW
● Berdasarkan data statistik sistem serta batasotomatisasi dapat dimulai penetapan yang lebih
spesifik dari HW-SW. Bentuk dasar pemilihan HW
adalah struktur sistem, daya komputasi CPU,
kapasitas disk serta kapasitas saluran komunikasi
data.
● SW sistem yang harus dipilih antara lain:
● Bahasa Pemrograman
●
●
●
●
DBMS (Database Management Syatem)
Query /report Generator
Operating System (Dos, Netware, dll)
Communication Monitor (Netview, dll)
Perancangan Internal Sistem
24
Sesi 11
Perancangan Konfigurasi HW-SW (lanjutan)
 Kapasitas Disk:
 Database
 SW Sistem
 Program Aplikasi
 Daya komputasi CPU serta kapasitas saluran
komunikasi (termasuk kecepatan akses CPUDisk) pada umumnya amat sulit ditentukan
secara analitik kuantitatif. Perkiraan secara
praktikal biasa dilakukan berdasarkan
pengelaman atau rekomendasi dari vendor.
Perancangan Internal Sistem
25
Sesi 11/12
Perancangan Proses
 Dijelaskan dengan menggunakan teknik perancangan
terstruktur.
 Perancangan Terstruktur, meliputi aspek:
 Menggunakan Definisi Persoalan/kebutuhan untuk
mendapatkan solusi (hasil rancangan).
 Memecah kompleksitas sistem yang besar dengan
membagi-bagi sistem ke sejumlah ‘kotak-hitam’ dan
mengorganisasikannya ke bentuk hirarki yang cocok
diimplementasikan di sistem komputer.
 Menggunakan alat grafis untuk memodelkan sistem
sehingga mudah dibentuk dan dipahami.
 Memiliki sejumlah strategi untuk mengembangkan
suatu solusi rancangan.
 Menyediakan sejumlah kriteria untuk mengevaluasi
kualitas dari solusi yang dihasilkan.
Perancangan Internal Sistem
26
Sesi 11/12
Structure Chart
 Suatu teknik pendokumentasian untuk
menggambarkan modul-modul dalam suatu
sistem, dan hubungan antar modulmodulnya. (Yourdon, 1979)
 Menggambarkan alur dan keputusan utama
dalam suatu sistem. (Weinberg, 1980)
Perancangan Internal Sistem
27
Sesi 11/12
Structure Chart (lanjutan)
● Merupakan alat utama perancangan
terstruktur untuk memperlihatkan
struktur dari sistem.
● Pada dasarnya top-down: suatu fungsi
didekomposisi sampai ke tingkat yang
cukup sederhana untuk diprogramkan
dengan menggunakan aturan tertentu
Perancangan Internal Sistem
28
Sesi 11/12
Notasi Structure Chart
Nama
JUDUL
 Adalah suatu modul sehubungan
dengan suatu proses atau seperangkat
proses pada suatu DFD.
 Nama : Nama Modul
 JUDUL: Uraian rinci dari Nama Modul
… Informasi yang dialirkan dari satu
modul ke modul yang lain (Data
Couple)
… Kontrol yang dialirkan dari satu
modul ke modul yan lain (Flag)
Perancangan Internal Sistem
29
Sesi 11/12
Modul:
UDAPEG
Ubah Data
Pegawai
Contoh Structure Chart
Modul
Nama Modul
 Sebuah Modul
dengan nama
UDAPEG
Koneksi antar Modul:
A
Pemanggil
 Modul A memanggil
modul B
B
Yang dipanggil
Perancangan Internal Sistem
30
Sesi 11/12
Contoh Structure Chart (lanjutan)
A
P
Q
FLAG
B
 Modul X memanggil modul
Y berdasar keputusan
dalam modul X.
 Modul X memanggil modul
Z berdasar pada modul
loop dalam modul X
X
Y
 Modul A memanggil modul
B dengan mengirim elemen
data P.
 Modul B mengembalikan ke
A elemen data Q dan
elemen kontrol FLAG
Z
Perancangan Internal Sistem
31
Notasi:
Modul yang di dalamnya
telah ditetapkan datanya
atau pustaka aplikasi
Contoh:
VALIDASI
NO. TELEPON
READ
(BACA)
Modul sistem
WRITE
Sesi 11/12
Contoh Structure chart
Buat Slip
Gaji
Hitung
Gj. Bersih
Ky Honorer
Baca Data
Karyawan
Hitung
Gj. Bersih
Ky Tetap
Cetak
Slip Gaji
Potongan
Pajak
Gj Kotor
Honorer
Hitung
Gj. Kotor
Ky Honorer
Gj Kotor
Ky Tetap
Hitung
Potongan
Pajak
Perancangan Internal Sistem
Hitung
Gj. Kotor
Ky Tetap
33
Sesi 11/12
Modul
 Sekumpulan perintah untuk mengerjakan suatu
aktivitas/proses. Implementasinya:
 Bhs Pascal
 Bhs C
: Procedure, Function.
: Function.
 Didefinisikan sebagai:





Input
Output
Fungsi
Mekanik
Internal data
: apa yang diberikan oleh pemanggil
: apa yang diberikan kepada pemanggil
: Proses yang dilakukan
: Prosedur atau logik dari fungsi
: variabel/memori private
Perancangan Internal Sistem
34
Sesi 11/12
Dalam STRUCTURE CHART, modul hanya
dilihat dari segi external-view-nya saja.
FUNGSI
INPUT
OUTPUT
- prosedur/logik
- data internal
Internal view
External view
Perancangan Internal Sistem
35
Sesi 11/12
Analisis Transformasi dan Transaksi
Merupakan peralihan dari Analisis ke
Perancangan
● Kebanyakan sistem-sistem utama masuk
pke dalam dua model sistem dasar, yaitu:
● Model Transaksi terpusat
● Model Transformasi terpusat.
Perancangan Internal Sistem
36
Sesi 11/12
Peralihan Desain Terstruktur
3
4
C
B
2
D
A
5
E
1
6
C
2
4
B
D
5
A
Perancangan Internal Sistem
3
E
37
Sesi 11/12
Transformasi Model Terpusat
CONTROL
5
3
3
C
CONTROL
2
4
3
CONTROL
4
2
1
5
B
CONTROL
5
D
CONTROL
5
2
1
GET
6
6
A
E
Perancangan Internal Sistem
PUT
38
Sesi 11/12
Peralihan Desain Terstruktur
4
D
9
5
3
C
6
B
7
2
8
A
E
10
F
11
G
12
K
J
I
15
14
13
1
H
C/I
3
14
4
B
D
9
11
6
5
E
10
F
7
12
G
8
13
H
J
15
2
A
K
Perancangan Internal Sistem
39
Sesi 11/12
Transaksi Model Terpusat
CONTROL
C/I
3
14
CONTROL
CONTROL
15
3
2
17
2
16
B
CONTROL
1
J
CONTROL
17
2
18
1
GET 1
18
A
K
4
5
9
D
6
11
10
E
F
Perancangan Internal Sistem
12
7
G
PUT 18
13
8
H
40
Sesi 11/12
Langkah-langkah
1.
2.
3.
4.
5.
6.
7.
8.
9.
Diagram Relasi Data
Matriks Relasi Data
Transisi desain
Dekomposisi Fungsional
Analisis Transformasi dan Transaksi
“Structure Charts”
“Strctured English/Pseudocode/PDL”
Evaluasi desain
“Packaging”
Perancangan Internal Sistem
41
Sesi 11/12
Merancang Structure Chart (SC)
Menggunakan dua strategi:
1. Analisis Transaksi
2. Analisis Transformasi
Langkah umum:
1. Memecah sistem ke unit-unit transaksi dengan
menggunkan Analisis Transaksi.
2. Mengkonversikan setiap unit transaksi ke suatu SC
dengan menggunkan Analisis Transformasi.
3. Merekonstruksi SC-SC yang terpisah ke dalam SC
keseluruhan
Perancangan Internal Sistem
42
Sesi 12
Analisis Transaksi
 Definisi Transaksi
Terdiri dari lima komponen:
1. Event (Kejadian), di lingkungan sistem.
2. Stimulus (Pemicu), masuk ke sistem.
3. Activity (aktivitas), di dalam sistem.
4. Response (Tanggapan), dari sistem ke
lingkungan.
5. Effect (Dampak), terhadap lingkungan
sistem
Perancangan Internal Sistem
43
Sesi 12
Contoh Transaksi
1.
Event
2.
Stimulus
3.
4.
5.
Activity
Response
Effect
: Siswa ingin mengikuti
sejumlah mata kuliah.
: Formulir Rencana Strudi (FRS)
diserahkan.
: Memeriksa FRS.
: FRS diarsipkan.
: Siswa terdaftar di perkuliahan.
Perancangan Internal Sistem
44
Sesi 12
 Unit-unit transaksi dapat diidentifikasi
pada DFD dengan mempelajari bentukbentuk kejadian diskrit di sistem.
A
B
Transaksi 1
2.0
1.0
Y
C
X
3.0
Perancangan Internal Sistem
Transaksi 2
45
Sesi 12
Analisis Transformasi
 Suatu strategi untuk mengkonversikan setiap bagian
DFD (unit transaksi), yang telah diisolasikan dalam
Analisis Transformasi, ke suatu Structure Chart.
6
1
3
A
4
5
E
C
6
2
B
D
C
8
3
A
Perancangan Internal Sistem
4
B
6
D
5
E
46
Sesi 12

Analisis Transformasi terdiri dari 5 langkah:
1.
2.
3.
4.
5.
Gambar DFD dari unit transaksi
Identifikasi fungsi sentral DFD (central transform)
Ubah DFD ke bentuk kasar SC
Perhalus SC menggunkan kriteria rancangan
Periksa SC tetap sesuai dengan DFD asal
Central Transform
 Merupakan bagian DFD yang berisi fungsi
pokok/esensial dari unit transaksi dan tak tergantung
implementasi fisik input-output
 Cara pertama untuk mengidentifikasikannya adalah
dengan cara melihatnya
1
3
A
4
2
6
5
C
E
6
B
D
Perancangan Internal Sistem
8
47
Sesi 12
● Cara kedua dilakukan dengan “memangkas” cabangcabang “masuk” (input-data) dan “keluar” (outputdata) dari DFD:
1. Telusuri setiap aliran dari luar ke tengah DFD.
Tandai data flow yang menyajikan input dalam
bentuk paling esensial. Dengan kata lain, tandai
tahap dimana input segera akan diproses secara
aktual.
2. Telusuri setiap aliran “keluar” dari tengah DFD.
Tandai data flow output dalam bentuk paling
esensial. Dengan kata lain, tandai tahap dimana
output sudah dihasilkan tapi belum diformat.
3. Gabungkan semua tanda dalam lingkaran
tertutup.
Perancangan Internal Sistem
48
Sesi 12
6.0
Slip
Release
Order Jual
Order Jual
Shipping Release
1.1
Isi
Order-Jual
Order ditolak
Order Jual
Valid
Stock
Kurang
Order Beli
Susun
Order Beli
1.2
Periksa
Stock
Customer
1.3
BackOrder
1.4
Rekam
Back-Order
PART
Order Jual
Detil Order
Jual
Back Order
CENTRAL
TRANSFORM
Perancangan Internal Sistem
49
Sesi 12
 Membuat SC kasar (versi pertama)
1. Tentukan “Boss” dari SC:
a. Diambil dari Central Transform.
b. Diambil dari luar
2. Biarkan bubble lainnya menggantung pada “Boss”.
3. Hilangkan panah pada DFD.
4. Buat SC versi pertama.
PERIKSA
ORDER JUAL
1.2
1.1
2.0
1.3
1.4
ISI
ORDER JUAL
Perancangan Internal Sistem
RELEASE
ORDER JUAL
SUSUN
ORDER BELI
REKAM
BACK ORDER
50
Sesi 12
 Perhalus dan Perbaiki SC
1. Dekomposisikan (pecah lebih lanjut) dan
reorganisasi modul-modul SC versi pertama.
2. Tambahkan modul baca/tulis untuk
mengakses peralatan I/O, termasuk file.
3. Berikan nama modul yang sesuai dengan
aturan hirarki.
4. Gambarkan FLAG yang dibutuhkan.
5. Periksa seluruh kriteria perancangan
(evaluasi)
Perancangan Internal Sistem
51
Sesi 12
PERIKSA
ORDER JUAL
SUSUN
ORDER BELI
DISPLAY
SCREEN
REKAM
BACK ORDER
Order Jual
edit
RELEASE
ORDER JUAL
Quit
Order Jual
ISI
ORDER JUAL
EDIT
ORDER JUAL
Back Order
Yg diformat
VALIDASI
ORDER JUAL
FORMAT
BACK ORDER
Perancangan Internal Sistem
CETAK
BACK ORDER
52
Sesi 12
RELEASE
ORDER JUAL
BENTUK
DETAIL SLIP
BACA
DETAIL
ORDER JUAL
BACA
ORDER JUAL
BACA
CUSTOMER
UPDATE
CUSTOMER
CETAK
SLIP
BACA
PART
Perancangan Internal Sistem
53
Sesi 12
Back Order
2.3
Detail
OrderJual
Tangani
Backorder
Nota Terima
2.1
6.0
Release
Order Jual
Stock ada
Validasi
Barang
Datang
Barang
Valid
2.2
Update
Stock
PART
Perancangan Internal Sistem
Buffer
Shipping
Release
2.4
Buat
Shipping
Release
54
Sesi 12
CATAT
BARANG
DATANG
Part
BUAT
SHIPPING
RELEASE
TANGANI
BACKORDER
EDIT
NOTA KREDIT
BACA
PART
BACA
BACK ORDER
DetOrdJual
DISPLAY
SCREEN
UPDATE
STOCK
Nota Trima edit
Nota Terima
VALIDASI
BARANG
DATANG
BACA DETAIL
ORDER JUAL
Perancangan Internal Sistem
SIMPAN
ITEM
BACA
ITEM
RELEASE
ORDER JUAL
BUFFER
HAPUS
BACK ORDER
55
Sesi 13
Spesifikasi Modul
 Structure-Chart umumnya hanya memperlihatkan
struktur keseluruhan dan “menyembunyikan” hampir
seluruh rincian prosedural.
 Sebagai penghubung dengan programmer, perancang
sistem sebaiknya membuat suatu spesifikasi dari setiap
modul yang ada.
 Bentuk spesifikasi modul:






MODUL
GUNA
INPUT
OUTPUT
LAYOUT
LOGIK
: <nama modul>
: <keterangan kegunaan modul>
: <daftar input ke modul>
: <daftar output dari modul>
: <screen lay-out atau print lay-out>
: <action diagram dan atau
“structure-English”>
Perancangan Internal Sistem
56
Sesi 13
Alat Menspesifikasikan Proses (lanjutan)…
DECISION TABLE
KONDISI
ATURAN KEPUTUSAN
Volume
<10
<10
<10
>= 10
>= 10
>= 10
Wilayah
TMR
TGH
BRT
TMR
TGH
BRT
6%
5%
4%
10%
10%
8%
% Potongan
DECISION TREE
TMR
10%
TGH
10%
BRT
8%
TMR
6%
TGH
5%
Perancangan Eksternal Sistem BRT
4%
VOLUME
> =10
POTONGAN
< 10
57
Sesi 13
Simbol Action Diagram
• Urutan (sequence):
Prosedur Cetak
Inisialisasi
Cetak_Header
Cetak_Body
Cetak_Final
58
Sesi 13
Simbol Action Diagram (lanjutan…)
• Looping
Selama masih ada data
Baca data
Hitung
Cetak hasil
Perancangan Eksternal Sistem
59
Sesi 13
Simbol Action Diagram (lanjutan…)
• Seleksi (selection)
JIKA
JIKA
JIKA PIL=1
Kerjakan A
LAINNYA
JIKA PIL=2
Kerjakan B
JIKA PIL=3
Kerjakan C
JIKA PIL=4
Kerjakan D
Perancangan Eksternal Sistem
60
Sesi 13
Contoh-contoh Action-Diagram:
Membuat Kopi Manis
Siapkan Gelas, Sendok dan bahan
Masukan Kopi satu sendok ke gelas
Masukan gula dua sendok ke gelas
Tambahkan air panas secukupnya
Siapkan Gelas, Sendok dan bahan
Kocek air kopi dengan sendok
Jika kurang manis
Tambahkan gula setengah sendok
Perancangan Eksternal Sistem
61
Sesi 13
Modul : CATAT_BARANG_DATANG
Guna : Untuk menambahkan part yang datang, ke stock
serta melayani backorder.
Input : Output : Procedure CATAT_BARANG_DATANG
Buka file PART, BACKORDER,
DETORDJUAL, BUFFER
Selama masih ada Nota-Terima
Input Nota-Terima
Untuk setiap part yang datang
Update_stock
Tangani_Backorder
Buat_Shipping_Release
Perancangan Eksternal Sistem
62
Sesi 13
Hitungan Gaji
Hitungan Gaji Pokok
Jika Status = Kawin
Tunj. Istri = 0,2 x gaji Pokok
Jika tidak
Tunj. Istri = 0
Jika Jumlah anak > 3
Tunj. Anak = 0,3 x Gaji Pokok
Jika Tidak
Tunj.Anak = Jumlah Anak x 0,1 Gaji Pokok
Gaji = Gaji Pokok + Tunj. Istri + Tunj. Anak
Perancangan Eksternal Sistem
63
Sesi 13
PROSES PERIKSA ORDER - JUAL
Terima Order-Penjualan
Untuk tiap item-part di order
periksa daftar PART
Jika tidak ada dalam daftar
Tolak Order Penjualan
Jika persediaan kurang
Catat dalam BACKORDER
Jika tidak
Catat dalam SLIP
Jika ada slip
Kirim SLIP ke Dept. KIRIM
Perancangan Eksternal Sistem
64
Sesi 14
EVALUASI DESAIN
•
•
•
•
Complexity (Kompleksitas)
Copling (Kopeling/perangkai)
Cohesion (Kohesi/kepaduan)
Heuristics (heuristik)
Sesi 14
KOHESI (COHESION)
Perekat yang memegang elemenelemen pengolahan suatu modul
bersama
Sesi 14
KOHESI (COHESION)
• Kohesi adalah perpanjangan alami dari konsep penyembunyian
informasi.
• Modul yang kohesif ‘idealnya’ melakukan tugas tunggal dalam
prosedur perangkat lunak.
• Modul yang kohesif Memerlukan sedikit interaksi dengan
prosedur yang dilakukan di bagian lain dari sebuah program.
• Kohesi dapat direpresentasikan sebagai "spektrum“ dan harus
selalu berusaha untuk mencapai kohesi yang tinggi, walaupun ,
spektrum pertengahan bisa diterima.
• Skala untuk kohesi adalah nonlinier. Artinya, kohesi ‘low-end’
jauh "lebih buruk" dari pertengahan, dan yang mendekati
"bagus" adalah kohesi yang ‘high-end’.
• Dalam prakteknya, seorang desainer tidak perlu bersangkutan
dengan pengkategorian kohesi dalam modul tertentu. Sebaliknya,
konsep keseluruhan harus dipahami dan rendahnya tingkat kohesi
harus dihindari ketika modul dirancang.
Sesi 14
Tingkatan Kohesi
•
•
•
•
•
•
•
Functional (Fungsional)
(Strongest)
Sequential (Sekuensial)
Communicational (Komunikasional)
Procedural (Prosedural)
Temporal(Temporal)
Logical (Logikal)
Coincidental (Koinsidental)
(Weakest)
Sesi 14
Kohesi ‘Functional’
• Modul melakukan satu dan hanya satu tugas
• Didefinisikan dengan kalimat penting sederhana
Hitung
SQRT (Akar)
Sesi 14
Kohesi ‘Sequential’
• Transformasi data yang berurut
• Kontrol aliran yang berhubungan dengan
aliran data
GET
RECORD
val. rec
record
GET
VALID
GROUP
VALIDATE
COLLECT
Sesi 14
Kohesi ‘Communicational’
• Semua bawahan beroperasi pada data input yang sama
atau menghasilkan output data yang sama
• Urutan eksekusi tidak
penting
GET
SALARY
STATUS
CALCULATE
AVERAGE
SALARY
CALCULATE
MAXIMUM
SALARY
Sesi 14
Kohesi ‘Procedural’
Master
record
• Urutan eksekusi adalah penting namun kegiatan individu
berhubungan
• Bagan struktur mungkin menunjukkan iterasi keputusan
AND/OR (DAN/ATAU)
• Bawahan lebih terkait dengan
urutan eksekusi daripada
GET
dengan fungsi spesifik
MATCHED
MASTER
yang tunggal
GET
USER
TRANSACTION
READ
MASTER
RECORD
MATCH
TRANSACTION
AND RECORD
Sesi 14
Kohesi ‘Temporal’
• Semua bawahan harus dijalankan di (sekitar) waktu
yang sama
• Urutan eksekusi tidak penting
DO
PROGRAM
STARTUP
OPEN
ALL
FILES
INITIALIZE
ALL
VARIABLES
DISPLAY
GREETING
Sesi 14
Kohesi ‘Logical’
• Modul dengan fungsi yang sama dikelompokkan
bersama
• Sering, bendera yang digunakan untuk menunjukkan
fungsi tertentu yang
harus dilakukan
READ FROM
VARIOUS
DATA
Tape
Input
READ
CARDS
READ
FROM
TAPE
READ
FROM DISK
Sesi 14
Kohesi ‘Coincidental’
• Bawahan tidak ada hubungannya dengan satu
sama lain
• Aneka modul
DO
STUFF
GET
CLOCK
TIME
CHECK
SINTAX
OUTPUT LINE
CALCULATE
Sesi 14
Pengukuran Kohesi
• Berusaha untuk di level kohesi yang
terkuat
• Modul diklasifikasikan menurut tingkat
terendah kohesi berlaku untuk semua
elemen
Sesi 14
KOPLING (COUPLING)
• Suatu cara untuk mengukur kualitas desain
• Merupakan derajat kekuatan dari kesalingtergantungan antara dua modul
• Coupling harus minimal sehingga modul
bebas dan sebebas mungkin (tidak
bergantung)
Sesi 14
Faktor-faktor yang
mempengaruhi ‘coupling’
• Tipe koneksi
• Kompleksitas antarmuka
• Aliran informasi
Sesi 14
Tipe koneksi
• Minimal
• Normal
• Patologi
(Lowest)
coupling
Sesi 14
Kompleksitas antarmuka
1. Jumlah parameter yang berbeda
2. Aksesibilitas informasi
3. Struktur informasi
Pertimbangan yang paling penting adalah no 1.
Sesi 14
Aliran informasi
• Data
• Kontrol
• Hidrid (data yang dipakai juga
untuk kontrol)
Sesi 15
Tipe-tipe ‘coupling’
•
•
•
•
•
Content
Common
Control
Stamped
Data
• Derajat Tertinggi
Normal
• Derajat Terendah
Yang terbaik yang
terendah
Sesi 15
Coupling: Content
• Referensi isi modul lain
• Pengambilan data tanpa panggil (‘call’) modul
yang mempunyai data tsb.
A
B
C
Sesi 15
Coupling: Common
• Digabungkan oleh lingkungan data umum
(Untuk File Tradisional)
GET
PROCESS
.
Sesi 15
Coupling: Common
• Contoh: pada saat print ada kontrol untuk pindah
baris baru.
Item
New
Line
REPORT
DO IT
New
Line
IT
Item
HEADER
IT
IT
Process IT
LINE
Transfer kontrol aktual
VALIDATE
REJECT
Melintaskan data yang
mengontrol modul lain
PROCESS
Sesi 15
Coupling: Stamp
• Melintaskan struktur data bukannya elemen
data
A
Total
Mileage
AutoRecord
SUM
MILEAGE
Berapa jarak
tempuh yang
sudah dilakukan
Sesi 15
Coupling: Data
• Hanaya melintaskan elemen-elemen data
CALC
TRIG. VALUE
C
TAN
A
SIN
CALC
SIN
B
CALC
COS
COS
B
CALC
TAN
Sesi 15
Pengukuran Kopling
• Mengusahakan kopling tingkat terendah
• Modul diklasifikasikan menurut tingkat
tertinggi kopling
Sesi 15
Mengikat Waktu (Binding Time)
• Menunda pengikatan waktu sedikit
menurunkan kopling
•
•
•
•
•
CODE (Kode)
COMPILATION (Kompilasi)
LINKAGE EDITOR (Hub. Editor)
LOAD (Beban)
EXECUTION (Eksekusi)
(Most)
(Least)
Sesi 15
DECOUPLING
(Membuat Kopling menjadi Rendah)
•
•
•
•
•
Desain sistem uncoupled
Menunda pengikatan sampai terakhir
Menggunakan parameter eksplisit
Menggunakan koneksi standar
Melokalisasi data dari lingkungan umum
Sesi 15
HEURISTICS
Trik yang umumnya meningkatkan
modularitas sistem
Sesi 15
Aspek Heuristics
•
•
•
•
•
Ukuran modul (module size)
Rentang kendali (Span of control)
Kipas (Fan-In)
Ruang linkup kendali (sope of effect/scope of control)
Sistem diperhitungkan sepenuhnya (fully factored
systems)
• Kemudahan akses data (data accessibility)
• Modul-modul dapat diprediksi (predictable modules)
• Morfologi/bentuk kata (morphology)
Sesi 15
Strctured English:
PROSES PERIKSA ORDER –JUAL.
Untuk setiap item – part di order
Periksa daftar PART
Jika tidak ada dalam daftar
Tolak order penjualan
Jika persediaan kurang
Catat dalam BACKORDER
Jika tidak
Catat dalam Slip
Jika ada slip
Kirim SLIP ke Dept_Kirim.
Perancangan Internal Sistem
93