Saturday, March 4, 2017

Prinsip dan Tujuan Pemrograman Terstruktur

Ide Pemrograman Terstruktur pertama kali diungkapkan oleh Prof. Edsger Wybe Djikstra dari Universitas Eindhoven sekitar tahun 1965. Beliau mengusulkan bahwa pernyataan GOTO seharusnya tidak digunakan dalam pemrograman terstruktur.

Ide tersebut ditanggapi oleh HD. Millis bahwa pemrograman terstruktur tidak hanya dihubungkan dengan tidak digunakannya pernyataan GOTO, tetapi oleh strukturnya. Struktur programlah yang menentukan program yang terstruktur menggunakan pernyataan GOTO atau tidak.

Pemrograman terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program.

Prinsip : jika suatu proses telah sampai pada suatu titik tertentu, maka proses selanjutnya tidak boleh melompat ke baris sebelumnya kecuali untuk proses berulang.

Tujuan :
1.    Meningkatkan kehandalah program
2.    Program mudah dibaca dan ditelusuri
3.    Menyederhanakan kerumitan program
4.    Pemeliharaan program
5.    Meningkatkan prduktivitas pemrograman

Ciri-ciri :
1.    Mengandung teknik pemecahan yang tepat dan benar
2.    Mengandung algoritma pemecahan masalah yang sederhana, standar dan efektif
3.    Penulisan program memiliki struktur logika yang benar dan mudah dipahami
4.    Program hanya terdiri dari tiga struktur dasar yaitu struktur berurutan, struktur seleksi dan struktur perulangan
5.    Menghindar penggunaan pernyataan GOTO
6.    Biaya pengujian yang dibutuhkan rendah
7.    Memiliki dokumentasi yang baik
8.    Biaya perawatan dan dokumentasi yang dibutuhkan rendah

STANDAR PROGRAM
Suatu program yang baik dibutuhkan suatu standar  sehingga akan memudahkan pemrogram dalam merancang dan merawat program, yaitu ;
1.    Pemecahan Masalah, terdiri dari :
a.    Teknik TOP-DOWN
Suatu masalah yang besar atau komplek akan dibagi-bagi ke dalam beberapa kelompok masalah yang lebih kecil dan dianalisa sehingga apabila masih memungkinkan untuk dibagi lagi akan dijadikan subbagian lalu disusun langkah-langkah untuk menyelesaikan masalah secara detail
b.     Teknik BOTTOM-UP
Pemecahan masalah dilakukan dengan menggabungkan prosedur-prosedur yang menjadi suatu kesatuan program guna menyelesaikan masalah tersebut

2.    Penyusunan Program, kriteria yang harus diperhatikan yaitu :
a.     Kebenaran Logika dan Penyusunan
Program yang disusun harus memiliki kebenaran logika dalam pemecahan masalah dan penulisan. Program harus memiliki ketepatan, ketelitian dan kebenaran sehingga hasilnya dapat dipercaya.
b.     Waktu Penulisan dan Eksekusi Program
Program harus menentukan batas waktu minimum dalam penulisan program, dari awal hingga siap dioperasikan. Yag harus diperhatikan adalah bahasa pemrograman yang dipilih, algoritma yang disusun dan perangkat keras yang digunakan.
c.     Perawatan dan Pengembangan Program
Penyusunan program harus mempunyai sifat dasar yaitu kesederhanaan dan kejelasan dari program yang nantinya akan dikembangkan.
d.     Portabilitas
Bahasa pemrograman yang baik haruslah bisa dipakai pada berbagai tipe komputer yang berbeda-beda dan berbagai jenis sistem operasi

3.    Algoritma Pemrograman yang baik, dengan ciri-ciri :
a.     Memiliki logika perhitungan atau metode yang tepat dalam memecahkan masalah
b.     Menghasilkan output yang tepat dan benar dalam waktu yang singkat
c.     Ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak memiliki arti ganda
d.     Ditulis dengan format yang mudah dipahami dan diimplementasikan ke dalam bahasa pemrograman
e.     Semua operasi yang dibutuhkan terdefinisi dengan jelas
f.      Semua proses harus selalu berakhir setelah sejumlah langkah dilakukan

Untuk membuat suatu program yang besar dan kompleks, pemrogram membutuhkan beberapa tahapan-tahapan yang sistematis dan terpadu, yaitu :
1.    Definisi Masalah
2.    Analisis Kebutuhan
3.    Desain Algoritma
4.    Pengkodean
5.    Bahasa Pemrograman
6.    Testing dan Debugging
7.    Dokumentasi
8.    Pemeliharaan

Keterangan :
1.     Definisi Masalah
Pendefinisian masalah untuk mendapatkan pemahaman tentang permasalahan yang ada, sehingga akan diperoleh asumsi yang benar untuk memecahkan masalah dan menentukan batasan agar masalah menjadi tak terbatas.

