Pengertian DFD

DFD atau data flow diagram adalah representasi grafik yang menggambarkan aliran dan transformasi informasi yang diaplikasikan sebagai data yang mengalir dari input maupun output (Hasanah & Untari, 2020, hlm. 49). Sederhananya, diagram ini menggambarkan apa yang terjadi dalam sebuah sistem. DFD disajikan dalam bentuk gambar yang berisi simbol atau notasi yang digunakan untuk memahami mekanisme aliran data dalam suatu sistem.

Meskipun DFD (data flow diagram) atau dalam bahasa Indonesia diagram arus  data merupakan suatu istilah objek berupa bagan atau diagram, kita juga dapat mengartikannya sebagai suatu teknik analisis yang digunakan untuk menggambarkan aliran input dalam sebuah sistem yang dioleh oleh proses dan menghasilkan suatu keluaran (output).

Selain itu, meskipun digadang sebagai salah satu tahap yang sering diidentikkan dengan perancangan basis data atau database, sejatinya DFD adalah suatu metode pengembangan aliran data umum yang dapat mencakup lingkup fisik maupun digital.

Hal tersebut seperti yang diungkapkan oleh Bahar, dkk (2020, hlm. 4.5) bahwa data flow diagram paling sering digunakan untuk menggambarkan suatu sistem yang sedang berjalan atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik di mana data tersebut mengalir (misalnya lewat telepon, surat dan sebagainya).

Pertimbangan tersebut dapat berupa: apakah suatu proses terkomputerisasi atau manual? apakah informasi dikumpulkan melalui formulir kertas atau melalui Web, atau lingkungan fisik di mana data tersebut akan disimpan (harddisk, SSD, atau cloud storage?). Lantas apa yang menjadi fungsi data flow diagram ini?

Fungsi DFD

DFD merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi. DFD dapat pula digunakan untuk menggambarkan suatu analisa maupun rancangan sistem yg mudah dikomunikasikan oleh profesional sistem (system analyst) kepada pemakai (user) maupun pembuat program (programmer). Fungsi dan manfaat DFD antara lain adalah sebagai berikut.

  1. DFD membantu para analis sistem meringkas informasi tentang sistem, mengetahui hubungan antar sub-sub sistem, membantu perkembangan aplikasi secara efektif.
  2. DFD berfungsi sebagai alat komunikasi yang baik antara pemakai dan analis sistem.
  3. DFD dapat menggambarkan sejumlah batasan otomasi untuk pengembangan alternatif sistem fisik (Hasanah & Untari, 2020, hlm. 50).

Komponen DFD

Sebelum mengejawantahkan berbagai komponen DFD yang perlu kita ketahui untuk merancangnya, kita harus mengetahui terlebih dahulu bahwa pandangan mengenai DFD ini amatlah beragam. Akan tetapi kita dapat mengerucutkan dua gaya umum yang biasa digunakan di industri, baik dilihat dari jenis maupun penggunaan tata simbol yang digunakan.

Jogianto (2008); Dennis (2012) (dalam 2020, hlm. 4.5) mengklasifikasikan DFD menjadi dua jenis, yaitu logical data flow diagram (LDFD) dan physical data flow diagram (PDFD). DFD logika lebih menekankan proses-proses apa yang terdapat di sistem, sedangkan DFD fisik lebih menekankan pada bagaimana proses dari sistem diterapkan.

Sementara itu perihal notasi atau simbol yang digunakan untuk merancangnya, terdapat dua gaya simbol yang umum digunakan dalam penggambaran DFD (Dennis, 2012, dalam Bahar, dkk, 2020, hlm. 4.6) yaitu yang dikembangkan oleh Chris Gane dan Trish Sarson dan lainnya oleh Tom DeMarco dan Ed Yourdon (Gambar 4-1-1).

Penggambaran DFD dapat menggunakan salah satu dari model penggambaran yang ada, asalkan digunakan secara konsisten berdasarkan keputusan yang telah diambil saat kita mulai merancangnya. Perihal komponen dari DFD itu sendiri akan dipaparkan sebagai berikut.

1. Terminator/External Entity

Terminator dalam Diagram Alur Data (DFD) dapat kita gambarkan sebagai sebuah kotak persegi panjang yang merepresentasikan sesuatu di luar sistem yang sedang kita modelkan, seperti orang, kelompok orang, atau organisasi (Hasanah & Untari, 2020, hlm. 50). Dalam kebanyakan kasus, external entity ini mencakup entitas di luar kendali sistem kita, seperti departemen, perusahaan, atau organisasi pemerintah.

