BAB IV IMPLEMENTASI DAN PENGUJIAN
Pada bab ini mengenai implementasi perangkat lunak dan pengujian. Implementasi adalah penerapan aplikasi kedalam hardware dengan spesifikasi yang dibutuhkan oleh aplikasi tersebut. Setelah melakukan analisa dan perancangan aplikasi, tahap berikunya adalah implementasi. Perangkat lunak ( software ) dan perangkat keras ( hardware ) merupakan cakupan yang ada pada tahap implementasi. Sistem implementasi juga meliputi pembuatan desain antarmuka dan pengisian kode. Sedangkan penjelasan mengenai pengujian meliputi rancangan pengujian dan analisis hasil pengujian.
4.1 Spesifikasi Perangkat Keras dan Perangkat Lunak Berikut ini merupakan tabel spesifikasi perangkat yang digunakan dalam membuat dan menguji sistem : a. Pemilihan Perangkat Keras yang digunakan Adapun perangkat keras yang digunakan untuk membangun aplikasi ini. 1.) Perangkat Keras Tahap Pembangunan Aplikasi Tabel 4.1 Tabel Perangkat Keras Tahap Pembangunan Aplikasi Perangkat Keras Notebook Processor RAM VGA Hardisk
Spesifikasi Compaq CQ-40 Amd Turin X2 4 GB DDR2 Ati Radeon 256 MB 250 GB SATA
59
60
2.) Perangkat Keras Tahap Implementasi Tabel 4.2 Tabel Perangkat Keras Tahap Implementasi Perangkat Keras Mobile Device
Spesifikasi Samsung Galaxy Wonder GT-I8150
b. Pemilihan Perangkat Lunak yang Digunakan Adapaun perangkat lunak yang digunakan untuk membangun aplikasi ini adalah: 1.) Perangkat Lunak Tahap Pembangunan Aplikasi Tabel 4.3 Tabel Perangkat Lunak Tahap Pembangunan Aplikasi Perangkat Lunak Ubuntu 11.10, 32-bit Windows 7 Ultimate Service Pack 1, 32-bit Eclipse Android SDK Android Screencast Microsoft Word 2007 Microsoft Visio 2007
Fungsi Sistem Operasi Sistem Operasi IDE (tools membuat aplikasi) Emulator Menampilkan layar Handphone ke Komputer Dokumentasi Pembuatan diagram
2.) Perangkat Lunak Tahap Implementasi Tabel 4.4 Tabel Perangkat Lunak Tahap Implementasi Perangkat Lunak Android OS Min Version 2.3 (Gingerbread)
Fungsi Sistem Operasi
61
4.2 Implementasi Aplikasi Pada bab ini dijelaskan tentang implementasi aplikasi SMS Aesdroid yang memiliki 6 class yaitu SplashScr, TabMenu, SMSEncrypt, SMSInbox, SMSDecrypt, dan AESEngine. Kemudian implementasi visual secara antarmuka (interface) pada aplikasi SMS Aesdroid dengan menggunakan Telepon seluler Samsung Galaxy Wonder GT-I8150.
4.2.1 Tampilan Splashcreen (Class SplashScr) Class SplashScr berfungsi hanya berfungsi untuk menampilkan splashscreen. Pada saat memulai aplikasi akan muncul tampilan splashcreen yang dalam waktu beberapa detik. Berikut tampilan splash screennya.
Gambar 4.1 Tampilan splashscreen
62
Potongan Program
4.2.2 Tampilan Tab Menu (Class TabMenu) Class TabMenu berfungsi memangil class SMSEncrypt dan SMSDecrypt. Setelah tampilan splashcreen maka akan tampil 2 Tab menu yaitu Tab Menu SMS dan Tab Menu Inbox. Berikut ini tampilan Tab Menu:
Gambar 4.2 Tampilan Tab Menu
63
Potongan program TabHost host = this.getTabHost(); Resources resources; host.addTab(host.newTabSpec("one") .setIndicator("", getResources().getDrawable(R.drawable.ic_tab_send)) .setContent(new Intent(this, SMSEncrypt.class))); host.addTab(host.newTabSpec("two") .setIndicator("", getResources().getDrawable(R.drawable.ic_tab_inbox)) .setContent(new Intent(this, SMSInbox.class))); } }
4.2.3 Tampilan Halaman SMS Enkripsi (Class SMSEncrypt) Class SMSEncrypt ini berfungsi untuk menampung input user berupa nomor tujuan, isi pesan, dan kunci. Kemudian isi pesan dienkripsi dengan kunci menggunakan prosedur static enkripsi yang ada pada class AESEngine. Pada class ini terdapat prosedur utama untuk mengirimkan isi pesan melalui layanan SMS yaitu prosedur sendSMS. Berikut ini potongan program prosedur sendSMS: private void sendSMS(String phoneNumber, String message) { String SENT = "SMS_SENT"; String DELIVERED = "SMS_DELIVERED"; PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent(SENT), 0); PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED), 0); //---when the SMS has been sent--registerReceiver(new BroadcastReceiver(){ @Override public void onReceive(Context arg0, Intent arg1) { switch (getResultCode()) { case Activity.RESULT_OK: Toast.makeText(getBaseContext(), "SMS send", Toast.LENGTH_SHORT).show(); break;
64
public void btnSendSMSClick(View v) throws Exception{ String phoneNo = txtPhoneNo.getText().toString(); String message = txtMessage.getText().toString(); if (phoneNo.length()>0 && message.length()>0) sendSMS(phoneNo, message); else Toast.makeText(getBaseContext(), "Nomor dan pesan harus di isi dahulu.", Toast.LENGTH_SHORT).show(); }
Proses enkrip pesan SMS dengan perintah menekan tombol checkbox terlebih dahulu. Berikut ini merupakan sourcode perintah enkripsi pesan SMS melalui checkbox: @Override public void onClick(View v) { if (ckBox.isChecked() ) { AESEngine e = new AESEngine(); String phoneNo = txtPhoneNo.getText().toString(); String message = txtMessage.getText().toString(); String key = txtKey.getText().toString(); try { message = e.encrypt(message, key); txtMessage.setText(message); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } } });
Untuk tampilan pengiriman SMS dapat dilihat pada gambar 4.2. Dapat dilihat terdapat 3 buat textbox yang menampung input pengguna yaitu nomor tujuan, isi pesan, dan kunci yang digunakan untuk mengenkripsi pesan. Secara default isi pesan ditampilkan dalam plainteks (pesan asli). Namun ketika checkbox di checklist maka
65
isi pesan akan menjadi cipherteks. Pesan akan dikirim melalui layanan SMS apabila tombol Kirim SMS ditekan. Sistem akan memberikan notifikasi ketika sms Terkirim dan diterima.
Gambar 4.3 Tampilan Halaman SMS dan Hasil Enkripsi
66
4.2.4 Tampilan Inbox SMS (Class SMSInbox) Pada class ini berfungsi membaca semua pesan yang disimpan di dalam inbox telepon seluler kemudian menampilkanya di dalam aplikasi SMS Aesdroid. Berikut ini adalah tampilan inbox SMS yang ditunjukkan oleh gambar 4.4 sebagai berikut:
Gambar 4.4 Tampilan Halaman Inbox SMS
67
Pertama kali masuk tampilan inbox hanya terdapat tombol perbaharui pesan masuk. Ketika tombol ditekan maka sistem akan menampilkan pesan yang disimpan di inbox telepon seluler. Apabila salah satu isi pesan ditekan maka sistem akan memanggil interface untuk mendekripsi isi pesan
Prosedur untuk menampilkan list pesan yang ada di dalam inbox sebagai berikut: public void onClick( View v ) { ContentResolver contentResolver = getContentResolver(); final Cursor cursor = contentResolver.query( Uri.parse( "content://sms/inbox" ), null, null, null, null); int nomor = cursor.getColumnIndex("address"); int pesan = cursor.getColumnIndex("body"); if (!cursor.moveToFirst() ) return; //Mengupdate SMSListview smsList.clear(); do { HashMap<String, String> map = new HashMap<String, String>(); map.put("address", cursor.getString(nomor)); map.put("body", cursor.getString(pesan)); smsList.add(map); } while (cursor.moveToNext()); ListAdapter adapter = new SimpleAdapter(this, smsList, R.layout.rows, new String[] {"address","body"}, new int[] {R.id.txtNomor, R.id.txtPesan});
4.2.5 Tampilan Dekripsi SMS (Class SMSDecrypt) Kelas ini berfungsi mendekripsi pesan yang ada dalam inbox. Langkah pertama sistem meminta pengguna untuk memasukkan kunci yang ada digunakan untuk mendekripsi pesan. Kemudian pengguna menekan tombol dekripsi SMS maka isi pesan akan didekripsi dan akan ditampilkan di textbox pesan asli.
68
Gambar 4.5 Tampilan Halaman Dekripsi SMS dan Hasil Pesan Dekripsi Potongan Program String stringKey = editTextKey.getText().toString(); String stringCipher = editTextCipherText.getText().toString(); AES e = new AES(); String stringPlainText = new String(); try { if (stringKey.length() > 0) { stringPlainText = AES.decrypt(stringCipher, stringKey); } else Toast.makeText(getBaseContext(), "Silahkan masukkan password.", Toast.LENGTH_SHORT) .show(); } catch (Exception e1) e1.printStackTrace();} editTextPesan.setText(stringPlainText); } });}
69
4.3 Pengujian Aplikasi Sebelum program digunakan, maka terlebih dahulu dilakukan pengujian. Pengujian ini dilakukan agar diketahui apakah aplikasi SMS Aesdroid ini yang telah di bangun tersebut dapat berjalan sesuai kebutuhan. Ini dilakukan untuk mencegah agar setelah program ini diterapkan dan digunakan dalam kegiatan sebenarnya tidak menimbulkan kesalahan-kesalahan yang akan menimbulkan ketidaknyamanan pada pengguna, dan untuk dapat mengetahui langsung apakah program telah bersifat user friendly atau tidak. Pengujian untuk aplikasi ini dilakukan dengan metode whitebox dan blackbox.
4.3.1 Pengujian White Box Pengujian White Box juga dikenal dengan nama glass box, structural, clear box dan open box testing. Pengujian White Box merupakan teknik pengujian perangkat lunak guna mengetahui secara detail tentang perangkat lunak yang diuji. Pengujian white box adalah metode perancangan uji kasus yang menggunakan struktur control dari perancangan prosedural. Dengan menggunakan white box, analisis sistem akan memperoleh uji kasus seperti berikut: 1. Menjamin seluruh independent path di dalam modul akan dikerjakan sekurangkurangnya satu kali. 2. Mengerjakan seluruh keputusan logika 3. Mengerjakan seluruh loop yang sesuai dengan batasannya. 4. Menggunakan sttuktur data internal untuk menjawab validitasnya.
4.3.1.1 Pengujian White Box pada Proses Enkripsi Pesan SMS Pada pengujian white box adalah testing proses enkripsi pesan SMS. Pengujian ini dinyatakan berhasil apabila fungsi-fungsi pada perangkat lunak sesuai dengan yang diharapkan oleh pengguna. Berikut adalah pengujian white box pada proses enkripsi pesan SMS
70
Kode sumber pada proses pesan Enkripsi 1. public static String encrypt(String stringMessage, String stringKey) throws Exception { 2. 3. 4.
int n = stringKey.length(); StringBuilder sbKey = new StringBuilder(); sbKey.append(stringKey);
5.
if (n < 16) { sbKey.setLength(16); for (int i=n;i<16;i++) sbKey.setCharAt(i, '0');
6. } 7.
else if ((n>16) && (n < 24)){ sbKey.setLength(24); for (int i=n;i<24;i++) sbKey.setCharAt(i, '0');
8. } 9.
else if (n>24){ sbKey.setLength(32); for (int i=n;i<32;i++) sbKey.setCharAt(i, '0');
10. } 11.
else if (n>32){ sbKey.setLength(32); }
12. SecretKeySpec skeySpec = new SecretKeySpec(sbKey.toString().getBytes(), "AES"); 13. Cipher cipher = Cipher.getInstance("AES"); 14. cipher.init(Cipher.ENCRYPT_MODE, skeySpec); 15. String key = sbKey.toString(); 16. System.out.println(key); 17. byte[] encrypted = cipher.doFinal(stringMessage.getBytes()); 18. 19.
String stringHexa = byteArrayToStringHexa(encrypted); return stringHexa; }
71
Tabel 4.5 Skenario Pengujian Enkripsi pesan SMS Urutan Baris 1
Skenario public static String encrypt(String stringMessage, String stringKey) throws Exception {
2,3,4
5,6
7,8
9,10
11
Hasil Diharapkan Mampu membuat objek sbkey dari class AESEngine
int n = stringKey.length(); StringBuilder sbKey = new StringBuilder(); sbKey.append(stringKey); if (n < 16) { sbKey.setLength(16); for (int i=n;i<16;i++) sbKey.setCharAt(i, '0'); }
Penciptaan objek dan
else if ((n>16) && (n < 24)){ sbKey.setLength(24); for (int i=n;i<24;i++) sbKey.setCharAt(i, '0'); }
Mampu mendeteksi
else if (n>24){ sbKey.setLength(32); for (int i=n;i<32;i++) sbKey.setCharAt(i, '0'); }
Mampu mendeteksi
else if (n>32){ sbKey.setLength(32); }
Mampu mendeteksi
penambahan kunci sbkey Mampu mendeteksi panjang Kunci sebesar 128 bit
panjang 128 bit dan 192 bit
panjang Kunci sebesar 192 bit
panjang Kunci sebesar 256 bit
12,13,14,15,16, 17,18,19
SecretKeySpec skeySpec = new SecretKeySpec(sbKey.toString(). getBytes(), "AES"); Cipher cipher = Cipher.getInstance("AES"); cipher.init(Cipher.ENCRYPT_MODE , skeySpec); String key = sbKey.toString(); System.out.println(key); byte[] encrypted = cipher.doFinal(stringMessage.ge tBytes()); String stringHexa = byteArrayToStringHexa(encrypted ); return stringHexa; }
Dapat mengenkripsi plaintext (pesan asli) menjadi ciphertext dengan penambahan panjang kunci yang digunakan
72
Tabel 4.6 Hasil Pengujian Enkripsi pesan SMS Urutan Baris
Hasil Pengujian
Status
1
Bisa membuat objek sbkey dari class AESEngine
Sesuai
2,3,4
Penciptaan objek dan penambahan kunci sbkey
Sesuai
5,6
Mendeteksi panjang Kunci sebesar 128 bit
Sesuai
7,8
Mendeteksi panjang 128 bit dan 192 bit
Sesuai
9,10
Mendeteksi panjang Kunci sebesar 192 bit
Sesuai
11
Mendeteksi panjang Kunci sebesar 256 bit
Sesuai
12,13,14,15,16,
Sesuai
17,18,19
Hasil Proses Enkripsi dari plaintext (pesan asli) menjadi ciphertext dengan penambahan panjang kunci yang digunakan
73
Berdasarkan Skenario dan hasil pengujian diatas maka dapat digambarkan flowgraph sebagai berikut: 1
2
3
4 5,6
7,8
9,10
11 12 13 14 15 16 17 18 19
Gambar 4.6 Grafik Alir Pseudocode Proses Enkripsi
Jalur logika (path) yang terjadi pada proses enkripsi seperti di bawah ini : Path 1 : 1-2-3-4-5,6-19 Path 2 : 1-2-3-4-7,8-9,10-11-12-13-14-15-16-17-18-19 Agar kompleksitas pengujian white box tidak berefek butterfly, ditentukan formula perhitungan jumlah Cyclomatic Complexity sebagai berikut: V(G) = E – N + 2
74
V(G) = Cyclomatic Complexity E
= Jumlah Edge
N
= Jumlah Node
Untuk perhitungan diatas maka bisa dihutung sebagai berikut: V (G) = 16 - 16 + 2 = 2 Untuk melakukan uji coba basis path di atas digunakan graph matrik. Graph matrik merupakan matrik persegi empat yang mempunyai ukuran yang sama dengan jumlah node pada flowgraph. Adapun graph matrik pada flowgraph proses enkripsi pesan SMS adalah sebagai berikut : 1 1 2 3 4 5
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 19
1 1 1 1
1 1
6 7 8 9 10 11 12 13 14 15
1 1 1 1 1 1 1 1 1 1
16
1
17
1
18
1
19 Tabel 4.7 Tabel Graph Matrik Proses Enkripsi Pesan SMS
75
4.3.1.2 Pengujian White Box pada Proses Dekripsi Pesan SMS Berikut adalah pengujian white box pada proses dekripsi pesan SMS: 1. public static String decrypt(String stringMessage, String stringKey) throws Exception { 2. int n = stringKey.length(); 3. StringBuilder sbKey = new StringBuilder(); 4. sbKey.append(stringKey); 5. if (n < 16) { sbKey.setLength(16); 6. for (int i=n;i<16;i++) sbKey.setCharAt(i, '0'); } 7. else if ((n>16) && (n < 24)){ sbKey.setLength(24); 8. for (int i=n;i<24;i++) sbKey.setCharAt(i, '0'); } 9. else if (n>24){ sbKey.setLength(32); 10. for (int i=n;i<32;i++) sbKey.setCharAt(i, '0'); } 11. else if (n>32){ sbKey.setLength(32); } 12. SecretKeySpec skeySpec = new SecretKeySpec(sbKey.toString().getBytes(), "AES"); 13. Cipher cipher = Cipher.getInstance("AES"); 14. cipher.init(Cipher.DECRYPT_MODE, skeySpec); 15. int i; 16. int j = stringMessage.length(); 17. int k = 0; 18. String str = new String(); 19. byte[] b = new byte[stringMessage.length()/2]; 20. for (i=0; i < j-1;i=i+2){ str = stringMessage.substring(i,i+2); k = i/2; //yang diterima dari langit dimasukkan kedalam array byte 21. b[k] = ((byte)Integer.parseInt(str, 16)); } //dekripsi yang diterima dari langit 22. cipher.init(Cipher.DECRYPT_MODE, skeySpec); 23. byte[] original = cipher.doFinal(b); 24. String originalString = new String(original); 25. return originalString; } }
Kode sumber proses dekripsi pesan SMS
76
Tabel 4.8 Skenario Pengujian Dekripsi pesan SMS Urutan Baris 1
Skenario public static String decrypt(String stringMessage, String stringKey) throws Exception {
2,3,4
5,6
7,8
9,10
11
Hasil Diharapkan Mampu membuat objek sbkey dari class AESEngine
int n = stringKey.length(); StringBuilder sbKey = new StringBuilder(); sbKey.append(stringKey); if (n < 16) { sbKey.setLength(16); for (int i=n;i<16;i++) sbKey.setCharAt(i, '0'); }
Penciptaan objek dan
else if ((n>16) && (n < 24)){ sbKey.setLength(24); for (int i=n;i<24;i++) sbKey.setCharAt(i, '0'); }
Mampu mendeteksi
else if (n>24){ sbKey.setLength(32); for (int i=n;i<32;i++) sbKey.setCharAt(i, '0'); }
Mampu mendeteksi
else if (n>32){ sbKey.setLength(32); }
Mampu mendeteksi
penambahan kunci sbkey Mampu mendeteksi panjang Kunci sebesar 128 bit
panjang 128 bit dan 192 bit
panjang Kunci sebesar 192 bit
panjang Kunci sebesar 256 bit
12,13,14
SecretKeySpec skeySpec = new SecretKeySpec(sbKey.toString(). getBytes(), "AES");
15,16,17,18,19, 20
21
Cipher cipher = Cipher.getInstance("AES"); cipher.init(Cipher.DECRYPT_MODE , skeySpec); int j = stringMessage.length(); int k = 0; String str = new String(); byte[] b = new byte[stringMessage.length()/2]; for (i=0; i < j-1;i=i+2){ str = stringMessage.substring(i,i+2); k = i/2; b[k] = ((byte)Integer.parseInt(str,
Mampu Menginialisasikan cipher
Mampu melakukan perulangan pengkonversi byte to string
Pesan yang diterima
77
16));
mampu dimasukkan kedalam array byte cipher.init(Cipher.DECRYPT_MODE Dapat mendekripsi }
22,23,24,25
, skeySpec); byte[] original = cipher.doFinal(b); String originalString = new String(original); return originalString; }
ciphertext (pesan tidak bisa dibaca) menjadi plaintext (pesan asli)
Tabel 4.9 Hasil Pengujian Dekripsi pesan SMS Urutan Baris
Hasil Pengujian
Status
1
Bisa membuat objek sbkey dari class AESEngine
Sesuai
2,3,4
Penciptaan objek dan penambahan kunci sbkey
Sesuai
5,6
Mendeteksi panjang Kunci sebesar 128 bit
Sesuai
7,8
Mendeteksi panjang 128 bit dan 192 bit
Sesuai
9,10
Mendeteksi panjang Kunci sebesar 192 bit
Sesuai
11
Mendeteksi panjang Kunci sebesar 256 bit
Sesuai
12,13,14
Menginialisasikan cipher
Sesuai
15,16,17,18,19,20 Melakukan perulangan pengkonversi byte to string
Sesuai
21
Sesuai
Pesan yang diterima mampu dimasukkan kedalam array byte
78
22,23,24,25
Sesuai
Hasil dekripsi ciphertext (pesan tidak bisa dibaca) menjadi plaintext (pesan asli) dengan menginput kunci enkripsi
Berdasarkan Skenario dan hasil pengujian diatas maka dapat digambarkan flowgraph sebagai berikut:
79
1
2
3
4 5,6
7,8
9,10
11 12 13 14 15 16 17 18 19 20 21
22
23
24
25
Gambar 4.7 Grafik Alir Pseudocode Proses Dekripsi
80
Jalur logika (path) yang terjadi pada proses enkripsi seperti di bawah ini : Path 1 : 1-2-3-4-5-6-25 Path 2 : 1-2-3-4-7-8-9-10-11-12-13-14-15-20-21-22-23-24-25 Path 3 : 1-2-3-4-7-8-9-10-11-12-13-14-15-16-17-18-19-20-16-17-18-19-20-21-2223-24-25 Agar kompleksitas pengujian white box tidak berefek butterfly, ditentukan formula perhitungan jumlah Cyclomatic Complexity sebagai berikut: V(G) = E – N + 2 V(G) = Cyclomatic Complexity E
= Jumlah Edge
N
= Jumlah Node
Untuk perhitungan diatas maka bisa dihutung sebagai berikut: V (G) = 24 - 22 + 2 = 4
Untuk melakukan uji coba basis path di atas digunakan graph matrik. Graph matrik merupakan matrik persegi empat yang mempunyai ukuran yang sama dengan jumlah node pada flowgraph. Adapun graph matrik pada flowgraph proses enkripsi pesan SMS adalah sebagai berikut :
81
1
1 2 3 4 5
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
1 1 1 1
1 1
6 7 8 9 10 11 12 13 14 15 16 17 18 19
25
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1
20
1
21
1
22
1
23
1
24
1
25
Tabel 4.10 Tabel Graph Matrik Proses Dekripsi Pesan SMS
82
4.3.2 Pengujian Black Box Pengujian dengan metode blackbox testing dilakukan dengan menjalankan aplikasi SMS Aesdroid menggunakan Emulator. Kemudian dilakukan pengujian dengan menekan tombol-tombol menu yang terdapat pada aplikasi tersebut. Apakah sesuai dengan yang diharapkan. Selanjutnya pengujian dilakukan ketika aplikasi berjalan. Berikut ini adalah skenario dan hasil pengujian pada aplikasi SMS Aesdroid dengan metode black box.
Tabel 4.11 Tabel Skenario Pengujian dan Hasil Pengujian Black Box NO
1
Skenario
Prosedur Pengujian
Hasil yang diinginkan
Pengujian
Memilih tab menu
Dapat menampilkan
Memilih Tab
SMS
halaman pengiriman SMS
Menu SMS di
Hasil Pengujian
Sesuai
Enkripsi
TabMenu 2
Pengujian
Memilih tab menu
Dapat menampilkan
Memilih Tab
inbox
halaman Inbox SMS
- Memasukkan no.
Textbox dapat memuat
Sesuai
Menu Inbox di TabMenu 3
Pengujian Input data di halaman pengiriman SMS
tujuan - Memasukkan pesan
Sesuai
hasil inputan dan menampilkan no. tujuan, pesan, dan password
- Memasukkan password enkripsi
4
Pengujian
Menekan tombol
Menampilkan kontak
ambil kontak
kontak
telepon dalam bentuk list
di halaman pengiriman SMS
Sesuai
83
5
Pengujian
Mencheklist
Dapat mengengkripsi
Enkripsi pesan
checkbox
pesan SMS dan hasilnya
dihalaman
Sesuai
ditampilkan di texbox
pengiriman SMS 6
Pengujian
Menekan tombol
Dapat mengirimkan pesan
mengirim sms
kirim sms
dan akan muncul
Sesuai
pemberitahuan terkirim dan diterima 7
Pengujian
Menekan tombol
Dapat menampilkan pesan
perbaharui
perbaharui pesan
sms yang baru masuk
Pengujian
Memasukkan kunci
Textbox dapat memuat
Input data
atau password
hasil inputan dan
dihalaman
enkripsi
menampilkan password
Pengujian
Menekan tombol
Dapat mendekripsi pesan
Dekripsi pesan
dekripsi pesan
SMS dan hasilnya
Sesuai
pesan di halaman Inbox 8
Sesuai
Dekripsi 9
di halaman
Sesuai
ditampilkan di texbox
dekripsi 10 Pengujian
Memilih option
Dapat menampilkan alert
Tentang
menu tentang
dialog yang berisi
Aplikasi
aplikasi
informasi tentang aplikasi
Memilih option
Dapat menampilkan alert
menu petunjuk
dialog yang berisi petunjuk
11 Pengujian Petunjuk
Sesuai
Sesuai
penggunaan aplikasi 12 Pengujian keluar
Memilih option
Dapat menutup aplikasi
menu keluar
atau keluar dari aplikasi
Sesuai
84
4.3.3 Analisis Hasil Setelah tahap pengujian black box diatas terhadap semua menu pada aplikasi SMS Aesdroid, maka dapat di simpulkan : 1. Tampilan layar sesuai dengan yang diinginkan penulis 2. Tombol-tombol yang ada dapat berfungsi sesuai yang diharapkan dan kebutuhan 3. Aplikasi dapat menampilkan halaman tab menu yang diinginkan pengguna
dengan baik 4. Menunjukkan hasil keluaran atau output yang sesuai pada proses input data. 5. Aplikasi berhasil mengenkripsi dan mendekripsikan pesan SMS
Dari hasil pengujian dapat dikatakan bahwa aplikasi SMS Aesdroid ini dapat berfungsi dengan baik dan benar, karena telah sesuai dengan hasil skenario pada pengujian aplikasi.