Rabu, 08 Januari 2014

DATA FLOW DIAGRAM (DFD)



Data Flow Diagram adalah representasi grafik dari sebuah sistem. DFD menggambarkan komponen-komponen sebuah sistem, aliran-aliran data di mana komponen-komponen tersebut, dan asal, tujuan, dan penyimpanan dari data tersebut.
Kita dapat menggunakan DFD untuk dua hal utama, yaitu untuk membuat dokumentasi dari  sistem informasi yang ada, atau untuk menyusun dokumentasi untuk sistem informasi yang baru. 
 Ada 3 (tiga) jenis DFD, yaitu ;
·         Context Diagram (CD)
·         DFD Fisik
·         DFD Logis
DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir (misalnya lewat telepon,surat dan sebagainya) atau lingkungan fisik dimana data tersebut akan disimpan (misalnya file kartu,microfile,hard disk, tape, diskette dan lain sebagainya). DFD merupakan alat yang akan digunakan pada metodologi pengembangan sistem yang terstruktur (struktured analisys and design). DFD merupakan alat yang cukup populer sekarang ini, karena dapat menggambarkan arus data di dalam sistem dengan struktur. DFD merupakan dokumentasi dari sistem yang baik.
Tujuan DFD
1.      Memberikan indikasi mengenai bagaimana data ditransformasi pada saat data bergerak melalui sistem.
2.      Menggambarkan fungsi-fungsi(dan sub fungsi) yang mentransformasi aliran data.
Manfaat DFD
§  Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi.
§  DFD ini adalah salah satu alat pembuatan model yang sering digunakan,khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang dimanipulasi oleh sistem.Dengan kata lain, DFD adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi sistem.
§  DFD ini merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program.
Tiga alasan yang menyebabkan sebaiknya dilakukan pemodelan sistem, yaitu:
·         Dapat melakukan perhatian pada hal-hal  penting dalam sistem tanpa mesti terlibat terlalu     jauh.
·         Mendiskusikan perubahan dan koreksi terhadap kebutuhan pemakai dengan resiko dan biaya minimal.
·         Menguji pengertian penganalisa sistem terhadap kebutuhan pemakai dan membantu pendesain sistem dan pemrogram membangun sistem.     
·         Tetapi ada banyak bentuk model yang dapat digunakan dalam perancangan sistem antara lain model narasi, model grafis dan lain-lain. Dalam hal ini tidak terjadi masalah model mana yang akan digunakan, yang jelas mampu merepresentasikan visualisasi bentuk sistem yang digunakan pemakai, karena sistem akhir yang dibuat bagi pemakai akan diturunkan dari model tersebut.

Simbol DFD

1.     Terminator/Kesatuan Luar(External Entity)
Setiap sistem pasti mempunyai batas sistem (boundary) yang memisahkan suatu sistem dengan lingkungan luarnya. Kesatuan luar (external entity) merupakan kesatuan (entity) di lingkungan luar sistem yang berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya yang akan membeikan input atau menerima output dari sistem (Jogiyanto, 1989). Suatu kesatuan luar dapat disimbolkan dengan suatu notasi kotak.
Terdapat dua jenis terminator :
1.      Terminator Sumber (source) : merupakan terminator yang menjadi sumber.
2.      Terminator Tujuan (sink) : merupakan terminator yang menjadi tujuan data / informasi sistem.

Terminator dapat berupa orang, sekelompok orang, organisasi, departemen di dalam organisasi, atau perusahaan yang sama tetapi di luar kendali sistem yang sedang dibuat modelnya. Terminator dapat juga berupa departemen, divisi atau sistem di luar sistem yang berkomunikasi dengan sistem yang sedang dikembangkan.
Ada tiga hal penting yang harus diingat tentang terminator :
1.    Terminator merupakan bagian/lingkungan luar sistem. Alur data yang menghubungkan terminator dengan berbagai proses sistem, menunjukkan hubungan sistem dengan dunia luar.
2.    Profesional sistem tidak dapat mengubah isi atau cara kerja organisasi, atau prosedur yang berkaitan dengan terminator.
3.    Hubungan yang ada antar terminator yang satu dengan yang lain tidak digambarkan pada DFD.

