11. Data Flow Diagram - Repository UNIKOM

Pemograman Terstruktur

  • Modul ini berisi tentang konsep rekayasa

    perangkat lunak (software engineering) untuk

    pemograman terstruktur
  • • Pemodelan perangkat lunak menggunakan DFD

    (Data Flow Diagram).
  • Untuk mempermudah pemahaman, ilustrasi perancangan perangkat lunak dengan DFD disertai menggunakan studi kasus
  • Pemograman terstruktur adalah konsep atau

    paradigma atau sudut pandang pemograman yang

    membagi-bagi program berdasarkan fungsi-fungsi

    atau prosedur-prosedur yang dibutuhkan program

    komputer
  • • Fungsi-fungsi dan prosedur ditulis secara sekuensial

    atau terurut dari atas ke bawah sesuai dengan kebergantungan antar fungsi atau prosedur

  • DFD tidak sesuai untuk memodelkan sistem perangkat lunak yang akan

    dibangun menggunakan pemograman

    berorientasi objek.

  Notasi-notasi pada DFD

  The Hierarchy of Data-Flow Diagrams

  T h e H i e r a r c h y o f D a t a F l o w D i a g r a m s

  • Contex Diagram/

  C o n t e x t D i a g r a m

  Diagram Konteks

  • DFD Fisik

  P h y s i c a l D F D L e v e l- 0 l o g i c a l D F D N o l o w e r l e v e ls L o w e r l e v e l s p o s s ib l e

  • DFD Logic

  L e v e l 1 d i a g r a m ( s ) L e v e l 2 d i a g r a m s ( s ) , e t c . Tahap Perancangan Database Perancangan Secara Konseptual

  • • Diagram konteks adalah diagram yang terdiri dari suatu

    proses dan menggambarkan ruang lingkup suatu sistem.
  • • Diagram konteks merupakan level tertinggi dari DFD

    yang menggambarkan seluruh input ke sistem atau output dari sistem. Ia akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus).
  • • Dalam diagram konteks hanya ada satu proses. Tidak

    boleh ada store dalam diagram konteks.
  • • Diagram konteks berisi gambaran umum (secara garis

    besar) sistem yang akan dibuat. Secara kalimat, dapat dikatakan bahwa diagram konteks ini berisi “siapa saja yang memberi data (dan data apa saja) ke sistem, serta kepada siapa saja informasi (dan informasi apa saja) yang harus dihasilkan sistem.”

  • Jadi, yang dibutuhkan adalah (1) Siapa saja pihak

  yang akan memberikan data ke sistem, (2) Data apa saja yang diberikannya ke sistem, (3) kepada siapa sistem harus memberi informasi atau laporan, dan (4) apa saja isi/ jenis laporan yang harus dihasilkan sistem.

  Kata “Siapa” di atas dilambangkan dengan kotak

persegi (disebut dengan terminator), dan kata “apa” di

atas dilambangkan dengan aliran data (disebut dengan

data flow), dan kata “sistem” dilambangkan dengan

Context Diagram

  • Sering disebut DFD Level 0
  • Hanya Ada satu proses
  • CD menyoroti sejumlah karakteristik penting sistem, yaitu :

  1.Kelompok pemakai, organisasi atau sistem lain dimana sistem melakukan komunikasi (sebagai terminator).

  2.Data masuk, yaitu data yang diterima sistem dari lingkungan dan harus diproses dengan cara tertentu.

  3.Data keluar, yaitu data yang dihasilkan sistem dan diberikan ke dunia luar.

  

4.Penyimpanan data (storage), yaitu digunakan secara

bersama antara sistem dengan terminator. Data ini

dapat dibuat oleh sistem dan digunakan oleh lingkungan atau sebaliknya dibuat oleh lingkungan dan digunakan oleh sistem. Hal ini berarti pembuatan

simbol data storage dalam CD dibenarkan, dengan

syarat simbol tersebut merupakan bagian dari dunia diluar sistem. 9

  

Contoh Kasus

  • Sebagai Contoh, beberapa kemungkinan (data) yang

    diberikan pembeli kepada kasir adalah : (1) barang

  

yang ditanyakan, (2) barang yang akan dibeli,

dan (3) Uang pembayaran. Sebaliknya,

kemungkian informasi yang diberikan kasir kepada

pembeli adalah (1) keadaan barang yang ditanyakan, (2) jumlah uang yang harus dibayar.

  Sedangkan informasi yang diberikan kasir kepada

Pemilik adalah Laporan Jumlah Uang Masuk beserta

Jumlah Barang yang Terjualnya. DFD Konteksnya menjadi   

  Contoh Context Diagram

  

11 Tahap Perancangan Database Perancangan Secara Konseptual

  • Data Flow Diagram (DFD) 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.

  • Pilih nama yang jelas maksudnya (bagi proses, aliran, penyimpanan, dan terminator)
    • – Untuk proses sebaiknya menggunakan nama yang mengacu pada fungsi, yaitu

      gabungan antara kata kerja yang spesifik dan obyek, misalnya memproses laporan inventori, validasi nomer telepon dan lain-lain. Untuk terminator lebih mengacu

      pada orang atau kelompok orang, sedangkan untuk aliran dan penyimpanan

      mengacu pada paket data atau informasi yang terkandung didalamnya.
    • – Jangan menggunakan nama yang terlalu umum, misalnya proses data, tangani

      masukan dan lain-lain.
    • – Gunakan nama yang familiar bagi pemakai.

  • Menomori proses untuk memperjelas sistematika.
    • – Tidak jadi masalah bagaimana urutan ditempatkan.
    • – Nomor tidak menunjukkan urutan.
    • – Penomoran dimaksudkan sebagai identifikasi proses dan memudahkan penurunan

  13 Petunjuk Membuat DFD

