Pemodelan Proses menggunakan Data flow Diagram (DFD)

advertisement
Pemodelan Proses
menggunakan
Data flow
Diagram (DFD)
Materi
•
•
•
•
•
•
•
•
•
Model dan Model Proses
Data Flow Diagram (DFD)
Versi Representasi DFD
Komponen DFD
– Proses, Entitas, Aliran Data, Data store
Aturan-aturan dalam Pembuatan DFD
Penurunan Level pada DFD
Bentuk kesalahan dalam Penggambaran DFD
Langkah-langkah Pembuatan DFD
Kapan memodelkan proses
Apa itu model…?
• Model:
– representasi dari realitas, umumnya dinyatakan
dalam bentuk grafis
• Pemodelan proses:
– teknik untuk menata dan mendokumentasikan
proses, input, output, dan simpanan data dalam
suatu sistem
• Pemodelan proses :
– alat dalam rekayasa perangkat lunak
– sering dipakai untuk memodelkan hal lain yang
bukan perangkat lunak
Tiga Alasan Pemodelan
• Dapat memfokuskan pada hal-hal penting dalam sistem
tanpa mesti terlibat terlalu jauh.
• Mendiskusikan perubahan dan koreksi terhadap
kebutuhan pemakai dengan resiko dan biaya minimal.
• Menguji pengertian penganalisa sistem terhadap
kebutuhan pemakai dan membantu pendesain sistem
dan pemrogram membangun sistem.
Karakteristik Pemodelan
• Dibuat dalam bentuk grafis dan tambahan
keterangan secara tekstual.
• Dapat diamati dengan pola top-down dan
partitioned.
• Memenuhi persyaratan minimal redundancy.
• Dapat mempresentasikan tingkah laku sistem
dengan cara yang transparan.
APA ITU...?
• Data Flow Diagram (DFD)
• Diagram Arus Data (DAD)
– alat
bantu
pemodelan
proses
yang
menggambarkan aliran data dalam suatu
sistem serta aktivitas atau pemrosesan yang
dilakukan oleh sistem tersebut
– sinonim : model proses, data flow diagram
(DFD)
DFD/DAD
• Process modeling – teknik yang digunakan untuk mengatur dan
mendokumentasikan proses sebuah sistem
– Aliran data melalui proses
– Logik
– Kebijakan (policies)
– Prosedur
• Data flow diagram (DFD) – proses yang digunakan untuk
menggambarkan aliran data melalui sistem dan kerja yang
dilakukan oleh sistem
• Sinonim: bubble chart, transformation graph, dan process model.
• DFD sering dipakai untuk business process redesign.
DFD/DAD
• Data Flow Diagram atau DFD adalah salah satu tools penting yang
digunakan oleh analis sistem.
• Penggunaan DFD dipopulerkan oleh DeMarco (1978) dan Gane &
Sarson (1979) melalui metodologi analisis sistem terstruktur
(structured systems analysis methodologies).
• Mereka menganjurkan agar DFD menjadi alat pertama yang
digunakan analis sistem” untuk membuat sebuah model sistem
yang menunjukkan keterkaitan setiap komponen-komponen
sistemnya.
• Komponen sistem tersebut adalah proses-proses dalam sistem,
data yang digunakan oleh proses-proses tersebut, eksternal
entitas yang berinteraksi dengan sistem dan aliran data/informasi
di dalam sistem.
DFD/DAD
• Menggunakan beberapa simbol untuk merepresentasikan aliran data
antara proses, penyimpanan data dan aliran data ke dalam dan keluar
sistem
• Mengutamakan aliran data dibandingkan aliran dokumen atau laporan
• Lebih bersifat konseptual, tampilan non fisik / logika data dalam sistem,
menyediakan dokumentasi aliran data dan proses pengolahan data yang
lebih baik
• Tidak memperlihatkan urutan atau waktu dari setiap proses
• Tidak menampilkan keputusan
• Memiliki pandangan sistem secara global dan rinci (sub sistem/proses)
serta digambarkan dalam hierarki level
• Dapat digunakan untuk mendeskripsikan aliran data dalam berbagai level
dan antar level
Pemodelan Proses (Process Modeling)
• Pemodelan Proses (Process Modeling), merupakan teknik
yang digunakan untuk mengelola dan mendokumentasikan
proses sistem.
• Teknik mengelola dan mendokumentasikan struktur dan aliran
data melalui PROSES sistem dan atau logika, kebijakan dan
prosedur yang akan diimplementasikan oleh PROSES sistem.
Suatu tipe khusus model proses yang disebut diagram konteks.
• Pemodelan proses berasal dari metode engineering perangkat
lunak, oleh sebab itu kita mungkin harus menghadapi
beberapa tipe model proses misalnya bagan struktur program,
flowchart logika, atau tabel keputusan dalam bidang aplikasi
pemrograman.
Versi Representasi DFD
•
•
•
•
•
•
DeMarco
Gane & Sarson
Coad & Yordon
A. Seen
SSADM
dll
DeMarco/Yourdon
Gane and Sarson
Komponen Penggambaran DFD
Proses (Process)
• kerja yang dilakukan oleh sebuah sistem menanggapi
aliran data yang masuk atau kondisikondisi tertentu.
Sinonimnya adalah transform.
• Pekerjaan atau kegiatan yang dilakukan terhadap data yang
masuk (input) untuk menghasilkan data keluaran (output)
• Proses memperlihatkan mengenai apa yang dilakukan oleh
sistem, kaitannya dengan aktifitas pengolahan data
(perekaman, pengolahan, pembentukan informasi, dsb)
• Proses hanya menunjukkan kegiatannya saja, tidak
merujuk orang/pihak yang melakukan
• Setiap proses mempunyai satu atau lebih data input dan
menghasilkan satu atau lebih data output.
• Setiap proses mempunyai nomor dan nama yang unik.
 contoh: proses pembayaran, proses cetak KRS, dll
 Contoh: Pembuatan Faktur Penjualan, dsb)
