PEMROGRAMAN TERSTRUKTUR

download PEMROGRAMAN TERSTRUKTUR

of 17

Transcript of PEMROGRAMAN TERSTRUKTUR

Rekayasa Perangkat Lunak

STMIK WIT

Lisensi Dokumen: Copyright 2011 Andrew Witono, MTI Seluruh dokumen di Andrew Witono, MTI dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari Andrew Witono, MTI

Modul ini berisi tentang konsep rekayasa perangkat lunak untuk permograman tersruktur. Permodelan perangkat lunak menggunakan DFD (Data Flow Diagram). Untuk mempermudah pemahaman, ilustrasi perancangan perangkat lunak dengan DFD disertai menggunakan studi kasus. Studi kasus yang digunakan adalah Sistem Informasi Manajemen Perpustakaan yang merupakan kelanjutan dari studi kasus yang digunakan pada modul sebelumnya.

1. Pengertian Pemrograman TerstrukturPemrograman terstruktur adalah konsep atau paradigma atau sudut pandang pemrograman yang membagi-bagi berdasarkan fungsi-fungsi atau prosedur-prosedur yang dibutuhkan program komputer. Modulmodul (pembagian program) biasanya dibuat dengan mengelompokkan fungsi-fungsi dan prosedur-prosedur yang diperlukan sebuah proses tertentu. Fungsi-fungsi dan prosedur-prosedur ditulis secara sekuensial atau terurut dari atas ke bawah sesuai dengan kebergantungan antar fungsi atau prosedur (fungsi atau prosedur yang dapat dipakai oleh fungsi atau prosedur di di bawahnya atasnya. harus yang ini sudah ditulis atau untuk dideklarasikan Berikut contoh ilustrasi

pemrograman terstruktur.

Created By : Andrew Witono, MTI

Halaman 1

Rekayasa Perangkat LunakInclude atau uses sebagai m ekanism m e enyatukan kode agar dapat saling akses

STMIK WIT

File Kode Program Fungsi Prosedur Fungsi

File Kode Program Fungsi

File Kode Program Fungsi

Prosedur Fungsi

Prosedur Fungsi Fungsi Fungsi Fungsi Prosedur Fungsi Prosedur ProgramUtam a Prosedur Fungsi Fungsi

Gambar 5.1 Ilustrasi Pemrograman Terstruktur Permodelan pada pemrograman terstruktur dibagi berdasarkan fungsifungsi dan prosedur-prosedur. Oleh karena itu, permodelan pada pemrograman terstruktur lebihg fokus bagaimana memodelkan data dan fungsi-fungsi atau prosedur yang harus dibuat. Jenis paradigma apa yang akan digunakan untuk membuat program, baru setelah itu ditentukan paradigma pemrograman apa saja yang akan digunakan. 2. DFD (Data Flow Diagram) Data Flow Diagram (DFD) awalnya dikembangkan oleh Chris Gane dan Trish Sarson pada tahun 1979 yang termasuk dalam Structure Systems Analysis dan Design Methodology (SSADM) yang ditulis oleh Chris Gane dan Trish Sarson. Sistem yang dikembangkan ini berbasis pada dekomposisi fungsional dari sebuah sistem. Berikut ini adalah DFD yang dikembangkan oleh Chris Gane dan Trish Sarson :Produsen atau Konsum en Aliran Data 1 .2.3 Proses

D Nam Penyim 4 a panan D ata

Created By : Andrew Witono, MTI

Halaman 2

Rekayasa Perangkat Lunak

STMIK WIT

Gambar 5.2 Contoh DFD yang dikembangkan Chris Gane dan Trish Sarson Edward Yourdan dan Tom DeMarco memperkenalkan metode yang lain pada tahun 1980-an di mana mengubah persegi dengan sudut lengkung (pada DFD Chris Gane dan Trish Sarson) dengan lingkaran untuk menontasikan. Edward Yourdan dan Tom DeMarco populer digunakan sebagai model analisis sistem perangkat lunak untuk sistem perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur. Informasi yang ada di dalam perangkat lunak dimodifikasikan dengan beberapa transformasi yang dibutuhkan. Data Flow Diagram (DFD) atau dalam bahasa Indonesia menjadi Diagram Aliran Data (DAD) adalah representasi grafik yang menggambarkan aliran informasi dan transformasi (input) dan keluaran (output).

DFD dapat digunakan untuk mempresentasikan sebuah sistem atau perangkat lunak pada beberapa level abstraksi. DFD dapat dibagi menjadi beberapa level yang lebih detail untuk merepresentasikan aliran informasi atau fungsi yang lebih detail. DFD menyediakan mekanisme untuk pemodelan fungsional ataupun pemodelan aliran informasi. Oleh karena itu, DFD lebih sesuai digunakan untuk memodelkan fungsi-fungsi perangkat lunak yang akan diimplementasikan menggunakan pemrograman terstruktur karena pemrograman terstruktur membagi-bagi bagiannya dengan fungsifungsi dan prosedur-prosedur. DFD tidak sesuai untuk memodelkan sistem perangkat lunak yang akan dibangun menggunakan pemrograman terstruktur dan pemrograman berorientasi obyek. Paradigma pemrograman terstruktur dan pemrograman berorientasi objek merupakan hal yang berbeda. Jangan mencampuradukkan pemrograman terstruktur dan pemrograman berorientasi objek.

Created By : Andrew Witono, MTI

Halaman 3

Rekayasa Perangkat Lunak

STMIK WIT

DFD tidak sesuai untuk memodelkan sistem menggunakan pemrograman berorientasi objek.

yang

Notasi-notasi pada DFD (Edward Yourdan dan Tom DeMarco) adalah sebagai berikut : Notasi Keterangan Proses atau fungsi atau prosedur pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemrograman tersruktur, maka pemodelan notasi inilah yang harusnya menjadi fungsi atau prosedur di dalam kode program. Catatan : Nama yang diberikan pada sebuah proses biasanya berupa kata kerja. File atau basis data atau penyimpanan (storage) pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemograman terstruktur, maka pemodelan notasi inilah yang harusnya dibuat menjadi tabel-tabel basis data yang dibutuhkan, tabel-tabel ini juga harus sesuai dengan perancangan tabel-tabel pada basis data. (Entity Relationship Diagram (ERD), Conceptual Data Model (CDM) dan Physical Data Model (PDM)). Catatan : Nam ayang diberikan pada sebuah pemyimpanan biasanya kata benda. Entitas luar (external entity) atau masukkan (input) atau keluaran (output) atau orang yang memakai / berinteraksi dengan perangkat lunak yang dimodelkan atau sistem lain yang terkait dengan aliran data dari sistem yang dimodelkan. Catatan : Nama yang digunakan pada masukkan (input) atau keluaran (output) biasanya berupa kata benda. Notasi Keterangan Aliran data merupakan data yang dikirim antar proses, dari penyimpanan ke proses , dari penyimpanan ke proses, atau dari proses ke masukkan (input) atau keluaran (output). Catatan : Nama yang digunakan pada aliran data biasanya berupa kata benda, dapat diawali dengan dengan kata data misalnya data siswa atau tanpa kata misalnya siswa.

Created By : Andrew Witono, MTI

Halaman 4

Rekayasa Perangkat Lunak

STMIK WIT

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 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 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. ini adalah diagram level tertinggi dari DFD yang menggambarkan hubungan sistem dengan lingkungan luarnya.

Created By : Andrew Witono, MTI

Halaman 5

Rekayasa Perangkat Lunak4) Buat Diagram Level 0 Diagram ini adalah dekomposisi dari diagram konteks. Caranya : Tentukan proses utama yang ada pada sistem.

