PERANCANGAN PROGRAM Algoritma merupakan pola pikir terstruktur yang berisi tahaptahap penyelesaian masalah.dalam tahaptahap tersebut dapat digunakan dengan teknik tulisan dan gambar. Penyajian algoritma dalam bentuk tulisan biasanya menggunakan metode structure English,struktur Indonesia dan pseudocode. Dalam penyajian dengan gambar dapat menggunakan metode structure chart,hierarchy plus input process output dan flowchart. 1. Structured English dan struktur Indonesia Structured English (SE) merupakan alat yang cukup efisien untuk menggambarkan suatu algoritma.basis dari structured English adalah bahasa Inggris sedangkan Struktur Indonesia (SI) berbasis pada bahasa Indonesia. 2. Pseudocode Pseudocode berasal dari kata pseudo (mirip) dan code (kode).pseudocode merupakan salah satu metode menuliskan algoritma yang mirip dengan kode pemrograman yang sebenarnya. Pseudocode berbasis pada bahasa pemrograman yang sesungguhnya, seperti COBOl, FORRAN,C atau Pascal, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada programmer. Secara garis besar struktur penulisan program terdiri dari : 1. Struktur urut Contoh struktur urut untuk SI : Baca data Jam kerja Hitung Gaji adalah Jam kerja dikalikan arip ampilkan Gaji untuk pseudocode : Baca data Jam kerja dari keyboard Read Jam kerja Hitung Gaji = Jam kerja * arip Let Gaji = Jam kerja * arip ampilkan Gaji di monitor Print Gaji Maimunah,S.Si.,M.Kom Page 1 of 16
2. Struktur Keputusan Contoh struktur keputusan : Struktur Ifhen untuk SI : If Nilai lebih besar dari 60 hen tambah 1 ke Lulus untuk pseudocode : If Nilai > 60 hen Lulus = Lulus + 1 Endif 3. Struktur Iterasi (Perulangan) Contoh struktur Iterasi : Struktur For untuk SI : Baca Jumlah barang Untuk masing masing barang Baca data Nilai penjualan (Unit dan Harga) Hitung Nilai barang yaitu Unit dikalikan Harga ampilkan dalam satu baris hasilnya Hitung Jumlah ampilkan nilai Jumlah untuk pseudocode : Jumlah = 0 Baca Jumlah barang dari monitor Do I = 1 to Jumlah barang Read data Unit dan Harga dari monitor Nilai barang = Unit * Harga ampilkan baris laporan di printer Jumlah = jumlah + Nilai barang Enddo ampilkan Jumlah di printer 10 JUMLAH = 0 20 INPU JUMLAHBARANG 30 FOR I = 1 O JUMLAHBARANG 40 INPU UNI,HARGA 50 NILAIBARANG=UNI*HARGA 60 LPRIN UNI, HARGA, NILAIBARANG 70 JUMLAH = JUMLAH + NILAIBARANG 80 NE I 90 PRIN JUMLAH PENJUALAN = ; JUMLAH Maimunah,S.Si.,M.Kom Page 2 of 16
3. Decision abel (abel Keputusan) abel keputusan adalah tabel yang digunakan sebagai alat bantu untuk menyelesaikan logika di dalam program. Algoritma yang berisi keputusan bertingkat yang banyak sekali sangat sulit untuk digambarkan langsung dengan structured English atau pseudocode.untuk hal tersebut dapat digunakan tabel keputusan. Struktur dari tabel keputusan terdiri dari empat bagian utama yaitu condition stub,condition entry,action stub dan action entry. Bagan dari table keputusan terlihat seperti dalam gambar berikut ini : Rules 1 2 3 4 N Condition Stub Condition Entry Action Stub Action Entry Gambar Struktur abel Keputusan a. Condition Stub berisi kondisikondisi yang akan diseleksi. b. Condition entry berisi kemungkinankemungkinan dari kondisi yang diseleksi yaitu terpenuhi (diberi simbol ) dan tidak terpenuhi (diberi simbol ).Setiap kondisi yang diseleksi akan mempunyai dua kemungkinan kejadian yaitu terpenuhi dan tidak terpenuhi.bila ada n kondisi yang akan diseleksi maka akan terdapat N kemungkinan kejadian yaitu sebesar N = 2 n. c. Action stub berisi pernyataanpernyataan yang akan dikerjakan baik kondisi yang diseleksi terpenuhi maupun tidak terpenuhi. Maimunah,S.Si.,M.Kom Page 3 of 16
d. Action entry digunakan untuk memberi tanda tindakan mana yang akan dilakukan dan mana yang tidak akan dilakukan. Latihan : Buatlah tabel keputusan untuk kasus berikut ini : Jika unit yang dipesan untuk suatu barang tertentu sama atau melebihi jumlah minimum untuk mendapatkan potongan dan pemesannya adalah dealer, maka akan mendaparkan potongan, sebaliknya bila unit yang dipesan kurang dari unit minimum untuk mendapatkan potongan, walaupun yang membeli dealer, maka tidak akan mendapat potongan. Bila unit barang persediaan di gudang tidak mencukupi, maka yang dikirim adalah unit yang ada dan kemudian dibuatkan catatan kekurangannya (Backorder). Kalau unit persediaan mencukupi maka semua pesanan dikirim. Jawaban : Rules 1 2 3 4 5 6 7 8 a. Apakah unit dipesan >= unit min. potongan? b. Apakah pemesannya adalah dealer? c. Apakah unit persediaan mencukupi? a. Mendapatkan potongan b.idak mendapatkan potongan c. Kirim semua yang dipesan d. Kirim yang ada saja e. Buat catatan kekurangannya 4. SRUCUR CHAR (BAGAN SRUKUR) Fungsi dari Structure Chart digunakan untuk mendefinisikan dan mengilustrasikan dari sistem secara berjenjang dalam bentuk modul dan sub modul. Structure Chart juga menunjukkan hubungan elemen data dan elemen kontrol serta hubungan antar modulnya, sehingga Structure Chart dapat memberikan penjelasan yang lengkap dari sistem dipandang dari elemen data, elemen kontrol, modul dan hubungan antar modulnya. Maimunah,S.Si.,M.Kom Page 4 of 16
Dalam menggambarkan struktur organisasi sistem secara berjenjang digunakan beberapa macam simbol. Simbolsimbol ini merupakan simbolsimbol standar yang paling banyak digunakan. Disamping simbolsimbol standar tersebut, pemrogram juga dapat menambah khasanah simbol yang akan digunakan dalam penggambaran tersebut, tetapi pemrogram juga harus memberi penjelasan tentang maksud dari simbol yang dibuat tersebut dalam bentuk kamus simbol. Namun demikian sebaiknya pemrogram menggunakan simbolsimbol standar untuk menggambarkan struktur sistem tersebut agar mudah dipahami oleh pemrogram lain. Gambar Nama Keterangan Module Connection Simbol ini menunjukkan suatu modul Simbol ini digunakan untuk menghubungkan suatu modul dengan modul yang lainnya Loop Simbol ini menunjukkan suatu perulangan didalam modul Simbol ini menunjukkan suatu Decision Couple penyeleksian kondisi didalam modul Simbol ini menunjukkan suatu data/elemen yang dikirimkan dari satu modul ke modul lainnya. Anak panah dengan lingkaran yang kosong menunjukkan data yang dikirimkan, sedangkan anak panah dengan lingkaran padat Maimunah,S.Si.,M.Kom Page 5 of 16
menunjukkan elemen kontrol yang dikirimkan Contoh penggunaan simbolsimbol pada structure chart dalam menggambarkan struktur suatu sistem. Gambar Keterangan Luas Persegi Panjang Menunjukkan suatu modul dengan nama Luas Persegi Panjang A B Modul A memanggil Modul B. Setelah proses dari modul B selesai, maka proses kembali ke modul yang memanggil Structure Chart memiliki dua model penggambaran sistem, yaitu ransformescentered dan ransactioncentered a. ransformedcentered Structure Chart dengan model ransformed Centered menggambarkan sistem dalam cabang utama, yaitu : Cabang Input yang merupakan cabang yang akan menerima input dan menentukan status input untuk siap di proses Cabang Proses yang merupakan cabang yang akan melakukan fungsi utama dari sistem, yaitu memproses input yang dikirim dari cabang input Cabang Output, merupakan cabang yang akan memformat data menjadi output Maimunah,S.Si.,M.Kom Page 6 of 16
Contoh : Sistem B A A Input A Proses A menjadi B B Output B Input Branch / Afferent Branch Process Branch ransform Brannch Central rannsform Output Branch Efferent Brannch b. ransactioncentered Proses ransaksi Masukan Data ransaksi Analyzer tipe transaksi Dispatcher Proses ipe A Proses ipe B Proses ipe C Edit ransaksi A Update File P Edit ransaksi B Update File Q Edit ransakssi C Update File R Cetak Jurnal Maimunah,S.Si.,M.Kom Page 7 of 16
5. Hierarchy plus InputProcessOutput (HIPO) Merupakan alat dokumentasi program yang dikembangkan dan didukung oleh IBM. etapi kini HIPO juga telah digunakan sebagai alat bantu untuk merancang dan mendokumentasikan siklus pengembangan system. HIPO berbasis pada fungsi yaitu tiaptiap modul di dalam sistem digambarkan oleh fungsi utamanya HIPO telah dirancang dan dikembangkan secara khusus untuk menggambarkan suatu struktur bertingkat guna memahami fungsifungsi dari modulmodul suatu sistem, dan HIPO juga dirancang untuk menggambarkan modulmodul yang harus diselesaikan oleh pemrogram. HIPO tidak dipakai untuk menunjukkan instruksiinstruksi program yang akan digunakan, disamping itu HIPO menyediakan penjelasan yang lengkap dari input yang akan digunakan, proses yang akan dilakukan serta output yang diinginkan. HIPO menggunakan tiga macam diagram untuk masingmasing tingkatannya, yaitu sebagai berikut : a. Visual able of Content (VOC) Diagram yang menggambarkan hubungan dari fungsifungsi di sistem secara berjenjang. 0.0 1.0 2.0 3.0 2.1 2.2 2.2.1 2.2.2 Gambar di atas menunjukkan terdapat tujuh buah fungsi di dalam sistem. Fungsi dengan nomor 1.0,2.0 dan 3.0 merupakan tingkatan yang tertinggi. Fungsi 2.1 dan 2.2 merupakan fungsi di bawah fungsi 2.0 dan fungsi 2.2.1 dan 2.2.2 merupakan fungsi di bawah fungsi 2.2. Maimunah,S.Si.,M.Kom Page 8 of 16
Maimunah,S.Si.,M.Kom Page 9 of 16
Contoh VOC suatu sistem penjualan kredit : Sistem Penjualan Kredit Merekam data penjualan Koreksi data penjualan Menghapus data penjualan Mencetak laporan penjualan 1.0 2.0 3.0 4.0 Memasukan data penjualan Update file induk langganan Update file induk langganan Rekam file transaksi piutang Rekam file transaksi penjualan 1.1 1.2 1.3 1.4 1.5 Maimunah,S.Si.,M.Kom Page 10 of 16
b. Overview Diagrams Overview diagrams menunjukkan secara garis besar hubungan dari input,proses dan output. Bagian input menunjukkan itemitem data yang akan digunakan oleh bagian proses. Bagian proses berisi sejumlah langkahlangkah yang menggambarkan kerja dari fungsi. Bagian output berisi dengan itemitem data yang dihasilkan atau dimodifikasi oleh langkahlangkah proses. Input Proses Output 1 data penjualan Memasukkan Data penjualan 1.1 file transaksi penjualan berita kesalahan c. Detail Diagrams Detail diagrams merupakan diagram tingkatan yang paling rendah di diagram HIPO. Diagram ini berisi dengan elemenelemen dasar dari paket yang menggambarkan secara rinci kerja dari fungsi. 6. Flowchart Adalah Baganbagan yang mempunyai arus yang menggambarkan langkahlangkah penyelesaian suatu masalah. Flowchart merupakan cara penyajian dari suatu algoritma.ujuan utama dari penggunaan flowchart adalah untuk menggambarkan suatu tahapan penyelesaian Maimunah,S.Si.,M.Kom Page 11 of 16
masalah secara sederhanna, terurai, rapi dan jelas dengan menggunakan simbolsimbol yang standar. ahap penyelesaian masalah yang disajikan harus jelas, sederhana, efektif dan tepat. Dalam penulisan Flowchart dikenal dua model, yaitu a. SISEM FLOWCHAR Merupakan diagram alir yang menggambarkan suatu sistem peralatan komputer yang digunakan dalam proses pengolahan data serta hubungan antar peralatan tersebut. Sistem flowchart ini tidak digunakan untuk menggambarkan urutan langkah untuk memecahkan masalah, tetapi hanya untuk menggambarkan prosedur dalam sistem yang dibentuk Dalam menggambar flowchart biasanya digunakan simbolsimbol standar, tetapi pemrograman juga dapat membuat simbolsimbol sendiri apabila simbolsimbol yang telah tersedia di rasa masih kurang. Dalam kasus ini pemrogram harus melengkapi gambar flowchart tersebut dengan kamus simbol yang digunakannya, agar pemrogram lain dapat mengetahui maksud dari simbolsimbol tersebut. Berikut ini adalah gambar dari simbolsimbol standar yang telah banyak digunakan pada penggambaran Sistem Flowchart serta contoh penggunaannya. Maimunah,S.Si.,M.Kom Page 12 of 16
Pita Magnetik Process Kartu Plong/ Keyboard Magnetic Disk Punched Paper ape OffLine Storage On Line Storage/ VDU Process Sortir Input / Output Proses Merge Magnetic Drum Arus Contoh Penggunaan Sistem Flowchart Keyboard CPU Disket VDU Maimunah,S.Si.,M.Kom Page 13 of 16
b. PROGRAM FLOWCHAR Merupakan diagram alir yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.dalam menggambarkan program flowchart, telah tersedia simbolsimbol standar, tetapi seperti pada sistem flowchart, pemrogram dapat menambah khasanah simbol simbol tersebut, tetapi pemrogram juga harus melengkapi penggambaran program Flowchart dengan kamus simbol. Berikut ini adalah gambar dari simbolsimbol standar yang digunakan pada program Flowchart : Proses Input Output Keterangan Pengujian Pemberian Nilai Awal Awal/Akhir Program Konektor pada satu halaman Konektor pada halaman lain Arah Maimunah,S.Si.,M.Kom Page 14 of 16
Pada penggambaran program Flowchart terdapat dua jenis metode, yaitu Conceptual Flowchart dan Detail Flowchart. Conceptual Flowchart menggambarkan tentang alur dari suatu pemecahan masalah secara global saja, sedangkan Detail Flowchart menggambarkan alur pemecahan masalah secara rinci. Gambar Proses Conceptual Flowchart Start Input Proses Output End Maimunah,S.Si.,M.Kom Page 15 of 16
Gambar Proses Detail Flowchart Start Input Berapa data ; N Jml = 0 For K = 1 to N Input Bil Jml = Jml + Bil Next K Print Jumlah = ; Jml End Maimunah,S.Si.,M.Kom Page 16 of 16