Contoh terminator atau external entity ini dapat berupa individu atau kelompok yang berinteraksi dengan sistem, seperti pegawai, mahasiswa, atau peserta didik. Misalnya, jika kita membuat DFD untuk sistem perpustakaan, terminator/external entity dapat mencakup mahasiswa yang meminjam buku dari perpustakaan. Semua itu adalah entitas eksternal yang berinteraksi dengan sistem, dan komponen terminator membantu kita memvisualisasikan keterlibatan mereka dalam alur data. Notasi yang mewakili terminator atau external entity itu sendiri dapat digambarkan sebagai berikut.

terminator_external-entity

2. Proses

Komponen proses dalam DFD dapat dijelaskan sebagai suatu langkah di mana input diubah menjadi output (Hasanah & Untari, 2020, hlm. 51). Nama proses ini harus mencerminkan kegiatan atau tugas yang sedang dilakukan, dan penamaannya sebaiknya menggunakan kata kerja transistif, yaitu kata kerja yang membutuhkan objek.

Contoh komponen proses ini berupa proses peminjaman buku di perpustakaan. Proses ini dapat disebut “Memproses Peminjaman Buku,” di mana inputnya adalah informasi peminjam dan buku yang akan dipinjam, dan outputnya adalah buku yang sudah dipinjam dicatat dalam sistem informasi perpustakaan.

Menurut Hasanah & Untari (2020, hlm. 51) terdapat beberapa hal yang harus diperhatikan tentang komponen proses dalam diagram alur data antara lain adalah sebagai berikut.

  1. Setiap komponen proses harus memiliki input dan output.
  2. proses dapat dihubungkan dengan komponen terminator (external entity), data store atau alur data.
  3. Sistem, bagian, divisi atau departemen yang sedang dianalisis oleh profesional sistem dapat digambarkan dengan komponen proses.

Terdapat 4 kemungkinan yang dapat terjadi dalam suatu proses sehubungan dengan pengolahan komponen input menjadi output, yakni sebagai berikut.

  1. Satu input dan satu output.
  2. Satu input dan banyak output.
  3. Banyak input dan satu output.
  4. Banyak input dan banyak output (Hasanah & Untari, 2020, hlm. 51).

Dalam DFD, simbol untuk komponen proses adalah lingkaran dengan nama proses ditulis di dalamnya seperti pada contoh gambar di bawah ini.

notasi-simbol-proses-terminator

3. Penyimpanan Data (Data Store)

Data store dalam DFD (diagram alur data) digunakan untuk merepresentasikan kumpulan data atau paket data. Ini berfungsi sebagai tempat penyimpanan untuk informasi yang dapat diakses oleh proses atau entitas tertentu. Data store dapat mencakup file atau basis data yang disimpan di media penyimpanan seperti disket atau harddisk. Fungsinya sering kali diatur oleh batasan waktu tertentu.

Dalam gambar DFD, simbol untuk data store disimbolkan dengan garis sejajar. Ini membantu membedakannya dari proses dan entitas lainnya dalam diagram. Sebagai contoh, dalam sebuah sistem pemesanan online, kita dapat memiliki data store yang disebut database Produk yang menyimpan informasi tentang produk yang tersedia untuk dibeli.

Alur data, di sisi lain, digunakan untuk menjelaskan bagaimana data atau paket data bergerak dari satu bagian sistem ke bagian lainnya. Ini bisa berupa kata, pesan, formulir, atau informasi lainnya. Misalnya, dalam DFD untuk sistem pemesanan online, alur data bisa mencakup proses penginputan pesanan oleh pelanggan dan kemudian pengiriman informasi pesanan ke data store “Database Pesanan” untuk dicatat dan dikelola.

Terdapat beberapa hal Yang harus diperhatikan dalam pendefinisian data store anatra lain adalah sebagai berikut.

  1. Alur data dari proses menuju data store. Hal ini berarti bahwa data store berfungsi sebagai tujuan atau tempat penyimpanan dari suatu proses (proses write).
  2. Alur data dari data store ke proses. Hal ini berarti data store berfungsi sebagai sumber atau suatu proses memerlukan data (proses read).
  3. Alur data dari proses menuju data store dan sebaliknya. Hal ini berarti alur data berfungsi Sebagai sumber dan tujuan (proses update) (Hasanah & Untari, 2020, hlm. 52).

dfd notasi simbol data store

4. Aliran data (flow)

Alur data dalam Diagram Alur Data (DFD) adalah elemen yang menjelaskan perpindahan data atau paket data dari satu bagian sistem ke bagian lainnya. Alur data ini mencerminkan aliran informasi yang bisa berupa masukan untuk sistem atau hasil dari suatu proses sistem.