STMIK WIT

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 0. Hindari perpotongan arus data. Beri nomor pada proses utama (nomor tidak menunjukkan urutan proses). 5) Buat Diagram Level 1 Diagram ini merupakan dekomposisi dari diagram level 0. Caranya : Tentukan proses yang lebih kecil (sub-proses) dari proses utama yang ada di level 0. 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 1 : Hindari perpotongan arus data. Beri nomor pada masing-masing sub-proses yang menunjukkan dekomposisi dari proses sebelumnya. Contoh : 1.1, 1.2, 2.1 6) DFD Level 2, 3, seterusnya Diagram ini merupakan dekomposisi dari level sebelumnya. Proses dekomposisi dilakukan sampai dengan proses siap dituangkan ke dalam program. Aturan yang digunakan sama dengan level 1.

Created By : Andrew Witono, MTI

Halaman 6

Rekayasa Perangkat Lunak

STMIK WIT

Berikut ini adalah contoh beberapa prosedur yang terdapat pada PT. Aneka Tani : Prosedur Diagram Sistem Informasi Hutang Piutang Pupuk PT. Aneka Tani 1.Supplier

Prosedur Pembelian PupukKasirForm Stock Pupuk

GudangForm Stock Pupuk

Direktur

Pemberian Stempel

Form Stock Pupuk Stempel

