Pemograman Terstruktur
•
Modul ini berisi tentang konsep rekayasa
perangkat lunak (software engineering) untuk
pemograman terstruktur
•
Pemodelan perangkat lunak menggunakan DFD
(Data Flow Diagram).
•
Untuk mempermudah pemahaman, ilustrasi
•
Pemograman terstruktur adalah konsep atau
paradigma atau sudut pandang pemograman yang
membagi-bagi program berdasarkan fungsi-fungsi
atau prosedur-prosedur yang dibutuhkan program
komputer
•
Fungsi-fungsi dan prosedur ditulis secara sekuensial
•
DFD tidak sesuai untuk memodelkan
sistem perangkat lunak yang akan
The Hierarchy of Data-Flow
Diagrams
•
Contex Diagram/
Diagram Konteks
•
DFD Fisik
•
DFD Logic
T h e H i e r a r c h y o f D a t a F l o w D i a g r a m s
P h y s i c a l D F D N o l o w e r l e v e ls
Tahap Perancangan Database
Perancangan Secara Konseptual
1.
Diagram Konteks
•
Diagram konteks adalah diagram yang terdiri dari suatu
proses dan menggambarkan ruang lingkup suatu sistem.
•
Diagram konteks merupakan level tertinggi dari DFD
yang menggambarkan seluruh input ke sistem atau
output dari sistem. Ia akan memberi gambaran tentang
keseluruhan sistem. Sistem dibatasi oleh boundary
(dapat digambarkan dengan garis putus).
•
Dalam diagram konteks hanya ada satu proses. Tidak
boleh ada store dalam diagram konteks.
•
Jadi, yang dibutuhkan adalah
(1) Siapa saja pihak
yang akan memberikan data ke sistem, (2) Data
apa saja yang diberikannya ke sistem, (3)
kepada siapa sistem harus memberi informasi
atau laporan, dan (4) apa saja isi/ jenis laporan
yang harus dihasilkan sistem
.
Kata “Siapa” di atas dilambangkan dengan kotak
persegi (disebut dengan terminator), dan kata “apa” di
atas dilambangkan dengan aliran data (disebut dengan
data flow), dan kata “sistem” dilambangkan dengan
9
Context Diagram
•
Sering disebut DFD Level 0
•
Hanya Ada satu proses
•
CD menyoroti sejumlah karakteristik penting sistem,
yaitu :
1.Kelompok pemakai, organisasi atau sistem lain dimana
sistem melakukan komunikasi (sebagai terminator).
2.Data masuk, yaitu data yang diterima sistem dari
lingkungan dan harus diproses dengan cara tertentu.
3.Data keluar, yaitu data yang dihasilkan sistem dan
diberikan ke dunia luar.
4.Penyimpanan data (storage), yaitu digunakan secara
bersama antara sistem dengan terminator. Data ini
dapat dibuat oleh sistem dan digunakan oleh
lingkungan atau sebaliknya dibuat oleh lingkungan dan
digunakan oleh sistem. Hal ini berarti pembuatan
simbol data storage dalam CD dibenarkan, dengan
syarat simbol tersebut merupakan bagian dari dunia
diluar sistem.
Contoh Kasus
•
Sebagai Contoh, beberapa kemungkinan (data) yang
diberikan pembeli kepada kasir adalah :
(1) barang
yang ditanyakan, (2) barang yang akan dibeli,
dan (3) Uang pembayaran
. Sebaliknya,
kemungkian informasi yang diberikan kasir kepada
pembeli adalah
(1) keadaan barang yang
ditanyakan, (2) jumlah uang yang harus dibayar.
Sedangkan informasi yang diberikan kasir kepada
Pemilik adalah Laporan Jumlah Uang Masuk beserta
Jumlah Barang yang Terjualnya. DFD Konteksnya
Contoh Context Diagram
•
Data Flow Diagram (DFD) adalah representasi
grafik dari sebuah sistem. DFD menggambarkan
komponen-komponen sebuah sistem, aliran-aliran
data di mana komponen-komponen tersebut, dan
asal, tujuan, dan penyimpanan dari data tersebut.
•
Kita dapat menggunakan DFD untuk dua hal
utama, yaitu untuk membuat dokumentasi dari
sistem informasi yang ada, atau untuk menyusun
dokumentasi untuk sistem informasi yang baru.
Tahap Perancangan Database
Perancangan Secara Konseptual
13
Petunjuk Membuat DFD
•
Pilih nama yang jelas maksudnya (bagi proses,
aliran, penyimpanan, dan terminator)
– Untuk proses sebaiknya menggunakan nama yang mengacu pada fungsi, yaitu
gabungan antara kata kerja yang spesifik dan obyek, misalnya memproses laporan inventori, validasi nomer telepon dan lain-lain. Untuk terminator lebih mengacu pada orang atau kelompok orang, sedangkan untuk aliran dan penyimpanan mengacu pada paket data atau informasi yang terkandung didalamnya.
– Jangan menggunakan nama yang terlalu umum, misalnya proses data, tangani
masukan dan lain-lain.
– Gunakan nama yang familiar bagi pemakai.
•
Menomori proses untuk memperjelas sistematika.
– Tidak jadi masalah bagaimana urutan ditempatkan. – Nomor tidak menunjukkan urutan.
– Penomoran dimaksudkan sebagai identifikasi proses dan memudahkan penurunan
Petunjuk Membuat DFD (2)
• Menggambar kembali DFD hingga beberapa kali, sehingga cukup estetik.
Penggambaran kembali yang kadang-kadang bahkan lebih dari sepuluh kali digunakan untuk menjaga secara teknis gambar tersebut sudah benar, dapat diterima oleh pemakai, misalnya tingkat operasional yang akan
mengoperasikan dan dapat diterima oleh pimpinan yang dalam hal ini
menentukan strategi organisasi. Ketika penggambaran dilakukan ada beberapa hal yang perlu diperhatikan, yaitu :
– Ukuran dan bentuk lingkaran sebaiknya tetap sama, karena jika tidak dapat
menimbulkan kesan lingkaran yang lebih besar memproses sesuatu yang juga lebih besar.
– Panah yang melengkung dan lurus tidak jadi masalah tetapi sebaiknya
tidak menggunakan kedua cara tersebut pada gambar yang sama.
– Menggambar dengan tangan atau menggambar dengan perangkat
tertentu, tidak merupakan masalah. Menggambar dengan tangan seringkali memberikan sesuatu yang lain katakanlah sentuhan seni, tetapi
Petunjuk Membuat DFD (3)
• Mencegah DFD yang terlalu kompleks dan tidak perlu.
– Kegunaan DFD bukan hanya menggambarkan fungsi dan interaksinya
dalam sistem secara akurat tetapi juga untuk dibaca dan dimengerti oleh bukan hanya penganalisa sistem, tetapi juga pemakai yang
berpengalaman dalam sistem yang dimodelkan. Hal ini berarti : jangan membuat DFD dengan terlalu banyak proses, aliran, penyimpanan dan terminator.
• Menjamin konsistensi DFD tersebut secara intern ataupun yang berkaitan
Perhatikan !
16
• Mencegah proses yang mempunyai
masukan tetapi tidak mempunyai keluaran yang dikenal dengan lubang hitam (black-hole)
• Mencegah proses yang mempunyai
keluaran tetapi tidak punya masukan, misalnya penghasil bilangan acak.
• Hati-hati dengan aliran dan proses
yang tidak dinamakan karena dapat mengakibatkan elemen data yang saling tidak berhubungan menjadi satu.
• Hati-hati dengan penyimpanan yang
punya status hanya dapat dibaca atau hanya dapat ditulis dan
Penurunan Level DFD
• Setiap penurunan ke level yang lebih rendah harus mampu
mempresentasikan proses tersebut dalam spesifikasi proses yang jelas, sehingga seandainya belum cukup jelas maka seharusnya diturunkan ke level yang lebih rendah.
• Setiap penurunan harus dilakukan hanya jika perlu.
• Tidak semua bagian dari sistem harus diturunkan dengan jumlah level yang
sama karena yang kompleks bisa saja diturunkan, dan yang sederhana mungkin tidak perlu diturunkan. Selain itu, karena tidak semua proses dalam level yang sama punya derajat kompleksitas yang sama juga.
• Konfirmasikan DFD yang telah dibuat pada pemakai dengan cara top-down. • Aliran data yang masuk dan keluar pada suatu proses di level harus
berhubungan dengan aliran data yang masuk dan keluar pada level x+1. Dimana level x+1 tersebut mendefinisikan sub proses pada level x tersebut.
• Ketika mulai menurunkan DFD dari level tertinggi, cobalah untuk
18
Nama
Level
Nama
Diagram
Nomor
Process
0
Context
0
1
Diagram 0
1.0 2.0 3.0 ....
2
Diagram 1.0
1.1 1.2 1.3 ....
2
Diagram 2.0
2.1 2.2 2.3 ....
2
Diagram 3.0
3.1 3.2 3.3 ....
3
Diagram 1.1
1.1.1 1.1.2 ....
3
Diagram 1.2
1.2.1 1.2.2 ....
3
Diagram 1.3
1.3.1 1.3.2 ....
dst
Laporan penjualan 1 Mencatat buku terjual Catatan royalti
Data buku terjual
Contoh Kasus
•
Di sebuah tempat penyewaan
Video Compact