Berpikir Komputasi - Pertemuan 4


Modularisasi digunakan bila ada suatu permasalahan yang kompleks, sehingga langkah pertama adalah mengidentifikasikan tugas utama, setelah itu baru dibagi kedalam tugas yang lebih rinci. Proses ini disebut dengan Top Down Design.

Keuntungan Modularisasi

Ease of understanding: Setiap Modul hanya melaksanakan satu fungsi
Reusable code: Modul yang digunakan dalam satu program dapat digunakan juga di program lainnya
Elimination of redundancy: Dengan menggunakan modul dapat membantu menghindari pengulangan dalam  menuliskan algoritma yang sama lebih dari satu kali.
Efficiency of maintenance: Setiap modul bersifat self-contained dan jika ada perubahan dalam suatu modul  tidak mempengaruhi modul lainnya.

Modular Programming Modularisasi

  • Memecahkan algoritma ke dalam algoritma yang lebih kecil / modul
  • Modul yang dibentuk mempunyai kesatuan tugas/fungsi maupun kesatuan prosedur/proses
  • Setiap modul harus mempunyai single entry dan single exit secara beruntun dari atas ke bawah atau dari awal ke akhir modul
  • Memiliki main program dan sub program atau modul.

Langkah dalam modular:

  • Definisi masalah : klasifikasikan dalam input, proses dan output
  • Kelompokkan aktivitas ke dalam modul
  • Buat bagan untuk menjelaskan hirarki dan hubungan antar modul
  • Buat logika dari main program dengan pseudocode / flowchart
  • Buat logika untuk tiap – tiap modul dengan pseudocode / flowchart
  • Desk checking algoritma : melakukan pengecekkan kebenaran algoritma dengan data.

Problem Decomposition

Dekomposisi adalah kemampuan memecahkan masalah yang kompleks  menjadi tugas-tugas kecil yang lebih rinci agar tugas-tugas tersebut mudah  dikelola.