BAB 5 PERANCANGAN PROSES GDFGDGG A. BAGAN TERSTRUKTUR Bagan terstruktur (structured chart) mirip dengan bagan berjenjang (hierarchy chart). Sama dengan bagan berjenjang, bagan terstruktur juga digunakan untuk mendefinisikan dan mengilustrasikan organisasi dari sistem informasi secara bentuk berjenjang dalam modul dan submodul. Bagan terstruktur adalah suatu alat yang digunakan untuk menjelaskan suatu sistem dalam bentuk modul dan submodul. Bagan terstruktur digunakan dalam perancangan terstruktur dari suatu sistem informasi yang menunjukkan hubungan elemen data dan elemen kontrol, modul dan hubungan antar modul dalam suatu program. Dengan adanya bagan terstruktur dapat diketahui : Masukan dari sebuah modul Keluaran dari modul tersebut Apa yang dilakukan oleh modul tersebut Simbol-simbol di Bagan Terstruktur : Module. Menggambarkan suatu modul (kumpulan perintah / intruksi program) Connection. Menghubungkan suatu modul dengan modul yang lain Loop. Menyatakan perulangan selama kondisi terpenuhi dalam suatu modul Decision. Simbol ini menunjukkan suatu penyeleksian kondisi di dalam modul Couple. Menunjukkan suatu data atau elemen kontrol yang dikirimkan dari suatu modul kemodul lainnya. Panah dengan lingkaran kosong menunjukkan data yang dikirim dan panah dengan lingkaran diblock menunjukkan elemen kontrol yang dikirim.
Contoh : Hitung Potongan Menunjukkan suatu modul dengan nama Hitung Potongan Contoh : A Modul A memanggil modul B, Setelah proses dari modul B selesai, maka proses kembali ke modul A yang memanggilnya. B Contoh : A Q P Modul memanggil modul B dan elemen data P dikirimkan dari modul A ke modul B. hasil proses dari modul B mengirimkan elemen data Q dan elemen kontrol Flag ke modul A. Flag B Contoh : A Modul A memanggil modul B bila kondisi yang diseleksi terpenuhi. Maka modul A juga memanggil modul C berulang kali yang ditunjukkan oleh simbol perulangan. B C
X X Total Potongan Total Perulangan di Bagan Terstruktur Proses perulangan juga dapat ditunjukkan oleh bagan terstruktur dengan simbol arah panah yang melingkar. Banyaknya peulangan yang dilakukan secara explisit memang tidak tampak dibagan terstruktur ini, tetapi ditunjukkan oleh proses di modul letak perulangan itu terjadi. Contoh : Menghitung Total X Habis Masukan Data Hitung Total Tampilkan Hasil Keputusan di Bagan Terstruktur Seringkali didalam suatu modul terdapat suatu penyeleksian kondisi yang akan membuat keputusan tentang kegiatan-kegiatan yang akan dilakukan oleh modul ini. Berdasarkan keputusan-keputusan ini, maka suatu modul akan memanggil modul yang lainnya. Contoh : Hitung Penjualan Penjualan Potongan Penjualan Bersih Potongan Potongan untuk Dealer Potongan untuk Agen Hitung Penjualan Bersih
Daf_Dept_Prsh CONTOH KASUS BAGAN TERSTRUKTUR SISTEM INFORMASI PERMINTAAN BARANG SISTEM INFORMASI PERMINTAAN BARANG Laporan_permintaan Pendataan Daftar Barang & Daftar Departemen Perusahaan 1 2 Pengolahan Barang 3 Cetak Laporan permintaan No_FPB Kd_dept Kd_brg Dept_prsh Brg BAGAN TERSTRUKTUR PENDATAAN DAF BRG & DAF DEPT PERUSAHAAN (1.0) Pendataan Daftar Barang & Daftar Departemen Perusahaan Daf_brg Entry Daftar Barang Entry Daftar Departemen Perusahaan Kd_brg Kd_dept Kd_brg Dt_brg Kd_dept Dt_dept Brg Tulis Brg Dept Prsh Tulis Dept Prsh
BAGAN TERSTRUKTUR PENGOLAHAN PERMINTAAN BARANG (2.0) Pengolahan Barang Daf_brg_prsh FPB FPB_OK FPB_kembali FPB_OK Daf_minta_dept_verifikasi Daf_minta_dept Cetak Daf Brg Perusahaan Terima & periksa FPB Entry FPB Pengolahan Verifikasi Cetak BPB Kd_brg Kd_dept Kd_brg Status_FPB Daf_brg_prsh No_FPB No_FPB Dt_FPB No_FPB Kd_dept Dt_FPB Kd_brg Kd_brg Jml_minta Jml_realisasi No_FPB BRG Dept_prsh BRG Tulis Dept_prsh BRG Tulis Tulis BRG Cetak BPB No_FPB Kd_dept Kd_brg Dept_prsh BRG
MODULE SPECIFICATION (SPESIFIKASI MODUL) Setiap modul pada Bagan Terstruktur harus memiliki Module Specification. Tanpa ini kita tidak akan mengetahui apa yang terjadi di dalam modul tersebut. Banyak cara / metode yang dapat digunakan untuk menggambarkan modul tersebut. Spesifikasi modul menjadi pedoman bagi programmer dalam membuat program (coding). Metode yang digunakan dapat berupa : 1. Narasi, uraian proses dalam bentuk cerita 2. Bahasa Indonesia / Inggris yang terstruktur 3. Decision Table (tabel keputusan) 4. Decision tree (pohon keputusan) Contoh : Prosedur Pembelian Kredit ( limit 500.000 ) Terima Pembelian Kredit Kondisi 1 : Cek Batas Limit Kredit Jika tidak dilampaui, maka Pembelian Kredit Dilayani Jika dilampaui, maka Kondisi 2 : Cek Histori Bayar Jika Buruk, maka Pembelian Kredit Ditolak Jika Baik, maka Kondisi 3 : Cek Limit Pembelian Jika > 1 jt, maka tolak Jika <= 1 jt, maka minta Persetujuan Manajer Penyelesaian dengan Spesifikasi Modul NARASI Penjelasan proses dalam bentuk kalimat : Untuk setiap pembelian dari pelanggan harap diperiksa : Apabila batas kredit dilampaui maka periksa histori pembayarannya. Apabila historinya kurang baik maka ditolak. Apabila historinya baik dan pembelian tidak melebihi 1 juta rupiah mintalah persetujuan manajer, bila lebih dari 1 juta rupiah maka ditolak.
BAHASA INDONESIA TERSTRUKTUR Instruksi Proses dengan Bahasa Indonesia : JIKA MAKA JIKA MAKA... SELAIN ITU AKHIR JIKA... AKHIR JIKA SELAMA LAKUKAN ULANG AKHIR SELAMA SAMPAI LAKUKAN KASUS KASUS...... KASUS......... * BUKA FILE... * BACA FILE... * BACA FILE... BERDASARKAN... * TULIS FILE... * TUTUP FILE... * HITUNG... * CETAK KE PRINTER... * TAMPIL KE LAYAR...
Instruksi tidak mutlak (kaku), yang penting dapat dimengerti Contoh Bahasa Indonesia Terstruktur : MODUL Validasi_Pembelian_Kredit Cek Limit Kredit JIKA Pembelian Kredit > Limit_Kredit MAKA Cek Histori Bayar JIKA Histori_Bayar = Buruk MAKA Tolak SELAIN ITU Cek Jumlah Beli JIKA Nilai_Beli <= 1 juta MAKA Minta_persetujuan_manajer SELAIN ITU Tolak AKHIR JIKA AKHIR JIKA SELAIN ITU Pembelian_dilayani AKHIR JIKA AKHIR MODUL STRUCTURED ENGLISH Instruksi Proses dengan Bahasa Inggris : IF THEN IF THEN ELSE... END IF END IF WHILE DO REPEAT...... END WHILE UNTIL DO CASE CASE...... CASE...... END CASE
* OPEN FILE... * READ FILE... * WRITE FILE... * REWRITE FILE... * SEARCH FILE... FOR... * LOCATE FILE... FOR... * PRINT... * DISPLAY... * INPUT... * CALCULATE... * COMPUTE... Contoh Structured English MODULE Validasi_Pembelian_Kredit VERIFICATION Limit Kredit IF Pembelian Kredit > Limit_Kredit THEN VERIFICATION Histori Bayar IF Histori_Bayar = Buruk THEN Tolak ELSE VERIFICATION Jumlah Beli IF Nilai_Beli <= 1 juta THEN Minta_persetujuan_manajer ELSE Tolak END IF END IF ELSE Pembelian_dilayani END IF END MODULE DECISION TABLE Aturan Kondisi Aksi Kredit Limit Dilampaui Y Y Y Y N N N N History Pembayaran Baik Y Y N N Y Y N N Pembelian Diatas 1 Juta Y N Y N Y N Y N Pembelian Diterima X X X X Tolak X X X Minta Persetujuan Manajer X
DECISION TREE Decision tree merupakan alat yang digunakan unutk menjelaskan aturan bisnis yang komplek yang sulit dijelaskan melalui spesifikasi modul Pembelian diastas 1 juta ditolak Kredit dilampui History pembayaran Baik Pembelian dibawah 1 juta minta Persejutujuan manjer History pembayaran kurang baik ditolak Kredit limit tidak dilampui diterima PROSEDUR SISTEM PERMINTAAN BARANG 1. Setiap Awal Tahun Ka. Bag. Umum akan memberikan daftar stok barang dan daftar departemen perusahaan kepada staf umum untuk dicatat dalam file barang dan file departemen perusahaan. Berdasarkan Data Barang yang ada, Staf Umum akan memberikan daftar barang perusahaan kepada seluruh departemen agar masing-masing departemen mengetahui barang apa saja yang bisa diminta 2. Setiap Awal bulan departemen perusahaan mengajukan permintaan barang kepada staf umum dengan memberikan formulir permintaan barang (FPB) yang berisi data-data departemen pemohon dan barang yang diminta. Staf umum akan melakukan pengecekan departemen dan barang apakah departemen terdaftar dan barang ada. 3. Jika tidak terdaftar atau barang tidak ada maka permintaan akan ditolak dengan mengembalikan FPB. Jika terdaftar dan barang ada, maka FPB akan dicatat dalam file permintaan. 4. Staf Umum akan membuat Daftar Barang Departemen kepada Ka. Bag. Umum untuk meminta persetujuan Jumlah barang yang diminta oleh masing-masing departemen. Ka. Bag Umum akan memberikan verifikasi untuk daftar permintaan barang tersebut kepada staf umum. 5. Staf Umum akan mendata hasil verifikasi dari Ka.Bag Umum ke dalam file permintaan dan mengurangi stok barang pada file barang sesuai verifikasi yang ada. 6. Staf umum akan membuat bukti permintaan barang (BPB) yang akan diberikan ke departemen perusahaan yang meminta berikut barang. 7. Setiap akhir bulan staf umum akan membuat laporan permintaan barang kepada Ka. Bag. Umum sebagai laporan akhir Kamus Data Datastore BRG DEPT_PRSH PERMINTAAN = @kd_brg+jns_brg+nm_brg+sat_brg+jml_stok+periode_cetak_brg = @kd_dept+nm_dept+nm_ka_dept+nip_ka_dept+periode_cetak_dept = @no_fpb+tgl_fpb+#kd_dept+nm_dept+nm_ka_dept+nip_ka_dept+ {#kd_brg+jns_brg+nm_brg+sat_brg+jml_minta+jml_realisasi}
SPESIFIKASI MODUL Spesifikasi modul Pendataan Daftar Barang dan Daftar Departemen Perusahaan (1.0) Terima Daf_Brg Input Kd_brg Buka File BRG File BRG Jika Kd_brg Daf_brg = Kd_brg File BRG maka Pesan Kode Sudah Ada, Isi Kode lain Selain Itu Input js_brg, nm_brg, sat_brg, jml_stok, peroide_cetak_brg Simpan File BRG Akhir Jika Tutup File BRG Terima Daf_Dept_Prsh Input Kd_Dept Buka File Dept_prsh File Dept_Prsh Jika Jika Kd_Dept Daf_Dept_Prsh = Kd_Dept File Dept_Prsh maka Pesan Kode Sudah Ada, Isi Kode lain Selain Itu Input nm_dept, nip_ka_dept, nm_ka_dept, periode_cetak_dept Simpan File Dept_prsh Akhir Jika Tutup File Dept_Prsh Akhir Proses Spesifikasi Modul Pengolahan Barang (2.0) Buka File Brg File Brg Input Kd_brg Jika Kd_brg ada maka Tampilkan Data Barang Cetak Daf_brg_prsh Tutup File Brg Terima FPB Input kd_dept FPB Buka File Dept_Prsh File Dept_Prsh Jika Kd_Dept Daf_Dept_Prsh <> Kd_Dept File Dept_Prsh maka Pesan Departemen tidak terdaftar FPB_Kembali Selain Itu Input Kd_brg FPB Jika Kd_brg Daf_brg <> Kd_brg File BRG dan Jml_brg_FPB > jml_brg File BRG maka Pesan Barang Tidak Ada FPB_Kembali Selain Itu FPB_OK Input No_FPB FPB Jika No_FPB FPB = No_FPB File maka Pesan nomor sudah ada, isi nomor baru Selain itu
Input tgl_fpb,jml_minta Simpan File Akhir Jika Akhir Jika Akhir Jika Cetak Daf_minta_dept Terima Daf_minta_dept_verifikasi Buka file permintaan. Dept_prsh, brg file permintaan, dept_prsh, brg Input No_FPB daf_minta_dept_verifikasi Jika No_FPB daf_minta_dept_verifikasi <> No_FPB File maka Pesan nomor TIDAK ada, isi nomor lain Selain itu Tampilkan data permintaan Input jml_realisasi Updata File Akhir jika Update file brg Cetak BPB Kirim BPB Tutup File, dept_prsh, brg Akhir modul Spesifikasi modul 3.0 (Cetak Laporan ) Buka File, Dept_prsh,brg File, Dept_prsh,brg Masukkan Periode_awal, Periode_akhir Jika Tgl_FPB >=Periode_awal dan Tgl_FPB <=Periode_akhir maka Cetak Tgl_Cetak, hal_cetak Cetak Tgl_FPB, No_FPB, nm_dept, kd_brg, jns_brg, nm_brg, sat_brg, jml_minta, Jml_realisasi, tot_fpb, tot_tgl,tot_sel Akhir Jika Tutup File, dept_prsh,brg Akhir modul