Tag Archives: software engineering

Data Flow Diagram


Data Flow Diagram atau biasa disingkat dengan DFD adalah salah satu cara untuk memodelkan proses dalam analisis dan perancangan perangkat lunak, khususnya dengan pendekatan terstruktur.

DFD memiliki tiga komponen di dalamnya, yaitu:

1. External Entity

Merupakan entitas luar yang berinteraksi langsung dengan sistem, bisa dalam bentuk memberikan data ke dalam sistem, menerima data dari sistem, atau keduanya.

2. Proses

Merepresentasikan proses yang terjadi di dalam sistem, biasanya digambarkan dalam bentuk lingkaran(bubble).

3. Data store

Merepresentasikan tempat penyimpan data dalam sistem.

4. Aliran data

Merepresentasikan data yang mengalir dari sumber data ke tujuan, bisa dari proses ke proses lain, dari external entity ke proses, atau dari proses ke external entity.

Satu hal penting yang menjadi concern utama dalam pembuatan DFD adalah konsistensi. Berikut beberapa aturan untuk menjaga konsistensi DFD:

1. Proses

  • menggunakan label berupa kata kerja (missal: memroses gambar)
  • minimal memiliki satu masukan dan satu keluaran

2. Data store

  • data tidak dapat dipindahkan secara langsung dari data store satu ke data store yang lain
  • data tidak dapat dipindahkan langsung dari external entity ke data store, dan sebaliknya dari data store ke external entity
  • menggunakan label berupa kata benda (missal: gambar)

3. Aliran data

  • hanya memiliki satu arah
  • data tidak dapat kembali secara langsung ke proses yang sama
  • aliran data ke data store berarti melakukan pengubahan data(hapus atau ubah)
  • aliran data dari data store berarti mengambil data
  • menggunakan label berupa kata benda

Dalam melakukan pemodelan proses, dibutuhkan beberapa level DFD agar proses yang dimodelkan tersebut sesuai dengan sistem yang diinginkan.  Semakin tinggi level DFD menunjukkan pemodelan yang semakin rinci.

1. DFD Level 0 (Diagram Konteks)

DFD level 0 atau bisa juga disebut diagram konteks merupakan gambaran bagaimana sistem berinteraksi dengan external entity.

2. DFD Level 1

gambar diambil dari: buku Roger S. Pressman, Software Engineering 6th Edition

Level 1 menunjukkan proses-proses utama yang terjadi di dalam sistem yang sedang dibangun.

3. DFD Level 2 dst.

gambar diambil dari: buku Roger S. Pressman, Software Engineering 6th Edition

DFD Level 2 merupakan penjabaran lebih rinci dari DFD level 1. Setiap bubble proses pada DFD level 1 dapat dimodelkan secara lebih terperinci menjadi sebuah DFD lagi. Apabila diperlukan setiap bubble proses pada DFD level 2 juga dapat diperinci menjadi DFD level 3, begitu seterusnya. Perincian DFD berhenti sampai proses yang ada bersifat atomik (sudah cukup mendetail dan tidak dapat diperinci).

Referensi : slide kuliah Sistem Informasi Teknik Informatika ITB, oleh: Pak Mary Handoko

Semoga bermanfaat 🙂