A. Pedoman Menggambar DFD 1. Identifikasikan semua external entity sistem yang terlibat 2. Identisikasikan semua input dan output yang terlibat dengan external entity ; 3. Gambarlah terlebih dahulu suatu diagram konteks atau diagram induk untuk garis besar, kemudian dipecah untuk level-level berikutnya; 4. Gambarlah bagan berjenjang ( hirarchy chart ) untuk semua proses yang ada di sistem untuk mempersiapkan penggambaran DFD level berikutnya; 5. Gambarlah sketsa DFD untuk overview diagram (level 0) berdasarkan proses bagan berjenjang; 6. Gambarlah DFD untuk level-level berikutnya, yaitu level 1, kemudian dipecah dalam level 2, dan seterusnya; 7. Setelah semua level DFD digambarkan, selanjutnya adalah menggambar DFD untuk pelaporan manajemen yang digambarkan secara terpisah; 8. Semua level DFD yang telah digambar termasuk DFD untuk pelaporan manajemen digabung dalam satu diagram. B. Ada 2 hal yang harus diingat dalam menggambar DFD yaitu : 1. Arus data adalah arus yang mengalir menuju proses atau arus yang mengalir dari proses atau arus yang mengalir dari proses menuju proses lain, sehingga jika arus data tidak seperti ketentuan tersebut maka dapat dipastikan bahwa DFD tersebut salah. 2. Kesalahan yang sering terjadi: a. Proses mempunyai input tetapi tidak menghasilkan output, disebut blackhole Blackhol e b. Proses menghasilkan output tetapi tidak pernah menerima input, disebut miracle Miracle
STUDI KASUS Contoh kasus yang diambil adalah pembuatan DFD untuk prototipe M-Education untuk pendaftaran matakuliah di Perguruan tinggi. Sistem ini dapat digambarkan sebagi berikut : ketika mahasiswa ingin melakukan pendaftaran matakuliah, maka dia harus datang ketempat pendaftaran yang telah ditentukan untuk mendaftar. Sebelum membuat DFD maka perlu digambarkan analisis kebutuhan-kebutuhan sistem, seperti analisis fungsional yang bertujuan untuk memberikan penjelasan fungsi-fungsi yang ditawarkan dan mampu dilakukan oleh sistem. Analisis ini dilakukan agar pembuatan DFD mudah dilakukan. Jika dilakukan analisis fungsional maka dalam sistem ini ada dua entitas yang terlibat langsung didalamnya yaitu Mahasiswa dan Pegawai, sehingga kebutuhan fungsionalnya dapat dejelaskan seperti berikut ini : Kebutuhan Fungsional Pengguna (Mahasiswa) Ada beberapa kebutuhan fungsi yang dapat digunakan oleh mahasiswa dalam sistem ini: a. Pendaftaran Matakuliah Setiap mahasiswa dibenarkan melakukan pendaftaran matakuliah. Pendaftaran matakuliah dapat dilakukan setelah mahasiswa melakukan login ke sistem. Pendaftaran matakuliah dilakukan pada saat tertenu saja yaitu pada masa awal semester. Jika mata pendaftaran sudah berakhir maka sistem akan menolak sebarang pendaftaran yang dilakukan oleh mahasiswa. Mahasiswa hanya memilih matakuliah yang telah tersusun berdasarkan fakultas yang dipilih sendiri oleh mahasiswa. b. Pembatalan Matakuliah Mahasiswa hanya dibenarkan membatalkan matakuliah yang telah didaftarkan saja. Sebelum melakukan proses pembatalkan matakuliah, mahasiswa harus login terlebih dahulu. Masa pembatalan matakuliah juga telah ditentukan dan tidak dibenarkan dilakukan kapan saja. Matakuliah yang dibatalkan hanya matakuliah yang telah didaftarkan oleh mahasiswa. c. Pemeriksaan Matakuliah Pemeriksaan matakuliah dibuat jika mahasiswa ingin memastikan bahwa matakuliah yang telah didaftar sudah disimpan dengan benar. Proses ini juga mewajibkan mahasiswa untuk login terlebih dahulu. Hanya urutan matakuliah dengan nomor mahasiswa yang login saja yang dipaparkan pada layar. Proses ini dapat dilakukan kapan saja. d. Tukar Taraf Matakuliah Pertukaran taraf matakuliah dilakukan jika taraf matakuliah yang ditetap oleh fakultas berbeda dengan taraf yang ingin didaftar oleh mahasiswa. Secara
default semua taraf matakuliah adalah wajib fakultas (WF), namun mahasiswa boleh menukarkan taraf tersebut ke taraf yang lain seperti menjadi pilihan (P) atau perubahan (AU). e. Mencetak Slip Pendaftaran Setiap mahasiswa yang telah mendaftarkan matakuliah pada semester semasa dibenarkan mencetak slip pendaftaran matakuliah percetakan ini dibuat melalui halaman web. Slip ini menjadi bukti bagi mahasiswa bahwa ia telah mendaftarkan matakuliah pada semester berjalan. Urutan matakuliah yang dipaparkan merupakan yang terdaftar saja, sedang matakuliah yang telah dibatalkan tidak akan ditampilkan dalam slip ini. Kebutuhan Fungsional Pegawai Fungsional ini mengizinkan pegawai untuk mengurus dan memantau sistem secara keseluruhan. Fungsional ini adalah sebagai berikut: a. Input Data Mahasiswa Fungsi input data khusus diberikan kepada pegawai. Pegawai dapat merubah atau mengupdate data mahasiswa yang telah ada. b. Input Data Matakuliah Fungsi input data matakuliah dikhususkan untuk pegawai setiap fakultas. Pegawai dapat menambah urutan matakuliah dan menentukan bahwa sebuah matakuliah ditawarkan pada semester berjalan ataupun tidak ditawarkan. Pegawai juga dibenarkan mengkemaskini data matakuliah tersebut. c. Input Data Kelas Fungsi input data kelas juga dikhususkan kepada pegawai setiap fakultas, pegawai hanya dibenarkan menginput data kelas untuk matakuliah yang telah ada pada fakultasnya saja. Pegawai dibenarkan menambah atau mengupdate data kelas. d. Input Data Pegawai Fungsional input data pegawai hanya dikhususkan kepada Admin sistem. Admin dibenarkan menambah ataupun mengupdate data pegawai. Setiap fakulti hanya dibenarkan dua orang pegawai untuk mengurus sistem. e. Input Data Input data SPP dilakukan oleh pegawai. Data ini diperlukan karena untuk mengetahui apakah mahasiswa telah melakukan pembayaran biaya kuliah.
Tahap selanjutnya adalah membuat DFD nya berdasarkan analisis fungsional yang telah diuraikan sebelumnya. Pada tahap ini reka bentuk sistem dimulai dengan pembuatan gambar konteks sistem. Setelah pembuatan gambar konteks system, proses perancangan sistem diikuti dengan pembuatan gambar aliran data berikutnya dan dapat dijelaskan seperti berikut ini :. SYARAT MEMBUAT DFD Syarat-syarat pembuatan DFD ini adalah : 1. Pemberian nama untuk tiap komponen DFD. 2. Pemberian nomor pada komponen proses. 3. Penggambaran DFD sesering mungkin agar enak dilihat. 4. Penghindaran penggambaran DFD yang rumit. 5. Pemastian DFD yang dibentuk itu konsiten secara logika. Berikut ini tips-tips dalam membuat DFD : 1. Pilih notasi sehingga proses yang didekomposisi atau tidak didekomposisi dapat dibaca dengan mudah. 2. Nama proses harus terdiri dari kata kerja dan kata benda. 3. Nama yang dipakai untuk proses, data store, dataflow harus konsisten (identitas perlu). 4. Setiap level harus konsisten aliran datanya dengan level sebelumnya. 5. Usahakan agar external entity pada setiap level konsisten peletakannya. 6. Banyaknya proses yang disarankan pada setiap level tidak melebihi 7 proses. 7. Dekomposisi berdasarkan kelompok data lebih disarankan (memudahkan aliran data ke storage yang sama). 8. Nama Proses yang umum hanya untuk prose yang masih akan didekomposisi. 9. Pada Proses yang sudah tidak didekomposisi, nama Proses dan nama Data harus sudah spesifik. 10. Aliran ke storage harus melalui proses, tidak boleh langsung dari external entity. 11. Aliran data untuk Proses Report.. : harus ada aliran keluar. Akan ada aliran masuk jika perlu parameter untuk mengaktifkan report.aliran data yang tidak ada datastorenya harus diteliti, apakah memang tidak mencerminkan persisten entity (perlu disimpan dalam file/tabel), yaitu kelak hanya akan menjadi variabel dalam program. Kesalahan 1. Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan ini disebut dengan black hole (lubang hitam), karena data masuk ke dalam proses dan lenyap tidak berbekas seperti dimasukkan ke dalam lubang hitam. 2. Proses menghasilkan output tetapi tidak pernah menerima input. Kesalahan ini disebut dengan miracle (ajaib), karena ajaib dihasilkan output tanpa pernah menerima input. 3. Input yang masuk tidak sesuai dengan kebutuhan proses. 4. Data Store tidak memiliki keluaran.
5. Data Store tidak memiliki masukan. 6. Hubungan langsung antar entitas luar. 7. Masukan langsung entitas data store. 8. Keluaran langsun dari data store ke Entitas luar. 9. Hubungan langsung antar data store. 10. Data masukan dan keluaran yang tidak bersesuain dalam data store. CARA MEMBUAT ERD: 1. Penentuan Entities 2. Penentuan Atribut 3. Penentuan Kardinalitas Relasi
4. Pembuaatan ERD 5.