DATA FLOW DIAGRAM (DFD)
2.4 DATA FLOW DIAGRAM (DFD)
Proses mengubah usulan kebutuhan menjadi perangkat lunak bukan hal yang mudah. Harus ada beberapa langkah yang digunakan untuk mempermudah dan menjamin perangkat lunak yang dihasilkan berkualitas. Langkah awal desain biasanya dimulai dengan pemodelan sistem. Ada banyak cara untuk merepresentasikan proses model, diantaranya adalah DFD.
2.4.1 Pengertian data flow diagram
Untuk memudahkan penggambaran suatu sistem yang ada atau sistem yang baru yang akan dikembangkan secara logika tanpa memperhatikan lingkungan fisik dimana data tersebut mengalir atau lingkungan fisik dimana data tersebut akan disimpan, maka kita menggunakan Data Flow Diagram. DFD merupakan alat yang cukup populer sekarang, karena dapat menggambarkan arus data di dalam suatu sistem dengan terstruktur dan jelas.
2.4.2 Simbol-simbol yang digunakan dalam DFD
Dalam menggambarkan sistem perlu dilakukan pembentukan simbol, berikut ini simbol-simbol yang sering digunakan dalam DFD:
1. Kesatuan luar (external entity) atau batasan (boundary) Setiap sistem pasti memiliki batas sistem yang memisahkan suatu sistem dengan lingkungan luarnya. Sistem akan menerima input dan menghasilkan output bagi lingkuangan luarnya. Kesatuan luar merupakan kesatuan di lingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lain yang berada di lingkungan luarnya yang akan memberikan input serta menerima output dari sistem. Suatu kesatuan luar dapat disimbolkan dengan notasi kotak dapat dilihat pada gambar berikut:
Gambar 2.3 Notasi kesatuan luar di DFD
Sumber : Fatta, 2007
2. Aliran data (data flow) Arus data pada diagram arus data diberi simbol panah. Arus data ini mengalir di antara proses, penyimpanan data dan kesatuan luar. Arus data ini menunjukkan arus atau aliran data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem dan dapat berbentuk sebagai berikut:
a. Formulir atau dokumen yang digunakan.
b. Laporan tercetak yang dihasilkan oleh sistem.
c. Tampilan atau output di layar komputer yang dihasilkan oleh sistem.
d. Masukan oleh komputer.
e. Komunikasi ucapan.
f. Surat-surat atau memo.
g. Data yang dibaca atau direkam pada suatu file.
h. Surat isian yang dicatat pada buku agenda.
i. Transmisi data dari satu komputer ke komputer yang lain. Dalam DFD tidak dibedakan antara data dengan informasi, semua dianggap sebagai data. Arus data sebaiknya diberi nama yang jelas dan mempunyai arti.
Nama dari arus data dituliskan di samping garis panahnya. Simbol untuk arus data dapat dilihat pada gambar di bawah ini.
Gambar 2.4 Notasi arus data di DFD
Sumber : Fatta, 2007
3. Proses (process) Suatu proses adalah kegiatan atau kerja yang dilakukan orang, mesin atau komputer dari hasil suatu arus data yang masuk ke dalam proses untuk dihasilkan arus data yang akan keluar dari proses. Untuk physical data flow diagram (PDFD), proses dapat dilakukan oleh orang, mesin atau komputer. Sedangkan untuk logical data flow diagram (LDFD), suatu proses hanya menunjukkan proses dari komputer. Suatu proses dapat ditunjukkan dengan simbol lingkaran atau dengan simbol empat persegi panjang dengan sudut- sudutnya yang tumpul. Berikut ini simbol untuk proses :
Gambar 2.5 Notasi proses di DFD
Sumber : Fatta, 2007
Penjelasan yang ada di dalam proses, yaitu:
a. Identifikasi proses Identifikasi proses ini umumnya berupa angka yang menunjukkan nomor acuan dari proses dan ditulis pada bagian atas simbol proses. Sehingga identifikasi proses sering disebut dengan nomor proses. Penomoran proses dimaksudkan sebagai identifikasi proses dan memudahkan penurunan ke level yang lebih rendah atau ke proses berikutnya. Nomor tidak menunjukkan urutan, sehingga tidak jadi masalah bagaimana urutan ditempatkan.
b. Nama Proses
Nama proses menunjukkan apa yang dikerjakan oleh proses tersebut. Nama proses harus jelas dan lengkap mengggambarkan kegiatan proses. Nama proses biasanya berbentuk suatu kalimat yang diawali dengan kata kerja dan letaknya berada di bawah identifikasi proses.
Pada penggambaran proses di DFD, kesalahan yang umum terjadi adalah sebagai berikut: 1). Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan
ini disebut dengan black hole (lubang hitam), karena data masuk kedalam proses dan lenyap tidak berbekas seperti dimasukkan ke dalam lubang hitam yang dalam sekali.
2). Proses menghasilkan output tetapi tidak pernah menerima input.
Kesalahan ini disebut dengan miracle (ajaib), karena secara ajaib dihasilkan output tanpa pernah menerima input.
4. Penyimpanan data (data store) Simpanan data pada DFD dapat disimbolkan sebagai berikut:
Gambar 2.6 Notasi simpanan data di DAD
Sumber : Fatta, 2007
Simpanan data (data store) merupakan simpanan dari data yang dapat berupa antara lain:
a. Suatu file atau database di sistem komputer.
b. Suatu arsip atau catatan manual.
c. Suatu kotak tempat data di meja seseorang.
d. Suatu tabel acuan manual.
e. Suatu agenda atau buku. Simpanan data di DFD dapat disimbolkan dengan sepasang garis horisontal paralel yang tertutup di salah satu ujungnya. Dalam penggambaran simpanan data di DFD perlu diperhatikan beberapa hal sebagai berikut:
a. Hanya proses saja yang berhubungan dengan simpanan data, karena yang menggunakan atau merubah data di simpanan data adalah proses.
b. Arus data yang menuju ke simpanan data dari suatu proses menunjukkan proses update terhadap data yang tersimpan di simpanan data. Update dapat berupa proses: 1). Menambah atau menyimpankan record baru atau dokumen baru ke
dalam simpanan data. 2). Menghapus record atau mengambil dokumen dari simpanan data, 3). Merubah nilai data di suatu record atau di suatu dokumen yang ada di
simpanan data.
c. Arus data yang berasal dari simpanan data ke suatu proses menunjukkan bahwa proses tersebut menggunakan data yang ada di simpanan data. Untuk media simpanan data berupa simpanan luar komputer (disk atau tape) berarti membaca data dari suatu record di file sedang untuk simpanan data berupa media manual berarti mengambil suatu formulir atau dokumen untuk dilihat isinya dari suatu simpanan data.
d. Untuk menghindari garis arus data yang saling berpotongan sehingga membuat gambar di DFD menjadi ruwet, maka simpanan data dapat digambar lebih dari sebuah dengan identifikasi berupa garis vertikal (|) atau dengan asterik ().
2.4.3 Pedoman menggambar DFD
Terdapat beberapa pedoman dalam menggambar DFD, yaitu:
1. Identifikasi terlebih dahulu semua kesatuan luar (external entities) yang terlibat di sistem. Kesatuan luar ini merupakan kesatuan (entity) di luar sistem, karena di luar bagian pengolahan data (sistem informasi). Kesatuan luar ini merupakan sumber arus data ke sistem informasi serta tujuan penerima arus data hasil dari proses sistem informasi, sehingga merupakan kesatuan di luar sistem informasi.
2. Identifikasi semua input dan output yang terlibat dengan kesatuan luar.
3. Gambarlah terlebih dahulu suatu diagram konteks (context diagram). DFD merupakan alat untuk structured analysis. Pendekatan terstruktur ini mencoba untuk menggambarkan sistem pertama kali secara garis besar (disebut dengan top level) dan memecah-mecahnya menjadi bagian yang lebih terinci (disebut 3. Gambarlah terlebih dahulu suatu diagram konteks (context diagram). DFD merupakan alat untuk structured analysis. Pendekatan terstruktur ini mencoba untuk menggambarkan sistem pertama kali secara garis besar (disebut dengan top level) dan memecah-mecahnya menjadi bagian yang lebih terinci (disebut
4. Gambarlah bagan berjenjang untuk semua proses yang ada di sistem terlebih dahulu. Bagan berjenjang (hirarchy chart) digunakan untuk mempersiapkan penggambaran DFD ke level-level lebih bawah lagi. Bagan berjenjang dapat digambar dengan menggunakan notasi proses yang digunakan di DFD.
5. Gambarlah DFD untuk level-level berikutnya, yaitu level 1 dan seterusnya untuk tiap-tiap proses yang dipecah-pecah sesuai dengan bagan berjenjangnya. Beberapa hal yang perlu diperhatikan dalam penurunan DFD adalah: a). 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.
b). Setiap penurunan harus dilakukan hanya jika perlu. c). 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.
6. Hindari penggambaran 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.
2.4.4 Perbedaan DFD dengan bagan alir
DFD sangat berbeda dengan bagan alir (flow-chart). Perbedaannya, sebagai berikut:
1. Proses di DFD dapat beroperasi secara paralel, sehingga beberapa proses dapat dilakukan serentak. Hal ini merupakan kelebihan DFD dibandingkan dengan bagan alir yang cenderung hanya menunjukkan proses yang urut. Kenyataannya kegiatan-kegiatan proses dapat dilakukan secara tidak urut, yaitu secara paralel atau serentak, sehingga DFD dapat menggambarkan proses semacam ini dengan lebih mengena.
2. DFD lebih menunjukkan arus data di suatu sistem, sedang bagan alir sistem lebih menunjukkan arus dari prosedur dan bagan alir program lebih menunjukkan arus dari algoritma.
3. DFD tidak menunjukkan proses perulangan (loop) dan proses keputusan (decision), sedang bagan alir menunjukkannya.
2.4.5 Keterbatasan DFD
Walaupun DFD mempunyai kebaikan-kebaikan, yaitu dapat menggambarkan sistem secara terstruktur dengan memecah-mecah menjadi level lebih rendah (decomposition), dapat menunjukkan arus data di sistem, dapat menggambarkan proses secara paralel di sistem, dapat menunjukkan simpanan data, dapat menunjukkan kesatuan luar, tetapi DFD juga mempunyai keterbatasan. Keterbatasan dari DFD, sebagai berikut:
1. DFD tidak menunjukkan proses perulangan (loop).
2. DFD tidak menunjukkan proses keputusan (decision).
3. DFD tidak menunjukkan proses perhitungan.