2.     Arus Data (Data Flow)
Arus data (data flow) di DFD diberi simbol suatu panah. Arus data ini mengalir diantara proses (Process), simpanan data (data store) dan kesatuan luar (external entity). Arus data ini menunjukkan arus data yang dapat berupa masukkan untuk sistem atau hasil dari proses sistem. Arus Arus data  data dapat dapat berbentuk berbentuk sebagai berikut :
§  Formulir atau atau dokumen dokumen yang  yang digunakan digunakan perusahaan perusahaan
§  Laporan tercetak tercetak yang  yang dihasilkan dihasilkan sistem sistem
§  Output dilayar  komputer
§  Masukan untuk komputer komputer
§  Komunikasi ucapan
§  Surat atau memo
§  Data yang dibaca atau atau direkam di  file
§  Suatu isian yang  yang dicatat pada buku agenda
§  Transmisi data  dari suatu komputer ke komputer lain
Ada empat konsep yang perlu diperhatikan dalam penggambaran alur data, yaitu :
1. Konsep Paket Data (Packets of Data) Apabila dua data atau lebih mengalir dari suatu sumber yang sama menuju ke tujuan yang sama dan mempunyai hubungan, dan harus dianggap sebagai satu alur data tunggal, karena data itu mengalir bersama-sama sebagai satu paket.
2. Konsep Alur Data Menyebar (Diverging Data Flow) Alur data menyebar menunjukkan sejumlah tembusan paket data yang yang berasal dari sumber yang sama menuju ke tujuan yang berbeda, atau paket data yang kompleks dibagi menjadi beberapa elemen data yang dikirim ke tujuan yang berbeda, atau alur data ini membawa paket data yang memiliki nilai yang berbeda yang akan dikirim ke tujuan yang berbeda.
3. Konsep Alur Data Mengumpul (Converging Data Flow) Beberapa alur data yang berbeda sumber bergabung bersamasama menuju ke tujuan yang sama.
4. Konsep Sumber atau Tujuan Alur Data
Semua alur data harus minimal mengandung satu proses. Maksudnya adalah :
1.    Suatu alur data dihasilkan dari suatu proses dan menuju ke suatu data store dan/atau terminator .
2.    Suatu alur data dihasilkan dari suatu data store dan/atau terminator dan menuju ke suatu proses.
3.    Suatu alur data dihasilkan dari suatu proses dan menuju ke suatu proses.

3.     Proses (Process)
Suatu proses adalah kegiatan atau kerja yang dilakukan oleh orang, mesin, atau komputer dan hasil suatu arus data yang masuk ke dalam proses untuk dilakukan arus data yang akan keluar dari prises. Suatu proses dapat ditunjukkan dengan simbol lingkaran atau dengan simbol empat persegi panjang tegak dengan sudut-sudutnya tumpul.
Ada beberapa hal yang perlu diperhatikan tentang proses :
§  Proses harus memiliki input dan output.
§  Proses dapat dihubungkan dengan komponen terminator, data store atau proses melalui alur data.
§  Sistem/bagian/divisi/departemen yang sedang dianalisis oleh profesional sistem digambarkan dengan komponen proses.

