Perbedaan DFD (Data Flow Diagram) dan ERD (Entitiy Relationship Diagram)


Ketika kami sedang belajar mata kuliah "Rekayasa Perangkat Lunak" dan kebetulan sedang membahas tentang DFD (Data Flow Diagram) ada seorang mahasiswa mengajukan pertanyaan:

"Pak maaf mau tanya, kalau entitas ini memiliki atribut apakah atribut tersebut termasuk ke dalam DFD level 1 atau tidak?"

Mendengar pertanyaan tersebut saya pun langsung sadar bahwa teman saya ini sedang bingung membedakan ERD dan DFD. Maklum beberapa minggu sebelumnya kami telah belajar membuat ERD dan kini kami pun belajar membuat DFD. Memang kedua diagram ini memiliki beberapa istilah yang sama di antaranya adalah istilah "entitas" namun sebenarnya berbeda.


Berikut contoh gambar ERD dan DFD yang saya ambilkan dari mbah google.

gambar 1: contoh Entity Relathionship Diagram

Gambar 2: Contoh Data Flow Diagram

Bicara soal istilah, kadang kita menemui beberapa hal yang memiliki istilah yang sama namun secara wujud ia berbeda. Kesamaan istilah tersebut bisa terjadi karena mungkin ada kesamaan antara hal yang satu dengan yang lain secara konsep atau kerja alat. Namun secara wujud fisik ia berbeda. Sebagai contoh wujud "instrumentasi" di dunia laboratorium akan berbeda dengan instrumentasi di dunia musik namun secara konsep sama. Di lingkungan laboratorium alat instrumentasi adalah alat penunjang kegiatan lab. Bisa berupa gelas ukur, neraca, pipa kapiler dan sebagainya. Di dunia musik mungkin wujud instrumentasinya berupa saxofon atau biola dan sebagainya. Secara konsep/makna keduanya sama yaitu alat penunjang kegiatan/kerja.

Begitu juga dengan istilah "entitas" pada ERD dan DFD.

Sekilas, ERD atau Entity Relationship Diagram (Diagram Hubungan Antar Entitas) adalah diagram yang menggambarkan hubungan antar entitas (tabel) yang dijalin melalui primary key dan foreign key tabel di dalam sebuah database.

Pada ERD istilah entitas digunakan untuk menyebutkan kelompok data sejenis di dunia nyata yang akan diolah di dalam database dan memiliki keterhubungan dengan entitas lain. Misal jika dunia nyatanya adalah universitas maka entitasnya dapat berupa:
- Entitas mahasiswa (memuat semua data terkait mahasiswa saja)
- Entitas dosen (memuat semua data terkait dosen saja)
- Entitas Mata Kuliah (memuat data mata kuliah yang diajarkan di universitas)
- Entitas Jurusan (memuat data jurusan di universitas)
- Entitas Program Studi (memuat data program studi)
dan sebagainya.

Sedangkan pada DFD atau Data Flow Diagram(Diagram Alir Data) adalah diagram yang menggambarkan proses aliran data input/output dari sebuah sistem informasi yang dibangun.

Pada DFD istilah entitas digunakan untuk menyebutkan siapa saja yang nantinya akan menjadi pengguna sistem informasi yang kita buat dengan autentikasi yang berbeda. Tentunya pengguna sistem informasi kita adalah manusia maka entitas di dalam DFD dibatasi hanya manusia saja. Misal jika sistem informasi yang kita buat adalah sistem informasi penggajian karyawan maka yang menjadi entitas adalah:
-Karyawan perusahaan (Update data karyawan, Melihat slip gaji pribadi)
-Manager (Melihat laporan data bawahan, melihat laporan slip gaji bawahan)
-Direktur (Melihat laporan data semua karyawan, melihat laporan slip gaji semua karyawan)

Otentikasi masing-masing entitas DFD di atas berbeda tergantung posisi mereka.

Kemudian selanjutnya, ketika suatu entitas ERD (misal karyawan) menginputkan data karyawan dan oleh sistem data tersebut disimpan di storage maka storage tersebut bisa jadi adalah tabel pada database (Entitas dalam ERD).

Kemudian data karyawan tadi bisa saja berupa atribut-atribut yang ada di entitas ERD. Misal jika aliran data di DFD adalah "Data Karyawan" maka bisa saja isi dari data karyawan tersebut adalah: NIP, Nama, Tanggal Lahir, Alamat, Jabatan, No Telp dsb.

Kesimpulannya adalah
ERD dan DFD adalah dua diagram yang berbeda. ERD adalah diagram yang menjelaskan hubungan antar entitas (tabel) di dalam sebuah database sedangkan DFD adalah diagram yang menjelaskan keluar-masuknya (aliran) data melalui sebuah sistem informasi.

Sekian semoga bermanfaat.

5 comments:

  1. apakah semua entitas pada ERD menjadi data store dalam DFD?

    ReplyDelete
    Replies
    1. Sepanjang yang saya tahu, tidak semua entitas ERD menjadi data store dalam DFD. Karena pada entitas ERD, entitas berupa table tunggal sedang dalam DFD, data store bisa jadi adalah beberapa tabel atau malah bisa jadi dia adalah database itu sendiri.

      Karena yang lebih dijelaskan dalam DFD adalah aliran datanya. Sedang ERD adalah hubungan antar tabel.

      Delete
  2. trimakasii telah membantuu akuuu

    ReplyDelete
  3. Thankz gan amat sangat bermanfaat

    ReplyDelete