Data Flow Diagram (DFD) Rizka Hadiwiyanti S.Kom, M.Kom 1
Data Flow Diagram Disebut juga diagram aliran data (DAD) DFD menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau disimpan Dalam DFD, tidak ada perbedaan antara proses manual dengan proses otomatis (komputerisasi) DFD merupakan alat perancangan sistem yang berorientasi pada alur data yang mudah dikomunikasikan oleh programmer DFD menggunakan notasi-notasi untuk menggambarkan arus dari data sistem 2
Kelebihan DFD Kebebasan menjalankan implementasi teknis sistem yang terlalu dini Pemahaman lebih jauh mengenai keterkaitan satu sama lain dalam sistem dan sub sistem Mengkomunikasikan sistem yang ada melalui Diagram Aliran Data Menganalisis sistem yg diajukan utk menentukan apakah data-data dan proses yg diperlukan sudah ditetapkan 3
Simbol yang Digunakan 1. External Entity (Entitas Luar) 2. Data Flow (Arus/aliran Data) 3. Process (Proses) 4. Data Store (Simpanan Data) 4
1. External Entity (Entitas Luar) Entitas luar adalah kesatuan diluar sistem yang akan memberikan input atau menerima output dari sistem Entitas luar diantaranya adalah: Suatu kantor, departemen atau divisi dalam perusahaan tetapi di luar sistem yang sedang dikembangkan. Orang/sekelompok orang di organisasi tetapi di luar sistem yang sedang dikembangkan. Suatu organisasi atau orang yang berada di luar organisasi seperti langganan, pemasok, dll. Sistem informasi yang lain di luar sistem yang sedang dikembangkan. Sumber asli dari suatu transaksi. Penerima akhir dari suatu laporan yang dihasilkan oleh sistem. 5
Pedoman pemberian nama entitas luar Nama entitas luar berupa kata benda. Entitas luar tidak boleh memiliki nama yang sama kecuali memang objeknya sama (digambarkan dua kali, dimaksudkan untuk membuat diagram lebih jelas). Bila demikian, maka entitas luar ini perlu diberi garis miring pada pojok kiri atas 6
Simbol External Entity (Entitas Luar) Suatu external entity dapat disimbolkan dengan suatu notasi kotak atau suatu kotak dengan sisi kiri dan atasnya berbentuk garis tebal Pelanggan Atau Gudang 7
2. Data Flow (Arus/aliran Data) Aliran data menunjukkan aliran dari data yang dapat berupa masukan (input) untuk sistem atau hasil dari proses sistem (output) Aliran data ditunjukkan dengan arah panah dan garis diberi nama atas aliran data yang mengalir 8
Bentuk Aliran Data Formulir atau dokumen yang digunakan di perusahaan Laporan tercetak yang dihasilkan oleh sistem Tampilan atau output di layar komputer yang dihasilkan oleh sistem Masukan untuk komputer Komunikasi ucapan Surat-surat atau memo Data yang dibaca atau direkamkan ke suatu file Suatu isian yang dicatat pada buku agenda Transmisi data dari suatu komputer ke komputer yang lain 9
Pedoman pemberian nama aliran data Nama aliran data yang terdiri dari beberapa aliran kata dihubungkan dengan garis sambung. Tidak boleh ada aliran data yang namanya sama, dan pemberian nama harus mencerminkan isinya. Aliran data yang terdiri dari beberapa elemen dapat dinyatakan dengan grup elemen. Hindari penggunaan kata data dan informasi untuk memberi nama pada aliran data. Sedapat mungkin nama aliran data ditulis lengkap 10
Simbol Data Flow (Arus/aliran Data) Arus data (data flow) diberi simbol suatu panah, memiliki nama yg jelas (ditulis disamping garis panah) dan mempunyai arti [nama_aliran_data] Mengalir diantara proses, simpanan data, dan external entity Pelanggan Order Pelanggan dan pembayaran 1 Order Langganan 11
3. Process (Proses) Proses adalah aktifitas atau fungsi yang dilakukan untuk alasan bisnis yang spesifik, biasanya berupa manual maupun terkomputerisasi Proses berfungsi mentransformasikan satu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang diinginkan 12
Pedoman pemberian nama proses Nama proses terdiri dari kata kerja dan kata benda yang mencerminkan fungsi proses tersebut. Jangan menggunakan kata proses sebagai bagian dari nama suatu proses. Tidak boleh ada beberapa proses yang memiliki nama yang sama. Proses harus diberi nomor. Urutan nomor sedapat mungkin mengikuti aliran atau urutan proses, namun demikian urutan nomor tidak berarti secara mutlak merupakan urutan proses secara kronologis. Penomoran proses pada tingkat pertama (Diagram Nol) adalah 1.0, 2.0, 3.0, dan seterusnya. Penomoran proses pada tingkat kedua dari proses 1.0 (rincian dari proses 1.0) adalah 1.1,1.2, 1.3, dan seterusnya. Context diagram tidak perlu diberi nomor 13
Simbol Proses Simbol proses digambarkan dengan bentuk bujur sangkar dengan sudut yang membulat atau dengan bentuk lingkaran dan selalu diberi nomor identifikasi 2 Hitung Gaji ATAU 2 Hitung Gaji 14
Kesalahan dalam penggambaran proses Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan ini disebut dengan black hole (lubang hitam) Proses menghasilkan output tetapi tidak pernah menerima input dan kesalahan ini disebut dengan miracle (ajaib) 15
4. Data Store (Simpanan Data) Data store merupakan simpanan dari data yang dapat berupa: File atau database di sistem komputer Arsip atau catatan manual Kotak tempat data di meja seseorang Tabel acuan manual Agenda atau buku Nama data store harus menunjukkan nama dari filenya Bila namanya lebih dari satu kata, maka harus diberi tanda sambung 16
Simbol Data Store Gambar simpanan data di DFD di simbolkan dengan sepasang garis horisontal paralel yang tertutup disalah satu ujungnya Media Nama data store D5 Buku besar Contoh : 17
Ketentuan Menggambar Simpanan Data (Data Store) Hanya berhubungan dengan proses saja sebagai pengguna/perubah data D1 penjualan D5 piutang dagang Langganan D5 piutang dagang 1 Membuat Laporan piutang Laporan piutang D5 piutang dagang 18
Update Data Arus data menuju ke simpanan data dari suatu proses menunjukkan : menambah atau menyimpan record baru Menghapus record Merubah nilai data di suatu record Arus data yang berasal dari simpanan data menuju proses menunjukkan proses tersebut menggunakan data yang ada di simpanan data 19
Update Data 1 Memeriksa dan merubah data barang Penjualan D1 Persediaan barang 1 Memeriksa dan merubah data barang Status barang D1 Persediaan barang Penjualan 20
Langkah-langkah pembuatan DFD Tiga tahap atau tingkat konstruksi DFD: 1. Context Diagram 2. Diagram Nol 3. Diagram Detail/Rinci 21
1. Context Diagram Menggambarkan sumber serta tujuan data yang akan diproses, atau dengan kata lain menggambarkan sistem secara umum/global dari keseluruhan sistem yang ada Yang harus diperhatikan: Memberikan gambaran tentang seluruh sistem Entitas luar yang memberikan masukan ke sistem disebut source Entitas luar yang menerima keluaran disebut sink Hanya ada satu proses Tidak boleh ada data store 22
2. Diagram Nol menggambarkan tahapan proses yang ada di dalam diagram konteks, yang penjabarannya lebih terperinci Yang harus diperhatikan: Perlihatkan data store yang digunakan Keseimbangan antara context diagram dan diagram nol harus dipelihara 23
3. Diagram Detail/Rinci menggambarkan aliran data secara lebih mendetail lagi dari tahapan proses yang ada di dalam diagram nol Yang harus diperhatikan: Keseimbangan aliran data antara diagram nol dan diagram rinci Keseimbangan data store yang digunakan 24
Aturan penomoran level DFD Level Nama Diagram Nomor Proses 0 Context Diagram 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, 1.1.3, 3 Diagram 1.2 1.2.1, 1.2.2, 1.2.3, 3 Diagram 1.3 1.3.1, 1.3.2, 1.3.3, dst 25
Aturan dalam penggambaran DFD (1) 1. Antar entitas tidak diijinkan terjadi hubungan atau relasi. 2. Tidak boleh ada aliran data antara entitas eksternal dengan data store. 3. Untuk alasan kerapian (menghindari aliran data yang bersilangan), entitas eksternal atau data store boleh digambar beberapa kali dengan tanda khusus, misalnya diberi nomor 4. Satu aliran data boleh mengalirkan beberapa paket data. 26
Aturan dalam penggambaran DFD (2) 5. Bentuk anak panah aliran data boleh bervariasi 6. Semua objek harus mempunyai nama. 7. Aliran data selalu diawali atau diakhir dengan proses. 8. Semua aliran data harus mempunyai tanda arah. 9. Jumlah proses tidak lebih dari sembilan proses dalam sistem, jika melebihi maka sebaiknya dikelompokkan beberapa proses yang bekerja bersama-sama didalam suatu subsistem. 27
Keseimbangan (balancing) dalam DFD Aliran data yang masuk kedalam dan keluar dari suatu proses harus sama dengan aliran data yang masuk kedalam dan keluar dari rincian proses tersebut. Nama aliran data yang masuk kedalam dan keluar dari suatu proses harus sama dengan nama aliran data yang masuk kedalam dan keluar dari rincian proses tersebut. Jumlah dan nama entitas luar (external entity) dari suatu proses harus sama dengan jumlah dan nama entitas luar dari rincian proses tersebut. 28
Keseimbangan (balancing) dalam DFD Hal-hal yang perlu diperhatikan pada DFD yang memiliki lebih dari satu level adalah: Harus terdapat keseimbangan input dan output antara satu level dan level berikutnya. Keseimbangan antara level 0 dan level 1 dilihat pada input/output dari aliran data ke/dari entitas luar pada level 0 sedangkan keseimbangan antara level l dan level 2 dilihat pada input/output dari aliran data ke/dari proses yang bersangkutan. Nama aliran data, data store dan entitas luar pada setiap level harus sama, apabila objeknya sama. 29
Teknik dalam pembuatan DFD Mulai dari yang umum atau tingkatan yang lebih tinggi, kemudian diuraikan atau dijelaskan sampai yang lebih detail atau tingkatan yang lebih rendah, yang lebih dikenal dengan istilah Top-Down Analysis. Jabarkan proses yang terjadi di dalam DFD sedetail mungkin sampai tidak dapat diuraikan lagi. Peliharalah konsistensi proses yang terjadi di dalam DFD, mulai dari diagram yang tingkatannya lebih tinggi sampai dengan diagram yang tingkatannya lebih rendah. Berikan label yang bermakna untuk setiap simbol yang digunakan 30
Diagram Konteks Sie Pemasaran Login, Stasiun, Kerete Api, Jumlah Kursi, Jadwal, Tarif Transaksi Sistem Pelayanan Informasi Jadwal Dan Tarif Kereta Api Berbasis SMS Transaksi Login, Registrasi, NoAnggota Petugas Reservasi Tiket Pesan_SMS NoAnggota, Balasan_SMS, Nota_Pemesanan Customer 31
Stasiun Kereta_Api Diagram Level 1 (Diagram Nol): Sie Pemasaran Petugas Reservasi Tiket Login, Registrasi NoAnggota Login, Stasiun, Kerete_Api, Jumlah_Kursi, Jadwal, Tarif 2 Registrasi OK 1 Manajemen Jadwal dan Tarif Login Stasiun Stasiun Kereta Api Login Registrasi Tarif Kereta_Api, Kursi Jadwal Login Tarif Jadwal Anggota OK Registrasi Outbox Customer Transaksi Pesan_SMS 3 Manajemen SMS SMS Anggota Jadwal Tarif Balasan_SMS SMS Inbox Sie Pemasaran Transaksi OK Transaksi Transaksi Transaksi Petugas Reservasi Tiket NoAnggota 4 Aktivasi Pemesanan Transaksi Transaksi 32 Nota_Pemesanan Customer
DFD level 2 (Diagram Detail) Manajemen Jadwal dan Tarif 1.1 Login Login Login Login OK Stasiun 1.2 Entry Data Stasiun Stasiun Stasiun Stasiun Sie Pemasaran OK Kereta_Api Kerete_Api, Jumlah_Kursi 1.3 Kereta_Api, Kursi Kereta Api Entry Data Kereta Api OK Kereta Api Tarif Jadwal Tarif 1.4 Entry Jadwal Keberangkatan dan Kedatangan Stasiun Jadwal Jadwal 1.5 Tarif Entry Tarif Kereta Api 33
Diagram Konteks Sistem Informasi Rawat Inap Operator Data Pasien Input Data Pasien Sistem Informasi Pasien Rawat Inap Rincian biaya Pasien Laporan Pasien Masuk Laporan Pasien Keluar Laporan Biaya Kepala Puskesmas
Level 1 (Diagram 0) Log In Operator Id Valid Tambah User 1 Proses Log In dan Kelola User Data Simpan Data Kirim pass Input Biaya 2 Proses Biaya Pelayanan DBP DBP biaya_pelayanan DBP Input Pasien Masuk Laporan Pasien Masuk 3 Proses Pasien Masuk DPM DPM pasien_masuk DPM Input Pasien Keluar Laporan Pasien Keluar Laporan Biaya 4 Proses Pasien Keluar DPK DPK DRB pasien_keluar Rincian_biaya DRB Rincian_biaya Kepala Puskesmas Pasien
Level 2 Proses Kelola User Log In Operator Id Valid Tambah User 1.1 Proses Log In dan Kelola User Data Simpan Data Kirim pass
Level 2 Biaya Pelayanan Data Biaya 2.1 Proses Input Biaya Pelayanan DBP DBP biaya_pelayanan Operator DBP Data Biaya 2.2 Proses Edit Biaya Pelayanan DBP DBP A
Level 2 Proses Pasien Masuk Operator Input Pasien Masuk 3.1 Proses Pasien Masuk DPM DPM pasien_masuk Laporan Pasien Masuk Kepala Puskesmas Pilih laporan A DPM
Level 2 Proses Pasien Keluar A DBP DPM Operator Input Pasien Keluar 4.1 Proses Pasien Keluar DPK DPK pasien_keluar DRB Rincian_biaya Laporan Pasien Keluar Laporan Biaya Pilih laporan Rincian_biaya DRB Kepala Puskesmas Pasien