Dalam representasinya, alur data dapat berupa panah atau garis yang menghubungkan proses, entitas, dan penyimpanan data dalam diagram. Misalnya, jika kita memiliki sistem pemesanan online, alur data dapat menggambarkan bagaimana informasi pesanan pelanggan mengalir dari proses pemesanan ke data store yang menyimpan informasi pesanan tersebut.

Terdapat beberapa konsep tentang alur data yang akan dipaparkan sebagai berikut.

  1. Packets of data.
    Apabila ada 2 data atau lebih yg mengalir dari 1 sumber yang sama menuju pada tujuan yang sama pula dan mempunyai hubungan maka digambarkan dengan 1 alur data.
    dfd Packets of data
  2. Diverging data flow.
    Apabila ada sejumlah paket data yg berasal dari sumber yg sama menuju pada tujuan yang berbeda atau paket data yg kompleks maka diagram dibagi menjadi beberapa elemen data yg dikirim ke tujuan yg berbeda.
    DFD Diverging data flow
  3. Converging data flow.
    Alur data yang mengumpul menunjukkan beberapa alur data yang berbeda dari sumber data yang berbeda bergabung bersama-sama menuju tujuan yang sama.
    dfd converging data flow
  4. Sumber dan Tujuan.
    Arus data harus dihubungkan pada proses, baik dari maupun menuju proses.
    DFD Sumber dan Tujuan

Tingkatan/Level DFD

DFD dapat dibagi menjadi beberapa level yang lebih detail untuk merepresentasikan aliran informasi atau fungsi yang lebih detail. Dalam penerapannya tidak ada aturan yang baku tentang tingkatan atau level DFD. Secara umum terdapat beberapa tingkatan yang sering digunakan antara lain adalah sebagai berikut.

  1. DFD level 0 atau biasa disebut diagram konteks. Diagram konteks menggambarkan secara global aliran informasi dan data yang akan dilakukan oleh sistem. Diagram konteks ini merupakan level tertinggi (top level) yang menggambarkan hubungan antar sistem dengan entitas di luar sistem dan merupakan gambaran sistem secara keseluruhan. Komponen yang ada dalam diagram ini biasanya komponen proses, external entity dan alur data.
  2. DFD level 1, diagram ini menjelaskan lebih detail dari diagram konteks. Diagram ini merupakan dekomposisi diagram konteks. Beberapa proses dalam diagram konteks dapat dijelaskan lebih rinci.
  3. DFD level 2, diagram ini merupakan dekomposisi dari diagram level 1.
  4. Diagram level 3 dan seterusnya, diagram ini merupakan dekomposisi dari diagram level 2 (Hasanah & Untari, 2020, hlm. 54).

Langkah menyusun DFD

Menurut Hasanah & Untari (2020, hlm. 55) langkah-langkah yang dapat dilakukan untuk membuat diagram alur data atau DFD ini di antaranya adalah sebagai berikut.

  1. Membuat diagram konteks
    a) Tentukan nama sistemnya; b) Tentukan batasan sistemnya; c) Tentukan terminator apa saja yg ada dalam sistem; d) Tentukan apa yg diterima dan diberikan terminator dari/pada sistem; e) Gambarkan diagram context.
    contoh cara 1._Membuat diagram konteks
  2. Membuat diagram level
    a) Tentukan proses utama yg ada pada sistem; b) Tentukan apa yg diberikan/diterima masing-masing proses pada/dari sistem sambil memperhatikan konsep keseimbangan (alur data yg keluar/masuk dari suatu level harus sama dgn alur data yg masuk/keluar pada level berikutnya); c) Apabila diperlukan, munculkan data store (master) sebagai sumber maupun tujuan alur data; d) Gambarkan diagram level zero; e) Hindari perpotongan arus data; f) Beri nomor pada proses utama (nomor tidak menunjukkan urutan proses).
    2._Membuat diagram level
  3. Membuat diagram level 2
    a) Tentukan proses yg lebih kecil (sub-proses) dari proses utama yg ada di level zero; b) Tentukan apa yg diberikan/diterima masing-masing subproses pada/dari sistem dan perhatikan konsep keseimbangan; c) Apabila diperlukan, munculkan data store (transaksi) sbg sumber maupun tujuan alur data; d) Gambarkan DFD level Satu; e) Hindari perpotongan arus data; f) Beri nomor pada masing-masing sub-proses yg menunjukkan dekomposisi dari proses sebelumnya. Misalnya 1.1, 1.2, 2.1.
    Membuat diagram level 2

Referensi

  1. Bahar, Wibawa, B., Situmorang, R. (2020). Rekayasa perangkat lunak pendekatan terstruktur & berorientasi objek. Jakarta: Universitas Negri Jakarta.
  2. Hasanah, F.N., Untari, R.S. (2020). Rekayasa perangkat lunak. Sidoarjo: Umsida Press.

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *