Spesifikasi Program
Pendahuluan Programer bekerja berdasarkan spesifikasi program Spesifikasi program akan mendefinisikan atau menentukan input, pemrosesan, dan output yang diperlukan. Spesifikasi yang baik biasanya menetapkan pemrosesan apa yang diperlukan dengan cara memberikan hubungan (menunjukkan keterkaitan) yang pasti antara output dan input yang dihasilkan dari pemrosesan itu Spesifikasi program menerangkan sejumlah metode dan notasi yang digunakan untuk menetapkan (menspesifikasikan) program apa yang perlu dilakukan dan sejauh mana metode dan notasi tersebut diperlukan untuk melakukan program
Persyaratan / Keperluan Umum Beberapa tujuan desain umum bisa dinyatakan secara eksplisit sebagai bagian dari spesifikasi program Persyaratan / keperluan desain program terbagi ke dalam kategori umum berikut : Gaya desain program dan presentasinya Reliabilitas program Efisiensi program Waktu pengembangan (pembuatan) program Biaya pengembangan program Dokumentasi program
Spesifikasi Terinci Tiga area spesifikasi yang penting : Spesifikasi input Spesifikasi output Spesifikasi pemrosesan
Spesifikasi Input Dua pertimbangan utamanya adalah definisi (penetapan) : Item data yang akan dimasukkan (input) Jenis data Nilai yang valid untuk item data tersebut Tindakan yang akan dilakukan jika pemakai berusaha memasukkan data invalid Format yang akan digunakan untuk memasukkan nilai-nilai data input Layout layar untuk input screen layout charts
Spesifikasi Output Pertimbangan utamanya adalah definisi (penetapan) : Data apa yang akan di-output (dihasilkan) Bagaimana ia diperoleh dari data input Kapan ia akan dihasilkan Bagaimana bentuk hasilnya nanti Format yang digunakan data yang akan di-output Print layout chart
Spesifikasi Proses Harus memberikan definisi presisi tentang pemrosesan apa yang diperlukan dengan memberikan (gambaran) hubungan antara data input dan data output. Beberapa cara standar penetapan (penspesifikasian) pemrosesan : Bahasa inggris Pseudo-code Flowchart Diagram blok struktur program Diagram warnier Tabel keputusan dan pohon keputusan
Flowchart Program Cara untuk menunjukkan, dalam bentuk diagram, rangkaian langkah dalam menjalankan suatu tugas pemrograman Flowchartnya program umumnya dihasilkan dalam dua tahap yang mewakili tingkat kerincian yang berbeda : Flowchart program garis besar Flowchart program terinci Merepresentasikan (mewakili) operasi-operasi komputer sebenarnya secara garis besarnya saja Terbuat dari chart faris besar dan akan berisi langkah-langkah komputer terinci yang diperlukan untujk menjalankan tugas tertentu. Dari chart inilah programmer membuat atau menyiapkan lembaran pengkodean program
Enter Start Yes No Stop Exit Flowchart program Flowchart program Jam kerja > 8 ? Biaya jam kerja x 8500 8 x 8500 + (jam kerja – 8) x 17000 No Yes Exit Start Input jam kerja Hitung Biaya buruh Cetak biaya buruh Stop Flowchart program garis besar Flowchart program terinci
Diagram Blok Struktur Program Ada berbagai ragam diagram blok struktur program Didasarkan pada Nassi Shneiderman Structured Flowcharts (NSSF) a1 a2 a3 a1 a2 a3 While c a1 a2 a3 Until c sequence pengulangan ‘while’ pengulangan ‘repeat’
dijalankan secara berturut2 diikuti a5 Struktur case true false a1 a2 a If c then a1 else a2 looping Select case a1 case1 case2 case3 else a2 a3 a4 a1 a2 a3 a4 a5 Setelah a1, a2-a3-a4 dijalankan secara berturut2 diikuti a5 Struktur case
Tabel dan Pohon Keputusan Tabel keputusan digunakan untuk menganalisa suatu masalah Memperlihatkan kondisi-kondisi yang berlaku dalam masalah tertentu, dan menunjukkan tindakan-tindakan yang diambil akibat dari segala kombinasi dari kondisi-kondisi yang ada Pohon keputusan adalah representasi grafis dari tabel keputusan Untuk membantu pengkonstruksian tabel keputusan
Contoh Kebijakan pemberian diskon: Segala pesanan sebesar Rp. 500.000 atau lebih dari pelanggan yang baik catatan kreditnya diberi diskon sebesar 5%. Jika kurang dari Rp. 500.000 diberi diskon 3%. Kondisi-kondisi lainnya harus dimintakan keputusan dari supervisor
Pohon Keputusan Aksi Kondisi Catatan kredit baik Diskon 50% >= Rp. 500.000 Catatan kredit tdk baik Kebijakan supervisor Catatan kredit baik Diskon 30% < Rp. 500.000 Catatan kredit tdk baik Kebijakan supervisor
Tabel Keputusan CONDITIONS RULES 1 2 3 4 >= Rp. 500.000 ? Y N Catatan Kredit baik ? ACTIONS Diskon 5 % X Diskon 3 % Keputusan Supervisor Y = YES N = NO