PEMROGRAMAN TERSTRUKTUR I. SEJARAH PENGEMBANGAN PROGRAM - PROGRAM BANYAK BERISI INSTRUKSI GOTO - BERISI PROSES YANG MELOMPAT MUNDUR KEBARIS SEBELUMNYA Mulai : GOTO Hitung Hitung : GOTO Hitung IDE-IDE : 1. EW. Dykstra : Pernyataan GOTO seharusnya tidak dipakai didalam program terstruktur. - Modifikasi akan sulit, bila program tidak terstruktur dengan baik, terutama pada program yang besar dan komplek 2. HD. Mills : Pemrograman terstruktur bukan harus dicirikan dengan tidak digunakannya instruksi GOTO, tetapi oleh strukturnya. 3. N. Wirth : Pemrograman terstruktur adalah formulasi program secara hirarkis, struktur berkelompok dari pernyataan-pernyataan dan objek-objek. Prinsip Utama Pemrograman terstruktur adalah bahwa jika urutan suatu proses telah sampai pada suatu baris tertentu, maka proses selanjutnya tidak boleh melompat mundur ke baris sebelumnya, kecuali untuk proses berulang (repetition/looping), dan program diformulasikan kedalam modul-modul dan secara hirarkis. Top-Down Design / Pemrograman Modular 1
Top-Down Design/ Pemrograman Modular Konsep top down design adalah suatu teknik perancangan dengan cara melihat suatu permasalahan mulai dari yang umum (pokok permasalahan) sampai yang khusus (sub permasalahan), yang disusun secara hirarki dari atas ke bawah. Pemrograman Modular merupakan implementasi dari top down design adalah suatu teknik pemrograman untuk program skala besar dengan cara membagi menjadi beberapa bagian kecil. Tiap bagian disebut modul, yang melakukan suatu tugas tertentu. Bagian yang melakukan suatu tugas tertentu ditulis dengan sub program tersendiri (disebut modul). Jadi sebuah program yang cukup besar atau komplek harus dipecah atau dibagi kedalam kumpulan dari subprogram. CONTOH DIAGRAM HIPO HITUNG 1.0 HITUNG KOTOR 2.0 HITUNG KOTOR 3.0 JUMLAHKAN JAM KERJA 2.1 TENTUKAN TARIF 2.2 HITUNG GAJI KOTOR 2.3 HITUNG GAJI BERSIH 3.1 CETAK SLIP 3.2 2
II. PEMROGRAMAN TERSTRUKTUR TUJUAN PEMROGRAMAN TERSTRUKTUR 1. Meningkatkan kehandalan program 2. Program mudah dibaca dan ditelusuri 3. Menyederhanakan kerumitan program 4. Pemeliharaan/perawatan program 5. Meningkatkan produktivitas pemrograman CIRI PEMROGRAMAN TERSTRUKTUR 1. Mengandung teknik pemecahan masalah yang tepat dan benar. 2. Memiliki algoritma yang sederhana dan efektif. 3. Penulisan program memiliki logika yang benar dan mudah dipahami. 4. Program hanya terdiri dari 3 struktur dasar, yaitu struktur berurutan, struktur seleksi dan struktur pengulangan. 5. Menghindari pemakaian pernyataan GOTO yang akan menjadikan program tidak terstrutur dengan baik. 6. Biaya pengujian yang dibutuhkan rendah. 7. Memiliki dokumentasi yang baik. 8. Biaya perawatan dan dokumentasi yang dibutuhkan rendah. LANGKAH-LANGKAH PENGEMBANGAN PROGRAM 1. DEFINISI MASALAH 2. PERANCANGAN 3. ALGORITMA 4. PEMROGRAMAN 5. TESTING / DEBUGGING 6. DOKUMENTASI DAN PEMELIHARAAN PROGRAM 3
1. DEFINISI MASALAH A. MEMAHAMI PERMASALAHAN : DENGAN MELAKUKAN SURVEY & WAWANCARA DENGAN USER -B. IDENTIFIKASI PERMASALAHAN : - INPUT - OUTPUT - PROSES TUJUAN IDENTIFIKASI ADALAH UNTUK MEMBATASI PERMASALAHAN AGAR MASALAH TIDAK BERKEMBANG SECARA TAK TERBATAS. 2. PERANCANGAN METODE YANG DIPAKAI DALAM PERANCANGAN TERSTRUKTUR ADALAH METODE TOP-DOWN (ATAS-BAWAH). PERALATAN YANG DIPAKAI BERBAGAI CARA, DIANTARANYA : A. HIPO (Hierarchy Plus Input-Process-Output) B. STRUCTURED CHART HIPO ATAU DIAGRAM FUNGSI : MENUNJUKKAN HUBUNGAN HIRARKI MODUL PADA SUATU SISTEM, BAGIAN-2 DAN FUNGSI-2 NYA. STRUCTURED CHART ATAU BAGAN STRUKTUR - MENUNJUKKAN ORGANISASI DARI SISTEM SECARA BERJENJANG DALAM BENTUK MODUL DAN SUBMODUL - MENGGAMBARKAN HUBUNGAN ELEMEN DATA DAN ELEMEN KONTROL SERTA HUBUNGAN ANTAR MODULNYA. 3. ALGORITMA MERUPAKAN URUTAN LANGKAH-2 LOGIS DALAM MENYELESAIKAN MASALAH YANG DISUSUN SECARA SISTEMATIS. 4
PENYUSUNAN ALGORITMA ADA BERBAGAI CARA, DIANTARANYA : A. FLOWCHART B. PSEUDOCODE 4. PEMROGRAMAN ATAU PENGKODEAN MENTRANSFORMASIKAN ALGORITMA KEDALAM BAHASA PEMROGRAMAN. MEMILIH BAHASA PEMROGRAMAN : o DIKUASAI OLEH PEMROGRAM o DAPAT DIPAKAI PADA BERBAGAI JENIS KOMPUTER YANG BERBEDA-BEDA DAN BERBAGAI JENIS SISTEM OPERASI. o BIDANG APLIKASI YANG SEDANG DIKERJAKAN TUJUAN PENGKODEAN : o EFISIENSI MEMORI YANG AKAN DIGUNAKAN o EFISIENSI PERINTAH DALAM SETIAP MODUL PROGRAM o EFISIENSI PENGGUNAAN FASILITAS I/O 5. TESTING / DEBUGGING MENGUJI PROGRAM SAMPAI DIPENUHI BEBAS ERROR LEWAT BERBAGAI MACAM KONDISI ATAU DENGAN INPUT YANG HASILNYA DAPAT DIPREDIKSI. DEBUGGING ADALAH MENGOREKSI ERROR YANG TERDETEKSI MELIPUTI LOKASI KODE YANG ERROR DAN MENGOREKSINYA. 6. DOKUMENTASI DAN PEMELIHARAAN PROGRAM DOKUMENTASI MERUPAKAN INFORMASI DAN GAMBARAN TAMBAHAN YANG SANGAT MEMBANTU UNTUK MEMAHAMI SEBUAH KODE YANG DIBERIKAN. TUJUANNYA ADALAH UNTUK MENJADI PEDOMAN DAN PENJELASAN BAGI PARA PENGGUNA. DOKUMENTASI ADA 2 MACAM : o DOKUMENTASI INTERNAL o DOKUMENTASI EKSTERNAL 5
DOKUMENTASI INTERNAL : Ditulis dalam program, biasanya ditulis diantara symbol-simbol { } atau /* */ Dll. DOKUMENTASI EKSTERNAL : Dalam bentuk manual, berisi semua catatan penting mulai dari tahap perancangan, hingga pengkodean dan lain-lain. PEMELIHARAAN PROGRAM AKTIFITAS YANG TERJADI PADA FASE PEMELIHARAAN ANTARA LAIN : 1. PENAMBAHAN ATAU PENINGKATAN : o FUNGSI-FUNGSI BARU o PERBAIKAN TAMPILAN o PERBAHARUI DOKUMENTASI INTERNAL & EKSTERNAL o DLL. 2. ADAPTASI PERANGKAT LUNAK DENGAN MESIN BARU. 3. PERBAIKAN PERMASALAHAN YANG TIMBUL, SETELAH PERANGKAT LUNAK DIPAKAI OLEH PEMAKAI. KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR PEMROGRAMAN TERSTRUKTUR MEMILIKI 3 KOMPONEN UTAMA, YAITU : 1. PEMROGRAMAN TOP-DOWN 2. PEMROGRAMAN MODULAR 3. TEOREMA STRUKTUR / STRUKTUR KONTROL PEMROGRAMAN TOP-DOWN : PEMBAGIAN MASALAH YANG KOMPLEKS MENJADI KELOMPOK-2 YANG LEBIH KECIL. DARI KELOMPOK YANG KECIL DIANALISA, APABILA DIMUNGKINKAN, MAKA MASALAH TSB AKAN DIPECAH LAGI MENJADI SUB BAGIAN YANG LEBIH KECIL. 6
PEMROGRAMAN MODULAR MERUPAKAN IMPLEMENTASI DARI LANGKAH-2 PEMECAHAN MASALAH PADA KELOMPOK MASALAH YANG KECIL YANG DISEBUT MODUL. MODUL DIDEFINISIKAN SEBAGAI : o SEKUMPULAN INSTRUKSI YANG MEMILIKI OPERASI-2 DAN DATA YANG DIDEFINISIKAN o MEMILIKI STRUKTUR INTERNAL YANG TIDAK TERGANTUNG PADA SUB PROGRAM YANG LAIN. o SATU KESATUAN YANG UTUH YANG DAPAT DIEKSEKUSI SECARA BERULANG-ULANG. TEOREMA STRUKTUR / STRUKTUR KONTROL ADA 3 TEOREMA STRUKTUR : o STRUKTUR URUT o STRUKTUR SELEKSI o STRUKTUR REPETISI / PENGULANGAN 7