memperbaikinya secara mudah. Hal ini tentu saja harus kita perhatikan terutama apabila kita melihat dari biaya yang harus dikeluarkan dalam pembuatan program
tersebut. Istilah Pemrograman Terstruktur Structured Programming mengacu dari suatu kumpulan tehnik yang dikemukan oleh Edsger Dijkstra. Dengan tehnik
ini akan meningkatkan produktifitas programmer, dengan mengurangi waktu yang dibutuhkan dalam penulisan write, pengujian test, penelusuran kesalahan
debug dan pemeliharanmaintain suatu program. Pada pembahasan berikut ini kita akan melihat bagaimana tehnik ini yang pendekatan yang dilakukan secara
modular, dapat membantu kita dalam membangun suatu program. Dalam pemrograman secara modular, suatu program akan dipilah
kedalam sejumlah modul, dimana setiap modul menjalankan fungsinya sendiri. Tentunya fungsi yang dijalankan oleh setiap modul sangat terbatas sesuai dengan
ruang lingkup yang akan dikerjakan. Dengan adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi. Setiap program tentu akan
memiliki program utamanya, yang kemudian akan memanggil sejumlah modul- modul yang ada.
Pemrograman secara modular ini dapat diimplementasikan dengan penggunaan subroutine, suatu kelompok instruksi yang menjalankan suatu
pengolahan yang sifatnya terbatas seperti pencetakan, pembacaan untuk proses input atau untuk proses penghitungan. Subroutine dapat dikelompokkan menjadi
internal subroutine dan external subroutine.
2.11.1. Internal Subroutines
Adalah bagian dari suatu program yang digunakan. Dideklarasikan cukup sekali saja, untuk sejumlah proses yang sama akan dilakukan oleh program
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
tersebut. Program akan memanggil subroutines tersebut jika diperlukan dan apabila telah selesai, kontrol selanjutnya dikembalikan ke instruksi berikutnya.
Instruksi yang mengendalikan kontrol transfer ke suatu subroutine umumnya dikenal sebagai call dan return.
2.11.2. External Subroutines
Diletakkan secara terpisah dari program yang menggunakan subroutine tersebut. Subroutine ini dideklarasikan supaya bisa dipakai oleh program yang
lain. Untuk menggunakannya tentu seorang programmer harus mengetahui dimana ? , apa namanya ?, bagaimana pengiriman datanya ?, bagaimana jawaban
yang akan diperoleh ?. Subroutine ini biasanya digunakan untuk pemrosesan yang komplek,
yang dibutuhkan
oleh banyak
user. http:www.google.co.idurl?sa=trct=jq=esrc=ssource=webcd=3ved=
0CGwQFjACurl=http3A2F2Fjkw1.files.wordpress.com2F20072F10 2Fpetruk-pertemuan-10.docei=832kT4-
bO43PrQfRopD_AQusg=AFQjCNHXZwN5dU8A-Y3cm4nwkotAUKe2rA
2.11.3. Pendekatan Top Down
Pemrograman terstruktur mempergunakan Pendekatan Top-Down dalam perencanaan program. Merupakan pendekatan yang menggambarkan pemecahan
modul kompleksbesar menjadi modul-modul yang lebih sederhanakecil Berbentuk Struktur Hirarki. Di dalam pemrograman terstruktur, terdapat 3 bentuk
struktur perintah yang dipergunakan : a.
Sequence Structure b.
Loop Structure
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
c. Selection Structure
Struktur perintah yang instruksinya dieksekusi berdasarkan urutannya. Dimulai dari bagian atas dan diakhiri di bagian bawahnya. Digambarkan dengan
bujur sangkar, sebagai simbol untuk : Input dan Output Operasi aritmatika. Operasi pemindahan data dalam memori komputer. Menggambarkan perulangan
eksekusi dari satu atau lebih instruksi Menggambarkan struktur yang mengeksekusi suatu instruksi hanya apabila kondisinya terpenuhi.
Algoritma merupakan sekumpulan langkah-langkah untuk menyelesaikan suatu tugas. Penamaan “Algoritma” diambil dari seorang ahli matematika
bernama Al-Khwarizmi. Sebuah algoritma harus: a. Jelas, tepat dan tidak membingungkan
b. Memberikan penyelesaian yang tepat c. Mempunyai akhir
Tujuh langkah dasar dalam pengembangan program : a. Definisi Masalah
b. Outline Solusi c. Pengembangan outline ke dalam algoritma
d. Melakukan test terhadap algoritma e. Memindahkan algoritma ke dalam bahasa pemrograman
f. Menjalankan program pada komputer g. Dokumentasi dan pemeliharaan program
h. Pada tahap ini memerlukan pemahaman terhadap permasalahan dengan membaca berulang kali sampai dengan mengerti apa yang dibutuhkan.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Setelah permasalahan didefinisikan, permasalahan dapat di bagi kedalam tugas tugas atau langkah langkah yang lebih kecil dan menghasilkan outline
solusi. Outline solusi pada langkah kedua dikembangakan menjadi algoritma yaitu sebuah set langkah yang menggambarkan tugas yang akan dikerjakan dan urutan
pengerjaannya. Tujuan utama dari melakukan test terhadap algoritma adalah adalah
untuk menemukan kesalahan utama logika sejak awal, sehingga akan lebih mudah diperbaiki. Data test diperlukan untuk melakukan test terhadap algoritma ini.
Setelah ke-empat langkah sebelumnya dilakukan, maka pencodingan dapat dimulai dengan menggunakan bahasa pemrograman yang dipilih. Setelah
pengcodingan, maka program dapat dijalankan pada komputer. Jika Program sudah didesain dengan baik, maka akan mengurangi tingkat kesalahan dalam
melakukan testing program. Langkah ini perlu dilakukan beberapa kali, sehingga program yang
dijalankan dapat berfungsi dengan benar. Dokumentasi melibatkan eksternal dokumentasi hierarchy chart, algoritma solusi, dan hasil data test dan internal
dokumentasi coding program. Pemeliharaan program meliputi perubahan yang dialami oleh program perbaikan ataupun penambahan modul, dan lain-lain.
http:www.google.co.idurl?sa=trct=jq=esrc=ssource=webcd=3ved= 0CGwQFjACurl=http3A2F2Fjkw1.files.wordpress.com2F20072F10
2Fpetruk-pertemuan-10.docei=832kT4- bO43PrQfRopD_AQusg=AFQjCNHXZwN5dU8A-Y3cm4nwkotAUKe2rA
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
39
BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM
3.1. Analisis Kebutuhan
Aplikasi AESSMS ini digunakan untuk mengirim dan menerima pesan. AESSMS akan mengenkripsi pesan yang akan dikirim menjadi
ciphertext dan AESSMS akan mendekripsi pesan masuk berupa ciphertext menjadi plaintext.
Dalam membangun aplikasi AESSMS, diperlukan batasan yang jelas sebagai tujuan utamanya agar tidak keluar dari rencana yang telah
ditetapkan. Beberapa kebutuhan sistem yang akan didefinisikan antara lain : 1. Memiliki kemampuan untuk mengirimkan dan menerima pesan.
2. Memiliki kemampuan untuk mengenkripsi pesan dan memberikan header 3. AESSMS pada pesan yang telah di enkripsi.
Tidak semua telepon selular dapat menjalankan aplikasi AESSMS. Berikut ini adalah spesifikasi dari telepon selular agar dapat menjalankan aplikasi
AESSMS : 1. Mempunyai Java Runtime Environment.
2. Mempunyai MicroEdition-profile MIDP 2.0. 3. Mempunyai MicroEdition-configuration CLDC 1.0.
Adapun software requiment spesification SRS yang akan dikembangkan di AESMS dapat dilihat pada tabel 3.1. berikut ini :
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.