Entitas (Entity)
• Entitas Luar (External Entity )
Merupakan pihak di luar organisasi (bisa orang atau
organisasi) yang mengirimkan input ke sistem atau
menerima output dari sistem berupa data atau informasi
guna menunjukkan batasan dari sistem
• Entitas (Entity), Merupakan pihak di dalam atau diluar
organisasi (bisa orang atau organisasi) yang mengirimkan
input ke sistem atau menerima output dari sistem berupa
data atau informasi guna menunjukkan batasan dari sistem
• Perannya memberi input data ke sistem atau menerima
output data/informasi dari sistem.
• Desainer (analis sistem) tidak mempunyai kontrol atau
kekuasaan terhadap entitas eksternal.
• Tidak sama dengan entitas dalam basis data
• contoh: Bank, Sekretariat, Kaprodi, Departemen Pendidikan,
dll
Aliran Data (Data Flow)
•
•
•
•
•
•
Data flow (aliran data) adalah data yang mengalir di dalam
sistem, tepatnya adalah :
– diantara dua proses
– dari data store ke proses dan sebaliknya
– dari entitas eksternal ke sistem dan sebaliknya
Dari sifatnya data yang mengalir dapat sebagian atau
keseluruhan tergantung kebutuhan dan dilepaskan dari
pandangan proses fisik
Nama sebuah aliran data diusahakan sesuai mewakili objek data
sebenarnya dan sedapat mungkin tidak menimbulkan kesan
proses, atau sesuatu yang berkaitan dengan format/media
(misalnya : Laporan, Faktur, Surat, dsb)
menyatakan data masukan ke suatu proses atau data keluaran
dari suatu proses
dapat juga menyatakan update data dalam suatu file, basis data
atau simpanan data yang lain.
contoh: Matakuliah yang diambil, Jumlah yang dibayarkan, Saldo
terakhir, dll
Data Flow Packet Concept
Composite and Elementary Data Flows
Diverging and Converging Data Flows
• Aliran divergen dan konvergen aliran
ini digunakan untuk menggambarka
aliran data menyebar atau memusat
pada diagram aliran data.
– Aliran data divergen adalah suatu
aliran yang terpisah menjadi banyak
data, hal ini mengindikasikan bahwa
semua atau sebagian aliran data
tunggal terkirim ke tujuan yang
berbeda
– Aliran data konvergen adalah
penyatuan banyak aliran data
menjadi aliran data tunggal, hal ini
mengindikasikan bahwa aliran data
dari sumber yang berbeda dating
sebagai paket tunggal untuk
pengolahan selanjutnya.
Simpanan Data (Data Store)
• Data store adalah tempat penyimpanan atau file
a i et repository .
• Setiap data store mempunyai nama yang unik.
• Pandangan data store dilepaskan dari konsep file
database komputer atau arsip dokumen manual.
• Bisa berupa file atau basis data tapi tidak selalu
berupa file atau basis data
• Merupakan kumpulan data
• contoh: file Mahasiswa, data KRS, dll
Data Flows to and from Data Stores
ATURAN-ATURAN PEMBUATAN DAD
Minimal salah satu ujung
suatu aliran data adalah
proses. Jadi tidak boleh
ada aliran data :
•Dari entitas ke entitas
•Dari entitas ke simpanan
data
•Dari simpanan data ke
entitas
•Dari simpanan data ke
simpanan data
ATURAN-ATURAN PEMBUATAN DAD
1. Data yang mengalir dalam setiap
level DAD harus konsisten (jumlah
data masuk dan keluar dalam suatu
proses harus konsisten)
2. Suatu proses harus punya output
Blackhole: proses tanpa output
3. Suatu proses harus punya input
Miracle: proses tanpa input
4. Suatu proses harus punya cukup
input untuk menghasilkan output
Gray hole: proses tanpa input
memadai untuk menghasilkan
output
ATURAN-ATURAN PEMBUATAN DAD
7. Data-data yang berasal dari sumber yang sama dan
mengalir dengan tujuan yang sama dapat digambar
dalam satu aliran data (aliran data komposit)
8. Jangan gunakan aliran data menyebar untuk DAD yang
penting. Sebaiknya aliran data dipisahkan menurut
komponen-komponennya
9. Sebaiknya simpanan data diberi nama sesuai dengan
nama yang dipakai dalam model data (diagram ER).
Kata DATA tidak perlu dipakai.
10. Untuk mengurangi kompleksitas gambar, simbolsimbol proses, entitas, simpanan data dapat dibuat
duplikatnya
Bagaimana Membuat DFD Yang Baik?
• Sebuah DFD yang baik harus:
– Tidak ada data flow yang terbagi (split) menjadi beberapa data
flow
– Tidak ada data flow yang bertumpuk (crossing lines)
– Tidak mempunyai looping untuk mengontrol elemen seperti
dalam flow chart
– Tidak ada data flo ya g erfu gsi se agai si yal u tuk
menjalankan suatu proses
• Catatan:
Membangun model sistem dengan tools DFD, tidak dapat
dilepaskan dari penguasaan konsep data dan proses pada
analisis dan desain sebuah sistem informasi
Model – gambaran dari realitas
Model Proses
Logical model – sebuah
gambaran non-teknis yang
melukiskan sebuah sistem.
Sinonim: essential model,
conceptual model, dan
business model.
Physical model – sebuah
gambaran teknis yang
melukiskan bagaimana
sebuah sistem dijalankan.
Sinonim: implementation
model dan technical model.
Diagram Aliran Data
Struktur Data
Nama Aliran Data (input)
Entitas
Menambah Data
Mengubah Data
Menghapus Data
Nomor Proses
Nama Aliran Data
Nama Aliran Data (output)
Nama Proses
Spesifikasi Proses
Nama Aliran Data
Membaca, Menampilkan
Data Store
Diagram Aliran Data (Logis)
Identitas_pelanggan_baru
Administrasi
1.1
Pelanggan_baru
Mencatat
Pelanggan Baru
Pelanggan_Baru
Pelanggan
Pelanggan
Diagram Aliran Data (Fisik)
Win GUI XP: Identitas_pelanggan_baru
Administrasi
1.1
Pelanggan_baru
Mencatat
Pelanggan Baru
SQL Insert: Pelanggan_Baru
SQL Select: Pelanggan
SQL Server 2005:
Pelanggan
Mengapa menggunakan Model
Sistem Logik?
• Meniadakan bias yang dihasilkan dari cara yang
dijalankan sistem saat ini
• Mengurangi
resiko
hilangnya
business
requirement karena kita terlalu terpengaruh
dengan hasil-hasil teknis
• Memudahkan komunikasi dengan end-users
dalam bahasa non-teknis
Simple Data Flow Diagram
Perbedaan antara DFD dan Flowchart
• Proses dalam DFD dapat dilakukan secara paralel (pada saat yang
sama)
– Proses dalam flowchart dilakukan satu per satu (one at a time)
• DFD memperlihatkan aliran data melalui sebuah sistem
– Flowchart memperlihatkan aliran kontrol (urutan dan
pemindahan kontrol)
• Proses pada DFD dapat memiliki satuan waktu yang berbeda
(daily, weekly, on demand)
– Proses pada flowchart adalah bagian dari sebuah program
tunggal dengan satuan waktu yang konsisten (a single
program with consistent timing)
Penurunan level dalam DFD
• Konteks Diagram
• Diagram Aliran Data Level 0
• Diagram Aliran Data Level 1
• Diagra Alira Data Le el …
• Diagram Aliran Data Level N
• Konteks Diagram
• Diagram Dekomposisi
• Diagram Aliran Data Kejadian
• Diagram Aliran Data Subsistem
• Diagram Aliran Data Sistem
Penurunan level dalam DFD
Diagram Konteks (Context Diagram )
• Context Diagram merupakan tingkatan tertinggi dalam diagram
aliran data dan hanya memuat satu proses, menunjukkan sistem
secara keseluruhan.
• Proses tersebut diberi nomor nol.
• Semua entitas eksternal yang ditunjukkan pada diagram konteks
berikut aliran data-aliran data utama menuju dan dari sistem.
• Diagram tersebut tidak memuat penyimpanan data dan tampak
sederhana untuk diciptakan, begitu entitas-entitas eksternal serta
aliran data-aliran daa menuju dan dari sistem diketahui
penganalisis dari wawancara dengan user dan sebagai hasil
analisis dokumen.
Diagram Konteks (Context Diagram )
• Context Diagram adalah data flow diagram
tingkat atas (DFD Top Level), yaitu diagram yang
paling tidak detail, dari sebuah sistem informasi
yang menggambarkan aliran-aliran data ke
dalam dan ke luar sistem dan ke dalam dan ke
luar entitas-entitas eksternal.
• CD menggambarkan sistem dalam satu lingkaran
dan hubungan dengan entitas luar. Lingkaran
tersebut menggambarkan keseluruhan proses
dalam sistem.
Aturan dalam (Context Diagram )
• Menggunakan satu simbol proses,
• Nama/keterangan di simbol proses tersebut sesuai dengan fungsi
sistem tersebut,
• Antara Entitas Eksternal/Terminator tidak diperbolehkan
komunikasi langsung
• Jika terdapat termintor yang mempunyai banyak masukan dan
keluaran, diperbolehkan untuk digambarkan lebih dari satu
sehingga mencegah penggambaran yang terlalu rumit, dengan
memberikan tanda asterik ( * ) atau garis silang ( # ).
• Jika Terminator mewakili individu (personil) sebaiknya diwakili
oleh peran yang dipermainkan personil tersebut.
• Aliran data ke proses dan keluar sebagai output keterangan aliran
data berbeda.
Dekomposisi Proses (Process
Decomposition)
Sistem kompleks biasanya terlalu sulit untuk di
pahami secara menyeluruh pada saat
ditampilkan sebagai suatu keseluruhan (dalam
arti sebagai suatu proses tunggal atau yang
utuh). Oleh karena itu system yang seperti ini
dalam analisis sistem diuraikan menjadi
subsistem-subsistem yang lebih kecil sampai kita
mendapatkan subset yang mampu di kelola
keseluruhan sistem.
Dekomposisi Proses (Process
Decomposition)
• Dekomposisi adalah kegiatan menguraikan sistem ke
dalam subsistem, proses dan subproses komponennya.
Tiap tingkatan abstraksi menampilkan detail lebih
banyak atau lebih sedikit (sesuai keinginan) mengenai
keseluruhan sistem atau subset system tersebut.
• Dekomposisi diagram adalah alat yang digunakan untuk
menggambarkan dekomposisi system. Disebut juga
bagan hirarki, menunjukkan dekomposisi fungsional
top-down dan struktur sistem. Dekomposisi diagram
merupakan alat perencanaan untuk model proses yang
lebih detail, yaitu diagram aliran data.
Subsistem
Proses
Subproses
Dekomposisi Proses (Process
Decomposition)
Decomposition –
tindakan membagi
sebuah sistem ke dalam
beberapa subkomponen.
Masing-masing tingkat
abstraksi menampilkan
lebih banyak atau lebih
sedikit rincian.
Ketentuan Dalam Pendekomposisian
• Tiap proses dalam diagram dekomposisi merupakan proses induk,
proses anak, atau keduanya.
• Induk harus memiliki dua anak atau lebih-satu anak tunggal tidak
masuk akal karena tidak akan menunjukkan detail tambahan
mengenai system tersebut.
• Pada sebagian besar standar pendiagraman dekomposisi satu
anak hanya dapat memiliki satu induk
• Pada akhirnya anak dari satu induk dapat menjadi induk dari
anak-anaknya sendiri.
Diagram Dekomposisi
(Decomposition Diagrams)
• Decomposition diagram
Alat yang digunakan untuk
menggambarkan
dekomposisi sebuah sistem.
• Disebut juga hierarchy chart.
Diagram Dekomposisi
(Decomposition Diagrams)
Konvensi penamaan untuk proses logika tergantung pada letak
proses dalam diagram dekomposisi/diagram aliran data dan tipe
proses yang di gambarkan.ada 3 tipe proses logika: fungsi,
kejadian, dan proses elementer.
– Function/fungsi: satu sel kegiatan yang saling berkaitan dan
berkelajutan pada suatu bisnis.
– Event/kejadian: unit kerja logika yang harus diselesaikan
secara keseluruhan.
– Elementary process/proses elementer: kegiatan atau tugas
diskrit dan detail yang dibutuhkan untuk merespon suatu
kejadian.proses elementer harus dinamai dengan kata kerja
kuat diikuti dengan klausa objek yang mendeskripsikan
ti daka apa yang dilakukan pada (atau untuk)….
Diagram Level n / Data Flow
Diagram Levelled
• Dalam diagram n DFD dapat digunakan untuk
menggambarkan diagram fisik maupun diagram
diagram logis.
• Dimana Diagram Level n merupakan hasil
pengembangan dari Context Diagram ke dalam
komponen yang lebih detail tersebut disebut
dengan top-down partitioning.
• Jika kita melakukan pengembangan dengan
benar, kita akan mendapatkan DFD-DFD yang
seimbang.
Beberapa hal yang harus diperhatikan
dalam membuat DFD
• Pemberian Nomor pada diagram level n
• Jangan menghubungkan langsung antara satu
penyimpanan dengan penyimpanan lainnya (harus
melalui proses).
• Jangan menghubungkan langsung dengan tempat
penyimpanan data dengan entitas eksternal /
terminator (harus melalui proses), atau sebaliknya.
• Jangan membuat suatu proses menerima input tetapi
tidak pernah mengeluarkan output yang disebut dengan
istilah la k hole .
Beberapa hal yang harus diperhatikan
dalam membuat DFD
• Jangan membuat suatu tempat penyimpanan menerima
input tetapi tidak pernah digunakan untuk proses.
• Jangan membuat suatu hasil proses yang lengkap dengan
data ya g ter atas ya g dise ut de ga istilah agi
pro ess .
• Jika terdapat terminator yang mempunyai banyak masukan
dan keluaran, diperbolehkan untuk digambarkan lebih dari
satu sehingga mencegah penggambaran yang terlalu rumit,
dengan memberikan tanda asterik ( * ) atau garis silang ( #
), begitu dengan bentuk penyimpanan.
• Aliran data ke proses dan keluar sebagai output keterangan
aliran data berbeda.
Pemberian Nomor pada diagram level n
• Setiap penurunan ke level yang lebih rendah harus
mampu merepresentasikan proses tersebut dalam
sepesifikasi 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.
Pemberian Nomor pada diagram level n
• Konfirmasikan DFD yang telah dibuat pada pemakai
dengan cara top-down atau botten-up.
• Aliran data yang masuk dan keluar pada suatu proses di
level n harus berhubungan dengan aliran data yang
masuk dan keluar pada level n+1. Dimana level n+1
tersebut mendefinisikan sub-proses pada level n
tersebut.
• Penyimpanan yang muncul pada level n harus
didefinisikan kembali pada level n+1, sedangkan
penyimpanan yang muncul pada level n tidak harus
muncul pada level n-1 karena penyimpanan tersebut
bersifat lokal.
Jenis bahasa pemrograman berdasarkan
metodanya
– Pemrograman terstruktur :
Pascal, C/C++, …
– Pemrograman berorientasi
objek : C++, Java, …
Download