Jumat, 27 Januari 2012

DATA FLOW DIAGRAM (DFD)


 
KONSEP PERANCANGAN TERSTRUKTUR
Pendekatan perancangan terstruktur dimulai dari awal 1970. Pendekatan terstruktur dilengkapi dengan alat-alat (tools) dan teknikteknik (techniques) yang dibutuhkan dalam pengembangan sistem, sehingga hasil akhir dari sistem yang dikembangkan akan diperoleh sistem yang strukturnya didefinisikan dengan baik dan jelas.
Melalui pendekatan terstruktur, permasalahan yang komplek di organisasi dapat dipecahkan dan hasil dari sistem akam mudah untuk dipelihara, fleksibel, lebih memuaskan pemakainya, mempunyai dokumentasi yang baik, tepat waktu, sesuai dengan anggaran biaya pengembangan, dapat meningkatkan produktivitas dan kualitasnya akan lebih baik (bebas kesalahan).

DATA FLOW DIAGRAM
DFD merupakan alat perancangan sistem yang berorientasi pada alur data dgn konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yg mudah dikomunikasikan oleh profesional system kepada pemakai maupun pembuat program.
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  telpon,  surat  dan sebagainya) atau lingkungan fisik dimana data tersebut akan disimpan (misalnya file kartu,  microfile, harddisk, tape, diskette dan lain sebagainya). DFD merupakan alat yang  cukup  populer  sekarang  ini,  karena  dapat  menggambarkan  arus  data  di  dalam sistem dengan terstruktur dan jelas. Lebih lanjut DFD juga merupakan dokumentasi dari sistem yang baik. 

KOMPONEN DFD
1.    Menurut Yourdan dan DeMarco

2.    Menurut Gene dan Serson

TERMINATOR / ENTITAS LUAR
Adalah Entitas diluar sistem yang berkomunikasi / berhubungan langsung dengan sistem.
Terdapat 2 jenis Terminator :
1. Terminator Sumber
Merupakan Terminator yang menjadi sumber
2. Terminator Tujuan
Merupakan Terminator yang menjadi tujuan data / informasi sistem.


Terminator dapat berupa orang, sekelompok orang, organisasi, perusahaan/departemen yang berada diluar sistem yang akan dibuat, diberi nama yang berhubungan dengan sistem tsb dan biasanya menggunakan kata benda.
Contoh : Dosen, Mahasiswa.
Hal yang perlu diperhatikan tentang terminator :
1. Alur data yang menghubungkan terminator dgn sistem, menunjukkan hubungan sistem dgn dunia luar.
2. Profesional sistem tidak dapat mengubah isi/cara kerja, prosedur yang berkaitan dgn Terminator.
3. Hubungan yang ada antar terminator tidak digambarkan dalam DFD.

KOMPONEN PROSES
Komponen proses menggambarkan transformasi input menjadi output. Penamaan proses disesuaikan dgn proses/kegiatan yang sedang dilakukan.
Ada 4 kemungkinan yang dapat terjadi dalam proses sehubungan dgn input dan output :
Ada beberapa hal yang perlu diperhatikan tentang proses :
1. Proses harus memiliki input dan output.
2. proses dapat dihubungkan dgn komponen terminator, data store atau proses melalui alur data.
3. Sistem/bagian/divisi/departemen yang sedang dianalisis oleh professional sistem digambarkan dgn komponen proses.

KOMPONEN DATA STORE
Komponen ini digunakan untuk membuat model sekumpulan paket data dan diberi nama dgn kata benda bersifat jamak. Data store dapat berupa file/database yang tersimpan dalam disket, harddisk atau bersifat manual seperti buku alamat, file folder.
Yang perlu diperhatikan tentang data store :
1. Alur data dari proses menuju data store, hal ini berarti data store berfungsi sebagai tujuan/tempat penyimpanan fari suatu proses (proses write).
2. Alur data dari data store ke proses, hal ini berarti data store berfungsi sbg sumber/ proses memerlukan data (proses read).
3. Alur data dari proses menuju data store dan sebaliknya berarti berfungsi sbg sumber dan tujuan.
Lihat gambar berikut :
KOMPONEN ALUR DATA
Alur data digunakan untuk menerangkan perpindahan data / paket datadari satu bagian ke bagian lainnya. Alur data dapat berupa kata, pesan, formulir / informasi.
Ada 4 konsep tentang alur data :
1. Packets of data
Apabila ada 2 data / lebih yg mengalir dari 1 sumber yg sama menuju pada tujuan yg sama & mempunyai hubungan digambarkan dgn 1 alur data.

