FONDASI PEMROGRAMAN & STRUKTUR DATA #1 - 2 Program dan Langkah-langkah Pengembangan Program
Ciri-ciri Program Baik Maintainability Correctness Reusability Reliability Portability Efficiency
Maintainability Kemudahan untuk dilakukan perubahan agar memenuhi kebutuhan/persyaratan baru atau untuk memperbaiki kekurangan. Program yang dirancang dengan baik harus mampu mengakomodasi perubahan yang diperlukan di masa depan. Untuk memenuhi karakteristik maintainability ini maka program harus memiliki dokumentasi program yang baik.
Correctness Suatu tingkat di mana program memenuhi kebutuhan/persyaratan yang ditentukan. Program yang dirancang dengan baik harus memenuhi semua kebutuhan/persyaratan yang diminta/ditetapkan, selain itu program harus berjalan sesuai yang diharapkan. Untuk memenuhi karakteristik Correctness ini maka dalam merancang program dimulai dengan melakukan melakukan user requirement, Selain itu program juga harus diuji untuk memastikan bahwa program berjalan sesuai dengan yang diharapkan.
Reusability Kemudahan dimana program dapat digunakan kembali dalam mengembangkan perangkat lunak lainnya. Program yang dirancang dengan baik harus dapat digunakan oleh program lain untuk digunakan ulang (reuse). Untuk memenuhi karakteristik reusability ini maka dalam membuat program harus menerapkan konsep modular dan berbasis object.
Reliability Kehandalan program terhadap kegagalan yang mungkin terjadi pada kondisi operasi normal dan suatu kondisi yang dimungkinkan terjadi. Program yang dirancang dengan baik harus sudah mengantisipasi kemungkinan-kemungkinan kegagalan yang dapat terjadi pada suatu kondisi tertentu. Untuk memenuhi karakteristik reliability ini maka dalam membuat program harus mempertimbangkan beberapa kondisi yang memungkinkan terjadinya kegagalan (spt: human error, dsb) .
Portability Kemampuan program untuk digunakan pada berbagai konfigurasi komputer. Program yang dirancang dengan baik harus sudah mempertimbangkan portabilitas (kemampuan program untuk digunakan pada komputer lain dengan konfigurasi yang berbeda) Untuk memenuhi karakteristik portability ini maka dalam membuat program harus mengarah pada konsep multiplatform.
Efficiency Kemampuan program untuk memenuhi tujuannya tanpa pemborosan sumber daya. Program yang dirancang dengan baik akan efisien dalam penggunaan sumber daya (seperti: ram, bandwidth, dsb) Untuk memenuhi karakteristik Efficiency ini maka dalam membuat program harus mempertimbangkan untuk menggunakan sumber daya se-efisien mungkin (seperti; alokasi variable, metode input, dsb).
Langkah–langkah Pengembangan Program Definisikan masalah Rancang outline pemecahan masalah Buat algoritma berdasarkan outline pemecahan masalah Test algoritma Coding Execute Dokumentasi dan pemeliharaan
1. Definisi Masalah Keluaran (Output) Masukan (Input) Proses (Proces) Contoh tabel definisi masalah: Input Process Output
Contoh Definisi Masalah Diketahui kebutuhan untuk membuat program bagi perhitungan: C = A + B selanjutnya Z = X * C Program akan membaca nilai A dan nilai B, selanjutnya melakukan perhitungan untuk mendapatkan nilai C dan menampilkan nilai C. Selanjutnya program membaca nilai X dan melakukan perhitungan untuk mendapatkan nilai Z dan menampilkan nilai Z. Input Process Output Baca nilai A Baca nilai B C = A + B Tampilkan nilai C Baca nilai X Z = X * C Tampilkan nilai Z A, B, X C, Z
2. Outline Pemecahan Masalah Buat langkah – langkah proses Buat rincian/detail Proses Tentukan Variable dan/atau record Tentukan struktur kontrol (pengulangan, kondisi, dsb) Buat logika ‘Mainline’ (logika utama)
Contoh Outline Pemecahan Masalah Definisi Masalah Outline Pemecahan Masalah Input Process Output A, B, X Baca nilai A Baca nilai B C = A + B Tampilkan nilai C Baca nilai X Z = X * C Tampilkan nilai Z C, Z Deklarasi variable A Deklarasi variable B Deklarasi variable C Deklarasi variable X Deklarasi variable Z Tampilkan tampilan untuk input A Baca nilai A Tampilkan tampilan untuk input B Baca nilai B C = A + B Tampilkan nilai C Tampilkan tampilan untuk input X Baca nilai X Z = X * C Tampilkan nilai Z
See You Next Session Thanks