Form Stock Pupuk Stempel

Pengecekan & Persetujuan

Form Stock Pupuk Stempel Ttd

Form Stock Pupuk Stempel Ttd

Pembuatan Daftar Pembelian Pupuk

Daftar 1 Pembelian Pupuk

Daftar 1 Pembelian Pupuk 2

Penyediaan Pupuk

2

Gambar 5.3 Prosedur Pembelian Pupuk

Created By : Andrew Witono, MTI

Halaman 7

Rekayasa Perangkat LunakSupplier 1 Kasir Gudang Direktur

STMIK WIT

Stok Pupuk

Faktur Pembelian Pupuk

Faktur Pembelian Pupuk

Faktur Pembelian Pupuk

Pemeriksaan Pembelian Pupuk

Faktur Pembelian Pupuk

Faktur Pembelian Pupuk

Pecatatan Pembelian Pupuk

Buku Pembelian

Gambar 5.4 Prosedur Pembelian Pupuk (Lanjutan)

Created By : Andrew Witono, MTI

Halaman 8

Rekayasa Perangkat Lunak2.Supplier

STMIK WIT

Prosedur Pembayaran kepada SupplierKasirDaftar Pembelian Pupuk

DirekturDaftar Pembelian Pupuk

Persetujuan Pembayaran

Daftar Pembelian Pupuk (Ttd)

Daftar Pembelian Pupuk (Ttd)

Pencatatan Pembayaran Hutang

Buku Pembayaran Hutang Tanda Terima Pembelian Pupuk Tanda Terima Pembelian Pupuk Daftar Pembelian Pupuk (Ttd)

Pembuatan Voucher Pembayaran Hutang

Voucher 1 Pembayaran Hutang

1 Voucher 2 Pembayaran Hutang

Gambar 5.5 Prosedur Pembayaran kepada Supplier

Created By : Andrew Witono, MTI

Halaman 9

Rekayasa Perangkat Lunak3.KonsumenPermintaan Pupuk

STMIK WIT

Prosedur Penjualan PupukKasirPermintaan Pupuk

Gudang

Direktur

Pencatatan Data Konsumen dan Daftar Pupuk

Stok Pupuk

Permintaan Pupuk

Permintaan Pupuk

Buku Penjualan

Pengecekan Persediaan Pupuk

Daftar Pupuk

Daftar Pupuk

Pembuatan Nota Penjualan

1 2 Nota Penjualan

1 2 Nota Penjualan

Persetujuan

1 Nota Penjualan (Ttd)

1 2 Nota Penjualan (Ttd)

1 2 Nota Penjualan (Ttd)

Gambar 5.6 Prosedur Penjualan Pupuk

Created By : Andrew Witono, MTI

Halaman 10

Rekayasa Perangkat Lunak4.KonsumenNota Penjualan

STMIK WIT

Prosedur Penerimaan PiutangKasirNota Penjualan

