Analisa & Perancangan Sistem Informasi Tambahan Materi & Tugas Pertemuan 03 Data Flow Diagram DFD merupakan gambar pergerakan data antara entitas- entitas luar dan prosesproses serta data store dalam sebuah sistem. Merupakan salah satu notasi yang dikenali sebagai teknik analisis berstruktur DFD merupakan perwakilan model logikal yang menunjukkan APA yang dilakukan oleh sistem dan BUKAN BAGAIMANA ia dilakukan.
Definisi Diagram yg menggunakan notasi-notasi utk menggambarkan arus dari sistem Versi Bahasa Indonesia :Diagram Alir Data (DAD) Penggunaannya sangat membantu utk memahami sistem secara logika, terstruktur & jelas Di-disain utk menunjukkan sistem yg terbagi-bagi menjadi sub-sistem Sebagai alat komunikasi dg user, sehingga user dapat membayangkan cara kerja & proses implementasi dari sistem yg akan dibangun 3 Perbedaan simbol DFD yang digunakan oleh DeMarco & Yourdan dan Gane & Sarson
WARNING!!! Simbol DFD yang digunakan di BSI. EXTERNAL ENTITY 2. PROSES 3. DATA FLOW 4. DATA STORE Tentang DFD DFD bukan flowchart Proses dalam DFD bisa berjalan secara paralel DFD menggambarkan : aliran data dalam sebuah sistem Data yang tersimpan; dan proses dg proses yg terhubung dg data tersebut Tidak ada loop ataupun cabang dalam DFD DFD menggambarkan semua proses, meskipun proses tersebut terjadi dalam waktu yang berbeda 6
Kelebihan DFD Adanya pembagian sistem ke dalam subsub DFD sistem berdasarkan alur data pada sistem Adanya data store dan alur data (masuk atau keluar) pada sistem Adanya unsur-unsur eksternal, yaitu sumber dan tujuan dari sistem Kelemahan DFD Akan tetapi pada umumnya, DFD tidak DFD menunjukkan : Komposisi alur data dalam sistem Syarat akses data dari data store Keputusan dalam sistem Loop dalam sistem Kalkulasi Kuatitas data dan atau proses
Alasan Utama. Diagram alur data dapat membantu para analis sistem untuk : DFD meringkas informasi tentang sistem mengetahui komponen kunci tentang sistem dan membantu dalam menentukan fungsifungsi yang dapat dipakai kembali membantu perkembangan aplikasi secara efektif Alasan Utama - lanjutan 2. DFD sebagai alat komunikasi yang baik antara DFD pemakai dengan analis sistem sehingga sangat mudah untuk melakukan kaji ulang secara terus menerus guna perkembangan aplikasi tersebut. 3. DFD menunjukkan syarat-syarat pengaturan waktu dari berbagai macam proses
Contoh Kasus Pimpinan POLDA XYZ ingin mengetahui dengan pasti keadaan personilnya (riwayat personil, penugasan, prestasi, penghargaan, dll) secara periodik. Contoh Kasus Bantulah keinginan KAPOLDA tersebut dalam bentuk perancangan sistem dengan menggunakan DFD & ERD! Jawab Kasus Langkah pertama kita buat Diagram Konteks. Diidentifikasi entitas eksternal yang terlibat dalam sistem, yaitu: Contoh Kasus Personil Pimpinan (KAPOLDA) Sehingga diperoleh Diagram Konteks yaitu :
Jawab Kasus - lanjutan PERSONIL Data pers. Sistem Informasi Personil POLDA Contoh Kasus Info tugas, kasus, prestasi Laporan KAPOLDA Jawab Kasus - lanjutan Personil Contoh Kasus PERSONIL 3Info prestasi Eval & Laporan Data pers. Info tugas, kasus Data pers., tugas, kasus Cek Personil Data pers. Penu- Gasan 2 Data pers. Kasus Data kasus Data tugas Laporan KAPOLDA Tugas
Contoh Kasus 2 Rancanglah ERD dari Kasus Sistem Informasi Personil POLDA XYZ! (lihat contoh kasus..!) Contoh Kasus Contoh Kasus Jawab Kasus 2 Berdasarkan jawab dari kasus, diperoleh data store nya yaitu Personil, Tugas dan Kasus. Data store tersebut merupakan entitas pada ERD. Sehingga diperoleh 3 entitas yakni Personil, Tugas dan Kasus, dengan ERD sebagai berikut :
Jawab Kasus 2 - lanjutan Krbn Tgl.K Hasil Kasus M K.Kss N.Kss Tkp Contoh Kasus Personil N Kerja Tugas NRP N.SK K.Sat Nama Tgl Sat T.Lhr Lama Loks Simbol DFD Entity Process Data Flow Data Store 8
External Entity (Entitas) Digambarkan dengan simbol bujur sangkar Merupakan sumber atau tujuan dari aliran data Merupakan lingkungan luar dari sistem Bisa menggambarkan secara fisik, seseorang atau sekelompok orang atau sistem lain Sebaiknya diberi nama dg kata benda Kadang-kadang perlu untuk menduplikasinya untuk menghindari anak panah yang simpang siur Ditandai dengan garis diagonal disudut kanan bawah yang menyatakan kalau entity tersebut lebih dari satu 9 Entity (Entitas) 2 Suatu kantor, departemen atau devisi laian dalam perusahaan tetapi diluar sistem yang sedang dikembangkan Orang atau kelompok orang di organisasi tetapi diluar sistem yang dikembangkan Suatu organisasi atau orang yang berada diluar organisasi, misal langganan, pemasok Sistem informasi lain diluar sistem yang dikembangkan Sumber asli dari transaksi Penerima akhir dari suatu laporan yang dihasilkan sistem 20
Simbol Entity (Entitas) Langganan Akutansi Pemasok Gudang 2 Data Flow (Aliran Data) Data Flow Menggambarkan aliran data dari suatu proses ke proses lainnya Merepresentasikan dengan menggunakan anak panah atau Kepala tanda panah mengarah ke tujuan data Nama proses ditulis untuk menjelaskan arti dalam aliran tersebut dan ditulis untuk mengidentifikasi aliran tersebut Aliran data dapat menyebar atau menyatu 22
Data Flow (Aliran Data) 2 Formulir atau dokumen Laporan tercetak yang dihasilkan sistem Tampilan atau output layar yang dihasilkan sistem Masukan untuk komputer Komunikasi ucapan Surat-surat atau memo Data yang dibaca atau direkam ke suatu file Suatu isian yang dicatat dalam buku agenda Trasnmisi data dari suatu komputer ke komputer yang lain 23 Contoh Kasus 2 Rancanglah ERD dari Kasus Sistem Informasi Personil POLDA XYZ! (lihat contoh kasus..!) Contoh Kasus
Contoh Kasus Jawab Kasus 2 Berdasarkan jawab dari kasus, diperoleh data store nya yaitu Personil, Tugas dan Kasus. Data store tersebut merupakan entitas pada ERD. Sehingga diperoleh 3 entitas yakni Personil, Tugas dan Kasus, dengan ERD sebagai berikut : Jawab Kasus 2 - lanjutan ERD Krbn Tgl.K Kasus K.Kss N.Kss Komponen Utama Kardinalitas Hasil M Tkp Contoh Kasus Personil N Kerja Tugas NRP N.SK K.Sat Nama Tgl Sat T.Lhr Lama Loks
Konsep arus data yang perlu diperhatikan A. Konsep paket dari data (packet of data) Bila ada dua atau lebih data mengalir dari suatu sumber yang sama ke tujuan yang sama, maka harus dianggap sebagai suatu arus data yang tunggal Konsep paket dari data (packet of data) a Order Langganan Langganan Pembayaran Order Langganan Gambar Yang salah a Langganan Order Langganan Dan Pembayaran Order Langganan Gambar Yang benar
Arus Data a Langganan Order Langganan Order Langganan a Langganan Arus Data Order Langganan Pembayaran Order Langganan 2 Penerimaan Kas
B. Konsep arus data menyebar (diverging data flow) Arus data menyebar menunjukkan sejumlah data dari satu sumber yang sama menuju ke tujuan yang berbeda. Konsep arus data menyebar (diverging data flow) 2 Order Langganan Penerimaan Kas Order Penjualan Tembusan journal Tembusan kredit Tembusan Permintaan barang b Gudang 3 Verifikasi Kredit
C. Konsep arus data mengumpul (converging data flow) Menunjukkan beberapa arus data yang berbeda dari sumber yang berbeda bergabung bersama-sama menjadi satu menuju ke tujuan yang sama Konsep arus data mengumpul Pembuatan faktur faktur a Pengiriman Langganan 2 Pembuatan Slip pengepakan Slip pengepakan
Konsep arus data mengumpul Pembuatan faktur faktur a Langganan 2 Pembuatan Slip pengepakan Slip pengepakan D. Konsep sumber dan tujuan arus data Semua arus data harus dihasilkan dari suatu proses atau menuju suatu proses. Konsep ini penting karena arus data adalah salah satu dari hasil suatu proses atau akan dipergunakan untuk melakukan suatu proses.
Process (Proses) Direpresentasikan dengan simbol Adalah fungsi yang mentransformasikan data secara umum Karena proses adalah suatu pekerjaan, maka untuk menamai sebuah proses mulailah dengan kata kerja dan diikuti objek Nama proses harus unique 37 Proses Kegiatan atau kerja yang dilakukan orang, mesin atau komputer Semua proses harus ada input dan harus ada outputnya Physical data flow diagram (PDFD) proses dapat dilakukan oleh manusia, mesin atau komputer Logical data flow diagram (LDFD) proses yang dilakukan oleh komputer
Simbol Proses Identifikasi atau Nama Proses Identifikasi Nama Proses Pemroses Proses. Identifikasi Proses Biasanya berupa angka yang menunjukkan nomor acuan dari proses 2. Nama Proses Menunjukkan apa yang dikerjakan proses, biasanya diawali dengan kata kerja 3. Pemroses Pada PDFD tidak hanya oleh komputer tapi juga bisa proses manual atau mesin non komputer jadi harus disebutkan Pada LDFD menyebutkan nama program yang melakukan proses bila dalam sistem terdiri atas banyak program.
Kesalahan dalam penggambaran proses yang terjadi Identifikasi Nama Proses? Black Hole (Ada input tidak ada output) Identifikasi? Nama Proses Miracle / ajaib (Ada output namun tidak ada input) Beberapa kemungkinan arus data dalam proses (process). Suatu proses menerima input dan menghasilkan satu output. Kartu jam kerja Hitung gaji Daftar gaji Personalia
2. Suatu proses menerima lebih dari satu input dan menghasilkan satu output. Kartu jam kerja Tingkat upah Hitung gaji Personalia Daftar gaji 3. Suatu proses menerima satu input dan menghasilkan lebih dari satu output. Rincian piutang Membuat laporan piutang Laporan umur piutang Laporan piutang ditagih
Suatu proses harus menerima arus data masuk (input) dan menghasilkan arus data keluar (output) Perhatikan contoh : Bagaimana menurut anda? Gambar dibawah salah, karena proses memiliki input tetapi tidak ada output. pelanggan pelanggan Order pelanggan Verifikasi kredit pelanggan Order disetujui 2 Membuat order penjualan Order penjualan Akuntansi Penggambaran yang tepat. pelanggan pelanggan Order pelanggan Verifikasi kredit pelanggan Order disetujui 2 Membuat order penjualan Order penjualan Akuntansi
Umumnya kesalahan terjadi karena : Proses memiliki input tetapi tidak mempunyai output. Kesalahan ini disebut dengan Black Hole (lubang hitam). Proses menghasilkan output, tetapi tidak ada input yang masuk. Kesalahan ini disebut dengan istilah Miracle (ajaib) Data Store (Penyimpanan Data) Direpresentasikan dengan simbol Komponen yang berfungsi untuk menyimpan data/ file adalah fungsi yg mentransformasikan data secara umum Penyimpanan data sementara tdk dimasukkan Diberi nama dengan kata benda 48
Simpanan Data. Suatu file atau database di sistem komputer 2. Suatu arsip atau catatan manual 3. Suatu kotak tempat data di meja seseorang 4. Suatu tabel acuan manual 5. Suatu agenda atau buku Simbol Media Nama data source kesalahan yang sering muncul D Penjualan D2 Piutang dagang a Langganan D2 Piutang dagang
Update Data Arus data menuju ke simpanan data dari suatu proses menunjukkan : menambah atau menyimpan record baru Menghapus record Merubah nilai data di suatu record Arus data yang berasal dari simpanan menuju proses menunjukkan proses tersebut menggunakan data yang ada di simpanan data. Update data Memeriksa dan merubah data barang Penjualan D Persediaan barang Memeriksa dan merubah data barang Status barang D Persediaan barang Penjualan
Penggandaan kesatuan luar dan simpanan data agar gambar tidak terlalu kompleks denga perpotongan garis a a a Langganan Atau Langganan * Atau Langganan ** D Penjualan Atau D Penjualan Atau D Penjualan D Penjualan Atau D * Penjualan Atau D * * Penjualan Aturan DFD. Entity tidak boleh terhubung langsung dengan entity 2. Data store tdk boleh terhubung langsung dg data store 3. Data store tdk boleh terhubung langsung dg entity (& sebaliknya) 4. Setiap process harus memiliki minimal data flow yg masuk, dan data flow yg keluar 5. Data flow tidak boleh terbelah/bercabang menjadi dua data flow yg berbeda Semua objek harus mempunyai nama Aliran data harus diawali dan diakhiri oleh proses Semua aliran data harus mempunyai tanda panah 54
Aturan DFD entity entity 3 proc ess 5 proc ess proc Data Store ess 2 4 Data Store 55 Aturan DFD -Tambahan Semua objek harus mempunyai nama Aliran data harus diawali dan diakhiri oleh proses Semua aliran data harus mempunyai tanda panah 56
Context Diagram Level dalam DFD Tingkatan tertinggi dlm DFD Hanya memuat satu process Tidak menunjukkan data store Diagram 0 Menunjukkan data store Bisa mencakup sampai 9 (sembilan) process Diagram Detail Pengembangan dari diagram 0 57 Level dalam DFD (cont.) Dalam DFD level dimulai dari level 0 (context) kemudian turun ke DFD level, 2 & seterusnya sesuai dg kebutuhan Dalam penurunan tidak semua bagian sistem harus diturunkan dengan jumlah level yang sama Aliran data dalam yang masuk dan keluar dalam level X harus harus berhubungan dengan aliran data yang masuk dan keluar pada level X + yang mendefinisikan proses pada level X tersebut. 58
DFD Context Diagram 59 DFD Diagram 0 (Level ) 60
Contoh DFD anna@bsi.ac.id annayuliartikh.bsi@gmail.com 6 Contoh DFD 62
Don t do this! 63 Context diagram (top level / level 0) a x b y 0 c a Over view diagram (level ) x A 2 B c D b y 4 3 E Z c
Over view diagram (level ) a x A 2 B c D b y 4 3 E Z c Over view diagram (level 2) D E 3. 3.2 P Q R S 3.3 Z Diagram Context b Manajer Kredit Status Langganan c Gudang a Langganan Order langganan 0 Transaksi Penjualan Tembusan permintaan persediaan Faktur, Tembusan kredit d Pengiriman
Diagram Jenjang Proses 0 Transaksi Penjualan Top Level 2 3 4 Memproses Order Langganan Memverifikasi Kredit Merekam Transaksi Dan posting Membuat Laporan Level 0. Mengecek Pemenuhan order.2 Merekam Back order.3 Membuat Order penjualan.4 Membuat Faktur dan tembusan Level a c Manajer Kredit Manajer Kredit b Pengiriman D6 Order langganan Persediaan Status persediaan. Mengecek Pemenuhan order Tembusan Permintaan persediaan Faktur, tembusan kredit Order tidak terpenuhi.3 Membuat Order penjualan.4 Membuat Faktur penjualan D7 Rekam order penjualan Back order Merekam Back order rekam back order.2 D8 Order penjualan D8 D Nama langganan * Order penjualan * Order penjualan langganan 2 3
Perbedaan dengan bagan alir Proses DAD dapat beroperasi secara parallel DAD lebih menunjukkan arus dari data Tidak dapat menunjukkan proses perulangan dan proses keputusan Bagan alir menunjukkan proses yang urut Bagan alir menunjukkan arus dari procedure, bagan alir program menunjukkan arus dari algoritma Dapat menunjukkan proses perulangan dan proses keputusan Kelemahan DAD Tidak dapat menunjukkan proses perulangan Tidak dapat menunjukkan proses keputusan Tidak dapat menunjukkan proses perhitungan
TUGAS02: Presentasi DFD Dibagi ke 5 kelompok Pelajari contoh kasus di materi kuliah (Perusahaan Bina Sarana Indonesia) Gambarkan DFD (Context, Level 0, Level detail) Buat analisa permasalahan Kirimkan tugas tsb via email : nama kelompok, anggota, diagram DFD deadline 9-Apr-09 Presentasi DFD 5 menit 24-Apr-09 Do it in English, and earn more points! 7 TUGAS0: Wawancara (Roleplay) 8 orang / kelompok 3 org sbg Analyst, sisanya Customer Di sisi customer buat variasi level posisi, misal: Direktur, Manager, Staff Buat skenario, customer ingin membuat sistem baru / upgrade sistem yg ada Susun pertanyaan yg sesuai Kirimkan info mengenai: nama kelompok, anggota, role, skenario, pertanyaan deadline 8-Apr-09 Lakukan roleplay dlm waktu 5 menit 7-Apr-09 Do it in English, and earn more points! 72
Pengumuman Tugas0 email deadline 8-Apr-09 Roleplay Tugas0 tgl 7-Apr-09 Tugas02 email deadline 9-Apr-09 Presentasi Tugas02 tgl 24-Apr-09 Kuliah tgl 0 April 09 ditiadakan (libur) Kuliah pengganti: Sabtu, 04 April 09 pkl 4:00-7:00 (BESOK) tlg infokan ke mahasiswa lainnya 73