DISUSUN OLEH : IPHOV KUMALA SRIWANA PEMROGRAMAN SIMULASI DISUSUN OLEH : IPHOV KUMALA SRIWANA
ALAT PEMBANGUN PROGRAM SIMULASI Yaitu semua peralatan yang dipakai guna mempermudah pembuatan program simulasi, diantaranya yaitu: Diagram alir (flow chart) dan Bahasa pemrograman
DIAGRAM ALIR (FLOW CHART)
DIAGRAM ALIR (FLOW CHART)
CONTOH Buatlah diagram alir dari contoh di atas !
ATURAN PENGGABUNGAN SIMBOL Setiap diagram hanya ada satu simbol mulai dan satu simbol selesai Simbol mulai hanya ada satu anak panah keluar, sedangkan simbol selesai hanya ada satu anak panah masuk Semua simbol, selain no 3 dan 4 hanya ada satu anak panah yang masuk dan satu anak panah keluar
ATURAN PENGGABUNGAN SIMBOL Simbol pencabangan hanya ada satu anak panah masuk dan harus ada dua atau tiga anak panah keluar. Tidak boleh ada pencabangan diagram tanpa melalui simbol pencabangan Sangat tidak diharapkan adanya anak panah penghubung yang saling bersilangan Tidak dibenarkan sebuah anak penghubung bercabang
ATURAN PENGGABUNGAN SIMBOL Setiap diagram hanya ada satu simbol mulai dan satu simbol selesai Simbol mulai hanya ada satu anak panah keluar, sedangkan simbol selesai hanya ada satu anak panah masuk Semua simbol, selain no 3 dan 4 hanya ada satu anak panah yang masuk dan satu anak panah keluar
POLA-POLA DIAGRAM ALIR YANG BAKU Terdiri dari : Pola berurutan (sequence) Pola pencabangan bersyarat (conditional branching) Pola berulang (iteration)
POLA BERURUTAN (SEQUENCE) Pola ini menghendaki penyusunan statement program berada pada susunan yang berurutan mulai dari statement 1, 2 dan seterusnya. Urutan semcam ini mengikuti pola dasar komputer di dalam mengeksekusi program Sebisa mungkin, diagram alir yang dibuat, didominasi oleh pola ini sebesar-besarnya.
POLA BERURUTAN (SEQUENCE)
POLA PENCABANGAN BERSYARAT
POLA BERULANG
BAHASA PEMROGRAMAN
BAHASA PEMROGRAMAN APLIKASI KHUSUS Yaitu, bahasa yang diciptakan khusus untuk suatu jenis persoalan tertentu, sehingga akan banyak mengalami kesulitan jika digunakan pada jenis persoalan yang lainnya. Diciptakan dalam bentuk paket yang terdiri dari blok-blok pembangunan program, sehingga untuk membuat sebuah program, tinggal menyusun blok-blok program tersebut CONTOH : PROMODEL, GPSS, QSS, dsb
BAHASA PEMROGRAMAN APLIKASI UMUM Yaitu, bahasa yang diciptakan umtuk bisa dipakai pada berbagai jenis persoalan. Dilahirkan dalam bentuk aturan tata bahasa pemrograman, sehingga untuk dapat membuat sebuah program komputer, harus menyusun sendiri kalimat-kalimat atau perintah program yang harus ditulis sesuai dengan tata bahasa pemrograman. CONTOH : FORTRAN, S, PASCAL, dsb
KEUNTUNGAN BAHASA PEMROGRAMAN APLIKASI KHUSUS Mempercepat pembuatan program Menyediakan kerangka kerja untuk pemodelan simulasi Lebih dapat dimodifikasi jika ditulis dengan bahasa pemrograman khusus
KEUNTUNGAN BAHASA PEMROGRAMAN APLIKASI KHUSUS Kebanyakan bahasa pemrograman aplikasi khusus telah menyediakan alokasi storage komputer secara dinamis selama eksekusi program Menyediakan dengan baik fasilitas pendeteksian kesalahan Selalu lebih ringkas
KEISTIMEWAAN BAHASA PEMROGRAMAN APLIKASI UMUM Pembangun model akan menjadi tahu dan mengerti akan bahasa pemrograman yang dipakainya. Hampir selalu pasti tersedia di komputer dan dapat diakses dengan mudah. Lebih bersifat lentur pada berbagai macam aplikasi. Biaya perangkat lunak selalu lebih murah.
KEISTIMEWAAN UMUM BAHASA SIMULASI Animasi Kemampuan Statistik Dukungan Purna Jual Kemampuan Pembuatan laporan.
1. KEISTIMEWAAN UMUM DARI BAHASA SIMULASI Fleksibilitas Program, yang tidak dijumpai pada simulator. Mudah dalam pengembangan program. Kecepatan dan ketepatan pengembangan program dapat ditingkatnya dengan tersedianya fasilitas-fasilitas bantuan pemeriksaan kesalahan, bantuan langsung on line, dsb. Kecepatan Eksekusi Program Ukuran Maksimum Program Tingkat Kecocokan yang Tinggi
2. ANIMASI DARI BAHASA SIMULASI Kemudahan dalam menggunakan animasi merupakan salah satu alasan kenapa popularitas simulasi membumbung. Namun ada kelemahan pada titik-titik animasi yaitu animasi tidak dapat menunjukkan apakah simulasi sistem sudah bekerja dengan baik.
3. KEMAMPUAN STATISTIK Masing-masing variabel acak (misal: waktu antar kedatangan, waktu layanan) harus dibangkitkan dari pola distribusi probabilitas yang benar dan bahasa simulasi harus mampu melakukannya.
KEKURANGAN BAHASA PEMROGRAMAN KHUSUS Tingkat transparasi yang rendah sehingga tidak cocok untuk pemula
BAHASA PEMROGRAMAN Masing-masing bahasa pemrograman umum yang ada mempunyai keunggulan-keunggulan tertentu sehingga harus diperhatikan dalam memilihnya. Contoh : COBOL (COmmon Business Oriented Language). Bahasa ini lebih unggul untuk persoalan bisnis yang cenderung mengarah pada pengolahan data dalam skala besar. FORTRAN (FORmula TRANslation), merupakan bahasa pemrograman yang unggul pada persoalan penyelesaian rumus-rumurs (FORmula) matematis.
SIMULATOR Simulator adalah bahasa simulasi yang benar-benar terpaket, sehingga dengan simulator pengembangan model simulasi dapat dilakukan dengan sedikit saja bahkan seringkali tidak ada penulisan program. Model dapat dibuat hanya dengan membuat menu-menu pilihan, gambar atau grafik saja.
KEUNTUNGAN SIMULATOR Waktu pengembangan program sangat singkat karena hampir tidak diperlukan upaya penulisan program. Simulator tersusun atas sejumlah construct pemodelan yang berkaitan secara spesifik ke komponen sistem sasaran, sehingga penggunaannya sangat mudah.
KONSEP DASAR PEMROGRAMAN TERSTRUKTUR Sebuah program yang baik, harus dapat memenuhi beberapa kriteria berikut : Bebas dari kesalahan Hemat memori Cepat eksekusinya Mudah untuk dipelajari Mudah untuk dikembangkan Akrab dengan pemakai
PEDOMAN DASAR PEMBUATAN PROGRAM Gunakan Program Modular Tulislah secara informatif dan Komunikatif Pengelompokkan Baris Program
1. GUNAKAN PROGRAM MODULAR Modular adalah sebuah program yang dapat dibagi atas potongan-potongan atau modul-modul program kecil. Upaya pembagian ini dimaksudkan agar permasalahan menjadi lebih kecil dan fokus pembahasan lebih terpusat, tetapi integritas permasalahan atas bagian-bagian tersebut tetap dipertahankan.
1. GUNAKAN PROGRAM MODULAR Guna mempertahankan integritas, permasalahan biasanya dilakukan dengan cara menggambarkan keterkaitan antar bagian dengan diagram hierarki seperti yang dapat dilihat pada Gambar 1. Selanjutnya masing-masing modul yang ada, dibuatkan program komputernya.
GAMBAR 1
1. GUNAKAN PROGRAM MODULAR Penguraian modul dapat ditambah atau dikurangi sehingga menjadi melebar dan mendalam tergantung kepada ukuran dan kerumitannya. Pertimbangan yang dapat dipakai dalam menentukan seberapa luas dan dalam suatu program dapat dilihat pada halaman 35.
PERTIMBANGAN DALAM MENENTUKAN SEBERAPA LUAS DAN DALAM SUATU PROGRAM Ukuran setiap modul tidak terlalu kecil atau terlalu besar atau berkisar 50-100 baris statement. Setiap modul tidak terlalu banyak membawahi submodul yang berada di bawahnya. Sebagai perkiraan, batasan terbesar dari bawahan suatu model berkisar 5-7 submodul.
PERTIMBANGAN DALAM MENENTUKAN SEBERAPA LUAS DAN DALAM SUATU PROGRAM Setiap modul harus hanya mempunyai satu permasalahan, sehingga tingkat spesifikasinya tinggi. Setiap modul atasan hanya mengendalikan submodul yang berada langsung di bawah garis penghubungnya begitu pula sebaliknya.
PERTIMBANGAN DALAM MENENTUKAN SEBERAPA LUAS DAN DALAM SUATU PROGRAM Bila sebuah modul terkait dengan sub modul yang berasal dari modul lain, maka teknis penggambaran dalam diagram dapat langsung dihubungkan dengan garis bila memungkinkan. Namun bila tidak, maka submodul itu dibuat dua dan kemudian diberi tanda dengan tanda yang sama guna menunjukkan bahwa ke dua modul itu sebenarnya hanya satu tetapi dipakai oleh lebih dari satu pemakai. Lihat modul P222 yang bergaris pada Gambar 1.
KEUNTUNGAN PROGRAM YANG TERSUSUN SECARA MODULAR Penulisan program dapat dilakukan secara simultan sehingga selesainya jauh lebih cepat. Setiap kesalahan dapat ditemukan dengan segera karena tempat kesalahan itu telah terlokalisir dengan sendirinya dan dapat dibenarkan dengan mudah karena permasalahannya telah spesifik.
KEUNTUNGAN PROGRAM YANG TERSUSUN SECARA MODULAR Mudah untuk dipelajari dan dikembangkan karena permasalahannya telah menjadi kecil dan spesifik Mudah di dalam pembuatan dokumentasi Dimungkinkan dapat menghemat memori primer komputer, karena setiap modul bisa dieksekusi secara bergantian.
TULISLAH PROGRAM SECARA INFORMATIF DAN KOMUNIKATIF DENGAN CARA SBB : Penggunaan nama sebutan (identifier) yang mempunyai arti Menggunakan kata Bantu Setiap baris program satu statement Tidak menggunakan statemen program yang hanya membebani computer
PENGGUNAAN NAMA SEBUTAN (IDENTIFIER) YANG MEMPUNYAI ARTI Contoh : Program menghitung luas empat persegi panjang Program hitung_luas_segi_4; Var PANJANG, LEBAR, LUAS : real; Begin Write(‘Panjang= ’); Readln (PANJANG); Write(‘Lebar= ’); Readln (LEBAR); LUAS :=PANJANG*LEBAR; Writeln(‘Panjang = ’,PANJANG:10:2,’ ‘); Writeln(‘Lebar= ’,LEBAR:10:2); Writeln(‘Luas= ’,LUAS:10:2); End.
MENGGUNAKAN KATA BANTU Meskipun dimungkinkan bagi penulis program untuk membuat catatan atau keterangan pada setiap nama variable pada program, tapi bila terlalu banyak akan membawa dampak negative. Catatan hanya digunakan jika diperlukan .
MENGGUNAKAN KATA BANTU Penulisan kata bantu sangat membantu dalam membuat program yang komunikatif dan informatif. Pada persoalan sebelumnya, program tidak akan salah meskipun tidak ada statement Write(‘Panjang = ‘) dan Write(‘Lebar = ‘), tetapi penulisn statement itu diperlukan untuk menampilkan tampilan “Panjang = “ dan tampilan “Lebar = “
SETIAP BARIS PROGRAM SATU STATEMENT Dibuat untuk menciptakan keteraturan dalam program karena bila dilakukan banyak statement dalam satu baris, akan menimbulkan ketidak teraturan
TIDAK MENGGUNAKAN STATEMENT PROGRAM YANG HANYA MEMBEBANI KOMPUTER Usahakan setiap penempatan statement program agar dieksekusi komputer seminimal mungkin sehingga penggunaan memori akan efisien dan waktu eksekusi yang rendah. Contoh : Perhatikan kedua program pada hal.46 yang menyajikan potongan program untuk menghitung akumulasi deret 10, 20, 30, 40… sampai suku yang ke-n,
Kedua segmen program pada kedua gambar tersebut akan meghasilkan keluaran program yang sama, namun lebih disarankan untuk menggunakan yang “B” Jumlah :=0; For I := 1 To N Do Begin Awal := 10; Tambah := Awal * 1; Jumlah := Jumlah + Tambah; End; A Tambah := Jumlah + 10*1; B
3. PENGELOMPOKKAN BARIS PROGRAM Sejumlah statement yang mempunyai awal penulisan yang sama, berarti berada pada satu kelompok, sedang sejumlah program yang mempunyai awal penulisan yang lain berada pada kelompok yang lain pula (Penulisan biasa dilakukan zig-zag)