Spesifikasi Program
copyright@Ihsan Jatnika
1
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 2
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
Efisiensi
Waktu
Biaya
program
program
pengembangan (pembuatan) program
pengembangan program
Dokumentasi
program 3
Spesifikasi Terinci
Tiga area spesifikasi yang penting :
Spesifikasi
input
Spesifikasi output
Spesifikasi pemrosesan
4
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 5
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
6
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 7
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
8
Flowchart Program
Flowchart program garis besar
Merepresentasikan
(mewakili) operasi-operasi komputer sebenarnya secara garis besarnya saja
Flowchart program terinci
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 9
Enter
Start Input jam kerja
No
Jam kerja > 8 ?
Yes
Hitung Biaya buruh
Cetak biaya buruh
Stop Flowchart program garis besar
Biaya Å 8 x 8500 + (jam kerja – 8) x 17000
Biaya Å jam kerja x 8500
Exit Flowchart program terinci
10
Diagram Blok Struktur Program Ada berbagai ragam diagram blok struktur program Didasarkan pada Nassi Shneiderman Structured Flowcharts (NSSF)
a1
a1
While c
a2
a2
a1
a3
a3
a2
sequence
Until c
a3 pengulangan ‘while’
pengulangan ‘repeat’
true
a
c
a1
11
false
a2
If c then a1 else a2 looping Select case case1
case2 case3
a1
else
a2 a1
a2
a3
Struktur case
a4
a3
a4
a5 Setelah a1, a2-a3-a4 dijalankan secara berturut2 12 diikuti a5
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 13
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
14
Pohon Keputusan Aksi
Kondisi Catatan kredit baik
Diskon 50%
Catatan kredit tdk baik
Kebijakan supervisor
Catatan kredit baik
Diskon 30%
Catatan kredit tdk baik
Kebijakan supervisor
>= Rp. 500.000
< Rp. 500.000
15
Tabel Keputusan CONDITIONS
RULES 1
2
3
4
>= Rp. 500.000 ?
Y
Y
N
N
Catatan Kredit baik ? ACTIONS
Y
N
Y
N
Diskon 5 % Diskon 3 % Keputusan Y = YES Supervisor
X X X
N = NO
X 16