Direktur

Pencatatan Penerimaan Pembayaran

Buku Penerimaan Pembayaran

Pembuatan Voucher Terima Pembayaran

Voucher Terima Pembayaran

Voucher Terima Pembayaran

Persetujuan

Voucher Terima Pembayaran (Ttd)

Voucher Terima Pembayaran (Ttd)

Gambar 5.7 Prosedur Penerimaan Piutang

Created By : Andrew Witono, MTI

Halaman 11

Rekayasa Perangkat Lunak5. Prosedur Pembuatan LaporanGudang Kasir Direktur

STMIK WIT

Stok Pupuk

Buku Pembelian

Pembuatan Laporan Pembelian

Laporan 1 2 Pembelian

1 Laporan Pembelian

Buku Pembayaran HutangPembuatan Laporan Pembayaran Supplier

Laporan 1 Pembayaran 2 Supplier

1 Laporan Pembayaran Supplier

Buku Penjualan

Pembuatan Laporan Penjualan

Laporan 1 2 Penjualan

1 Laporan Penjualan

Buku Penerimaan PembayaranPembuatan Laporan Penerimaan Pembayaran

Laporan 1 Penerimaan 2 Pembayaran

1 Laporan Penerimaan Pembayaran

Created By : Andrew Witono, MTI

Halaman 12