2. Diverging data flow
Apabila ada sejumlah paket data yg berasal dari sumber yg sama menuju pada tujuan yg berbeda atau paket data yg kompleks dibagi menjadi beberapa elemen data yg dikirim ke tujuan yg berbeda.
3. Converging data flow
Apabila ada beberapa alur data yg berbeda sumber menuju ke tujuan yg sama.
4. Sumber dan Tujuan
Arus data harus dihubungkan pada proses, baik dari maupun yg menuju proses.









LEVELISASI DFD

LANGKAH PEMBUATAN DFD
1. Identifikasi semua kesatuan luar yang terlibat dengan sistem. .
2. Identifikasi input  dan output yang berhubungan dengan kesatuan luar
3. Buatlah gambaran dari konteks diagram

SYARAT-SYARAT PEMBUATAN DFD
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 pembutan
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

PENGGAMBARAN DFD
Tidak ada aturan baku untuk menggambarkan DFD, tapi dari berbagai referensi yg ada, secara garis besar:
1. Buat diagram context
Diagram ini adalah diagram level tertinggi dari DFD yg menggambarkan hubungan sistem dgn lingkungan luarnya.
Cara :
- Tentukan nama sistemnya.
- Tentukan batasan sistemnya.
- Tentukan terminator apa saja yg ada dalam sistem.
- Tentukan apa yg diterima/diberikan terminator dari/pada sistem.
- Gambarkan diagram context.
2. Buat diagram level Zero
Diagram ini adalah dekomposisi dari diagram Context.
Cara :
- Tentukan proses utama yg ada pada sistem.
- Tentukan apa yg diberikan/diterima masing-masing proses pada/darisistem sambil memperhatikan konsep keseimbangan (alur data yg keluar/masuk dari suatu level harus sama dgn alur data yg 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).
3. Buat diagram level Satu
Diagram ini merupakan dekomposisi dari diagram level zero.
Cara :
- Tentukan proses yg lebih kecil (sub-proses) dari proses utama yg ada di level zero.
- Tentukan apa yg diberikan/diterima masing-masing sub-proses pada/dari sistem dan perhatikan konsep keseimbangan.
- Apabila diperlukan, munculkan data store (transaksi) sbg sumber maupun tujuan alur data.
- Gambarkan DFD level Satu
- Hindari perpotongan arus data.
- Beri nomor pada masing-masing sub-proses yg menunjukkan dekomposisi dari proses sebelumnya. Contoh : 1.1, 1.2, 2.1
4. DFD level dua, tiga, ..
Diagram ini merupakan dekomposisi dari level sebelumnya. Proses dekomposisi dilakukan sampai dg proses siap dituangkan ke dalam program. Aturan yg digunakan sama dgn level satu.

BENTUK DFD
 Terdapat 2 bentuk DFD, yaitu DFD fisik (Physical Data Flow Diagram) dan DFD logika (Logical Data Flow Diagram). DFD fisik lebih menekankan pada bagaimana proses dari sistem diterapkan sedang DFD  logika lebih menekankan proses-proses apa yang terdapat di sistem. 
