MODUL I
DESAIN PROGRAM
TUJUAN
•
Mendeskripsikan langkah-langkah dalam proses
pengembangan program
•
Menjelaskan pemrograman terstruktur
•
Mengenalkan algoritma dan pseudocode
•
Mendeskripsikan data program
1.1. LANGKAH DALAM MENGEMBANGKAN
PROGRAM
Pemrograman
dapat didefinisikan sebagai pengembangan sebuah solusi terhadap program
teridentifikasi, dan mengatur serangkaian instruksi yang relevan yang mana ketika
diarahkan melalui perangkat keras komputer akan menghasilkan hasil yang
diinginkan.
Terdapat tujuh langkah dasar dalam pengembangan sebuah
program.
1.
Mendefinisikan masalah
Untuk membantu
analisis awal, masalah harus dibagi menjadi tiga komponen :
•
Input (masukan)
•
Output (keluaran), dan
•
Tahap pemrosesan untuk menghasilkan output (keluaran)
yang dibutuhkan
Sebuah
diagram definisi direkomendasikan dalam tahap analisis ini, seperti membantu
untuk memisahkan definisi dan tiga komponen
2.
Kerangka solusi
Kerangka
awal biasanya sebuah konsep kasar solusi yang meliputi :
•
Tahap pemrosesan utama
•
Sub (bagian) pekerjaan utama (jika ada)
•
Struktur
kendali utama (contoh : pengulangan)
•
Variabel utama dan struktur rekaman (record)
•
Lojik utama
Kerangka
solusi dapat juga meliputi sebuah diagram hirarki atau diagram terstruktur.
3.
Mengembangkan kerangka solusi ke dalam sebuah
algoritma
Kerangka
solusi yang dikembangkan dalam tahap 2 kemudian diperluas ke dalam sebuah
algoritma : serangkaian tahap yang tepat yang menggambarkan secara jelas
pekerjaan-pekerjaan yang dilakukan, dan urutan pekerjaan tersebut dilakukan.
Dalam
hal ini digunakan pseudocode (sebuah bentuk bahasa Inggris terstruktur)
untuk merepresentasikan algoritma solusi, sebagaimana halnya teknik pemrograman
terstruktur.
4.
Menguji algoritma untuk perbaikan
Tahap
ini adalah salah satu hal yang paling penting dalam pengembangan sebuah
program, dan masih merupakan tahap yang paling sering dilupakan. Tujuan utama
pengujian algoritma adalah untuk mengidentifikasi kesalahan lojik utama lebih
awal, sehingga dapat diperbaiki dengan mudah.
Data
uji diperlukan untuk diujikan melalui setiap tahap dalam algoritma, untuk
menguji bahwa instruksi yang dideskripsikan dalam algoritma akan melakukan apa
yang seharusnya dilakukan.
5. Mengkodekan algoritma ke dalam bahasa
pemrograman tertentu
Hanya setelah semua pertimbangan desain
memenuhi yang diharapkan, kita baru memulai mengkodekan program ke dalam bahasa
pemrograman tertentu.
6. Menjalankan program pada komputer
Tahap ini menggunakan sebuah program compiler
dan data uji yang didesain pemrogram pada komputer untuk menguji kode untuk
mencari kesalahan sintaks.
7.
Mendokumentasikan dan memelihara program
Dokumentasi
program bukan merupakan tahap terakhir dalam proses pengembangan program,
tetapi merupakan sebuah pekerjaan yang berkelanjutan dari mulai definisi
masalah sampai pada hasil uji terakhir.
Dokumentasi meliputi dokumentasi eksternal
(seperti diagram hirarki) dan dokumentasi internal yang telah dikodekan dalam
program.
1.2. PEMROGRAMAN
TERSTRUKTUR
Pemrograman
terstruktur membantu menulis program yang efektif dan bebas kesalahan (error-free).
Konsep asli pemrograman terstruktur dibuat dalam sebuah paper yang
dipublikasikan tahun 1964 di Italia oleh Bohm dan Jacopini. Mereka memunculkan
gagasan mendesain program menggunakan teorema struktur berdasarkan struktur
tiga kontrol. Terminologi ini sekarang merujuk tidak hanya pada teorema
struktur, tetapi juga pengembangan top-down dan desain modular
Pengembangan top-down
Pemrogram
yang berhadapan dengan sebuah masalah pemrograman akan memulai pengkodean pada
permulaan masalah dan bekerja secara sistematis melalui tahap-tahap sampai
mencapai akhir. Dalam pengembangan top-down sebuah desain program,
solusi umum terhadap masalah diuraikan terlebih dahulu.
Desain
modular
Pemrograman
terstruktur juga menggabungkan konsep desain modular, yang meliputi
pengelompokan pekerjaan bersama-sama karena menjalankan fungsi yang sama
(contoh kalkulasi pajak penjualan atau mencetak kop laporan). Desain modular
dihubungkan secara langsung dengan pengembangan top-down, sebagai tahap-tahap
atau sub pekerjaan dimana pemrogram memecah solusi program yang nantinya akan
membentuk modul program
Teorema struktur
Teorema
struktur merevolusi desain program dengan menghilangkan pernyataan GO TO dan
menghadirkan kerangka struktur untuk merepresen-tasikan suatu solusi. Teorema
tersebut menyatakan bahwa dimungkinkan untuk menulis sembarang program komputer
hanya dengan menggunakan tiga struktur kontrol dasar. Struktur kontrol tersebut
adalah :
•
Sequence (Urutan)
•
Selection (Pilihan), atau IF-THEN-ELSE
•
Repetition (Pengulangan), atau DOWHILE
1.3. PENGENALAN PADA ALGORITMA DAN
PSEUDOCODE
Teknik
pemrograman terstruktur menuntut sebuah program didesain secara benar sebelum
pengkodean dimulai, dan hal itu merupakan proses desain yang dihasilkan dalam
pembuatan sebuah algoritma.
PENGEMBANGAN PERANGKAT
LUNAK MODEL AIR TERJUN
Gambar 1.1. Pengembangan perangkat
lunak model air terjun
Algoritma
Sebuah
algoritma menulis langkah-langkah yang harus dilakukan dalam menyelesaikan
sebuah tugas/pekerjaan. Dapat didefinisikan dalam terminologi pemrograman
sebagai serangkaian instruksi yang detil, tidak mendua (jelas) dan berurutan,
dikembangkan untuk mendeskripsikan proses-proses yang diperlukan untuk
menghasilkan keluaran yang diharapkan berdasarkan masukan tertentu.
Algoritma harus :
-
Jelas, tepat, dan tidak mendua
-
Memberikan solusi yang tepat untuk semua kasus
-
Pada
akhirnya berhenti (memiliki akhir)
Penting untuk menggunakan indentasi ketika
menulis algoritma solusi karena membantu untuk membedakan tiga struktur kontrol.
INSTRUKSI UNTUK MENGHITUNG HARGA
PADA CALCULATOR SAKU
•
Nyalakan calculator
•
Bersihkan (clear) calculator
•
Ulangi instruksi berikut ini
–
Ketikkan jumlah dollar
–
Ketikkan titik desimal (.)
–
Ketikkan jumlah sen
–
Tekan tombol tambah (+)
•
Sampai semua harga dimasukkan
•
Tuliskan total harga
•
Matikan calculator
Algoritma
di atas memenuhi daftar kategori yang diinginkan : algoritma tersebut
menuliskan semua tahap dalam urutan yang benar dari atas ke bawah sampai solusi
yang tepat tercapai
Pseudocode
Pseudocode,
flowchart, dan diagram Nassi-Schneiderman adalah cara populer
untuk merepresentasikan algoritma. Pseudocode adalah bahasa Inggris
terstruktur. Tidak ada standar penulisan pseudocode. Dalam buku ini
dicoba untuk menghadirkan pseudocode standar untuk dipergunakan oleh
semua pemrogram tanpa memandang bahasa pemrograman yang digunakan
Sebagaimana versi pseudocode lainnya,
versi ini memiliki beberapa ketentuan sebagai berikut :
•
Pernyataan ditulis dalam bahasa Inggris sederhana
•
Setiap instruksi ditulis pada baris yang terpisah
•
Kata
kunci dan indentasi digunakan untuk menandai struktur kontrol tertentu
•
Setiap
rangkaian instruksi ditulis dari atas ke bawah, dengan hanya satu titik masuk
dan satu titik keluar
•
Kelompok
pernyataan dapat dibentuk menjadi modul dan kelompok tersebut diberi nama
FLOWCHART YANG UMUM
Gambar 1.2. Bentuk flowchart secara umum
1.4. DATA PROGRAM
Data dalam sebuah program
dapat berupa variabel tunggal, seperti bilangan atau karakter; atau kelompok
hal /item (kadang-kadang disebut sebuah agregat/kumpulan) seperti sebuah
larik (array) atau file.
Variabel, konstanta, dan
literal
Sebuah variabel adalah nama
yang diberikan pada sekumpulan sel memori, didesain untuk menyimpan item data
tertentu. Disebut variabel karena nilai yang disimpan dalam variabel tersebut
dapat berubah atau bervariasi sepanjang eksekusi program
Sebuah konstanta adalah
sebuah item data dengan sebuah nama dan sebuah nilai yang tetap sama
sepanjang eksekusi program.
Sebuah literal adalah sebuah
konstanta yang namanya representasi tulisan dari nilainya.
Item data dasar
Item data dasar adalah item data
yang memuat sebuah variabel tunggal yang selalu diperlakukan sebagai sebuah
unit. Item-item data tersebut biasanya diklasifikasikan ke dalam tipe
data. Sebuah tipe data terdiri dari sekelompok nilai data dan sekelompok
operasi yang dapat dilakukan terhadap nilai tersebut. Tipe data dasar yang
paling umum adalah :
•
integer
•
character
•
real
•
boolean
Struktur data
Sebuah struktur data adalah
sebuah kumpulan dari item data lainnya. Item data yang dikandung adalah
komponennya, yang dapat berupa item data dasar atau struktur data lainnya. Struktur
data yang paling umum adalah :
•
record
•
file
•
array
•
string
1.5. RINGKASAN
Langkah dalam pengembangan
program :
1.
Mendefinisikan masalah
2.
Membuat kerangka solusi
3.
Mengembangkan kerangka solusi ke dalam algoritma
4.
Menguji algoritma untuk perbaikan
5.
Mengkodekan algoritma ke dalam bahasa
pemrograman tertentu
6.
Menjalankan program pada komputer
7.
Mendokumentasikan dan memelihara program
Pemrograman terstruktur
direpresentasikan dalam teks sebagai kombinasi dari tiga konsep terpisah :
•
Pengembangan Top-down
•
Desain modular
•
Penggunaan teorema struktur ketika mendesain sebuah solusi
untuk sebuah masalah
Pemrogram perlu memiliki
pemahaman yang baik mengenai data yang diproses, oleh karena itu variabel data,
konstanta, dan literal didefinisikan sebagaimana halnya item data dasar dan
struktur data
Tidak ada komentar:
Posting Komentar