2.     Analisis Kebutuhan
Digunakan untuk menentukan spesifikasi fungsi, kemampuan dan fasilitas program dari program yang akan dibuat, yang bermanfaat sebagai dasar dari evaluasi setelah pembuatan program selesai.

3.     Desain Algoritma
Desain algoritma dibuat dengan tujuan untuk menyelesaikan permasalahan. Algoritma yang dibuat tidak langsung jadi dan harus dikaji terus menerus sehingga diperoleh algoritma yang paling lengkap, tepat, benar dan relevan. Algoritma harus memiliki kebenaran secara logika sebelum siap untuk diimplementasikan dalam bentuk program

4.     Pengkodean
Pengkodean menekan pada kesederhanaan dan kejelasan, meliputi :
a.    Dokumentasi Kode
b.    Deklarasi Data
c.    Penyusunan Perintah
d.    Input atau Output
e.    Efisiensi

5.     Bahasa pemrograman
      Dalam menterjemahkan desain ke dalam bahasa pemrograman aktual, sebagian besar kesulitan telah harus sudah terpecahkan pada tahap sebelumnya sehingga pemrogram bebas untuk mencurahkan perhatian penuh pada pembuatan program.

Karakteristik dari bahasa pemrograman mempunyai pengaruh yang penting terhadap berhasil tidaknya suatu program yang akan di buat. Tahap selanjutnya adalah pemilihan bahasa pemrograman yang berfungsi sebagai media untuk membuat program dan memahami serta sebagai alat komunikasi antara pemrogram dan komputer.

Kriteria yang digunakan untuk mengevaluasi pemilihannya adalah :
a.    Bidang aplikasi yang sedang dikerjakan
b.    Kekomplekskan algoritma dan perhitungan
c.    Lingkungan dimana perangkat lunak akan diterapkan
d.    Pengetahuan staf akan bahasa pemrograman
e.    Ketersediaan kompiler yang baik

6.     Testing dan Debugging
Testing adalah menguji program sampai dipenuhi  bebas error lewat bermacam-macam kondisi atau dengan input yang hasilnya dapat diprediksi. Testing tidak dapat secara absolut bisa yakin bahwa program adalah benar karena untuk program besar bisa jadi setelah dipakai sekian lama baru ditemukan error.

Debugging adalah mengoreksi error yang terdeteksi meliputi menetapkan lokasi kode yang error dan mengoreksinya.

7.     Dokumentasi
Merupakan informasi dan gambaran tambahan yang sangat membantu untuk memahami sebuah kode yang diberikan dengan tujuan untuk menjadi pedoman dan penjelasan bagi pemakai.

Dokumentasi terbagi menjadi :
a.    Dokumentasi internal, merupakan bagian kode dan merupakan sebuah eksplanasi dari berbagai aspek lewat komentar
b.    Dokumentasi eksternal, dalam bentuk manual dan catatan-catatan penting tentang program

Sebuah perangkat lunak yang akan digunakan diharapkan mempunyai jangka hidup yang panjang dan benar-benar memerlukan dokumentasi yang intensif jika perangkat lunak berubah maka dokumentasi juga harus direvisi agar dapat merefleksikan modifikasi yang dibuat.

8.     Pemeliharaan
Digunakan untuk menjabarkan aktivitas dan analisis sistem pada saat perangkat lunak telah dipergunakan oleh pemakai.

Aktivitas yang terjadi pada fase pemeliharaan antara lain :
a.    Penambahan atau peningkatan atau juga perbaikan untuk perangkat lunak
b.    Adaptasi perangkat lunak dengan lingkungan mesin yang baru
c.    Perbaikan permasalahan yang timbul, meliputi aktivitas pembenaran kesalahan yang timbul setelah perangkat lunak digunakan oleh pemakai.

Aktivitas pemeliharaan biasanya akan menghabiskan biaya yang besar dari seluruh anggaran pengembangan atau pembuatan perangkat lunak sehingga perangkat lunak yang dihasilkan dapat diandalkan dan mudah dalam pemeliharaannya.

Pemeliharaan perangkat lunak dapat dibedakan menjadi :
a.     Corrective Maintenance
Terjadi pada saat perangkat lunak dipakai dan hasil yang didapat oleh pemakai tidak sesuai, biasanya timbul pada saat keluaran yang tidak sesuai
b.     Adaptive Maintenance
Terjadi karena adanya perkembangan dari perangkat lunak atau perangkat keras sehingga memerlukan modifikasi dari perangkat lunak yang telah dibuat
c.     Prefective Maintenance
Terjadi pada saat perangkat lunak yang telah dibuat, dilakukan pengujian dan kemudian digunakan oleh pemakai lalu timbul permintaan tambahan fungsi sesuai dengan keinginan pemakai
d.     Preventive Maintenance
      Terjadi seiring dengan perkembangan dari perangkat lunak atau perangkat keras di masa mendatang, misalnya saja penambahan fungsi-fungsi atau melengkapi fungsi yang ada

0 komentar:

Post a Comment