MATERI PROGRAM BAHASA KOMPUTER (KONSEP DAN METODE PEMROGRAMAN)
KONSEP DAN METODE PEMROGRAMAN
Dalam
sistem komputer, computer programming / pemrograman komputer memegang peranan
yang penting sekali agar data masukan atau input
dapat diolah dan ditransformasikan menjadi informasi keluaran atau output yang diperlukan oleh pengguna
komputer / user.
Dengan bahasa pemrograman tertentu
dapat dilaksanakan interaksi dengan komputer, sehingga tujuan pengumpulan,
pengolahan, dan penampilan informasi bisa dikerjakan sesuai dengan spesifikasi
yang telah ditentukan.
Seperti halnya dengan merancang dan
membangun bangunan dalam ilmu teknik sipil, pemrograman komputerpun bisa
sederhana dan gampang, tetapi juga bisa rumit dan sulit. Misalnya membuat
program untuk irigasi sawah sangatlah sederhana dibandingkan dengan membuat
program untuk menghitung bangunan bertingkat tinggi.
Program komputer adalah kumpulan
perintah-perintah dalam bahasa dan sistem komputer tertentu, agar komputer
melaksanakan proses pengambilan data, transformasi data, dan menyajikan
informasi. Jadi dengan demikian program dan
pemrograman komputer ini harus dimengerti oleh orang-orang yang mengembangkan
piranti lunak komputer.
Perkembangan terakhir dalam piranti
lunak komputer menunjukkan semakin banyaknya program aplikasi / application program yang ditawarkan.
Dalam menggunakan program aplikasi ini umumnya kita tinggal menggunakannya
saja, tidak mengembangkan sendiri.
Program-program aplikasi inipun
juga semakin rumit, diperlukan pengetahuan pemrograman komputer untuk
mengoperasikannya. Jadi, pengguna komputerpun juga harus memahami proses
pemrograman komputer. Kegunaan pengetahuan pemrograman komputer untuk pengguna
komputer adalah :
1.
agar bisa berkomunikasi secara
tepat dan efisien dengan pemrograman komputer.
2.
agar bisa membuat program
aplikasi yang paling sederhana, yaitu non-prosedural dan dialog interaktif
dalam program aplikasi.
3.
pemakaian jaringan komputer dan
pemrosesan terdistribusi menjadikan pengguna komputer juga sebagai pemrogram
untuk komputernya sendiri.
Sebelum dibahas lebih jauh, perlu
kita tinjau dahulu beberapa masalah yang ditemuai dalam pemrograman komputer,
teknik-teknik serta alat bantu yang digunakan dalam pemrograman komputer.
Berikut ini apa yang kita lihat
atau hal hal yang berkaitan erat dengan masalah pemrograman komputer :
1.
Produktifitas pemrograman
Pengembangan program komputer memerlukan waktu yang lama. Sering
program terlambat diselesaikan, atau kadang menunggu terlalu lama untuk
menyelesaikan.
2.
Kualitas Program
Program yang telah diselesaikan masih mengandung banyak kesalahan
atau tidak memenuhi kebutuhan pengguna. Program terlalu rumit, tidak
didokumentasikan dengan baik, sehingga menyulitkan pembuatan koreksi ataupun
pengembangan program lebih lanjut.
3.
Biaya pemrograman.
Biaya pengembangan dan pemeliharaan program adalah mahal, dan cenderung
semakin mahal dibandingkan dengan harga perangkat keras komputer.
Reaksi dan usaha yang dilakukan
menghadapi realita pemrograman diatas adalah digunakannya paket program yang
sudah terprogram sebelumnya dan dikembangkannya teknik maupun alat bantu pemrograman.
Di dalam teknik pemrograman misalnya, telah dikenal teknik pemrograman
terstruktur / structured programming.
Dengan menggunakan pola pemrograman
terstruktur, kita akan dibiasakan berpikir terstruktur agar mendapatkan
program yang baik dan benar.
PROSES PEMROGRAMAN
Proses
pemrograman merupakan sistem yang berkelanjutan dan memutar ulang. Karena
kebutuhan data maupun informasi selalu berkembang, maka programpun perlu
diperbaharui. Bahkan tidak hanya perangkat lunak programnya saja, tetapi juga
perangkat keraspun juga harus disesuaikan dengan volume dan jenis data yang
diinginkan. Berikut dibahas pokok-pokok konsep pemrograman, agar program yang
dibuat mampu memproses data dan memberikan informasi yang diinginkan, fleksibel
atau tidak kaku untuk pengembangan elanjutnya, dan idealnya juga portabel antar
mesin maupun sistem.
Ciri-ciri Program yang
Baik
Secara
umum, program komputerpun juga harus tepat sasaran dan waktu, tidak mengandung
cacat, murah pembuatan maupun pemeliharaannya, fleksibel dan didokumentasikan
secara baik. Sudah barang tentu dalam batas-batas yang tidak menjadikan sistem
terlalu mahal atau sulit melaksanakannya. Atau jika kita pilah-pilahkan adalah
seperti berikut ini :
-
Tepat sasaran :
memenuhi spesifikasi pekerjaan yang ditentukan dan bekerja sesuai
tujuan.
-
Fleksibel dan portabel : fleksibel untuk mengembangkannya lebih
lanjut, dan portabel antar sistem ataupun mesin.
-
Bersih dari kesalahan sistem
maupun logik
-
Murah :
efisien dalam penggunaan perangkat memori dan penyimpanan lainnya serta
cepat waktu pelaksanaannya.
-
Didokumentasikan dengan baik
untuk pemakai dan pemrogram.
Perencanaan
dan implementasi untuk memenuhi persyaratan program yang baik tersebut dapat
diartikan sebagai sistem yang berkelanjutan, sehingga harus ada kerjasama
antara pengguna dan pemrogram.
Algoritma
Perencanaan
program komputer juga disebut pembuatan algoritma
program. Secara umum, algoritma
diartikan sebagai himpunan aturan ataupun perintah yang menentukan
operasi-operasi tertentu yang diperlukan untuk menyelesaikan suatu masalah
ataupun mengerjakan suatu tugas. Jadi, algoritma
program menentukan metoda yang akan digunakan dalam memproses data agar menjadi
informasi yang berguna.
Operasi
tertentu berarti bahwa setiap instruksi ataupun perintah memberikan hasil
tunggal dan tertentu pula. Sehingga, perintah dalam algoritma dilaksanakan
dalam urutan tertentu. Selanjutnya, bila data yang digunakan benar, maka
algoritma akan selalu berhenti dengan memberikan informasi yang di harapkan.
Satu cara
pembuatan algoritma yang umum selalu
dimulai dengan pokok masalah dan diteruskan dengan pemecahan sub masalah / top down design, demikian seterusnya
hingga tingkat yang paling khas untuk suatu masalah. Agar tujuan pembuatan
program yang baik tercapai, maka algoritma pemrograman selalu dikaitkan
dengan :
1. kebenaran algoritma, yaitu bila program selesai maka hasilnya juga
benar.
2. efisiensi / complexity
ruang memori komputer dan waktu pemrosesan program.
Dalam
implementasi program, algoritma dapat
dipengaruhi oleh tersedianya struktur data yang didukung oleh piranti lunak
yang digunakan. Data struktur yang tersedia akan mempengaruhi efisiensi
pengkodean dan efisiensi waktu pemrosesan program. Tetapi harap diingat,
efisiensi dalam waktu proses tidak bererti efisien dalam ruang memori komputer,
demikian juga sebaliknya.
Dengan
majunya teknik piranti keras, untuk aplikasi tertentu, efisiensi algoritma
diharapkan tidak terlalu menjadi masalah, karena diharapkan komputer mampu
memproses lebih cepat dan memiliki ruang memori yang besar dengan harga yang
murah. Demikian juga dengan majunya teknik piranti lunak komputer, mungkin
sekali perencanaan dan pemrograman komputer menjadi lebih terpadu dan gampang,
karena dari algoritma bisa menjadi flow-chart
ataupun pseudocode.
Diagram Alir
Diagram
alir atau flow-chart adalah
representasi grafik langkah-langkah penyelesaian masalah, tugas , dan proses,
atau juga bisa untuk menggambarkan komponen-komponen sistem. Jadi flow-chart adalah representasi grafis algoritma ( program dan sistem ).
Representasi grafis yang digunakan berupa simbol-simbol khusus yang menyatakan
lojik daripada pengembangan proses program komputer. Dalam bentuk yang paling
sederhana, diagram alir yang menggambarkan sistem pemrosesan data, paling tidak
terdiri dari tiga blok yaitu pengambilan data, pemrosesan data, dan penayangan
keluaran informasi.
Gambar 4.
Diagram Alir Sederhana Hitungan Bunga Berganda
Diagram
alir pada gambar 4 diatas bisa dikembangkan lebih lanjut, misalnya untuk
menghitung apakah besarnya bunga masih memadai untuk suatu proyek tertentu
seperti contoh di gambar 6.
Ada dua
jenis diagram alir ; flow-chart system dan program
flow-chart. Flow-chart system
menggambarkan komponen dan alur daripada sistem. Sedangkan program flow-chart adalah gambaran grafik algoritma program, yang
digunakan untuk menggambarkan lojik dan urutan program, coba-coba alternatif
penyelesaian masalah, dan menjaga kesatuan alur program. Berikut dibrikan
gambar simbol diagram alir yang biasa digunakan.
PEMROGRAMAN TERSTRUKTUR
Yang
dimaksud dengan pemrograman terstruktur adalah metode pemrosesan data yang
terstruktur baik didalam analisa sistem, metode pemrograman, dan pengkodean
program.
Pemrograman
terstruktur ini terbukti memberikan cara yang baik dan efisien dalam
pemrograman komputer. Jadi merupakan langkah awal yang baik, baik pengguna
ataupun pemrogram. Metode ini berkembang selaras dengan berkembangnya bahasa
program prosedural seperti BASIC, FORTRAN, PASCAL, dan COBOL.
Prinsip Pemrograman
Untuk
memprogram terstruktur dengan membagi masalah besar menjadi sub masalah yang
lebih kecil, sementara juga tetap diperhatikan keterpaduan keseluruhan program,
maka ada beberapa prinsip pemrograman yang perlu diikuti sebagai berikut :
1. gunakan top-down design /
rancangan atas ke bawah
2. bagilah program ke dalam modul lojik yang sejenis
3. gunakan sub program untuk proses-proses sejenis yang sering
digunakan. Dalam beberapa bahasa pemrograman, sub program dikenal sebagai SUBROUTINE , PROCEDURES, FUNCTION. Sub
program yang memuat dokumentasi tujuan dari sub program dinamakan STUB
4. gunakan pengkodean terstruktur IF
– THEN, DO – WHILE, dan lainnya
5. hindari penggunaan pernyataan GOTO
bila tidak perlu
6. gunakan nama konstanta dan variabel bermakna / mnemonic names
7. buat dokumentasi yang akurat dan berarti.
Rancangan Atas ke Bawah
Mengkategorikan
dan membagi sulosi masalah dari yang besar menjadi bagian-bagian yang kecil,
atau dari atas ke bawah sangatlah menguntungkan dalam proses perencanaan solusi
masalah. Rancangan ini juga memudahkan pengkodean, pengetesan, koreksi, dan
dokumentasi program.
Tahapan dalam perancangan atas ke bawah adalah :
1. tentukan keluaran atau output yang diminta, masukan atau input yang
diperlukan, dan proses-proses utama yang diperlukan untuk transformasi data
2. membagi proses-proses utama ke dalam modul-modul fungsional
3. buat algoritma masing-masing modul, dari modul utama ke sub-sub
modul.
Setiap
modul dalam proses rancangan atas ke bawah biasanya dibatasi dalam isi maupun
batasan-batasan berikut :
1. setiap modul hanya memiliki satu masukan dan satu keluaran
2. setiap modul hendaknya hanya mewakili satu fungsi program.
Banyaknya
alat bantu yang digunakan untuk pembuatan rancangan atas ke bawah untuk
pemrograman komputer, yang akan dibahas yaitu diagram alir dan pseudocode.
Gambar 5. Simbol Diagram Alir Program dan Sistem
Keterangan :
Untuk Processing, Input / output, arah proses
sama dengan simbol diagram alir program.
Pseudocode
Pseudocode adalah ekspresi
lojik proses pemrograman dengan menggunakan ungkapan bahasa natural seperti
Jawa, Indonesia, Inggris dan lainnya. Ungkapan yang digunakan lebih menyerupai
perintah-perintah bahasa program, tetapi tanpa aturan bahasa program yang
mengikat, hanya kata kunci / key words dari proses – proses utama diusahakan
digunakan dalam pseudocode. Jadi pseudocode merupakan algoritma yang
ditulis dengan gaya bahasa pemrograman, tetapi dengan aturan yang longgar.
Umumnya,
pseudocode ditulis dengan dialek masing-masing bahasa pemrograman. Dengan
menggunakan pseudocode, pemrogram dapat menyatakan idenya dengan mudah,
natural, langsung pada proses dimaksud, dan dapat dengan mudah dikonversikan ke
dalam kode program.
Berikut ini adalah merupakan pseudocode dari diagram alir gambar 4.
BEGIN
Set bunga – r = 15 %
Set modal – p = Rp.
5.000.000
Set waktu – n = 5 tahun
Set harga awal c =
0
WHILE ( perolehan c
<= Rp.10.000.000 ) DO
Hitung
c = p ( 1 + r ) ^ n
Naikkan
r = r + 0.1 %
END
IF ( r <=
toleransi r max )
Tawaran pinjamam OK
ELSE TOLAK
END
Pengkodean Terstruktur
Dengan
bahasa pemrograman seperti BASIC,
FORTRAN, PASCAL dan C, misalnya bisa dibuat kode pemrograman yang
terstruktur dalam cara penulisan kode ataupun didalam struktur programnya
sendiri, yaitu menggunakan kontrol pemrograman yang terstruktur.
Penulisan
kode program terstruktur harus bisa menunjukkan alur pemrograman, dari program
utama ke sub program, alur percabangan, dan alur proses pengulangan. Dalam bahasa
pemrograman prosedural yang mutakhir seperti C misalnya, telah ada pembakuan
pengkodean program. Penulisan dengan pengaturan spasi, spasi kosong dan garis
kosong biasa digunakan untuk memisahkan antara nama program dan bagian dari
program.
Tiga dasar kontrol pemrograman terstruktur yang digunakan
adalah :
1. Struktur berurutan / sequence
structure
2. Structure seleksi / selection
structure, yaitu keputusan pencabangan proses berdasarkan kondisi tertentu.
Umumnya berbentuk IF- THEN - ELSE. Dalam pemakaian kontrol seleksi harus
hati-hati dalam menggunakan logika AND,
OR dan NOT
3. Struktur pengulangan / repetition,
loop , yaitu pengulangan proses selama kondisi kontrol pengulangan masih
dipenuhi. Umumnya berbentuk DO – WHILE – REPEAT, UNTIL, FOR, DO . yang perlu
diingat dalam proses pengulangan adalah kondisi awal dan akhir dari
pengulangan.
Gambar 6 menunjukkan contoh penggunaan ketiga kontrol program
diatas, yang juga merupakan gambaran diagram alir dari pseudocode pada bab
Pseudocode diatas.
Gambar 6. Contoh Penggunaan Struktur Kontrol
Pemrograman
Jenis Perintah
Pemrograman
Jenis-jenis
perintah untuk memprogram bergantung pada bahasa dan komputer yang digunakan
oleh pemrogram. Pada umumnya, perintah pemrograman dapat dipilahkan sebagai
berikut :
1.
specification instruction / perintah spesifikasi.
Untuk
menentukan media data yang akan digunakan, format record dan file, serta
alokasi penyimpanan.
2.
I / O instructions / perintah masukan atau keluaran
Transfer
data dan perintah antar Central Processing Unit dengan piranti masukan atau
keluaran.
3.
data movement instructions / perintah perpindahan data.
Meliputi
penyusunan dan pembuatan ulang data di dalam memori.
4.
arithmetic instructions / perintah aritmatika
Mengerjakan operasi matematik.
5.
logical instructions / perintah logik
Melakukan
perbandingan, pengetesan kondisi, dan kontrol proses percabngan seperti
ditunjukkan oleh diagram alir.
6.
control instructions / perintah kontrol
Memulai
dan mengakhiri program, mengganti urutan program melalui proses percabangan, dan
kontrol penggunaan sub program.
Sub Program
Semakin besar dan
beraneka informasi yang diperlukan, menjadi besar pula program yang harus
dibuat. Walaupun demikian, program yang besar tersebut masih bisa dibagi dalam
blok-blok fungsi tertentu yang dikenal sebagai modul, dan ada pula
proses-proses tertentu yang biasa sering dipakai. Maka, dalam memprogram
dikenalkan penggunaan sub program yang berfungsi sebagai modul ataupun fungsi
pemrosesan tertentu.
Pada
dasarnya ada dua jenis sub program, yaitu yang dibuat oleh pemrogram sendiri
dan yang telah disediakan oleh bahasa pemrograman. Sub program yang telah
disediakan bahasa pemrograman biasa disebut sebagai fungsi ( function ) atau subrutin ( subroutine ), penggunaannya harus
mengikuti aturan tertentu yang telah dibakukan dalam bahasa yang dipakai.
Sebaliknya, sub program yang dibuat oleh pemrogram semuanya harus ditentukan
oleh pemrogram sendiri.
Dengan
menggunakan sub program, maka proses pemrograman menjadi luwes dan alur lojik
program menjadi jelas. Pemakaian sub program sangat diperlukan dalam
pengembangan sistem pemrosesan terstruktur.
PEMERIKSAAN PENGETESAN DAN
KOREKSI PROGRAM
Pemeriksaan
kesalahan dan pengetesan program ( debugging
), dilanjutkan dengan koreksi program merupakan satu rangkaian kegiatan yang
tak terpisahkan dalam proses pemrograman. Kegiatan-kegiatan ini dimulai dari
awal perencanaan hingga pengkodean terakhir.
Berdasarkan
kesalahan-kesalahan yang ditemui pada waktu pengetesan program, koreksi program
diberikan. Pengetesan program dikerjakan untuk masing-masing modul ataupun
keseluruhan kesatuan program dengan menggunakan data pengetesan maupun data
asli.
Kesalahan Program
Kesalahan sistem
pengolahan data dengan komputer bisa dipilahkan sebagai kesalahan program
dan kesalahan sistem.
Kesalahan program dibagi menjadi :
-
kesalahan syntax
disebabkan
oleh pengkodean yang tidak mengikuti aturan penulisan bahasa ataupun kesalahan
pengorganisasian dan format data. Kesalahan ini langsung dideteksi oleh translator ( interpreter dan compiler )
dan relatif mudah membetulkannya.
-
kesalahan lojik program
disebabkan
kesalahan lojik dari program. Ini bisa terjadi karena salah dalam penggunaan
kondisi kontrol program, kesalahan data awal ataupun pemutakhiran / update data. Kesalahan lojik susah mendeteksinya
karena tidak terdeteksi oleh translator. Jadi pemrogram sendiri yang bisa
menelitinya.
Kesalahan sistem bisa terjadi dalam
pemakaian mesin yang berbeda untuk program yang sama, tetapi bisa juga karena
adanya kesalahan dalam sistem sendiri. Untuk kesalahan sistem harus diperiksa
spesifikasi dari sistem.
Pemeriksaan Structured
Walkthroughs
Structured walktrough adalah cara yang
baik dalam pemrograman terstruktur untuk merencana, mengkode, maupun pengetesan
program. Dengan cara ini diusahakan agar kesalahan bisa terdeteksi sedini
mungkin. Kesalahan yang kecil dan dalam modul yang lebih sederhana akan lebih
mudah mengontrolnya daripada kesalahan dalam gabungan program besar.
Inti pelaksanaan Structured walktrough adalah konsep team programming, yaitu cara proses
pemrograman oleh beberapa pemrogram yang dilakukan bersamaan dengan dipimpin
oleh seorang kepala pemrogram. Program yang telah dibuat oleh seorang pemrogram
seawal mungkin diperiksa oleh pemrogram yang lain dalam interval tertentu.
Sehingga kesulitan melihat kesalahan sendiri bisa dibantu oleh pemrogram yang
lainnya.
Pengetesan
Program yang telah
diperiksa dengan baik adalah program yang telah di tes dengan data pengetesan
yang disiapkan sebelumnya dan memberikan hasil seperti yang diharapkan. Data
tes yang digunakan harus menggambarkan seluruh kemungkinan dalam pemrosesan
data, termasuk data yang salah.
Dalam pemrograman
terstruktur, modul utama harus di tes terlebih dahulu. Adapun sub modul yang
belum dikerjakan dibuat modelnya dahulu. Selanjutnya bila sub modul telah di
tes, maka modul utama harus di tes ulang bersama sub modul yang telah selesai
dikerjakan. Pengetesan sistem dikerjakan bila kesemuanya telah selesai di tes.
Pengetesan terakhir dengan data asli biasa dikenal dengan verifikasi program,
dan dilakukan dalam periode waktu tertentu.
DOKUMENTASI PROGRAM
Dokumentasi
pemrograman harus dibuat sejak awal perencanaan hingga selesainya pengetesan
sistem. Ada dua macam dokumentasi, yaitu dokumentasi dalam program dan
dokumentasi dalam bentuk manual. Pada dasarnya, dokumentasi program adalah
diskripsi lengkap perencanaan dan isi modul ataupun instruksi program.
Program
dokumentasi sangat diperlukan sekali untuk menganalisa kesalahan, memodifikasi
program, atau pemrograman ulang bila terjadi sebagian program hilang. Setiap
ada perubahan dalam program harus selalu ada dokumennya, menunjukkan versi
daripada program.
Dokumentasi program meliputi
:
1. spesifikasi program : menjelaskan proses apa yang harus dilakukan
program
2. deskripsi program : meliputi diagram alir, list program, narasi proses yang diolah dalam program.
3. Dokumen verifikasi : meliputi list
data tes dan hasil output-nya, dump
dari memori, dan dokumen pengetesan lainnya.
4. Dokumen pengoperasian : mencakup instruksi operasi yang menjelaskan
tindakan-tindakan yang harus dikerjakan oleh operator selama berlangsung -nya
proses program komputer.
5. Dokumen pemeliharaan : deskripsi lengkap mengenai perubahan program
setelah program diterima sebagai program yang operasional.
PEMELIHARAAN PROGRAM
Pemeliharaan
program berawal setelah program operasional diterima. Pemeliharaan program
meliputi revisi program, dan sistem yang dikerjakan untuk mengembangkan
pemutakhiran, ataupun koreksi yang perlu. Jadi menunjukkan versi program dan
kemampuan mutakhir sistem.
Pemeliharaan
program dan sistem komputer lebih mahal dan lebih sulit dari awal
pengembangannya. Oleh karena itu, untuk sistem dan aplikasi yang besar biasanya
ada pemrograman khusus untuk pemeliharaan komputer ini. Dengan menggunakan
pemrograman terstruktur, diharapkan pemeliharaan lebih mudah dilakukan asalkan
dokumentasi program juga telah dibuat dengan baik dan benar.
Comments
Post a Comment