Pada era tahun 1950 –1960, kecepatan komputer sangat rendah dan disertai juga dengan keterbatasan dari media penyimpan, sehingga tentunya berakibat juga dengan keterbatasan dalam penulisan program-program komputer. Namun di era saat ini, dengan kecepatan komputer yang cukup handal demikian juga ketersediaan darimedia penyimpan yang cukup handal dan besar, serta didukung juga dengan perkembangan bahasa pemrograman yang ada sehingga kita dapat dengan mudah membuat suatu program. Permasalahan yang timbul dalam pembuatan program tersebut adalah bagaimana kita dapat memahaminya, sehingga apabila terdapat perubahan yang akan dilakukan kita dapat memperbaikinya secara mudah. Hal ini tentu saja harus kita perhatikan terutama apabila kita melihat dari biaya yang harus dikeluarkan dalam pembuatan program tersebut.
Istilah Pemrograman Terstruktur (Structured Programming) mengacu dari suatu kumpulan tehnik yang dikemukan oleh Edsger Dijkstra. Dengan tehnik ini akan meningkatkan produktifitas programmer, dengan mengurangi waktu yang dibutuhkan dalam penulisan (write), pengujian (test), penelusuran kesalahan (debug) dan pemeliharan(maintain) suatu program. Pada pembahasan berikut ini kita akan melihat bagaimana tehnik ini yang pendekatan yang dilakukan secara modular, dapat membantu kita dalam membangun suatu program.
Pemrograman Secara Modular
Dalam pemrograman secara modular, suatu program akan dipilah kedalam sejumlah modul, dimana setiap modul menjalankan fungsinya sendiri. Tentunya fungsi yang dijalankan oleh setiap modul sangat terbatas sesuai dengan ruang lingkup yang akan dikerjakan. Dengan adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi. Setiap program tentu akan memiliki program utamanya, yang kemudian akan memanggil sejumlah modul-modul yang ada.
Implementasi dari pendekatan secara modular
Pemrograman secara modular ini dapat diimplementasikan dengan penggunaan subroutine, suatu kelompok instruksi yang menjalankan suatu pengolahan yang sifatnya terbatas seperti pencetakan, pembacaan untuk proses input atau untuk proses penghitungan.
Masalah yang dihadapi dalam Pendekatan Modular
Masalah yang timbul misalnya tidak mengetahui modul mana yang harus digunakan, data apa yang harus dikirimkan dsb-nya. Hal ini dapat dimaklumi karena tugas seorang programmer tentu akan berbeda dengan programmer yang lainnya. Oleh karena itu dalam tahap perencanaan fungsi-fungsi dari suatu modul harus dapat dimengerti secara jelas, dan tentu saja harus mengikuti suatu standar yang telah ditentukan.