Bab 4 Hasil dan Pembahasan Pada bab ini dibahas mengenai implementasi sistem tracer alumni dengan menggunakan teknologi Android berdasarkan perancangan sistem yang telah dijabarkan pada bab sebelumnya. Pembahasan implementasi ini meliputi: implementasi form pada aplikasi Android dan halaman website untuk Administrator, dan pengujian sistem menggunakan metode blackbox testing.
4.1
Pembahasan Aplikasi Android Berikut ini akan dibahas mengenai implementasi aplikasi
Android yang terdapat pada sistem tracer alumni, antara lain: form login user, form utama, form profil alumni, form riwayat pekerjaan alumni, form kuesioner, dan form ubah password 4.1.1 Form Login User Form Login user merupakan halaman yang pertama kali muncul saat sistem tracing alumni diakses melalui perangkat Android. Form ini ditunjukkan seperti pada Gambar 4.1, dapat dilihat bahwa terdapat 2 textbox yaitu textbox Username dan textbox Password untuk menampung data alumni yang masuk ke dalam sistem. Apabila user telah memasukkan data yang benar, kemudian berikutnya adalah user menekan tombol Login untuk masuk ke dalam sistem. Namun, apabila user salah memasukkan username
28
29
dan atau password, maka akan muncul peringatan bahwa gagal melakukan login.
Gambar 4.1 Form Login User
Pada Kode Program 1 merupakan kode program untuk login pada aplikasi tracing alumni. Pertama user memasukan identitas login yang sudah disediakan oleh Administrator, apabila username dan password benar maka sistem akan melakukan perintah untuk menampilkan halaman utama tracing alumni. Apabila username atau password salah maka akan ditampilkan pesan gagal login. Kode program untuk Form Login seperti ditunjukkan pada Kode Program 1 berikut ini. Kode Program 1. Form Login 1. public void onCreate(Bundle savedInstanceState) { 2. super.onCreate(savedInstanceState); 3. setContentView(R.layout.login_activity); 4. txtUserName = (EditText)findViewById(R.id.txtUserName); 5. txtPassword = (EditText)findViewById(R.id.txtPassword);
30
6. btnLogin = (Button)findViewById(R.id.btnLogin); 7. btnLogin.setOnClickListener(new OnClickListener() { 8. public void onClick(View arg0) { 9. if(txtUserName.getText().toString().length()== 0){ 10. Tools.makeToast(MainActivity.this, "User Name Cannot be Empty"); 11. txtUserName.requestFocus(); 12. } else if (txtPassword.getText().toString().length() == 0){ 13. Tools.makeToast(MainActivity.this, "Password Cannot be Empty"); 14. txtPassword.requestFocus();} else { 15. if(loginValidation(txtUserName.getText().to String(),txtPassword.getText().toString())){ 16. intent = new Intent(MainActivity.this, MainMenuActivity.class); 17. startActivity(intent); }else{ 18. Tools.makeToast(MainActivity.this, "Login Failed");} } } } ) ; }
4.1.2 Form Utama Form utama akan muncul apabila user memasukkan username dan password yang sesuai. Form utama ditunjukkan seperti pad Gambar 4.2.
31
Gambar 4.2 Form Utama Sistem
Form utama sistem pada Gambar 4.2 berisi berbagai menu yang terdapat pada sistem tracing alumni berbasis Android, menumenu tersebut dibagi ke dalam 4 (bagian) bagian yaitu menu Data Diri, menu Info Alumni, menu Riwayat Pekerjaan, dan menu Umpan Balik.Kode Program untuk Form Utama dapat ditunjukkan pada Kode Program 2. Kode Program 2. Form Utama 1. public class MainMenuActivity extends Activity{ 2. private Button btnProfile,btnInfoAlumni,btnQuestioner,btnChangeP assword,btnUmpanBalik; 3. private Intent intent; 4. protected void onCreate(Bundle savedInstanceState) { 5. super.onCreate(savedInstanceState); 6. setContentView(R.layout.main_menu);
32
7. btnProfile = (Button)findViewById(R.id.btnProfile); 8. btnInfoAlumni = (Button)findViewById(R.id.btnRiwayatPekerjaan); 9. btnQuestioner = (Button)findViewById(R.id.btnQuestioner); 10. btnUmpanBalik = (Button) findViewById(R.id.btnUmpanBalik); 11. btnChangePassword = (Button)findViewById(R.id.btnChangePassword); 12. btnQuestioner=(Button)findViewById(R.id.btn Questioner); 13. 14. btnProfile.setOnClickListener(new OnClickListener() { 15. public void onClick(View arg0) { 16. intent = new Intent(MainMenuActivity.this, ProfileActivity.class); 17. startActivity(intent); } 18. } 19. );
Kode program 2 merupakan kode program untuk memindah halaman utama menuju halaman profile jika user menekan tombol. Kode 14 sampai 20 merupakan koding untuk memindahkan halaman form utama menuju halaman menu data diri 4.1.3 Form Profil Alumni Form profil alumni berfungsi untuk mengelola data alumni yang berisi tentang informasi alumni. Form profil alumni seperti pada Gambar 4.3.
33
Gambar 4.3 Form Profil Alumni
Pada Gambar 4.3 dapat dilihat bahwa setiap alumni dapat melakukan update data profilnya masing-masing yang terdiri dari Nama, Tempat dan Tanggal Lahir, NIM, Nama Orangtua, Tahun Lulus, Program Studi, Judul Tugas Akhir, IPK Lulus, Alamat Sekarang, Nomor Telepon, Email, Website, Password, Kritik dan Saran. 4.1.4 Form Pekerjaan Alumni Form pekerjaan alumni berfungsi untuk mengelola data riwayat pekerjaan setiap alumni. Gambar 13 menunjukkan form pekerjaan alumni.
34
Gambar 4.4. Form Pekerjaan Alumni
Pada Gambar 4.4 dapat dilihat bahwa setiap alumni yang dapat mengelola data riwayat pekerjaan. Data riwayat pekerjaan alumni berisi: Nama Instansi, Unit Kerja, Atasan Langsung, Alamat Kantor, Nomor Telepon, dan Website.
4.1.5 Form Kueisioner F orm kuisioner berfungsi untuk mengelola jawaban kuisioner yang diisi oleh setiap alumni. Form kuisioner dapat dilihat pada Gambar 4.5.
35
Gambar 4.5. Form Kuisioner
Pada Gambar 4.5 dapat dilihat bahwa setiap pertanyaan akan diisi oleh para alumni. Setelah jawaban diisi, maka hasilnya akan diterima oleh Administrator.Adapun kode program untuk Form Kuisioner ditunjukkan pada Kode Program 3 berikut ini. Kode Program 3. Form Kuisioner 1. questioner = new PojoQuestioner(); 2. for(int i = 0;i<jawab.length;i++){ 3. if(jawab[i] !=null && jawab[i].length()>0){ 4. questioner.addJawaban(jawab[i]); 5. }else{ 6. Tools.makeToast(QuestionerActivity.this, "Aswer All Question !"); 7. return; } } 8. try { 9. Tools.editQuestioner(questioner, Tools.profile.getId()+""); 10. Tools.questioner = Tools.getQuestioner(Tools.profile.getId()+"", QuestionerActivity.this); 11. Tools.makeToast(QuestionerActivity.this, "Answer Question Success!"); 12. } catch (JSONException e) {
36
13. // TODO Auto-generated catch block 14. e.printStackTrace(); 15. } } } ) ;
Pada saat alumni memilih status pekerjaan, dapat dilihat bahwa setiap piliihan memiliki pertanyaan berbeda akan di pilih dan diisi oleh para alumni. Setelah memilih status pekerjaan dan diisi, maka hasilnya akan diterima oleh Administrator.Adapun kode program untuk memilih status pekerjaan ditunjukkan pada Kode Program 4 berikut ini. Kode Program 4. Memilih Status Pekerjaan 1. protected void onCreate(Bundle savedInstanceState) { 2. super.onCreate(savedInstanceState); 3. setContentView(R.layout.activity_menu); 4. ArrayList<String> str = new ArrayList<String>(); 5. str.add("Belum pernah bekerja dan atau sedang studi lanjut"); 6. str.add("Tidak bekerja, tetapi pernah bekerja , dan atau sedang studi lanjut"); 7. str.add("Bekerja"); 8. listView = (ListView) findViewById(R.id.listMenu); 9. listView.setAdapter(new ArrayAdapter<String>(this, 10. android.R.layout.simple_list_item_1, str)); 11. listView.setOnItemClickListener(this); 12. } 13. public void onItemClick(AdapterView adapter, View view, int pos, long id) { 14. if (pos == 0) { 15. Intent intent = new Intent(this, ActivityQuestioner_1.class); 16. startActivity(intent); 17. } else if (pos == 1) { 18. Intent intent = new Intent(this, ActivityQuestioner_2.class); 19. startActivity(intent); 20. } else if (pos == 2) { 21. Intent intent = new Intent(this, ActivityQuestioner_3.class); 22. startActivity(intent); 23. } } }
37
Pada aplikasi tracing alumni dapat dilihat bahwa setiap informasi yang berhubungan dengan para alumni tersimpan di dalam database. Adapun kode program untuk menghubungkan aplikasi tracing alumni dengan database agar smua informasi dapat muncul di aplikasi tracing alumni pada Kode Program 5 berikut ini. Kode Program 5. Koneksi aplikasi tracing alumni Ke Server database 1. static String URL = "http://10.0.2.2/tracer_alumni/webservice.php"; 2. public static void makeToast(Context context,String message){ 3. Toast.makeText(context, message, Toast.LENGTH_LONG).show(); 4. public static JSONObject getJSONFromUrl(String url) {try { 5. URI uri = new URI(url); 6. DefaultHttpClient httpClient = new DefaultHttpClient(); 7. HttpPost httpPost = new HttpPost();httpPost.setURI(uri); 8. HttpResponse httpResponse = httpClient.execute(httpPost); 9. HttpEntity httpEntity = httpResponse.getEntity(); 10. is = httpEntity.getContent(); 11. } catch (UnsupportedEncodingException e) { 12. e.printStackTrace(); 13. } catch (ClientProtocolException e) { 14. e.printStackTrace(); 15. } catch (IOException e) { 16. e.printStackTrace(); 17. } catch (URISyntaxException e) { 18. e.printStackTrace();
4.2
}
Pengujian Aplikasi Tahapan berikutnya adalah membahas uji coba dan evaluasi
aplikasi sistem tracer alumni. Sistem akan diuji coba dari segi fungsionalitas dan performa dengan berbagai macam skenario berdasarkan
implementasi
sistem
yang
dilakukan.
Tujuan
dilakukannya uji coba ini adalah untuk melakukan verifikasi dan validasi terhadap semua fitur dan fungsi dari aplikasi apakah telah
38
sesuai dengan kebutuhan pengguna atau belum sehingga nantinya perlu dilakukan pengembangan sistem lebih lanjut. Pengujian pada sistem tracer alumni dilakukan dengan menggunakan metode blackbox testing. Berikut ini adalah hasil pengujian sistem yang ditunjukkan pada Tabel 4.1. Tabel 4.1. Hasil Pengujian Blackbox No 1
Poin Pengujian Login
2
Logout
3
Add/Update Data Alumni
Validasi
Data input
Hasil Uji
Username dan Password
Username dan Password benar Username benar Password salah Username salah Password benar Klik pada tombol logout
Berhasil
Status Uji Valid
Gagal
Valid
Gagal
Valid
Keluar aplikasi dan harus login kembali untuk masuk Berhasil
Valid
Valid
Gagal
Valid
Keluar aplikasi
Kolom nama, ttl, nim, nama orangtua, tahun lulus, progdi, judul ta, ipk lulus, alamat sekarang, nomor telp, email, website, password, kritik dan saran tidak boleh kosong
nama, ttl, nim, nama orangtua, tahun lulus, progdi, judul ta, ipk lulus, alamat sekarang, nomor telp, email, website, password, kritik dan saran diisi. nama, ttl, nim, nama orangtua, tahun lulus, progdi, judul ta, ipk lulus, alamat sekarang, nomor telp, email, website, password, kritik
39
4
5
Input Kuesioner
Ganti Password
Pertanyaan boleh kosong
Kolom Password lama, Password baru, konfirmasi password harus diisi.
dan saran tidak di isi nama, ttl, nim tidak diisi, nama orangtua, tahun lulus, progdi, judul ta, ipk lulus, alamat sekarang, nomor telp, email, website, password, kritik dan saran diisi nama, ttl, nim, nama orangtua, tahun lulus, progdi, judul ta, ipk lulus, alamat sekarang, nomor telp, email, website, password, kritik dan saran tidak diisi Seluruh pertanyaan diisi Seluruh pertanyaan tidak diisi Beberapa pertanyaan tidak diisi Password lama, Password baru, konfirmasi password diisi Password lama, Password baru, konfirmasi password tidak di isi Password lama tidak di isi, Password baru, konfirmasi password di isi
Gagal
Valid
Gagal
Valid
Berhasil
Valid
Berhasil
Valid
Berhasil
Valid
Berhasil
Valid
Gagal
Valid
Gagal
Valid
40
Password lama, Password baru tidak di isi, konfirmasi password di isi Password lama, Password baru di isi, konfirmasi password tidak di isi
Gagal
Valid
Gagal
Valid
Tabel 4.1. Pengujian Sistem Menggunakan Metode Black-Box Operation ID 01
Kondisi Parameter yang dimasukkan tidak sesuai.
02
Parameter yang dimasukkan sesuai, tetapi data yang dicari tidak ada di database. Parameter sesuai dan data terdapat di dalam database.
03
Respon Time Tidak terjadi perubahan karena sistem hanya memperbolehkan memasukkan angka atau huruf Terjadi perubahan sistem karena data tidak terdapat di database.
Hasil Data grid tidak berubah.
Terjadi perubahan sistem dengan menampilkan data yang dicari.
Data grid berubah dengan menampilkan data yang dicari.
Data grid berubah dengan menampilkan data kosong.
Berdasarkan evaluasi yang sudah dilakukan, diperoleh hasil bahwa aplikasi ini sudah berjalan secara fungsional, sesuai dengan yang diharapkan dan dapat bermanfaat bagi bagian Kerja Praktek dan Tugas Akhir (KPTA) FTI UKSW untuk mengetahui informasiinformasi yang dibutuhkan terkait dengan data alumni FTI UKSW