PHYSICAL DATA FLOW DIAGRAM (PDFD)
PDFD lebih tepat digunakan untuk menggambarkan sistem yang ada (sistem yang lama). Penekanan dari PDFD adalah bagaimana proses-proses dari sistem diterapkan (dengan cara apa, oleh siapa dan dimana), termasuk proses-proses manual. Dengan menggunakan PDFD, bagaimana proses sistem yang ada  akan lebih dapat digambarkan dan dikomunikasikan kepada pemakai sistem, sehingga analis sistem akan dapat memperoleh gambaran yang jelas bagaimana sistem tersebut bekerja. Untuk memperoleh gambaran bagaimana sistem yang ada diterapkan, PDFD harus memuat sebagai berikut : 
1.  Proses-proses manual juga digambarkan
2.  Nama dari arus data harus menunjukkan fakta penerapannya semacam nomor formulir dan medianya (misalnya telpon atau surat). Nama arus data mungkin juga menerangkan tentang waktu mengalirnya (misalnya harian atau mingguan). Dengan kata lain, nama dari arus data harus memuat  keterangan yang cukup terinci untuk menunjukkan  bagaimana pemakai sistem memahami kerja dari sistem.
3.  Simpanan data dapat menunjukkan simpanan non komputer, misalnya kotak in/out yang berfngsi sebagai buffer dari proses serentak yang beroperasi dengan kecepatan berbeda, sehingga ada sebuah data yang harus menunggu di buffer.
4.  Nama dari simpanan data harus menunjukkan tipe penerapannya apakah secara manual atau komputerisasi. Secara manual misalnya dapat menunjukkan buku catatan, meja pekerja atau kotak  in/out. Sedang secara komputerisasi misalnya menunjukkan file urut, file ISAM, file database dan lain sebagainya.
5.  Proses harus menunjukkan nama dari pemroses (processor), yaitu orang, departemen, sistem komputer atau nama program komputer yang mengeksekusi proses tersebut. 
LOGICAL DATA FLOW DIAGRAM (LDFD)
LDFD lebih tepat digunakan untuk menggambarkan sistem yang akan diusulkan (sistem yang baru). LDFD tidak menekankan pada bagaimana sistem diterapkan, tetapi penekanannya hanya pada logika dari kebutuhan-kebutuhan sistem, yaitu proses-proses  apa  secara  logika  yang  dibutuhkan  oleh  sistem.  Karena  sistem  yang  diusulkan  belum  tentu  diterima  oleh  pemakai  sistem  dan  biasanya  sistem  yang  diusulkan  terdiri  dari  beberapa  alternatif,  maka  penggambaran  sistem  secara  logika terlebih  dahulu  tanpa  berkepentingan  dengan  penerapannya  secara  fisik  akan  lebih  mengena  dan  menghemat  waktu  penggambarannya  dibandingkan  dengan  PDFD.  Untuk      sistem      komputerisasi,         penggambaran LDFD yang hanyamenunjukkan kebutuhan  proses  dari  sistem  yang  diusulkan  secara logika,  biasanya  proses-proses  yang digambarkan hanya merupakan proses-proses secara komputer saja.   
Syarat Pembuatan
Pedoman   bagaimana   menggambar   DFD   baik   PDFD   ataupun   LDFD   adalah  sebagai berikut :
1.   Identifikasikan terlebih dahulu semua kesatuan luar (external entity) yang terlibat di sistem. Kesatuan luar ini merupakan kesatuan (entity) di luar sistem, karena di luar  bagian  pengolahan  data  (sistem  informasi).  Kesatuan  luar  ini  merupakan  sumber  arus  data  ke  sistem  informasi  serta  tujuan  penerima  arus  data  hasil  dari  proses sistem informasi, sehingga merupakan kesatuan di luar sistem informasi.
2.   Identifikasikan semua input dan output yang terlibat dengan kesatuan luar. 
3.   Gambarlah   terlebih   dahulu   suatu   diagram   konteks   (context   diagram).   DFD  merupakan  alat  untuk  structured  analysis.  Pendekatan  terstruktur  ini  mencoba   untuk menggambarkan sistem pertama kali secara garis besar (disebut dengan top  level) dan memecah-mecahnya menjadi bagian yang lebih terinci (disebut dengan   lower level).  
 DFD yang pertama kali digambar adalah level teratas (top level) dan diagram ini disebut  context  diagram.  Dari  context  diagram  ini  kemudian  akan  digambar  dengan lebih terinci lagi yang disebut dengan overview diagram (level 0). Tiap-  tiap  proses  di  overview  diagram  akan  digambar  secara  lebih  terinci  lagi  dan   disebut dengan level 1. Tiap-tiap proses di level 1 akan digambar kembali dengan  lebih terinci lagi dan disebut dengan  level 2 dan seterusnya sampai tiap-tiap proses tidak dapat igambar lebih terinci lagi.
KETERBATASAN DFD  
Walaupun  DFD  mempunyai  kebaikan-kebaikan,  yaitu  dapat  menggambarkan sistem   secara   terstruktur   dengan   memecah-mecah   menjadi   level   lebih   rendah  (decomposition),  dapat  menunjukkan  arus  data  di  sistem,  dapat  menggambarkan  proses  paralel  di  sistem,  dapat  menunjukkan  simpanan  data,  dapat  menunjukkan  kesatuan  luar,  tetapi  DFD  juga  mempunyai  keterbatasan.  Keterbatasan  DFD  adalah  sebagai berikut : 
1.   DFD tidak menunjukkan proses perulangan (loop) 
2.   DFD tidak menunjukkan proses keputusan (decision) 
3.   DFD tidak menunjukkan proses perhitungan 
A.  Ziya  Aktas memberikan pemecahan untuk keterbatasas DFD ini,  yaitu dengan  menambahkan            penggunaan operational operator  (operator hubungan), sehingga kemampuan DFD dapat lebih ditingkatkan. Operator hubungan ini adalah :