Rekayasa Perangkat LunakGambar 5.8 Prosedur Pembuatan Laporan Diagram KonteksG uda ng Fo rm Sto ck Pu p u k D aftar Pem b elian Pu p u k D aftar Pem b elian Pu p u k Perm in taan Pu p u k D aftar Pu p u k L ap o ran Pen erim aan Pem b ay aran L ap o ran Pen ju alan B u k u Pem b elian L ap o ran Pem b ay aran Su p p lier Sto k Pu p u k L ap o ran Pem b elian N o ta Pen ju alan 0.0 D aftar Pem b elian Pup u k T an d a T erim a Pem b elian Pu p u k Sistem Ino frm a si Fo rm Sto ck Pu p u k Stem p el D aftar Pem b elian Pu p u k A kunta nsi P iuta ng D irektur P upuk D aftar Pem b elian Pu p u k P T. A neka T a ni Fo rm Sto ck Pu p u k Stem p td) (T el V o u ch er Pem b a y aran H u tan g D aftar Pem b elian Pu p u k (Ttd) B u k u Pem b ay a ran H u tan g N o ta Pen ju alantd) (T B u k u Pe n ju alan B u k u Perm in taan Pem b ay aran

STMIK WIT

Supplier

N o ta Pe n ju alantd) (T Perm in taan Pu p u k V o u ch er Terim a Pe m b ay aran N o ta Pen ju alan V o u ch er Terim a Pem b ay(T td) aran

K o nsum en

Gambar 5.9 Diagram Konteks

Created By : Andrew Witono, MTI

Halaman 13

Rekayasa Perangkat Lunak

STMIK WIT

DFD (Data Flow Diagram) Level 0Buku Pembelian Stok Pupuk Faktur Pembelian Pupuk Supplier Daftar Pembelian Pupuk 1.0 Pembelian Pupuk Form Stock Pupuk Stempel Direktur Form Stock Pupuk Stempel (Ttd)

Faktur Pembelian Pupuk

Form Stock Pupuk

Gudang Buku Pembayaran Hutang 2.0Penagihan Pembayaran Kepada Supplier

Tanda Terima Pembelian Pupuk Voucher Pembayaran Hutang Stok Pupuk Permintaan Pupuk Konsumen Nota Penjualan (Ttd)

Daftar Pembelian Pupuk Daftar Pembelian Pupuk (Ttd)

Buku Penjualan 3.0 Penjualan Pupuk Nota Penjualan Nota Penjualan (Ttd) Daftar Pupuk Laporan Penerimaan Pembayaran Laporan Penjualan Laporan Pembayaran Supplier Laporan Pembelian Buku Pembelian

Permintaan Pupuk

Gudang Buku Penerimaan Pembayaran Voucher Terima Pembayaran (Ttd) 4.0 Nota Penjualan Penerimaan Voucher Terima PembayaranPembayaran dari Konsumen

Stok Pupuk

5.0Pembuatan Laporan

Buku Penjualan

Buku Pembayaran Hutang

Gambar 5.10 DFD Level 0

Created By : Andrew Witono, MTI

Halaman 14

Rekayasa Perangkat Lunak

STMIK WIT

DFD (Data Flow Diagram) Level 1 Prosedur Pembelian Pupuk1.1 Pem beria n Stem pel

Fo rm Stock Pu p u k Stemp el D irektur Fo rm Stock Pu p u k Stemp el (Ttd) B u k u Pem b elian

Fo rm Sto ck Pu p u k 1.3 G uda ng Fak tu r Pemb elian Pu p u kP encatatan P em belian P upuk

Fak tu r Pemb elian Pu p u k 1.2

Fak tu r Pem b elian Pu p u k P em buatan D aftar P embelian P upuk

Supplier

D aftar Pemb elian Pu pu k

Gambar 5.11 DFD Level 1 Prosedur Pembelian Pupuk

DFD

(Data

Flow

Diagram)

Level

1

Prosedur

Penagihan

Pembayaran Kepada Supplier.2.2

Tan d a Terim a Pem b elian Pu p u k Supplier V o u cher Pem b ay aran H u tan g

Pembuatan V oucher P embayaran Hutang

D aftar Pem b elian Pu pu k (Ttd) 2.1 Pencata ta n D aftar Pem belian Pup uk Pem bay a ra n H uta ng D aftar Pem b elian Pu p(Ttd) uk

D irektur

B uk u Pem bayaran H u tang

Gambar 5.12 DFD Level 1 Prosedur Penagihan Pembayaran Kepada Supplier

Created By : Andrew Witono, MTI

Halaman 15

Rekayasa Perangkat Lunak

STMIK WIT

DFD (Data Flow Diagram) Level 1 Prosedur Penjualan Pupuk3.1Pencatatan Data Konsumen dan Daftar Pupuk

Permintaan Pupuk

Konsumen

Nota Penjualan (Ttd) Buku Penjualan

3.2Pengecekan Persediaan Pupuk

Daftar Pupuk

3.3Pembuatan Nota Penjualan

Nota Penjualan (Ttd)

Nota Penjualan

Direktur

Gambar 5.13 DFD Level 1 Prosedur Penjualan Pupuk

DFD (Data Flow Diagram) Level 1 Prosedur Penerimaan Piutang4.1 Konsumen Nota PenjualanPencatatan Penerimaan Pembayaran

Buku Penerimaan Pembayaran

4.2 Voucher Terima Pembayaran Voucher Terima Pembayaran (Ttd)Pembuatan Voucher Terima Pembayaran

Gambar 5.14 DFD Level 1 Prosedur Penerimaan Piutang

Created By : Andrew Witono, MTI

Halaman 16

Rekayasa Perangkat Lunak

STMIK WIT

DFD (Data Flow Diagram) Level 1 Prosedur Pembuatan Laporan5.1P em bu atan Laporan P em b elian

Sto k Pu p u k B u k u Pe m b e lian

L ap o ran Pem b e lia n

B u k u Pe m b ay a ra n Su p p lie r

P em bu atan Laporan P em bayaran L ap o ran Pen ju alan H utang

5.2

D ir e ktur 5.3 B u k u Pe n ju a la nP em bu atan Lap oran L ap o ra n Pe m b a y ara n Su p p lie r P en jualan

B u k u Pe n erim a a n Pem b a y ara n

5.4 P em bu atan Lap oran P enerim aan P em bayaran K on sum en

L ap o ran Pen e rim a an Pe m b ay a ra n

Gambar 5.15 DFD Level 1 Prosedur Pembuatan Laporan

----- oo000oo -----

Created By : Andrew Witono, MTI

Halaman 17