Matakuliah Tahun Versi : H0112 – Pemrograman Bahasa Tingkat Tinggi : 2005/2006 : <<versi/revisi>> Pertemuan 5 Teknik Modular 1 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : • Menggunakan teknik modular dalam membuat suatu solusi program dari sebuah masalah. 2 Outline Materi • Top-Down Programming and Bottom-Up Programming • Kohesi • Kopling 3 Top-Down Programming and Bottom-Up Programming Aturan Penting #1 Desain dg Top-Down, tetapi membuat dg Bottom-Up • Koding dan test-lah komponen yang paling mudah terlebih dahulu. • Test-lah setiap komponen, sebelum menggunakan-nya untuk membuat komponen yang lebih kompleks 4 Kopling • Hubungan dan Ketergantungan antar fungsi. • Kopling Kontrol: – ketika suatu fungsi mengirimkan kontrol signal ke fungsi lainnya. – Contoh: function call, return • Kopling Data: – Mengirim data antar fungsi – Contoh: function parameters, return values 5 Contoh 1 Struktur Diagram dengan label yang menunjukan kopling data Kopling Kontrol nama jam Kopling Data tanggal undanganKePesta ( nama , tanggal , jam ) { telepon ( nama ) ajakanKePesta (tanggal , jam ) bye ( nama ) } inviteToParty tanggal jam telepon AjakanKePesta bye 6 Example 2 Structure chart with labels showing data coupling telepon ( nama ) { set nomerTelp sebagai hasil dari cariBukuAlmt (nama ) angkat telepon tekan nomerTelp katakan “Hi nama, Ini Budi” } nomerTelp ringUp nama Kembalikan nilai atau data yang termodifikasi dengan menggunakan pointer dll... searchAddrBook 7 Hal penting pada Kopling • Tujuan: Memaksimalkan indepedensi Modul = Meminimalisasi Kopling • Penggunaan Variabel Global (global variables) adl bentuk dari Kopling Data yang tidak dianjurkan! – Disarankan untuk tidak menggunakan Variable global pada program Anda! 8 Hal penting pada Kopling • Dimana penerapan Kopling Kontrol pada koding? – Function call: Ketika sebuah fungsi dipanggil, maka kontrol diberikan pada fungsi tersebut – Function return: Ketika koding didalam sebuah fungsi sudah dilakukan, maka kontrol dikembalikan kepada koding si-Pemanggil. • Dimana penerapan Kopling Data pada koding? – Data dikirim ke satu fungsi via parameter – Data dikembalikan dari fungsi via “return” – Data dimodifikasi dengan pointer 9 Kohesi • Kohesi: merujuk ke seberapa dekat hubungan koding didalam satu fungsi tertentu. • Kohesi Logik (Lemah) – Contoh: Fungsi Input/Output • Kohesi Fungsi (Kuat) – Fungsi yang menghasilkan satu output/kegiatan • Tujuan: Kohesi Fungsi 10 Contoh Kohesi kontak ( perusahaan , pesan , mode ) { if mode = fax { kirimFax ( perusahaan , pesan) } else if mode = email { kirimEmail ( perusahaan , pesan) } } Kohesif 11 Contoh Kohesi kontak ( perusahaan , pesan , mode ) { if mode = fax { kirimFax ( perusahaan , pesan) } else if mode = email { kirimEmail ( perusahaan , pesan) } } cetakBukuAlamat ( ) } Tidak Kohesif 12 Kohesi Aturan Penting #2 Modul-modul dalam pemrograman terstruktur adalah sangat kohesif tetapi memiliki kopling rengang • Besaran kopling data menunjukan secara umum posisi suatu modul pada hirarki pemrograman. 13 Kesimpulan • Teknik Modular penting dalam membuat software yang kompleks • Desain top-down, tetapi buat secara bottom-up • Pemrograman Terstruktur yang baik adalah sangat kohesif dengan kopling renggang antar modul. 14 Topik Minggu Depan • Unit Testing • Tugas: mahasiswa/i mengembangkan sistem elevator dari 3 lantai ke 4 lantai (dengan memperhatikan teknik top-down programming) – buku pustaka no:2 halaman 3-26. 15
© Copyright 2024 Paperzz