Pembangunan Interpreter Bahasa Simulasi GPSS LAPORAN TUGAS AKHIR Disusun sebagai syarat kelulusan tingkat sarjana oleh : Citrady Lasantus Muhasan / 13501061 PROGRAM STUDI INFORMATIKA SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2008
Lembar Pengesahan Program Studi Sarjana Informatika Pembangunan Interpreter Bahasa Simulasi GPSS Tugas Akhir Program Studi Sarjana Informatika ITB Oleh Nama :Citrady Lasantus Muhasan / NIM 13501061 Telah disetujui dan disahkan sebagai laporan tugas akhir di Bandung, pada tanggal 13 Juni 2008 Pembimbing Dr.Ir. Rila Mandala, M.Eng NIP. 132045672 ii
ABSTRAKSI Saat ini, simulasi merupakan suatu hal yang umum dijumpai dalam kehidupan berbisnis, industri dan lain sebagainya. Simulasi merupakan suatu proses yang dapat memodelkan suatu masalah yang besar dan kompleks dengan biaya yang murah dan hasil yang cepat. Awalnya, simulasi digunakan untuk memodelkan manuver pasukan dalam latihan militer dan telah berkembang sangat pesat hingga saat ini. Salah satu tool simulasi yang cukup populer pada awal perkembangan simulasi adalah GPSS (General Purpose System Simulator). GPSS merupakan simulasi yang menggunakan sistem diskrit dan merupakan suatu tool yang dapat mensimulasikan berbagai permasalahan umum (tidak terpaku pada satu jenis masalah). GPSS merupakan suatu simulator yang dilambangkan dengan blok untuk setiap set operasinya dan sebuah simulasi menggunakan GPSS adalah sebuah kumpulan dari blok ini yang dijalankan (simulasi). Tugas akhir ini membahas penggunaan dan cara kerja GPSS dalam mensimulasikan beberapa masalah yang diberikan. Memahami cara kerja GPSS perlu adanya untuk memahami perkembangan simulator pada awal awal perkembangannya sebelum menjadi simulasi modern seperti yang dikenal sekarang. Untuk memahami cara kerja GPSS sesungguhnya, maka tugas akhir ini akan membuat perangkat lunak yang berfungsi sebagaimana GPSS. Perangkat lunak simulasi GPSS diimplementasikan dalam bahasa pemrograman C pada sistem operasi Windows. Kompilator yang digunakan untuk perangkat lunak adalah MinGW 2.0.0-3 (gcc). Perangkat lunak juga dapat dikompilasi pada sistem operasi linux (gcc). Kata kunci : GPSS, simulasi, sistem diskrit, blok iii
KATA PENGANTAR Puji syukur kepada Tuhan YME penulis panjatkan karena atas rahmat, bimbingan dan petunjuk-nya, penulis dapat menyelesaikan tugas akhir ini. Tugas akhir ini dilaksanakan sebagai syarat kelulusan tingkat sarjana strata-i dari Departemen Teknik Informatika, Institut Teknologi Bandung. Selama masa pengerjaan tugas akhir ini banyak pihak yang telah membantu dan mendukung penulis. Untuk itu penulis mengucapkan terima kasih yang sebesarbesarnya kepada : 1. Bapak Dr.Ir. Rila Mandala, M.Eng selaku dosen pembimbing yang telah bersedia meluangkan waktu untuk memberikan bimbingan dan bantuan selama pengerjaan tugas akhir. 2. Ibu Dra.Harlili, M.Sc selaku dosen wali, reviewer tugas akhir dan penguji sidang tugas akhir penulis. 3. Bapak Drs. Judhi Santoso, M.Sc selaku penguji siding tugas akhir penulis. 4. Segenap staf dosen, tata usaha, perpustakaan, dan karyawan di Departemen Teknik Informatika, Institut Teknologi Bandung. 5. Keluarga penulis yang telah memberikan dukungan, dorongan, dan doa. 6. Sahabat penulis, Bob, Byaryoga, Dicky, Eni, Ditto, Hendra, Krisna, Nugroho, Roni,Teddy, Wahyu dan seluruh rekan rekan teknik Informatika ITB 2001 lainnya. 7. Pihak pihak lain yang penulis tidak dapat sebutkan satu-persatu, yang telah membantu penulis baik secara langsung maupun tidak langsung. Penulis menyadari bahwa laporan tugas akhir ini masih memiliki bamyak kekurangan. Oleh karena itu, pendapat, kritik, dan saran dari pembaca akan sangat penulis hargai. Akhir kata, semoga tugas akhir ini bermanfaat bagi perkembangan ilmu pengetahuan dan seluruh pihak yang membutuhkannya. Bandung, Juni 2008 iv Penulis
DAFTAR ISI Lembar Pengesahan...ii ABSTRAKSI... iii KATA PENGANTAR...iv DAFTAR ISI...v DAFTAR GAMBAR...vii DAFTAR TABEL... viii DAFTAR ISTILAH...ix BAB I PENDAHULUAN...I-1 1.1 Latar Belakang...I-1 1.2 Rumusan Masalah...I-3 1.3 Tujuan....I-3 1.4 Batasan Masalah...I-3 1.5 Metodologi...I-3 BAB II Dasar TEORI... II-1 2.1 Simulasi...II-1 II.1.1 Pengertian Simulasi...II-1 II.1.2 Discrete System Simulation (Simulasi Diskrit)...II-2 II.1.3 Bilangan Random...II-2 2.2 General Purpose System Simulation (GPSS)...II-3 II.2.1 Pengertian GPSS...II-3 II.2.2 Operasi-operasi dalam GPSS...II-4 II.2.3 Fungsionalitas GPSS...II-13 BAB III ANALISIS DAN PERANCANGAN...III-1 3.1 Analisis Masalah Umum... III-1 3.2 Spesifikasi Umum Kebutuhan Perangkat Lunak... III-2 III.2.1 Fungsi Perangkat Lunak... III-2 III.2.2 Tujuan Perangkat Lunak... III-2 III.2.3 Masukan dan Keluaran Perangkat Lunak... III-3 III.2.4 Batasan Perangkat Lunak... III-3 III.2.5 Model Fungsional Perangkat Lunak... III-3 III.2.5.1 Diagram Konteks / DFD Level 0... III-3 III.2.5.2 DFD Level 1... III-4 3.3 Perancangan Perangkat Lunak... III-6 III.3.1 Perancangan Arsitektur... III-6 III.3.2 Perancangan Modul Perangkat Lunak... III-7 III.3.2.1 Modul Pembaca... III-8 III.3.2.2 Modul Pembagi... III-8 III.3.2.3 Modul Pemroses Blok... III-8 III.3.2.4 Modul Pemroses Control Statement... III-9 III.3.2.5 Modul Penjalanan Instruksi... III-9 III.3.2.6 Modul Pembuat Report... III-9 BAB IV IMPLEMENTASI DAN PENGUJIAN...IV-1 4.1 Implementasi Perangkat Lunak... IV-1 IV.1.1 Lingkungan Implementasi... IV-1 IV.1.1.1 Lingkungan Perangkat Keras... IV-1 IV.1.1.2 Lingkungan Perangkat Lunak... IV-1 IV.1.2 Batasan Implementasi... IV-2 IV.1.3 Implementasi Modul... IV-2 IV.1.4 Implementasi Masukan dan Keluaran... IV-3 v
IV.1.4.1 Implementasi Masukan... IV-3 IV.1.4.2 Implementasi Keluaran... IV-3 4.2 Pengujian dan Analisis Hasil Uji... IV-5 IV.2.1 Uji Kasus 1... IV-5 IV.2.2 Uji Kasus 2... IV-6 IV.2.3 Uji Kasus 3... IV-8 IV.2.4 Uji Kasus 4... IV-9 IV.2.5 Uji Kasus 5...IV-11 IV.2.6 Uji Kasus 6...IV-13 IV.2.7 Uji Kasus 7...IV-16 IV.2.8 Uji Kasus 8...IV-18 IV.2.9 Ikhtisar Pengujian...IV-20 BAB V PENUTUP...V-1 5.1 Kesimpulan... V-1 5.2 Saran... V-1 DAFTAR REFERENSI...xi DAFTAR PUSTAKA...xii vi
DAFTAR GAMBAR Gambar II-1 model waktu diskrit...ii-2 Gambar II-2 Simbol blok diagram dalam GPSS...II-10 Gambar II-3 Blok diagram contoh kasus...ii-14 Gambar III-1 Diagram Konteks... III-3 Gambar III-2 DFD Level 1... III-4 Gambar III-3 Arsitektur Sistem... III-7 Gambar IV-1 Format berkas masukan... IV-3 Gambar IV-2 Contoh berkas masukan... IV-4 Gambar IV-3 Contoh berkas keluaran... IV-4 Gambar IV-4 Blok Diagram Uji Kasus 1... IV-5 Gambar IV-5 Hasil Uji Kasus 1... IV-6 Gambar IV-6 Blok Diagram Uji Kasus 2... IV-7 Gambar IV-7 Hasil Uji Kasus 2... IV-7 Gambar IV-8 Blok Diagram Uji Kasus 3... IV-8 Gambar IV-9 Hasil Uji Kasus 3... IV-9 Gambar IV-10 Blok Diagram Uji Kasus 4...IV-10 Gambar IV-11 Hasil Uji Kasus 4...IV-11 Gambar IV-12 Blok Diagram Uji Kasus 5...IV-12 Gambar IV-13 Hasil Uji Kasus 5...IV-13 Gambar IV-14 Blok Diagram Uji Kasus 6...IV-14 Gambar IV-15 Hasil Uji Kasus 6...IV-15 Gambar IV-16 Blok Diagram uji Kasus 7...IV-16 Gambar IV-17 Hasil Uji Kasus 7...IV-17 Gambar IV-18 Blok Diagram Uji Kasus 8...IV-18 Gambar IV-19 Hasil Uji Kasus 8...IV-19 Gambar IV-20 Hasil Uji Kasus 8 dengan Kapasitas Storage 2...IV-20 vii
DAFTAR TABEL Tabel II-1 Operasi Blok yang Terdapat dalam GPSS...II-5 Tabel II-2 Control Statement yang terdapat dalam GPSS...II-11 Tabel II-3 Mode Blok Transfer pada GPSS...II-13 Tabel III-1 Data dan Entitas pada DFD Level 1... III-5 Tabel III-2 Proses pada DFD Level 1... III-6 Tabel IV-1 Pemetaan modul ke dalam berkas - berkas... IV-2 Tabel IV-2 Hasil pengujian secara umum...iv-20 viii
DAFTAR ISTILAH GPSS Discrete system Data field blok Control statement General Purpose system simulator, sebuah simulator yang diperkenalkan oleh Geoffrey Gordon pada 1961 Sistem yang berubah secara diskrit terhadap waktu Field atau tempat yang menjadi data untuk sebuah blok Set operasi yang digunakan dalam GPSS Pengontrol dari blok yang digunakan dalam permodelan ix