4.     Simpanan Data (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. Simpanan data di DFD dapat disimbolkan dengan sepasang garis horizontal paralel yang tertutup di salah satu ujungnya.
Suatu data store dihubungkan dengan alur data hanya pada komponen proses, tidak dengan komponen DFD lainnya. Alur data yang menghubungkan data store dengan suatu proses mempunyai pengertian sebagai berikut :
· Alur data dari data store yang berarti sebagai pembacaan atau pengaksesan satu paket tunggal data, lebih dari satu paket data, sebagian dari satu paket tunggal data, atau sebagian dari lebih dari satu paket data untuk suatu proses.
· Alur data ke data store yang berarti sebagai pengupdatean data, seperti menambah satu paket data baru atau lebih, menghapus satu paket atau lebih, atau mengubah/memodifikasi satu paket data atau lebih.

Tips-tips dalam membuat DFD

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
12.  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.
Bentuk-bentuk kesalahan dalam pembuatan DFD
Umumnya kesalahan dalam pembuatan   DFD adalah :
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.

SYARAT-SYARAT PEMBUATAN DATA FLOW DIAGRAM
Syarat pembuatan DFD ini akan menolong profesional sistem untuk menghindari pembentukkan DFD yang salah atau DFD yang tidak lengkap atau tidak konsisten secara logika. Beberapa syarat pembuatan DFD dapat menolong profesional sistem untuk membentuk DFD yang benar, menyenangkan untuk dilihat dan mudah dibaca oleh pemakai.
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

Pemberian Nama untuk Tiap komponen DFD
Seperti yang telah dijelaskan sebelumnya, komponen terminator mewakili lingkungan luar dari sistem, tetapi mempunyai pengaruh terhadap sistem yang sedang dikembangkan ini. Maka agar pemakai mengetahui dengan lingkungan mana saja sistem mereka berhubungan, komponen terminator ini harus diberi nama sesuai dengan lingkungan luar yang mempengaruhi sistem ini. Biasanya komponen terminator diberi nama dengan kata benda.
Selanjutnya adalah komponen proses. Komponen proses ini mewakili fungsi sistem yang akan dilaksanakan atau menunjukkan bagaimana fungsi sistem dilaksanakan oleh seseorang, sekelompok orang atau mesin. Maka sangatlah jelas bahwa komponen ini perlu diberi nama yang tepat, agar siapa yang membaca DFD khususnya pemakai akan merasa yakin bahwa DFD yang dibentuk ini adalah model yang akurat.
Pemberian nama pada komponen proses lebih baik menunjukkan aturan-aturan yang akan dilaksanakan oleh seseorang dibandingkan dengan memberikan nama atau identitas orang yang akan melaksanakannya. Ada dua alasan mengapa bukan nama atau identitas orang (yang melaksanakan fungsi sistem) yang digunakan sebagai nama proses, yaitu :
1.             Orang tersebut mungkin diganti oleh orang lain saat mendatang, sehingga bila tiap kali ada pergantian orang yang melaksanakan fungsi tersebut, maka sistem yang dibentuk harus diubah lagi.
2.             Orang tersebut mungkin tidak melaksanakan satu fungsi sistem saja, melainkan beberapa fungsi sistem yang berbeda. Daripada menggambarkan beberapa proses dengan nama yang sama tetapi artinya berbeda, lebih baik tunjukkan dengan tugas/fungsi sistem
yang sebenarnya akan dilaksanakan. Karena nama untuk komponen proses lebih baik menunjukkan tugas/fungsi sistem yang akan dilaksanakan, maka lebih baik pemberian nama ini menggunakan kata kerja transitif. Pemberian nama untuk komponen data store menggunakan kata benda, karena data store menunjukkan data apa yang disimpan untuk kebutuhan sistem dalam melaksanakan tugasnya. Jika sistem sewaktu-waktu membutuhkan data tersebut untuk melaksanakan tugasnya, maka data tersebut tetap ada, karena sistem menyimpannya. Begitu pula untuk komponen alur data, namanya lebih baik diberikan dengan menggunakan kata benda. Karena alur data ini menunjukkan data dan infiormasi yang dibutuhkan dan yang dikeluarkan oleh sistem dalam pelaksanaan tugasnya.
Pemberian Nomor pada Komponen Proses
Biasanya profesional sistem memberikan nomor dengan bilangan terurut pada komponen proses sebagai referensi. Tidak jadi masalah bagaimana nomor-nomor proses ini diberikan. Nomor proses dapat diberikan dari kiri ke kanan, atau dari atas ke bawah, atau dapat pula dilakukan dengan pola-pola tertentu selama pemberian nomor ini tetap konsisten pada nomor yang dipergunakan. Nomor-nomor proses yang diberikan terhadap komponen proses ini tidak dimaksudkan bahwa proses tersebut dilaksanakan secara berurutan. Pemberian nomor ini dimaksudkan agar pembacaan suatu proses dalam suatu diskusi akan lebih mudah dengan hanya menyebutkan prosesnya saja jika dibandingkan dengan menyebutkan nama prosesnya, khususnya jika nama prosesnya panjang dan sulit. Maksud pemberian nomor pada proses yang lebih penting lagi adalah untuk menunjukkan referensi terhadap skema penomoran secara hirarki pada levelisasi DFD. Dengan kata lain, nomor proses ini merupakan dasar pemberian nomor pada levelilasi DFD.
Penggambaran DFD sesering mungkin
Penggambaran DFD dapat dilakukan berkali-kali sampai secara teknik DFD itu benar, dapat diterima oleh pemakai, dan sudah cukup rapih sehingga profesional sistem tidak merasa malu untuk menunjukkan DFD itu kepada atasannya dan pemakai. Dengan kata lain, penggambaran DFD ini dilakukan sampai terbentuk DFD yang enak dilihat, dan mudah dibaca oleh pemakai dan profesional sistem lainnya. Keindahan penggambaran DFD tergantung pada standar-standar yang diminta oleh organisasi tempat profesional sistem itu bekerja dan perangkat lunak yang dipakai oleh profesional sistem dalam membuat DFD.
Penggambaran yang enak untuk dilihat dapat dilakukan dengan memperhatikan hal-hal berikut ini :
Ø Ukuran dan bentuk proses.
Beberapa pemakai kadang-kadang merasa bingung bila ukuran proses satu berbeda dengan proses yang lain. Mereka akan mengira bahwa proses dengan ukuran yang lebih besar akan diduga lebih penting dari proses yang lebih kecil. Hal ini sebenarnya hanya karena nama proses itu lebih panjang dibandingkan dengan proses yang lain. Jadi, sebaiknya proses yang digambarkan memiliki ukuran dan bentuk yang sama.
Ø Alur data melingkar dan alur data lurus.
Alur data dapat digambarkan dengan melingkar atau hanya garis lurus. Mana yang lebih enak dipandang tergantung siapa yang akan melihat DFD tersebut.
Ø DFD dengan gambar tangan dan gambar menggunakan mesin.
DFD dapat digambarkan secara manual atau dengan menggunakan bantuan mesin, tergantung pilihan pemakai atau profesional sistem.
Penghindaran Penggambaran DFD yang rumit
Tujuan DFD adalah untuk membuat model fungsi yang harus dilaksanakan oleh suatu sistem dan interaksi antar fungsi. Tujuan lainnya adalah agar model yang dibuat itu mudah dibaca dan dimengerti tidak hanya oleh profesional sistem yang membuat DFD, tetapi juga oleh pemakai yang berpengalaman dengan subyek yang terjadi. Hal ini berarti DFD harus mudah dimengerti, dibaca, dan menyenangkan untuk dilihat. Pada banyak masalah, DFD yang dibuat tidak memiliki terlalu banyak proses (maksimal enam proses) dengan data store, alur data, dan terminator yang berkaitan dengan proses tersebut dalam satu
diagram.
Bila terlalu banyak proses, terminator, data store, dan alur data digambarkan dalam satu DFD, maka ada kemungkinan terjadi banyak persilangan alur data dalam DFD tersebut. Persilangan alur data ini menyebabkan pemakai akan sulit membaca dan mengerti DFD yang terbentu. Jadi semakin sedikit adanya persilangan data pada DFD, maka makin baik DFD yang dibentuk oleh professional sistem.
Persilangan alur data ini dapat dihindari dengan menggambarkan DFD secara bertingkat-tingkat (levelisasi DFD), atau dengan menggunakan pemakaian duplikat terhadap komponen DFD.
Komponen DFD yang dapat menggunakan duplikat hanya komponen store dan terminator. Pemberian duplikat ini juga tidak dapat diberikan sesuka profesional sistem yang membuat DFD, tetapi makin sedikit pemakaian duplikat, makin baik DFD yang terbentuk.
Pemberian duplikat terhadap data store dilakukan dengan memberikan simbol garis lurus (x) atau asterik (*), sedangkan untuk terminator menggunakan simbol garis miring (/) atau asterik (*). Banyaknya pemberian simbol duplikat pada duplikat yang digunakan
tergantung banyaknya duplikat yang digunakan.
Penggambaran DFD yang Konsisten
Penggambaran DFD harus konsisten terhadap kelompok DFD lainnya. Profesional sistem menggambarkan DFD berdasarkan tingkatan DFD dengan tujuan agar DFD yang dibuatnya itu mudah dibaca dan dimengerti oleh pemakai sistem. Hal ini sesuai dengan salah satu tujuan atau syarat membuat DFD.

PENGGAMBARAN DFD
Tidak ada aturan baku untuk menggambarkan DFD. Tapi dari berbagai referensi yang ada, secara garis besar langkah untuk membuat DFD adalah :
1.             Identifikasi terlebih dahulu semua entitas luar yang terlibat di sistem.
2.             Identifikasi semua input dan output yang terlibat dengan entitas luar.
3.             Buat Diagram Konteks (diagram context). Diagram ini adalah diagram level tertinggi dari DFD yang menggambarkan hubungan sistem dengan lingkungan luarnya. Caranya :
·      Tentukan nama sistemnya.
·      Tentukan batasan sistemnya.
·      Tentukan terminator apa saja yang ada dalam sistem.
·      Tentukan apa yang diterima/diberikan terminator dari/ke sistem.
·      Gambarkan diagram konteks.
4.             Buat Diagram Level Zero. Diagram ini adalah dekomposisi dari diagram konteks. Caranya :
·      Tentukan proses utama yang ada pada sistem.
·      Tentukan apa yang diberikan/diterima masing-masing proses ke/dari sistem sambil memperhatikan konsep keseimbangan (alur data yang keluar/masuk dari suatu level harus sama dengan alur data yang masuk/keluar pada level berikutnya).
·      Apabila diperlukan, munculkan data store (master) sebagai sumber maupun tujuan alur data.
·      Gambarkan diagram level zero.
- Hindari perpotongan arus data
- Beri nomor pada proses utama (nomor tidak menunjukkan urutan proses).
5.             Buat Diagram Level Satu
Diagram ini merupakan dekomposisi dari diagram level zero. Caranya :
·      Tentukan proses yang lebih kecil (sub-proses) dari proses utama yang ada di level zero.
·      Tentukan apa yang diberikan/diterima masing-masing subproses ke/dari sistem dan perhatikan konsep keseimbangan.
·      Apabila diperlukan, munculkan data store (transaksi) sebagai sumber maupun tujuan alur data.
·      Gambarkan DFD level Satu
§  Hindari perpotongan arus data.
§  Beri nomor pada masing-masing sub-proses yang menunjukkan dekomposisi dari proses sebelumnya.
6.             DFD Level Dua, Tiga,… Diagram ini merupakan dekomposisi dari level sebelumnya. Proses dekomposisi dilakukan sampai dengan proses siap dituangkan ke dalam program. Aturan yang digunakan sama dengan level satu.

Sumber :
http://febriani.staff.gunadarma.ac.id


Tidak ada komentar:

Posting Komentar