Petunjuk Membuat DFD (2)

  • Menggambar kembali DFD hingga beberapa kali, sehingga cukup estetik. Penggambaran kembali yang kadang-kadang bahkan lebih dari sepuluh kali digunakan untuk menjaga secara teknis gambar tersebut sudah benar, dapat diterima oleh pemakai, misalnya tingkat operasional yang akan mengoperasikan dan dapat diterima oleh pimpinan yang dalam hal ini menentukan strategi organisasi. Ketika penggambaran dilakukan ada beberapa hal yang perlu diperhatikan, yaitu :
    • – Ukuran dan bentuk lingkaran sebaiknya tetap sama, karena jika tidak dapat menimbulkan kesan lingkaran yang lebih besar memproses sesuatu yang juga lebih besar.
    • – Panah yang melengkung dan lurus tidak jadi masalah tetapi sebaiknya tidak menggunakan kedua cara tersebut pada gambar yang sama.
    • – Menggambar dengan tangan atau menggambar dengan perangkat tertentu, tidak merupakan masalah. Menggambar dengan tangan seringkali memberikan sesuatu yang lain katakanlah sentuhan seni, tetapi menggambar dengan mesin, seringkali lebih memudahkan modifikasi.

Petunjuk Membuat DFD (3)

  • Mencegah DFD yang terlalu kompleks dan tidak perlu.
    • – Kegunaan DFD bukan hanya menggambarkan fungsi dan interaksinya dalam sistem secara akurat tetapi juga untuk dibaca dan dimengerti oleh bukan hanya penganalisa sistem, tetapi juga pemakai yang berpengalaman dalam sistem yang dimodelkan. Hal ini berarti : jangan membuat DFD dengan terlalu banyak proses, aliran, penyimpanan dan terminator.

  • Menjamin konsistensi DFD tersebut secara intern ataupun yang berkaitan dengan DFD. Konsistensi dalam hal ini juga menyangkut konsistensi dengan model lain (misalnya : entity relationship diagram, state transition diagram, dan process specification).

Perhatikan !

  Mencegah proses yang mempunyai

  • masukan tetapi tidak mempunyai keluaran yang dikenal dengan lubang hitam (black-hole) Mencegah proses yang mempunyai
  • keluaran tetapi tidak punya masukan, misalnya penghasil bilangan acak. Hati-hati dengan aliran dan proses
  • yang tidak dinamakan karena dapat mengakibatkan elemen data yang saling tidak berhubungan menjadi satu. Hati-hati dengan penyimpanan yang
  • punya status hanya dapat dibaca atau hanya dapat ditulis dan berkaitan dengan proses yang hanya memproses masukan atau hanya memproses keluaran.
  • 16

  

Penurunan Level DFD

  • Setiap penurunan ke level yang lebih rendah harus mampu mempresentasikan proses tersebut dalam spesifikasi proses yang jelas, sehingga seandainya belum cukup jelas maka seharusnya diturunkan ke level yang lebih rendah.
  • Setiap penurunan harus dilakukan hanya jika perlu.
  • Tidak semua bagian dari sistem harus diturunkan dengan jumlah level yang sama karena yang kompleks bisa saja diturunkan, dan yang sederhana mungkin tidak perlu diturunkan. Selain itu, karena tidak semua proses dalam level yang sama punya derajat kompleksitas yang sama juga.
  • Konfirmasikan DFD yang telah dibuat pada pemakai dengan cara top-down.
  • Aliran data yang masuk dan keluar pada suatu proses di level harus berhubungan dengan aliran data yang masuk dan keluar pada level x+1. Dimana level x+1 tersebut mendefinisikan sub proses pada level x tersebut.
  • Ketika mulai menurunkan DFD dari level tertinggi, cobalah untuk mengindentifikasi external events dimana sistem harus memberikan respon. External events dalam hal ini berarti suatu kejadian yang berkaitan dengan pengolahan data di luar sistem, dan menyebabkan sistem kita memberikan

  18 Penurunan Level DFD

  Nama Level Nama Diagram Nomor Process Context

1 Diagram 0 1.0 2.0 3.0 ....

  

2 Diagram 1.0 1.1 1.2 1.3 ....

  

2 Diagram 2.0 2.1 2.2 2.3 ....

  

2 Diagram 3.0 3.1 3.2 3.3 ....

  

3 Diagram 1.1 1.1.1 1.1.2 ....

   3 Diagram 1.2 1.2.1 1.2.2 ....

  

3 Diagram 1.3 1.3.1 1.3.2 ....

dst

Contoh DFD Sistem Pembayaran Royalti

  Bagian Penjualan Manajer Keuangan

  Bank Pengarang Sistem

  Pembayaran Royalti Laporan penjualan

  Transfer Bukti transfer Daftar rencana pembayaran

  Persetujuan Surat pemberitahuan

  Laporan penjualan

  1 Mencatat buku terjual Catatan royalti Data buku terjual Jadwal pembayaran

  2 Membuat Laporan royalti Jatuh tempo Waktu pembayaran

  3 Memproses pembayaran Royalti terbayar Royalti belum terbayar Pengarang Rekening bank Pembayaran Surat pemberitahuan Royalti belum terbayar Data pengarang Nomor rekening Ringkasan royalti Transfer Bukti transfer Daftar rencana pembayaran Persetujuan

  

Contoh Kasus

  • • Di sebuah tempat penyewaan Video Compact

Disk (VCD), masih dilakukan pencatatan manual

  untuk Penyewaan dan pengembalian VCD oleh Penyewa. Dalam kasus ini, akan dirancang sistem komputerisasi Penyewaan (saja) VCD tersebut.