1. STRUCTURED ENGLISH (SE)
Structured English (SE) adalah peralatan pengembangan system yang menggunakan struktur bahasa inggris dan mirip bahasa pemrograman. SE merupakan alat yang efisien untuk menerangkan algoritma dalam bentuk narasi bukan dalam bentuk grafik dan mirip dengan pseudocode. Karena kemiripan mereka, SE dan pseudocode sering tertukar.
Selain kemiripan yang ada, SE dan pseudocode memiliki perbedaan dalam fungsinya. SE digunakan untuk komunikasi antara perancang dengan pemakai dalam menjelaskan algoritma, sedangkan pseudocode digunakan untuk komunikasi antara perancang dengan programmer.
SE sering digunakan dengan DFD untuk mendokumentasikan proses-proses yang ada dalam system. Macam-macam level DFD menerangkan bahwa pemrosesan merupakan teknik yang diaplikasikan dari atas-ke-bawah (top-down). Pada beberapa point, teknik grafik DFD kurang efektif jika dibandingkan dengan teknik narasi, untuk menutup ketidak-efektifan ini maka SE harus diperkenalkan.
Petunjuk dalam membuat Structured English
SE bukan merupakan alat standar pengembangan system. Tidak ada ketentuan-ketentuan tetap yang harus diikuti oleh pemakai alat ini. Meskipun demikian, ada sejumlah ketentuan yang membedakan SE dengan alat narasi formal seperti pseudocode.
Ketentuan-ketentuan adalah :
1. Gunakan hanya tiga bentuk pemrograman terstruktur, sepeti urutan seleksi/kondisi, dan perulangan/iterasi
2. Gunakan kata kerja bila menerangkan tiap langkah pengolahan 3. Tambahkan kata kerja dengan satu atau lebih objek bila perlu
4. Gunakan nama-nama data yang telah didefinisikan dalam kamus data. Nama-nama ini dapat berupa alur data, data store, struktur data atau elemen data.
6. Indent untuk menunjukkan struktur system secara hirarki. Kata-kata pada level hirarki yang sama harus diindentkan dengan jumlah spasi yang sama.
7. Bila dokumentasi dibagi ke dalam beberapa modul, gunakan baris pertama masing-masing modul untuk label pengindentifikasi dan berikan baris kosong diantara modul.
8. Tiap modul harus hanya memiliki point entry dan exit tunggal.
Bila pembuatan SE dilakukan dengan mengikuti ketentuan-ketentuan di atas, maka SE yang akan terbentuk semakin mudah dimengerti dan mudah dikomunikasikan dengan profesional system lainnya.
Contoh Pemakaian Petunjuk Dalam Membuat Structured English
Sub bab ini merupakan beberapa contoh bagaimana petunjuk pembuatan SE diimplementasikan.
Kata Kerja dan Objek
Umumnya entri-entri yang ada dimulai dengan kata kerja seperti READ,COMPUTE atau WRITE.
Ada dua entri yang hanya akan terdiri dari satu kata kerja dan tidak akan membutuhkan suatu objek, yaitu START dan STOP. Gunakan entri START pada awal dokumentasi system dan STOP pada akhir logika. Akhir logika mungkin tidak sama seperti akhir fisik, seperti yang akan dilihat kemudian.
Beberapa entri akan membutuhkan satu objek tunggal, seperti READ, RECORD PENGGAJIAN. Ada juga beberapa entri yang membutuhkan banyak objek, seperti COMPUTE GAJI-POKOK,UANG-LEMBUR,GAJI-KOTOR.
Dalam contoh-contoh ini, tanda “-“ diikutsertakan dalam nama-nama data sesuai dengan bagaimana nama-nama tersebut didefinisikan dalam kamus data. Karakter-karakter lainnya dapat juga digunakan, seperti titik atau garis bawah.
Bentuk pemrograman terstruktur
Struktur urutan. Bila struktur urutan didokumentasikan, entri-entri dituliskan pada margin yang sama satu sama lain, misalkan :
READ
Perlu diingat bahwa IF dan END dituliskan pada margin yang sama Contoh :
IF (JAM = or < 40) THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA END IF
Dari contoh di atas terlihat bahwa kondisi ditandai dengan tanda kurung
Struktur Pilihan – IF-THEN-ELSE Gunakan format berikut untuk situasi IF-THEN-ELSE. Format ini adalah :
IF (kondisi)
Perlu diingat bahwa THEN dan ELSE dan aksi benar dan salah ditulis pada margin yang sama. Contoh struktur isi adalah sebagai berikut :
IF (JAM =or < 40) THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA ELSE
COMPUTE PEMBAYARAN-KOTOR = (TARIF-UPAH . 40) + ((JAM- KERJA . 40) . TARIF-UPAH . 1,5)
Dan contoh diatas, terlihat bahwa asterisk atau “.” Mewakili operasi perkalian. Pada SE sintaks pemrograman tidak perlu selalu diikuti, sehingga lambang perkalian “.” Dapat diganti dengan “x”. Jadi contoh diatas dapat diubah penulisannya dengan “Tarif-upah x Jam-kerja”. Perlu diingat bahwa tanda kurung yang diberikan untuk
mengendalikan perhitungan sama dengan tanda kurung yang digunakan dalam kode program. Begitu juga dengan baris kedua dari statement COMPUTE ditulis lebih masuk ke dalam, teknik ini disarankan untuk digunakan bagi entry-entry yang panjang.
Untuk struktur pilihan, lebih baik mengikuti format seperti yang ditampilkan pada Gambar 1
IF (kondisi-1)
THEN
aksi-1
ELSE
IF (kondisi-2)
THEN
aksi-2
ELSE
aksi-3
END IF
END IF
Gambar 1. Format Entry IF
Struktur Perulangan – DO WHILE, Bila pendokumentasian struktur perulangan dilakukan format DO WHILE akan dapat dilihat seperti format dibawah :
DO WHILE (kondisi) Tindakan END DO
DO WHILE (masih ada record gaji) COMPUTE GAJI KOTOR
COMPUTE PAJAK PENDAPATAN COMPUTE GAJI BERSIH
END DO
Struktur Perulangan – DO UNTIL. Format DO UNTIL akan dapat dibuat seperti format di bawah ini :
DO UNTIL (kondisi) Tindakan END DO
Contoh berikut adalah suatu model matematika yang mengaktifkan file persediaan dan mencetak jumlah stock tiap hari sampai jumlah hari yang telah ditentukan tercapai.
DO UNTIL (JUMLAH.HARI = BATAS.HARI)
READ STOCK.AWAL,PEMBELIAN,PENJUALAN
COMPUTE STOCK.AKHIR = STOCK.AWAL +PEMBELIAN-PENJUALAN WRITE STOCK.AWAL,PEMBELIAN,PENJUALAN,STOCK.AKHIR
END DO
Struktur Perulangan – for. Format struktur perulangan FOR dapat dilihat seperti format di bawah ini ;
FOR tiap-item Tindakan
Contoh di bawah adalah contoh untuk mencetak slip gaji untuk tiap record pegawai.
FOR tiap-record-pegawai
PERFORM Cetak-slip-gaji
Dari contoh-contoh di atas terlihat bahwa hampir semua kata menggunakan huruf besar, hal ini karena banyak dan kata-kata tersebut merupakan nama –nama record atau elemen data, atau kata-kata yang merupakan sintaks dalam bahasa pemrograman. Contoh pendokumentasian yang menggunakan kata-kata huruf kecil dapat dilihat pada gambar 2.
Dari gambar 2 terlihat bahwa kata-kata yang ditulis dengan huruf kecil adalah kata-kata yang bukan merupakan nama-nama data ataupun sintaks dalam bahasa pemrograman.
Pembuatan SE untuk suatu program atas system lebih baik dibagi ke dalam beberapa modul. Gambar 3 menggambarkan teknik pembuatan SE ke dalam modul. Tiap modul diberi nama dan antara modul satu dengan yang lain dipisahkan dengan satu baris kosong. Contoh pada gambar 3 memasukkan logika yang digunakan untuk menghitung komisi dari salesman-salesman.
Perlu diingat bahwa format yang ada pada gambar 3 mengikuti pemrograman terstruktur dengan modul utama adalah Proses-data-penjualan.
Gambar 2.
Contoh penggunaan kata-kata dengan huruf kecil
DO WHILE (masih ada record PESANAN PENJUALAN) IF (data salah)
THEN
IF (dapat diperbaiki) THEN
Buat perbaikan ELSE
Kembali ke pelanggan END IF
Gambar 3. SE untuk program perhitungan komisi
2. PSEUDOCODE
Pseudocode merupakan suatu alternative dari SE dan mirip dengan beberapa kode pemrograman, seperti COBOL, PL\1, Fortran, PASCAL. Dengan demikian mudah bagi para programmer untuk menggunakan dan mengerti pseudocode, tetapi pseudocode tidak cocok bagi sesorang yang bukan programmer. Apabila SE digunakan, beberapa rincian seperti pembukaan dan penutupan file-file, pemberian
START
Pemberian harga awal
TOTAL.PENJUALAN, TOTAL.KOMISI = 0 Proses data penjualan
DO UNTIL (akhir file) PERFORM Baca-data PERFORM Proses-data PERFORM Cetak-data END DO
Total akhir
PRINT TOTAL.PENJUALAN, TOTAL.KOMISI STOP
Baca-data
READ RECORD PENJUALAN Proses-data
IF (JUMLAH.PENJUALAN > 1000000) THEN
KOMISI = 100000 + (JUMLAH PENJUALAN – 1000000) . 0,15 ELSE
KOMISI = JUMLAH.PENJUALAN . 0,10 END IF
Akumulasikan TOTAL.PENJUALAN, TOTAL.KOMISI Cetak-data
harga awal, atau pemakaian flag tidak termasuk dalam bentuk SE, sedangkan pseudocode mengikutsertakan semua hal tersebut.
Seperti halnya SE, pseudocode juga tidak memiliki standar penulisan dan memiliki 3 bentuk pemrograman terstruktur, seperti urutan, seleksi/kondisi dan perulangan/iterasi.
Struktur urutan sintak merupakan kumpulan berbagai pernyataan instruksi input/output yang secara implisit diterapkan dalam pseudocode, misalkan :
READ RECORD PENJUALAN COMPUTE KOMISI
WRITE PENJUALAN, KOMISI
Struktur Pilihan – IF-THEN. Format struktur pilihan dapat dituliskan sebagai berikut : IF (kondisi) THEN
Tindakan ENDIF
Perlu diingat bahwa IF dan END dituliskan pada margin yang sama, contoh : IF (JAM = or < 40) THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH – JAM-KERJA ENDIF
Dari contoh di atas terlihat bahwa kondisi ditandai dengan tanda kurung
Struktur Pilihan – ELSE. Gunakan format berikut untuk situasi IF-THEN-ELSE. Format ini adalah :
IF (kondisi) THEN
Tindakan bila kondisi benar ELSE
Tindakan bila kondisi salah ENDIF
Contoh struktur ini adalah sebagai berikut : IF (JAM = or < 40) THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA ELSE
COMPUTE PEMBAYARAN-KOTOR = (TARIF-UPAH. 40) + ((JAM-KERJA – 40) . TARIF-UPAH . 1,5)
Dari format dan contoh struktur seleksi di atas terlihat bahwa struktur seleksi dimulai dengan statemen IF dan diakhiri dengan statemen THEN.
Struktur Pilihan – CASE. Statemen CASE dapat digunakan bila suatu masalah melibatkan suatu seleksi dari beberapa langkah pilihan. Bentuk umum statemen CASE adalah sebagai berikut :
SELECT keadaan
CASE (nilai 1) PERFORM tindakan 1 CASE (nilai 2) PERFORM tindakan 2 CASE (nilai 3) PERFORM tindakan 3
DEFAULT CASE PERFORM tindakan-n ENDSELECT
Struktur Perulangan – REPEAT UNTIL. Format REPEAT UNTIL akan dapat dilihat seperti format di bawah :
REPEAT
Tindakan UNTIL (kondisi)
Contoh berikut adalah suatu contoh untuk menghitung jumlah persediaan dan mencetak jumlah persediaan tiap hari sampai jumlah hari yang telah ditentukan tercapai.
REPEAT
READ STOCK AWAL, PEMBELIAN, PENJUALAN
COMPUTE STOCK.AKHIR = STOCK.AWAL + PEMBELIAN - PENJUALAN WRITE STOCK.AWAL, PEMBELIAN, PENJUALAN, STOCK.AKHIR
UNTIL (JUMLAH.HARI = BATAS.HARI)
Struktur Perulangan – DO. Format struktur perulangan DO dapat dilihat seperti format di bawah
DO indeks = awal TO akhir PERFORM tindakan ENDDO
DO JUMLAH PEGAWAI 1 TO 20 PERFORM Cetak-slip.gaji ENDDO
3. TABEL KEPUTUSAN
Tabel keputusan (decision table) adalah tabel yang digunakan sebagai alat bantu untuk menyederhanakan logika struktur keputusan yang betingkat-tingkat di dalam program. Algoritma yang berisi keputusan bertingkat yang banyak sekali dan sangat sulit digambarkan langsung dengan structured English atau pseudocode dan dapat dibuat terlebih dahulu dengan menggunakan tabel keputusan. Dengan demikian tabel keputusan efektif digunakan bilamana kondisi yang akan diseleksi di dalam program jumlahnya cukup banyak dan rumit.
Struktur dari tabel keputusan
Struktur dari table keputusan terdiri empat bagian utama, yaitu condition sub, condition entry, action sub dan action entry seperti tampak pada gambar sebagai berikut
Bila ada x kondisi yang diseleksi, maka akan terdapat N kemungkinan kejadian, yaitu sebesar N = 2x. Action sub berisi pernyataan-pernyataan yang akan dikerjakan baik
kondisi yang diseleksi terpenuhi maupun tidak terpenuhi. Action entry digunakan untuk memberi tanda tindakan mana yang akan dilakukan dan mana yang tidak akan dilakukan.
Langkah-langkah membuat tabel keputusan
Langkah-langkah dalam pembuatan table keputusan ini adalah sebagai berikut : 1. Menentukan kondisi yang akan diseleksi
2. Menentukan jumlah kemungkinan kejadian yang akan terjadi, yaitu sebanyak N = 23 = 8
3. Menentukan tindakan yang akan dikerjakan
4. Mengisi condition entry, diisi sedemikian rupa, sehingga semua kemungkinan kejadian bisa terwakili.
5. Mengisi action entry, diisi kolom demi kolom dari kolom pertama sampai kolom ke N.
Contoh tabel :
RINGKASAN
Kamus data adalah kumpulan informasi mengenai penamaan, kalsifikasi atau dokumentasi struktur dari data. Suatu data pada kamus data dapat merupakan suatu elemen dat tunggal atau satu kelompok elemen data. Pembuatan kamus data dapat dilakukan dengan menggunakan form atau notasi