TA : Rancang Bangun Aplikasi Presensi Kegiatan Dengan Memanfaatkan NFC Sebagai RFID Reader Pada Smartphone Android.

(1)

RANCANG BANGUN APLIKASI PRESENSI KEGIATAN

DENGAN MEMANFAATKAN NFC SEBAGAI RFID READER

PADA SMARTPHONE ANDROID

TUGAS AKHIR

Program Studi S1 Sistem Informasi

Oleh:

Nur Mohammad Prima Putra Wardani 12.41010.0043

FAKULTAS TEKNOLOGI DAN INFORMATIKA

INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA 2016


(2)

ix

ABSTRAK ... xv

KATA PENGANTAR ... xvi

DAFTAR ISI ... xviii

DAFTAR TABEL ... xxiii

DAFTAR GAMBAR ... xv

DAFTAR LAMPIRAN ... xix

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang Masalah ... 1

1.2. Perumusan Masalah ... 3

1.3. Batasan Masalah... 3

1.4. Tujuan ... 4

1.5. Manfaat Penulisan ... 4

1.6. Sistematika Penulisan ... 4

BAB II LANDASAN TEORI ... 6

2.1. Pengertian Aplikasi ... 6

2.2. Near Field Communication ... 6

2.3. Radio Frequency Identification (RFID) ... 7

2.4. Android ... 8

2.5. Unified Modeling Language (UML) ... 9

2.5.1 Diagram Use Case... 9

2.5.2 Diagram Aktivitas ... 10


(3)

x

2.5.4 Diagram Kolaborasi ... 10

2.5.5 Diagram Kelas ... 10

2.5.6 Diagram Komponen ... 11

2.5.7 Diagram Deployment ... 11

2.6. System Development Life Cycle (SDLC)... 11

2.6.1 Tahapan Perencanaan ... 12

2.6.2 Tahapan Analisis ... 12

2.6.3 Tahapan Desain ... 13

2.6.4 Tahapan Implementasi ... 13

2.7. Pengujian ... 14

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 16

3.1. Perencanaan... 16

3.2. Tahap Analisis ... 17

3.2.1. Business Use Case ... 17

3.2.2. Activity Diagram ... 18

3.2.3. System Use Case ... 22

3.2.4. Flow of Event ... 23

3.3. Tahap Desain ... 27

3.3.1. Sequence Diagram ... 28

3.3.2. Collaboration Diagram ... 31

3.3.3. Class Diagram ... 32

3.3.4 . Component Diagram ... 39

3.3.5. Deployment Diagram ... 40


(4)

xi

Tabel Kegiatan ... 42

Tabel Panitia... 43

Tabel Peserta ... 43

Tabel User ... 44

Tabel Group ... 45

Group Menu ... 45

Tabel Menu ... 46

3.3.9. Desain Input dan Output ... 46

Desain Halaman Login Web ... 47

Desain Halaman Data Kegiatan ... 47

Desain Halaman Pendaftaran Kegiatan ... 48

Desain Halaman Detail Kegiatan ... 49

Desain Halaman Login Android ... 50

Desain Halaman Login Android ... 51

Desain Halaman Tapping Kegiatan Android ... 52

Desain Halaman Info Kegiatan Android ... 53

Desain Halaman Data Peserta Kegiatan Android ... 54

3.4. Tahap Pengujian ... 55

3.4.1. Desain Pengujian Halaman Login ... 55

3.4.2. Desain Pengujian Halaman Data Kegiatan Web ... 55

3.4.3 . Desain Pengujian Halaman Pendaftaran Kegiatan ... 56


(5)

xii

3.3.5. Desain Pengujian Halaman Daftar Kegiatan Android ... 57

3.3.6. Desain Pengujian Halaman Tapping Kegiatan Android ... 57

3.3.7. Desain Pengujian Halaman Data Peserta Kegiatan ... 57

BAB IV IMPLEMENTASI DAN PENGUJIAN ... 58

4.1. Kebutuhan Aplikasi ... 58

4.1.1. Kebutuhan Perangkat Lunak ... 58

4.1.2. Kebutuhan Perangkat Keras ... 59

4.2. Implementasi Aplikasi ... 60

4.2.1 Halaman Login Web ... 60

4.2.2 Halaman Data Kegiatan Web ... 61

4.2.3 Halaman Pendaftaran Kegiatan ... 61

4.2.4 Halaman Login Android ... 62

4.2.5 Halaman Data Kegiatan Android ... 63

4.2.6 Halaman Tapping Kegiatan Android ... 64

4.2.7 Halaman Data Peserta Kegiatan ... 65

4.3 Pengujian Aplikasi ... 65

4.3.1 Hasil Pengujian Form Login ... 66

4.3.2 Hasil Pengujian Halaman Data Kegiatan ... 69

4.3.3 Hasil Pengujian Halaman Pendaftaran Kegiatan ... 71

4.3.4 Hasil Pengujian Halaman Login Android ... 73

4.3.5 Hasil Pengujian Halaman Daftar Kegiatan Android ... 75

4.3.6 Hasil Pengujian Halaman Tapping Kegiatan ... 77

4.3.6 Hasil Pengujian Halaman Data Peserta Kegiatan ... 78


(6)

xiii

5.2 Saran ... 81 DAFTAR PUSTAKA ... 82


(7)

xiv

DAFTAR TABEL

Tabel 3. 1 Tabel Flow Of Event Login ... 23

Tabel 3. 2 Tabel Flow Of Event Tambah Data Kegiatan ... 24

Tabel 3. 3 Tabel Flow Of Event Lihat Laporan Kegiatan ... 25

Tabel 3. 4 Tabel Flow Of Event Presensi Kegiatan ... 25

Tabel 3. 5 Tabel Flow Of Event Sinkronisasi Data ... 26

Tabel 3. 6 Tabel Kegiatan ... 42

Tabel 3. 7 Tabel Panitia ... 43

Tabel 3. 8 Tabel Peserta ... 44

Tabel 3. 9 Tabel User ... 44

Tabel 3. 10 Tabel Group ... 45

Tabel 3. 11 Tabel Grup_menu ... 45

Tabel 3. 12 Tabel Menu ... 46

Tabel 3. 13 Tabel Desain Pengujian Halaman Login ... 55

Tabel 3. 14 Tabel Desain Pengujian Halaman Data Kegiatan Web ... 55

Tabel 3. 15 Tabel Desain Pengujian Halaman Pendaftaran Kegiatan Web ... 56

Tabel 3. 16 Tabel Desain Pengujian Halaman Login Android ... 56

Tabel 3. 17 Tabel Desain Pengujian Halaman Daftar Kegiatan Android ... 57

Tabel 3. 18 Tabel Desain Pengujian Halaman Tapping Kegiatan Android ... 57

Tabel 3. 19 Tabel Desain Pengujian Halaman Data Peserta Kegiatan ... 57

Tabel 4. 1 Desain Data Pengujian Halaman Login Web ... 66

Tabel 4.2 Tabel Hasil Pengujian Halaman Login Web ... 68

Tabel 4.3 Tabel Hasil Pengujian Halaman Data Kegiatan ... 70

Tabel 4.4 Tabel Hasil Pengujian Halaman Pendaftaran Kegiatan ... 72 Halaman


(8)

xv

Tabel 4.7 Tabel Hasil Pengujian Halaman Tapping Kegiatan ... 78

Tabel 4.8 Tabel Hasil Pengujian Halaman Data Peserta Kegiatan ... 78

Tabel 4.9 Bobot Penilaian Kuisioner ... 79


(9)

xvii

DAFTAR GAMBAR

Gambar 2. 1 Komunikasi NFC dengan obyek lain ... 6

Gambar 2. 2 Tahapan dalam SDLC ... 12

Gambar 3. 1 Business Use Case Presensi Kegiatan ... 17

Gambar 3. 2 Diagram Aktifitas Pendaftaran Kegiatan ... 19

Gambar 3. 3 Diagram Aktifitas Presensi Kegiatan ... 20

Gambar 3. 4 Diagram Aktifitas Pelaporan Kegiatan ... 21

Gambar 3. 5 System Use Case Aplikasi Presensi Kegiatan ... 22

Gambar 3. 6 Sequence Diagram Login ... 28

Gambar 3. 7 Sequence Diagram Pendaftaran Kegiatan ... 29

Gambar 3. 8 Sequence Diagram Sinkronisasi Data ... 30

Gambar 3. 9 Diagram Kolaborasi ... 31

Gambar 3. 10 Diagram Kelas Kegiatan ... 33

Gambar 3. 11 Diagram Kelas Peserta ... 34

Gambar 3. 12 Diagram Kelas Orang ... 35

Gambar 3. 13 Diagram Kelas User ... 35

Gambar 3. 14 Diagram Kelas FormLogin... 36

Gambar 3. 15 Diagram Kelas FormPendaftaranKegiatan ... 37

Gambar 3. 16 Diagram Kelas CtrlLogin ... 38

Gambar 3. 17 Diagram Komponen ... 39

Gambar 3. 18 Deployment Diagram ... 40

Gambar 3. 19 Conceptual Data Model ... 40

Gambar 3. 20 Physical Data Model ... 41 Halaman


(10)

xviii

Gambar 3. 23 Desain Halaman Pendaftaran Kegiatan ... 48

Gambar 3. 24 Desain Halaman Detail Kegiatan ... 49

Gambar 3. 25 Desain Halaman Login Android ... 50

Gambar 3. 26 Desain Halaman Data Kegiatan Android ... 51

Gambar 3. 27 Desain Halaman Tapping Kegiatan Android ... 52

Gambar 3. 28 Desain Halaman Info Kegiatan Android ... 53

Gambar 3. 29 Desain Halaman Data Peserta Kegiatan Android ... 54

Gambar 4. 1 Halaman Login Aplikasi Presensi Web ... 60

Gambar 4.2 Halaman Data Kegiatan ... 61

Gambar 4.3 Halaman Pendaftaran Kegiatan ... 61

Gambar 4.4 Halaman Login Android ... 62

Gambar 4.5 Halaman Data Kegiatan Android ... 63

Gambar 4.6 Halaman Tapping Kegiatan Android ... 64

Gambar 4.7 Halaman Data Peserta Kegiatan ... 65

Gambar 4. 8 Hasil Uji Textbox Password ... 66

Gambar 4.9 Hasil Uji Validasi Isian Benar ... 67

Gambar 4.10 Hasil Uji Validasi Isian Salah ... 67

Gambar 4.11 Hasil Uji Validasi Hak Akses... 68

Gambar 4.12 Hasil Uji Tampilan Data Kegiatan ... 69

Gambar 4.13 Hasil Uji Visibilitas Tombol Tambah Kegiatan ... 69

Gambar 4.14 Hasil Uji Tombol Tambah Data Kegiatan... 69


(11)

xviiii

Gambar 4.16 Hasil Uji Tombol Cetak Laporan ... 70

Gambar 4.17 Hasil Uji Tombol Pilih Waktu Kegiatan ... 71

Gambar 4.18 Hasil Tombol Uji Tambah Panitia ... 71

Gambar 4.19 Hasil Uji Tombol Simpan ... 71

Gambar 4.20 Hasil Uji Validasi Isian ... 72

Gambar 4.21 Hasil Uji Textbox Password ... 73

Gambar 4.22 Hasil Uji Validasi Isian Benar ... 73

Gambar 4.23 Hasil Uji Validasi Isian Salah ... 74

Gambar 4.24 Hasil Uji Koneksi Ke Server ... 74

Gambar 4.25 Hasil Uji Menampilkan Data Kegiatan ... 75

Gambar 4.26 Hasil Uji Tombol Buka Presensi ... 76

Gambar 4.27 Hasil Uji Fungsi Info Kegiatan ... 77

Gambar 4.28 Hasil Uji Tombol Simpan Manual ... 77


(12)

1

BAB I PENDAHULUAN

1.1. Latar Belakang Masalah

Radio Frequency Identification atau lebih dikenal dengan nama RFID merupakan teknologi komunikasi nirkabel antar dua perangkat yang berfungsi sebagai reader atau writer. Pemanfaatan RFID sangat luas di berbagai bidang, antara lain kesehatan, keuangan, transportasi umum dan juga untuk hiburan. Seiring perkembangan zaman, teknologi RFID memungkinkan penggunanya untuk berinteraksi dengan perangkat reader tanpa harus bersentuhan langsung.

Institut Bisnis dan Informatika Stikom Surabaya (yang selanjutnya dalam penelitian ini disebut sebagai Stikom Surabaya) juga menerapkan teknologi RFID untuk menunjang kegiatan sehari – hari karyawan dan mahasiswanya. Kartu pengenal bagi karyawan dan mahasiswa Stikom Surabaya menggunakan kartu RFID tipe short range yang dapat digunakan untuk berbagai kegiatan mulai dari keluar masuk area parkir, presensi belajar mengajar di kelas, peminjaman buku di perpustakaan, presensi kegiatan mahasiswa dan karyawan serta juga digunakan untuk pembelian minuman ringan pada vending machine yang tersedia di lingkungan kampus Stikom Surabaya.

Dalam setiap kegiatan yang dilakukan oleh civitas akademi Stikom Surabaya, presensi bagi peserta dilakukan dengan menggunakan tablet yang dipasangkan dengan modul RFID Reader. Modul ini berfungsi untuk membaca data dari kartu RFID yang dimiliki oleh mahasiswa atau karyawan. Cara kerjanya adalah dengan mendekatkan kartu RFID diatas permukaan modul RFID Reader, lalu RFID Reader akan mengirimkan nomer kartu tersebut pada tablet. Sebelum digunakan,


(13)

2

pengguna perlu membuka web browser dan menuju ke halaman aplikasi pencatatan kegiatan Stikom Surabaya terlebih dahulu. Setelah melakukan login dan memilih jenis kegiatan, selanjutnya pengguna perlu meletakkan posisi cursor pada isian nomor induk mahasiswa atau karyawan agar nomer unik yang terbaca oleh RFID Reader langsung diterima oleh aplikasi presensi kegiatan tersebut.

Dengan alat yang ada, kesulitan yang ada adalah pengguna masih harus meletakkan posisi cursor dengan benar ke kolom isian pada aplikasi presensi. Bila posisi cursor tidak berada dalam kolom isian data RFID, maka data yang dibaca oleh RFID Reader akan tertulis ditempat lain atau bahkan tidak tertulis sama sekali. Selain itu, RFID Reader yang sedang tersambung pada tablet, memaksa tablet untuk tidak dapat menerima masukan lain selain dari modul tersebut, sehingga menyulitkan pengguna saat ingin mengetik menggunakan keyboard bawaan Android. Kekurangan lain dari tablet yang dimiliki adalah perubahan mac address yang menyebabkan tablet kesulitan jika ingin tersambung dengan jaringan nirkabel Stikom Surabaya dikarenakan adanya kebijakan internet yang mengharuskan pengguna internet untuk mendaftarkan mac address perangkatnya. Pada kegiatan yang melibatkan aktifitas di luar ruangan seperti upacara, Orientasi Kehidupan dan Kampus (OKK) indoor maupun outdoor, dan aktifitas yang melibatkan banyak peserta, proses presensi membutuhkan waktu lama karena keterbatasan jumlah alat presensi yang hanya berjumlah satu unit untuk masing – masing bagian.

Dari permasalahan tersebut, modul RFID Reader yang digunakan sebagai pembaca kartu RFID dapat digantikan oleh teknologi Near Field Communication (NFC) yang terdapat pada smartphone Android. Keunggulan NFC dibandingkan RFID Reader tersebut antara lain adalah pembacaan kartu yang lebih stabil karena


(14)

NFC telah tertanam di dalam smartphone yang digunakan dan tidak membutuhkan penghubung tambahan dari NFC ke smartphone. Selain itu, NFC yang tersemat pada smartphone memudahkan presensi kegiatan karena sifatnya yang portable alias mudah dibawa kemana pun jika dibandingkan dengan modul RFID Reader yang memerlukan pengemasan yang khusus bersama dengan tablet yang dipakai. Keunggulan lainnya adalah NFC yang ada pada smartphone telah mendukung kartu MiFare Classic yang digunakan sebagai kartu identitas mahasiswa dan karyawan, sedangkan modul RFID Reader yang dijual di pasaran tidak semuanya mendukung pembacaan kartu jenis MiFare Classic, sehingga perpindahan dari penggunaan modul RFID Reader ke NFC tidak memerlukan pergantian kartu RFID yang telah digunakan oleh mahasiswa maupun karyawan.

Dari uraian di atas, maka dibutuhkan sebuah aplikasi yang memanfaatkan NFC pada smartphone untuk membaca kartu RFID agar dapat mengatasi permasalahan presensi kegiatan tersebut. Aplikasi yang dibuat diharapkan dapat membantu Stikom Surabaya dalam melakukan setiap presensi kegiatan dengan cepat dan mengurangi kesalahan yang terjadi akibat kesalahan peletakan cursor dan perubahan mac address.

1.2. Perumusan Masalah

Berdasarkan uraian latar belakang di atas dapat dirumuskan permasalahan yaitu, bagaimana membuat aplikasi berbasis Android yang memanfaatkan NFC sebagai RFID Reader untuk presensi kegiatan di Stikom Surabaya.

1.3. Batasan Masalah

Berdasarkan perumusan masalah di atas, adapun batasan masalah pada penelitian ini adalah sebagai berikut:


(15)

4

1. NFC yang digunakan adalah NFC yang ada pada sistem operasi Android. 2. Smartphone yang didukung oleh aplikasi adalah smartphone yang telah

memiliki fitur NFC.

3. Aplikasi yang dibuat hanya digunakan untuk menangani presensi kegiatan mahasiswa dan karyawan di Stikom Surabaya.

4. Kartu RFID yang digunakan adalah tipe MIFARE Classic 1k.

5. Diasumsikan bahwa bagian panitia kegiatan telah memiliki smartphone yang telah tersedia NFC.

1.4. Tujuan

Mengacu pada perumusan masalah dan batasan masalah, maka tujuan yang ingin dicapai adalah menghasilkan aplikasi presensi kegiatan dengan memanfaatkan fitur NFC pada perangkat smartphone Android sebagai RFID Reader.

1.5. Manfaat Penulisan

Penelitian ini diharapkan memiliki manfaat yaitu:

1. Dapat mempermudah Stikom Surabaya dalam melakukan presensi kegiatan. 2. Dapat menghasilkan informasi presensi yang dapat digunakan oleh bagian

Stikom Surabaya.

3. Dapat menghasilkan laporan presensi kegiatan yang berguna bagi Stikom Surabaya.

1.6. Sistematika Penulisan

Untuk memberikan gambaran menyeluruh terhadap maslaah yang dibahas, maka sistematika penulisan dibagi kedalam beberapa bab yaitu :


(16)

Pada bab ini menjelaskan tentang latar belakang masalah yang ada, perumusan masalah, batasan masalah, tujuan, manfaat, serta sistematika penulisan laporan tugas akhir ini.

BAB II : LANDASAN TEORI

Pada bab ini berisi tentang teori-teori yang dianggap mendukung dan digunakan dalam proses analisis maupun sampai proses perancangan dan pembuatan aplikasi yang digunakan untuk penyelesaian masalah pada perusahaan.

BAB III : ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini diuraikan mengenai perancangan sistem yang terdiri atas penjelasan dari analisa permasalahan, perancangan sistem, sequence diagram, class diagram, struktur basis data serta desain input dan output.

BAB IV : IMPLEMENTASI DAN EVALUASI

Pada bab ini berisi tentang uraian implementasi dari perancangan yang telah dilakukan dan menjelaskan tentang evaluasi dari system yang dibuat.

BAB V : PENUTUP

Pada bab ini dijelaskan tentang penutup yang berisi kesimpulan setelah aplikasi selesai dibuat dan saran untuk proses pengembangan berikutnya.

LAMPIRAN

Dalam bagian ini penulis menyertakan beberapa lampiran yang akan menunjang laporan tugas akhir yang telah dibuat.


(17)

6

BAB II

LANDASAN TEORI

2.1. Pengertian Aplikasi

Menurut Jogiyanto (2003), aplikasi adalah perangkat lunak yang digunakan untuk melayani berbagai macam kebutuhan. Agar perangkat keras dapat berfungsi maka perlu diberikan instruksi – instruksi tertentu yang disebut sebagai perangkat lunak.

2.2. Near Field Communication

Menurut Ozdenizci, Alsadi, Ok, & Coskun (2013), Near Field Communication (NFC) adalah teknologi yang memanfaatkan komunikasi nirkabel jarak pendek dan beroperasi pada gelombang 13,56 MHz serta memiliki kecepatan transmisi data hingga 424 kbit per detik dalam jarak kurang dari 10 cm. Penggunaan NFC pada perangkat Android dapat dilakukan secara peer-to-peer yaitu dengan menghubungkan dua perangkat yang sama – sama aktif atau secara satu arah antara tag RFID dengan NFC.

Gambar 2. 1 Komunikasi NFC dengan obyek lain

Pada tahun 2006, perusahaan Nokia memperkenalkan Nokia 6131 sebagai ponsel genggam pertama yang telah ditanam NFC di dalamnya. Inisiasi yang dilakukan oleh Nokia diikuti oleh perusaahan smartphone lain pada tahun berikutnya. Pada tahun 2013, perusahaan ponsel besar dari korea, Samsung,


(18)

bersama Visa memulai pengembangan NFC untuk digunakan sebagai alat pembayaran bergerak. Google kemudian memperkenalkan sistem pembayaran berbasis NFC yang diberi nama Android Pay menjelang akhir tahun 2015. Sistem pembayaran ini membutuhkan smartphone yang telah ditanami NFC untuk kemudian didekatkan dengan mesin pembayaran elektronik. Android Pay saat ini baru tersedia di Amerika Serikat dan akan diterapkan di Australia pada tahun 2016. Di Indonesia, Telkomsel adalah pionir yang telah menerapkan NFC untuk mobile payment pada kartu TCash mereka.

Sampai saat ini, pengembangan NFC terus dilakukan terutama di bidang akademik yang berhubungan dengan NFC. Sebagai contoh, di bidang layanan kesehatan NFC mampu menyediakan pemantauan dan pengendalian kesehatan jarak jauh. Dan juga terdapat layanan yang memberikan perbaikan kualitas hidup seseorang dengan menggunakan sistem resep berbasis NFC dan penyimpan data medis yang terenkripsi pada NFC tag. Selain layanan kesehatan, NFC memberikan kemudahan lain bagi pengguna yang ingin membeli tiket bioskop, konser, transportasi umum hingga pemesanan kamar hotel.

2.3. Radio Frequency Identification (RFID)

Menurut Simoes, Rodrigues, Veiga, & Ferreira (2011), Radio Frequency Identification (RFID) adalah teknologi yang memanfaatkan medan elektromagnetik yang secara otomatis mengidentifikasi dan melacak tags yang menempel pada suatu obyek. RFID modern pertama kali didemonstrasikan pada tahun 1973 dengan menggunakan gelombang 915 Mhz dan 12-bit tags.

Pada dasarnya, teknologi RFID terdiri dari tag yang mengidentifikasi manusia, hewan atau benda yang dapat mengirim maupun menerima sinyal


(19)

8

elektromagnetik. Cara kerja RFID terdapat dua macam, aktif dan pasif. Pada mode aktif, RFID bekerja dengan memancarkan gelombang elektromagnetik. Sedangkan pada mode pasif, RFID akan menunggu sampai ada gelombang elektromagnetik yang diterima. Beberapa kelebihan RFID adalah:

1. Adanya kemungkinan untuk membedakan setiap tag dengan informasi yang spesifik.

2. Dapat memberi ijin akses atau baca kepada setiap tag.

3. Dapat melakukan pertukaran informasi antara RFID pemancar dengan RFID penerima tanpa melakukan sentuhan sedikitpun.

Meskipun demikian, terdapat beberapa kekurangan dari teknologi RFID, antara lain :

1. Adanya dua atau lebih sinyal yang saling memancarkan, dapat menganggu penerima gelombang yang mengakibatkan ketidaksesuaian respon yang dihasilkan.

2. Data yang disimpan pada RFID bersifat statis dan terbatas, bergantung pada kapasitas memori kartu atau tag.

2.4. Android

Menurut Kasman (2013), Android merupakan sistem operasi yang dikembangkan oleh Google yang berbasis Linux dan didesain untuk perangkat layar sentuh seperti smartphone atau pun komputer tablet. Android memiliki perkembangan yang begitu cepat karena Google memberikan kebebasan bagi para pengembang untuk bisa leluasa menciptakan aplikasi di berbagai perangkat.

Pemberian nama versi Android menggunakan sistem nama hidangan penutup. Dimulai dengan mengunakan nama Android Cupcake sebagai versi


(20)

pertamanya, kini Android telah merilis versi ke enam dengan nama Android Marshmallow. Pada tahun 2015, Android menjadi sistem operasi yang terpopuler digunakan oleh smartphone dan tablet.

2.5. Unified Modeling Language (UML)

Menurut Dennis, Wixom, & Tegarden (2009), Unified Modeling Language (UML) diperkenalkan oleh Grady Booch, Ivar Jacobson, dan James Rumbaugh pada tahun 1995. UML adalah standar yang menyediakan teknik untuk memodelkan pengembangan sistem informasi dengan pendekatan berorientasi objek. Diagram yang disediakan oleh UML antara lain :

1. Diagram use case 2. Diagram aktivitas 3. Diagram sekuensial 4. Diagram kolaborasi 5. Diagram kelas

6. Diagram komponen, dan 7. Diagram deployment

2.5.1 Diagram Use Case

Diagram use case adalah potongan fungsionalitas tingkat tinggi yang disediakan oleh sistem (Sholiq, 2010). Diagram ini menunjukkan beberapa use case dalam sistem, beberapa aktor yang mengakses sistem dan relasi yang dilakukan antar aktor dengan use case. Dalam sebuah sistem, memungkin untuk terdapat lebih dari satu use case. Use case yang dibuat difungsikan dengan tujuan tertentu. Mengelompokkan use case menjadi beberapa paket – paket tertentu menjadikan susuan use case lebih mudah terbaca. Use case juga dapat


(21)

10

menggambarkan fungsi bisnis tertentu dalam sebuah organisasi seperti Departemen Keuangan, Departemen Produksi, dan lain lain.

2.5.2 Diagram Aktivitas

Diagram aktivitas adalah sebuah cara untuk memodelkan alur kerja dari use case bisnis dalam bentuk grafik (Sholiq, 2010). Dalam diagram aktivitas, proses yang dilakukan oleh aktor dalam use case bisnis digambarkan lebih detail sehingga memudahkan untuk dibaca.

2.5.3 Diagram Sekuensial

Diagram sekuensial adalah diagram interaksi yang disusun berdasarkan urutan waktu (Sholiq, 2010). Cara membaca diagram ini adalah dari atas ke bawah. Diagram sekuensial disusun dari use case yang telah dibuat alur utama maupun alur alternatifnya. Sehingga diagram sekuensial akan merepresentasikan satu atau beberapa alur dari use case.

2.5.4 Diagram Kolaborasi

Diagram kolaborasi menampilkan alur skenario tertentu dalam sebuah use case (Sholiq, 2010). Jika diagram sekuensial disusun berdasarkan urutan waktu, maka diagram kolaborasi disusun berdasarkan hubungan antara obyek – obyek yang membangunnya.

2.5.5 Diagram Kelas

Diagram kelas digunakan untuk menampilkan kelas – kelas atau paket – paket dalam sebuah sistem dan menampilkan hubungan yang terjadi antara kelas

– kelas tersebut (Sholiq, 2010). Suatu diagram kelas merupakan turunan dari diagram kelas yang lain. Dalam diagram kelas, terdapat atribut dan fungsi – fungsi yang dimiliki kelas tersebut maupun dari kelas lain.


(22)

2.5.6 Diagram Komponen

Menurut Sholiq (2010), diagram komponen adalah diagram yang memodelkan modul fisik dari kode yang dibangun. Fungsi dari diagram ini adalah agar programmer mengetahui komponen mana yang harus dilakukan kompilasi kode terlebih dahulu, mengingat setiap komponen yang dilakukan kompilasi bersifat dependen dengan komponen yang lain.

2.5.7 Diagram Deployment

Diagram deployment adalah segala hal yang berkaitan dengan penyebaran fisik aplikasi (Sholiq, 2010). Diagram deployment juga menggambarkan layout jaringan serta lokasi komponen – komponen jaringan. Perangkat keras yang digunakan oleh aplikasi juga digambarkan pada diagram ini.

2.6. System Development Life Cycle (SDLC)

Menurut Dennis et al. (2009), Software Development Life Cycle (SDLC) adalah proses memahami bagaimana sistem informasi dapat mendukung kebutuhan bisnis dengan cara menganalisa dan membangun sistem. SDLC membagi pengembangan sistem informasi ke dalam beberapa tahapan, mulai dari analisa hingga implementasi.


(23)

12

Gambar 2. 2 Tahapan dalam SDLC

2.6.1 Tahapan Perencanaan

Menurut Dennis et al. (2009), Software Development Life Cycle (SDLC) adalah proses memahami bagaimana sistem informasi dapat mendukung kebutuhan bisnis dengan cara menganalisa dan membangun sistem. SDLC membagi pengembangan sistem informasi ke dalam beberapa tahapan, mulai dari analisa hingga implementasi.

Menurut Dennis et al. (2009), Tahap perencanaan merupakan proses untuk memahami mengapa sistem informasi perlu dibangun dan bagaimana tim proyek mengerjakannya. Terdapat dua fase dalam tahap perencanaan, yaitu:

1. Fase inisisasi proyek, dan 2. Fase manajemen proyek

2.6.2 Tahapan Analisis

Menurut Dennis et al. (2009), Tahapan analisis berguna untuk menjawab siapa yang menggunakan sistem, apa yang dilakukan oleh sistem, kapan dan dimana sistem tersebut digunakan. Pada tahapan ini, tim proyek mengidentifikasi


(24)

keadaan sistem yang ada dan mencari kelemahan sistem untuk kemudian dikembangkan ke arah yang lebih baik dengan sistem yang baru.

Dalam melakukan analisis sistem, pengembang diharapkan memiliki kemampuan untuk menerjemahkan kebutuhan pengguna dan menemukan peluang yang dapat dilakukan oleh sistem. Pengembang melakukan langkah – langkah untuk menetukan kebutuhan pengguna, teknik dan strategi yang diperlukan dalam melakukan analisis sistem, dan memodelkan konsep serta kebutuhan pengguna ke dalam rancangan yang lebih spesifik dan nyata.

2.6.3 Tahapan Desain

Menurut Dennis et al. (2009), Tahapan ini menentukan bagaimana nantinya sistem akan bekerja, menentukan kebutuhan hardware, software, dan infrastruktur yang dibutuhkan. Termasuk dalam tahapan ini adalah merancang user interface, bentuk laporan dan juga struktur basis data yang digunakan. Terdapat empat langkah pada tahapan ini, yaitu :

1. Membuat strategi yang digunakan dalam mendesain sistem. 2. Mengembangkan desain arsitektur untuk sistem.

3. Membangun basis data dan file specification. 4. Membuat desain program.

2.6.4 Tahapan Implementasi

Tahapan akhir dari SDLC adalah tahapan implementasi dimana sistem mulai dibuat. Tahap implementasi biasanya membutuhkan waktu yang lebih lama dari pada tahapan yang lain, serta membutuhkan biaya yang lebih besar. Pada tahap ini, tim proyek melakukan konstruksi sistem, melakukan uji coba, membuat dokumentasi hingga melakukan pemasangan sistem sesuai permintaan pengguna.


(25)

14

Pengembang dalam melakukan implementasi sistem yang baru juga perlu untuk melakukan perencanaan migrasi dari sistem yang lama ke sistem yang baru. Pengembang diharapkan akan mampu menentukan strategi atau metode apa saja yang diperlukan agar sistem yang baru dapat berjalan dengan baik dan dapat diterima oleh penggunanya. Selain itu, pengembang juga harus selalu memberikan dukungan atau support kepada pengguna atas hal – hal yang terjadi setelah sistem berhasil diimplementasikan.

2.7. Pengujian

Testing adalah proses pemantapan kepercayaan akan kinerja program atau sistem sebagaimana yang diharapkan (Romeo, 2003). Testing atau pengujian merupakan salah satu dari beberapa tahapan yang ada pada pengembangan perangkat lunak (SDLC). Pengujian memberikan keyakinan kepada pengembang bahwa sistem atau aplikasi yang dibuat dapat digunakan dengan baik dan sesuai dengan kebutuhan pengguna.

Dalam pengujian, terdapat beberapa macam cara atau metode yang dilakukan oleh pengembang, antara lain adalah Black Box Testing dan White Box Testing. Black Box Testing digunakan oleh pengembang untuk mengetahui kesalahan yang akan mungkin muncul dari aplikasi tanpa harus mengetahui kode

– kode dari aplikasi. Pengujian tipe ini dapat dilakukan oleh orang yang tidak ikut membangun sistem atau aplikasi.

Sedangkan White Box Testing merupakan metode pengujian dengan desain test case yang menggunakan struktur kendali dari desain prosedural (Romeo, 2003). Dalam pengujian jenis ini, tes dilakukan oleh pengembang sistem atau aplikasi itu sendiri yang lebih mengetahui kode atau desain dari aplikasi.


(26)

Pengujian White Box memastikan bahwa alur logika program telah sesuai dan struktur internal data telah valid.


(27)

16

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Analisis dan perancangan sistem pada aplikasi presensi kegiatan dilakukan dengan menggunakan metode System Development Life Cycle (SDLC). Tahap yang dilakukan adalah tahapan perencanaan, analisis dan desain.

3.1. Perencanaan

Pada tahapan perencanaan, identifikasi masalah dilakukan untuk mengetahui permasalahan yang terdapat pada organisasi lebih dalam. Identifikasi masalah dilakukan dengan cara sebagai berikut:

1. Wawancara

Wawancara dilakukan secara langsung kepada mahasiswa dan karyawan yang sering mengadakan kegiatan di lingkungan Stikom Surabaya.

2. Pengamatan

Pengamatan dilakukan secara langsung ketika suatu kegiatan dilaksanakan. Pengamatan yang dilakukan juga mencakup pencarian data yang akan digunakan oleh sistem.

3. Studi literatur

Studi literatur digunakan untuk mencari referensi informasi yang berhubungan dengan topik yang diusulkan. Studi literatur dilakukan dengan cara mengumpulkan buku, makalah, artikel atau karya tulis lain yang berhubungan dengan topik atau usulan yang diangkat.


(28)

3.2. Tahap Analisis

Analisis dan perancangan sistem dilakukan setelah melakukan identifikasi masalah. Langkah pertama yang dikerjakan adalah dengan membuat Business Use Case berdasarkan hasil pengamatan dan wawancara. Selanjutnya dibuat Activity Diagram berdasarkan Business Use Case yang telah dibuat. Pengembangan dari Activity Diagram adalah System Use Case yang menjelaskan lebih detail proses di dalam aplikasi. Dan kemudian dilanjutkan dengan membuat Flow Of Event untuk memberikan penjelasan lebih detil dari System Use Case.

3.2.1. Business Use Case

Gambar 3.1 adalah bentuk dari Business Use Case untuk aplikasi presensi kegiatan.

Gambar 3. 1 Business Use Case Presensi Kegiatan

Pada Gambar 3.1 terdapat 2 aktor bisnis yaitu Panitia dan Peserta kegiatan serta yang menjadi pekerja bisnis adalah Admin dari aplikasi presensi


(29)

18

kegiatan. Use case yang terjadi adalah pendaftaran kegiatan, presensi kegiatan dan pelaporan presensi kegiatan.

Pada use case pendaftaran kegiatan, aktor bisnis Panitia melakukan pendaftaran kegiatan yang akan dilakukan kepada Admin. Maka kemudian Admin akan meminta data – data yang dibutuhkan seperti data panitia, data kegiatan serta data peserta untuk dimasukkan ke dalam aplikasi. Use case presensi kegiatan merupakan proses presensi kegiatan yang dilakukan setelah melakukan pendaftaran kegiatan. Presensi kegiatan dilakukan oleh Panitia dengan menggunakan perangkat Android yang menggunakan NFC untuk mengabsen peserta kegiatan yang hadir. Sedangkan pada use case pelaporan kegiatan, panitia melihat hasil presensi untuk mengetahui siapa saja dan berapa jumlah peserta kegiatan tersebut.

3.2.2. Activity Diagram

Activity Diagram atau diagram aktifitas menggambarkan lebih detil dari setiap business use case. Gambar 3.2, 3.3 dan 3.4 menyajikan penurunan business use case ke dalam diagram aktifitas.


(30)

Pada Gambar 3.2 Diagram aktifitas pendaftaran kegiatan menjelaskan proses pendaftaran yang dilakukan oleh panitia kegiatan kepada admin aplikasi. Panitia memberikan data kegiatan yang berupa nama kegiatan, tempat kegiatan dilakukan, penyelenggara kegiatan, waktu kegiatan dimulai dan diakhiri, jenis peserta dan nama panitia kegiatan. Kemudian admin akan memasukkan data tersebut dan menyimpan ke dalam database. Proses berhenti setelah data kegiatan berhasil disimpan.

Gambar 3. 3 Diagram Aktifitas Presensi Kegiatan

Pada Gambar 3.3 Diagram aktifitas presensi kegiatan menunjukkan proses presensi kegiatan yang berlangsung. Panitia melakukan login terlebih dahulu ke dalam aplikasi. Kemudian panitia memilih kegiatan yang akan


(31)

20

dilakukan proses presensi. Setelah memilih kegiatan, panitia meminta peserta kegiatan untuk melakukan tapping kartu RFID ke perangkat pembaca RFID. Data kartu yang terbaca kemudian disimpan langsung ke dalam database.

Gambar 3. 4 Diagram Aktifitas Pelaporan Kegiatan

Pada Gambar 3.4 Diagram aktifitas pelaporan kegiatan bertujuan untuk menjelaskan proses pelaporan hasil presensi kegiatan. Panitia terlebih dulu melakukan login ke dalam aplikasi. Selanjutnya panitia memilih kegiatan yang


(32)

akan dilihat laporan hasil presensinya dan kemudian mencetak hasil laporan tersebut.

3.2.3. System Use Case

System Use Case merupakan penurunan dari Business Use Case berdasarkan proses yang ada pada diagram aktifitas. Gambar 3.5 menunjukkan hasil penurunan use case bisnis ke dalam use case sistem.

Gambar 3. 5 System Use Case Aplikasi Presensi Kegiatan

Pada Gambar 3.5 System Use Case Aplikasi Presensi Kegiatan menjelaskan penurunan use case bisnis ke use case sistem menghasilkan use case baru yang menjadikan interaksi antar aktor dengan use case menjadi lebih jelas. Muncul beberapa use case tambahan yang didapat dari beberapa proses pada diagram aktifitas. Use case Login merupakan proses untuk mengenali pengguna aplikasi. Proses ini di-include oleh use case use case lain karena proses login merupakan proses utama sebelum melakukan proses – proses yang lain. Use case


(33)

22

sinkronisasi data digunakan untuk melakukan sinkronisasi data antara aplikasi presensi Android dengan data yang berada pada server. Use case import data merupakan proses pengambilan data presensi offline dan di-merge dengan data pada presensi online.

3.2.4. Flow of Event

Flow of Event merupakan penjelasan dari proses – proses yang dilakukan dari use case yang terdapat pada system use case.

Tabel 3. 1 Tabel Flow Of Event Login Nama Use Case Login

Tujuan Untuk mengenali pengguna yang berhak menggunakan aplikasi.

Prasyarat Tidak ada Kondisi akhir

sukses

Pengguna dikenali dan diarahkan ke halaman utama.

Kondisi akhir gagal

Pengguna tidak dikenali maka aplikasi menampilkan pesan kesalahan.

Aktor utama Admin dan panitia Aktor sekunder Tidak ada

Pemicu Pengguna membuka aplikasi Alur utama Langkah Aksi Utama

1 Pengguna menginputkan username dan kata sandi

2 Pengguna melakukan submit inputan 3 Aplikasi melakukan pengecekan data


(34)

4 Aplikasi mengarahkan pengguna ke halaman utama

5 Use Case berakhir Alur alternatif Langkah Aksi Alternatif

4.1 Aplikasi menampilkan pesan error ketidaksesuaian isian, kembali ke langkah 1.

Tabel 3. 2 Tabel Flow Of Event Tambah Data Kegiatan Nama Use Case Tambah data kegiatan

Tujuan Untuk menambah data kegiatan yang ingin didaftarkan panitia

Prasyarat Login

Kondisi akhir sukses Data kegiatan berhasil ditambahkan Kondisi akhir gagal Data kegiatan sudah ada di database

Aktor utama Admin

Aktor sekunder Panitia

Pemicu Admin memilih menu tambah kegiatan

Alur utama Aksi Utama

1 Admin menginputkan data kegiatan, data panitia dan data peserta.

2 Admin melakukan submit data yang diinputkan.

3 Aplikasi mengecek data kegiatan yang diinputkan dengan data yang ada di database. 4 Aplikasi menyimpan data kegiatan, data

panitian dan data peserta.

5 Aplikasi menampilkan pesan bahwa data telah disimpan.


(35)

24

Alur alternatif Langkah Aksi Alternatif

3.1 Aplikasi menampilkan pesan bahwa telah ada data kegiatan pada database yang hampir sama dengan data kegiatan yang diinputkan, kembali ke tahap 1.

Tabel 3. 3 Tabel Flow Of Event Lihat Laporan Kegiatan Nama Use Case Lihat laporan kegiatan

Tujuan Untuk melihat laporan hasil presensi kegiatan

Prasyarat Login

Kondisi akhir sukses Data kegiatan berhasil ditampilkan Kondisi akhir gagal Data kegiatan tidak ditemukan Aktor utama Panitia

Aktor sekunder

Pemicu Panitia memilih menu lihat laporan kegiatan Alur utama Langkah Aksi Utama

1 Panitia memilih kegiatan yang ingin dilihat laporan presensinya.

2 Aplikasi mengecek data kegiatan sesuai yang dipilih panitia

3 Aplikasi menampilkan laporan presensi kegiatan.

4 Use Case berakhir.

Tabel 3. 4 Tabel Flow Of Event Presensi Kegiatan Nama Use Case Presensi Kegiatan

Tujuan Untuk melakukan presensi kegiatan menggunakan NFC

Prasyarat Login

Kondisi akhir sukses Data presensi berhasil disimpan Kondisi akhir gagal Kartu RFID tidak dikenali


(36)

Aktor utama Panitia

Aktor sekunder Peserta Kegiatan

Pemicu Panitia memilih menu presensi kegiatan Alur utama Langkah Aksi Utama

1 Panitia memilih kegiatan.

2 Aplikasi menampilkan data kegiatan berdasarkan pilihan panitia.

3 Aplikasi stand by menunggu tapping kartu RFID dari peserta.

4 Peserta melakukan tapping kartu RFID pada NFC.

5 Aplikasi menerima nomor tag kartu. 6 Panitia menyimpan seluruh data presensi

peserta.

7 Use Case berakhir. Alur alternatif Langkah Aksi Alternatif

5.1 Aplikasi menampilkan pesan kartu tidak dikenali, kembali ke tahap 4.

Tabel 3. 5 Tabel Flow Of Event Sinkronisasi Data Nama Use Case Sinkronisasi Data

Tujuan Untuk melakukan sinkronisasi data presensi

Prasyarat Login

Kondisi akhir sukses Data berhasil disinkronisasi Kondisi akhir gagal Sinkronisasi data gagal Aktor utama Panitia

Aktor sekunder Tidak ada

Pemicu Panitia memilih menu sinkronisasi data Alur utama Langkah Aksi Utama


(37)

26

1 Panitia memilih kegiatan yang ingin dilakukan sinkronisasi data.

2 Aplikasi melakukan sinkronisasi data pada kegiatan yang telah dipilih panitia

3 Aplikasi menampilkan sinkronisasi data berhasil

4 Use Case berakhir. Alur alternatif Langkah Aksi Alternatif

2.1 Aplikasi menampilkan pesan sinkronisasi gagal karena tidak ada sambungan ke server, kembali ke tahap 1.

2.2 Aplikasi menampilkan pesan tidak ada data yang perlu dilakukan sinkronisasi, lompat ke tahap 4

3.3. Tahap Desain

Tahap desain menjelaskan secara spesifik bagaimana sistem atau aplikasi dibangun nantinya. Dalam tahap desain, dibuat Sequence Diagram untuk menggambarkan pesan yang dikirim antar komponen di dalam aplikasi. Setelah Sequence Diagram, maka Collaboration Diagram dibuat untuk menunjukkan hubungan antar komponen di dalam aplikasi. Dari hubungan tersebut, selanjutnya dibuat Class Diagram untuk mengetahui kelas – kelas apa saja yang diperlukan oleh aplikasi. Component Diagram menunjukkan kelas atau komponen mana yang perlu dilakukan kompilasi terlebih dulu. Dan Deployment Diagram menggambarkan bagaimana aplikasi akan diimplementasikan nantinya.

Conceptual Data Model dan Physical Data Model merupakan diagram yang menunjukkan hubungan antar entitas dan tabel – tabel yang diperlukan di dalam


(38)

database. Sedangkan desain input dan output menunjukkan rancangan user interface dari aplikasi yang akan dibuat.

3.3.1. Sequence Diagram

Sequence Diagram menggambarkan pesan yang dikirim antar komponen dengan aktor yang memulainya. Sequence Diagram dibuat berdasarkan System Use Case yang telah dibuat sebelumnya.

A. Sequence Diagram Login

Gambar 3. 6 Sequence Diagram Login

Pada Gambar 3.6 Sequence Diagram Login menjelaskan proses login dimulai dari admin atau panitia dengan mengisikan username dan password pada form


(39)

28

login. Setelah mengisi form login, admin atau panitia melakukan submit form yang membuat form login mengirimkan pesan kepada controller untuk dilakukan validasi. Controller kemudian mengirimkan pesan kepada entitas User untuk mencari data admin atau panitia pada database.

Jika data ditemukan, maka controller akan memberikan pesan bahwa login berhasil dan mengarahkan admin atau panitia ke halaman selanjutnya. Jika data tidak ditemukan, maka controller akan memberikan pesan bahwa login gagal dan meminta admin atau panitia untuk mengisikan kembali username dan password yang benar.

B. Sequence Diagram Pendaftaran Kegiatan

Gambar 3. 7 Sequence Diagram Pendaftaran Kegiatan

Pada Gambar 3.7 Sequence Diagram Pendaftaran Kegiatan menjelaskan proses pendaftaran kegiatan dimulai dari admin mengisikan data kegiatan dan kemudian melakukan submit form. Data yang di-submit diterima oleh controller.


(40)

Controller akan mengecek apabila terdapat kesesuaian antara data yang diinputkan dengan data yang terdapat pada database. Bila tidak ditemukan data yang sama, selanjutnya controller akan menyimpan data kegiatan, data panitia dan data admin ke dalam database.

Jika proses penyimpanan data berhasil, controller akan memberikan pesan berhasil kepada admin. Dan jika proses penyimpanan gagal, maka controller akan memberikan pesan kesalahan kepada admin.

C. Sequence Diagram Sinkronisasi Data


(41)

30

Pada Gambar 3.8 Sequence Diagram Sinkronisasi Data menjelaskan proses sinkronisasi data yang dilakukan oleh panitia. Sinkronisasi data merupakan proses melakukan penyamaan data yang berada di server dengan data yang berada di perangkat lokal. Penyamaan data perlu dilakukan jika saat proses presensi, perangkat lokal tidak dapat terhubung ke server.

Panitia memilih kegiatan yang akan dilakukan sinkronisasi data di form sinkronisasi. Setelah dipilih, controller akan menampilkan data kegiatan yang dipilih dan menampilkannya ke form sinkronisasi. Kemudian panitia akan mengirim pesan untuk dilakukan sinkronisasi kepada form sinkronisasi yang selanjutnya mengirim pesan sinkronisasi kepada controller. Controller akan membandingkan data yang berada pada perangkat lokal dengan data pada server. Jika terdapat data baru, maka controller akan menambah data baru tersebut ke server.

3.3.2. Collaboration Diagram


(42)

Pada Gambar 3.9 Diagram kolaborasi diatas menggambarkan hubungan antar aktor dengan obyek pada aplikasi dan pesan yang dikirimkan di dalamnya. Pesan – pesan yang dikirimkan tersebut nantinya akan dioleh oleh obyek – obyek tersebut untuk kemudian dikembalikan kembali pada aktor atau obyek lain yang mengirimnya.

3.3.3. Class Diagram

Class Diagram digunakan untuk menampilkan kelas – kelas yang saling berhubungan dalam sistem atau aplikasi. Sebuah aplikasi dapat terdiri dari beberapa diagram kelas yang saling berhubungan.

Pada aplikasi presensi ini, penggambaran diagram kelas menggunakan pendekatan Model-View-Controller (MVC). Dengan pendekatan tersebut, kelas yang dibuat dibagi menjadi beberapa bagian. Kelas yang termasuk dalam Class Model adalah kelas kelas yang berhubungan dengan database atau mewakili entitas yang dibuat termasuk mengelola business logic aplikasi. Kelas yang termasuk dalam Class View adalah kelas – kelas yang berhubungan dengan tampilan atau output pada pengguna aplikasi. Dan kelas yang masuk ke dalam Class Controller merupakan kelas – kelas yang berfungsi untuk menghubungkan komunikasi antara kelas – kelas pada Class View dengan kelas – kelas yang berada pada Class Model.


(43)

32

A. Class Kegiatan

Gambar 3. 10 Diagram Kelas Kegiatan

Pada Gambar 3.10 Diagram Kelas Kegiatan termasuk dalam Class Model, dimana kelas ini yang akan melakukan interaksi dengan database yang berhubungan dengan data kegiatan. Atribut yang terdapat pada kelas kegiatan adalah idKegiatan yang berfungsi untuk menyimpan nomor unik kegiatan, namaKegiatan yang berfungsi untuk menyimpan nama kegiatan, tempatKegiatan yang berfungsi untuk menyimpan tempat kegiatan, tanggalMulai yang berfungsi untuk menyimpan tanggal mulai kegiatan, tanggalSelesai yang berfungsi untuk menyimpan tanggal selesai kegiatan, peserta yang berfungsi untuk menyimpan peserta kegiatan, penyelenggara yang berfungsi untuk menyimpan nama


(44)

penyelenggara dan jenisKegiatan yang berfungsi untuk menyimpan jenis kegiatan yang dilakukan.

Fungsi getter dan setter digunakan untuk mendapatkan dan mengisi nilai atribut – atribut yang terdapat pada kelas kegiatan karena atribut tersebut bersifat private.

B. Class Peserta

Gambar 3. 11 Diagram Kelas Peserta

Pada Gambar 3.11 Diagram Kelas peserta termasuk dalam Class Model dimana kelas ini berhubungan dengan data peserta kegiatan. Atribut yang dimiliki kelas peserta adalah waktuTapping yang berfungsi untuk mencatat waktu peserta kegiatan melakukan tapping kartu, orang yang merupakan instance dari kelas Orang yang berfungsi untuk menyimpan data orang yang melakukan tapping kartu, dan atPanitia yang berfungsi untuk menyimpan data panitia yang melakukan presensi.

Fungsi yang terdapat pada kelas ini juga merupakan fungsi getter dan setter yang bertujuan untuk mendapatkan dan mengisi nilai pada atribut kelas.


(45)

34

C. Class Orang

Gambar 3. 12 Diagram Kelas Orang

Pada Gambar 3.12 Diagram Kelas Orang termasuk dalam Class Model yang berguna untuk melakukan interaksi dengan database yang berhubungan dengan data orang. Atribut pada kelas ini adalah id yang berfungsi untuk menyimpan NIM atau NIK, nama yang berfungsi untuk menyimpan nama orang, noKartu yang berfungsi untuk menyimpan nomor unik kartu RFID yang dimiliki, dan password yang berfungsi untuk menyimpan kata sandi orang tersebut. Fungsi getter dan setter juga terdapat pada kelas ini untuk melakukan pengisian ataupun untuk mendapatkan nilai dari atribut kelas.

D. Class User


(46)

Pada Gambar 3.13 Diagram Kelas User juga termasuk dalam Class Model yang berhubungan dengan data pengguna aplikasi web server. Atribut yang terdapat pada kelas user adalah idUser yang berfungsi untuk menyimpan nomor unik user, orang yang merupakan instance dari kelas Orang yang berfungsi untuk menyimpan data orang yang terdaftar sebagai user dan grup yang berfungsi untuk menyimpan data grup user.

Selain fungsi setter dan getter, ada juga fungsi constructor User() dengan parameter idUser yang bertipe int dan orang yang bertipe Orang, dan fungsi getUsername() untuk mendapatkan id dari kelas Orang serta getPassword() untuk mendapatkan password dari kelas Orang.

E. Class FormLogin

Gambar 3. 14 Diagram Kelas FormLogin

Pada Gambar 3.14 Diagram Kelas FormLogin merupakan kelas yang termasuk Class View karena kelas ini digunakan untuk menampilkan user interface login kepada pengguna aplikasi. Atribut pada kelas ini adalah txtUsername untuk menyimpan username pengguna, txtPassword untuk menampung password pengguna dan btnLogin yang merupakan tombol login.

Fungsi getter pada pada kelas ini untuk mendapatkan nilai dari txtUsername dan txtPassword yang diisikan oleh pengguna. Fungsi submitForm()


(47)

36

digunakan untuk mengirimkan username dan password ke controller. Fungsi onClickListener() dipanggil ketika tombol login diklik oleh pengguna dan kemudian memanggil fungsi submitForm().

F. Class FormPendaftaranKegiatan

Gambar 3. 15 Diagram Kelas FormPendaftaranKegiatan

Pada Gambar 3.15 Diagram Kelas FormPendaftaranKegiatan termasuk dalam Class View karena kelas ini menampilkan halaman pendaftaran kegiatan kepada pengguna aplikasi. Atribut pada kelas ini adalah txtNamaKegiatan untuk menampung data nama kegiatan, txtTempatKegiatan untuk menampung data tempat kegiatan, txtPenyelenggara untuk menampung data penyelenggara, txtTanggalMulai untuk menampung data waktu mulai kegiatan, txtTanggalSelesai untuk menampung data waktu selesai kegiatan, cmbJenisKegiatan untuk menampung data jenis peserta kegiatan dan listPanitia untuk menampung data panitia kegiatan.


(48)

Fungsi getter dan setter kelas ini sama dengan getter dan setter pada kelas lain, yaitu untuk mengisi dan membaca nilai dari atribut – atribut yang terdapat pada kelas FormPendaftaranKegiatan. Fungsi submitForm() digunakan untuk mengirim isian pengguna ke kelas controller.

G. Class CtrlLogin

Gambar 3. 16 Diagram Kelas CtrlLogin

Pada Gambar 3.16 Diagram Kelas CtrlLogin adalah bagian dari Controller Class karena digunakan untuk menghubungkan kelas FormLogin dengan kelas User. Atribut yang terdapat pada kelas ini adalah user yang merupakan instance dari kelas User, username untuk menampung data username dari FormLogin, password untuk menampung data password dari FormLogin dan LoginStatus untuk menampung status login dari pengguna.

Fungsi isLoggedIn() digunakan untuk mengecek apakah suatu pengguna aplikasi sudah melakukan proses login atau belum. Fungsi validasiUser() digunakan untuk melakukan validasi isian username dan password dengan data yang ada pada database. Dan fungsi loadUser() digunakan untuk mengambil data user dari database.


(49)

38

3.3.4 . Component Diagram

Gambar 3. 17 Diagram Komponen

Pada Gambar 3.17 Diagram komponen memberikan panduan bagi pengembang untuk mengetahui komponen mana yang harus terlebih dahulu dilakukan kompilasi. Gambar diatas menunjukkan bahwa komponen yang terdapat pada package Model harus dikompilasi terlebih dahulu karena memiliki dependensi terhadap komponen yang berada pada package View dan package Controller.

3.3.5. Deployment Diagram


(50)

Pada Gambar 3.18 Deployment diagram diatas menggambarkan hubungan antar sistem yang dibangun dengan sistem lainnya. Dari gambar di atas, aplikasi presensi web dan aplikasi presensi Android berhubungan dengan web service untuk dapat mengakses database yang dimiliki Stikom Surabaya.

3.3.6. Conceptual Data Model

Gambar 3. 19 Conceptual Data Model

Pada Gambar 3.19 Conceptual Data Model diatas, ditunjukkan entitas utama yaitu kegiatan, db_rfid, user, grup dan menu. Entitas kegiatan adalah entitas yang memiliki atribut yang berhubungan dengan kegiatan. Entitas kegiatan memiliki relasi many to many dengan entitas db_rfid. Entitas db_rfid adalah entitas web service yang berasal dari database internal STIKOM Surabaya dengan atribut berupa id_rfid, nama, id_kartu dan password. Relasi yang dihasilkan antara entitas kegiatan dengan entitas db_rfid adalah relasi panitia dan relasi peserta.

Entitas user adalah entitas yang menyimpan data pengguna aplikasi yang berasal dari hubungan entitas db_rfid dengan entitas grup. Pada entitas ini terdapat id_user sebagai primary key dan status_user. Entitas grup memiliki atribut


(51)

40

id_grup, nama_grup, dan status_grup. Entitas ini memiliki relasi dengan entitas menu dimana entitas menu digunakan untuk memberikan hak akses terhadap pengguna aplikasi presensi web.

3.3.7. Physical Data Model

Gambar 3. 20 Physical Data Model

Pada Gambar 3.20 Physical Data Model (PDM) adalah bentuk desain yang akan digunakan dalam membuat skema basis data aplikasi nantinya. PDM merupakan hasil generate dari Conceptual Data Model pada sub bab sebelumnya yang menghasilkan beberapa tabel baru sesuai dengan hasil relasi antar entitas. Tabel baru tersebut dihasilkan dari relasi many to many dua entitas. Tabel baru hasil generate CDM adalah peserta, panitia, dan menu_grup.

3.3.8. Struktur Tabel Tabel Kegiatan


(52)

Primary key : id_kegiatan Foreign key : id_grup

Fungsi : Menyimpan data kegiatan Tabel 3. 6 Tabel Kegiatan

No. Field Name

Data Type

Length Constraint

Foreign Key

On Field On Table

1 id_kegiatan integer 11 PK

2 nama_kegiatan varchar 100 3 tempat_kegiatan varchar 50 4 penyelenggara varchar 50 5 waktu_mulai datetime 6 waktu_selesai datetime 7 jenis_kegiatan char 1

8 id_grup integer 11 Id_grup Grup

Tabel Panitia

Nama tabel : Panitia

Primary key : id_kegiatan, id_rfid Foreign key : id_kegiatan, id_rfid


(53)

42

Fungsi : Menyimpan data panitia kegiatan Tabel 3. 7 Tabel Panitia

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_kegiatan integer 11 PK, FK id_kegiatan kegiatan

2 id_rfid varchar 20 PK, FK id_rfid db_rfid

Tabel Peserta

Nama tabel : Peserta

Primary key : id_kegiatan, id_rfid Foreign key : id_kegiatan, id_rfid

Fungsi : Menyimpan data peserta kegiatan Tabel 3. 8 Tabel Peserta

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_kegiatan integer 11 PK, FK id_kegiatan kegiatan

2 id_rfid varchar 20 PK, FK id_rfid db_rfid

3 waktu_tapping datetime

4 id_panitia varchar 20 FK id_rfid db_rfid

Tabel User

Nama tabel : User Primary key : id_user


(54)

Foreign key : id_grup, id_rfid

Fungsi : Menyimpan data pengguna aplikasi presensi web Tabel 3. 9 Tabel User

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_user integer 11 PK

2 id_rfid varchar 20 PK, FK id_rfid db_rfid

3 id_grup integer 11 FK id_grup grup

4 status_user Char 1

Tabel Group

Nama tabel : Grup Primary key : id_grup Foreign key : -

Fungsi : Menyimpan data grup pengguna aplikasi Tabel 3. 10 Tabel Group

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_grup integer 11 PK

2 Nama_grup varchar 50


(55)

44

Group Menu

Nama tabel : Grup_menu Primary key : id_grup, id_menu Foreign key : id_grup, id_menu

Fungsi : Menyimpan data relasi antara tabel grup dan tabel menu Tabel 3. 11 Tabel Grup_menu

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_grup integer 11 PK, FK id_grup Grup

2 id_menu Integer 11 PK, FK id_menu Menu

Tabel Menu

Nama tabel : Menu Primary key : id_menu Foreign key : -

Fungsi : Menyimpan data menu hak akses pengguna aplikasi presensi web

Tabel 3. 12 Tabel Menu

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

1 id_menu integer 11 PK

2 Nama_menu Varchar 50


(56)

No. Field Name Data

Type Length Constraint

Foreign Key On Field On Table

4 Status_menu Char 1

3.3.9. Desain Input dan Output

Desain input dan output merupakan rancangan awal tampilan masukan maupun keluaran aplikasi. Desain input dan output menunjukkan bagaimana cara pengguna dapat berinteraksi dengan aplikasi yang dibuat. Berdasarkan desain input dan output, maka selanjutnya dapat dikerjakan tampilan aplikasi yang akan dibuat. Desain input dan output pada aplikasi ini mencakup desain input dan output pada aplikasi presensi web dan aplikasi presensi Android.

Desain Halaman Login Web

Gambar 3. 21 Desain Halaman Login Web

Pada Gambar 3.21 Halaman login web digunakan oleh admin atau panitia yang akan mengakses aplikasi presensi web. Pada tampilan Login Web, pengguna mengisikan NIM atau NIK ke kolom isian username dan mengisikan kata sandi


(57)

46

pada kolom isian password. Kemudian pengguna mengklik tombol Login untuk melakukan submit isian.

Desain Halaman Data Kegiatan

Gambar 3. 22 Desain Halaman Data Kegiatan

Pada Gambar 3.22 Desain Halaman data kegiatan ditampilkan kepada pengguna setelah pengguna aplikasi berhasil melakukan login. Data kegiatan yang ditampilkan untuk pengguna disesuaikan dengan grup pengguna. Bagi pengguna aplikasi yang merupakan bagian dari panitia kegiatan, maka data kegiatan yang ditampilkan hanya kegiatan yang sedang berlangsung dimana panitia tersebut didaftarkan. Dari halaman ini, pengguna bisa melihat detil kegiatan dan juga peserta yang sudah melakukan presensi pada kegiatan tersebut. Selain itu, pengguna juga dapat mencetak laporan presensi kegiatan ke dalam bentuk pdf. Tombol tambah kegiatan digunakan oleh pengguna yang termasuk dalam user aplikasi. Sedangkan panitia tidak dapat menggunakan tombol tersebut.


(58)

Desain Halaman Pendaftaran Kegiatan

Gambar 3. 23 Desain Halaman Pendaftaran Kegiatan

Pada Gambar 3.23 Desain Halaman pendaftaran kegiatan digunakan oleh pengguna yang terdaftar untuk mendaftarkan kegiatannya. Halaman ini tidak dapat diakses oleh pengguna yang terdaftar sebagai panitia. Pada halaman ini, pengguna mengisikan nama kegiatan, tempat kegiatan berlangsung, penyelenggara kegiatan, tanggal mulai dan tanggal selesai kegiatan, waktu mulai presensi hingga waktu selesai presensi dan peserta kegiatan serta panitia yang bertugas melakukan proses presensi kegiatan. Setelah mengisi semua kolom isian, pengguna melakukan submit form dengan mengklik tombol simpan. Tombol batal digunakan untuk membatalkan pendaftaran dan kembali ke halaman utama atau form data kegiatan.


(59)

48

Desain Halaman Detail Kegiatan

Gambar 3. 24 Desain Halaman Detail Kegiatan

Pada Gambar 3.24 Desain Halaman detail kegiatan ini digunakan untuk menampilkan detail kegiatan yang telah didaftarkan. Detail kegiatan menampilkan nama kegiatan, tempat kegiatan berlangsung, penyelenggara kegiatan, waktu kegiatan berlangsung dan daftar peserta kegiatan. Pada halaman ini juga terdapat tombol cetak untuk mencetak laporan kegiatan ke dalam bentuk pdf.


(60)

Desain Halaman Login Android

Gambar 3. 25 Desain Halaman Login Android

Pada Gambar 3.25 Desain Tampilan halaman login Android digunakan oleh panitia untuk dapat masuk ke dalam aplikasi presensi. Panitia mengisikan NIM atau NIK pada kolom isian username dan kata sandi ke dalam isian password. Selanjutnya panitia mengklik tombol login untuk masuk ke dalam aplikasi.

Pengguna yang memiliki akses akan langsung diarahkan ke halaman utama aplikasi. Aplikasi akan menampilkan pesan kesalahan apabila username


(61)

50

atau password tidak sesuai atau pengguna tidak memiliki hak akses sebagai panitia kegiatan.

Desain Halaman Login Android

Gambar 3. 26 Desain Halaman Data Kegiatan Android

Pada Gambar 3.26 Desain halaman data kegiatan android menampilkan seluruh kegiatan yang sedang berlangsung sesuai dengan daftar kegiatan yang dimiliki oleh panitia yang sedang login. Panitia dapat memilih dari daftar kegiatan


(62)

yang ditampilkan untuk bisa masuk ke halaman presensi dan menampilkan data peserta dengan menekan tombol presensi.

Desain Halaman Tapping Kegiatan Android

Gambar 3. 27 Desain Halaman Tapping Kegiatan Android

Pada Gambar 3.27 Desain Halaman Form tapping kegiatan digunakan oleh panitia untuk melakukan proses presensi dengan menempelkan kartu RFID peserta ke area NFC perangkat. Nomor kartu yang terbaca oleh aplikasi kemudian ditampilkan pada kolom Kode Kartu. Jika aplikasi dapat tersambung ke server, maka aplikasi akan melakukan query NIM atau NIK dan nama peserta dan menampilkannya pada kolom NIM / NIK dan nama. Tombol simpan hanya


(63)

52

digunakan bila kartu tidak dapat dikenali dan panitia mengisikan kolom NIM / NIK secara manual.

Desain Halaman Info Kegiatan Android

Gambar 3. 28 Desain Halaman Info Kegiatan Android

Pada Gambar 3.28 Desaian Halaman info kegiatan ini menampilkan data mengenai kegiatan yang dipilih oleh panitia untuk dilakukan proses presensi. Pada halaman ini, ditampilkan nama kegiatan, tempat kegiatan, penyelenggara, waktu mulai kegiatan, waktu selesai kegiatan dan jenis peserta kegiatan.


(64)

Desain Halaman Data Peserta Kegiatan Android

Gambar 3. 29 Desain Halaman Data Peserta Kegiatan Android

Pada Gamabar 3.29 Desain Halaman data presensi menampilkan seluruh data peserta yang telah melakukan proses presensi atau tapping ke aplikasi presensi. Halaman ini menampilkan NIM atau NIK peserta, nama peserta dan waktu saat peserta melakukan tapping. Data peserta yang ditampilkan sesuai dengan kegiatan yang dipilih dihalaman utama.


(65)

54

3.4. Tahap Pengujian

Pengujian dilakukan dengan membuat test plan berdasarkan fungsionalitas tiap form yang dirancang. Pengujian yang dilakukan menggunakan metode Black Box Testing dengan mengamati hasil keluaran dari tiap fungsi yang diuji coba.

3.4.1. Desain Pengujian Halaman Login

Tabel 3. 13 Tabel Desain Pengujian Halaman Login

No Tujuan Input Output Diharapkan

1. Menguji textbox password

Gabungan huruf dan

angka

Karakter yang diinputkan tampil sebagai simbol *

2. Menguji validasi isian

NIM / NIK dan kata sandi yang

benar

Menampilkan halaman utama dan nama pengguna

3. Menguji validasi isian

NIM / NIK dan kata sandi yang

salah

Menampilkan pesan kesalahan

4 Menguji validasi hak akses

NIM / NIK dan kata sandi bukan panitia

Menampilkan pesan kesalahan hak akses

3.4.2. Desain Pengujian Halaman Data Kegiatan Web

Tabel 3. 14 Tabel Desain Pengujian Halaman Data Kegiatan Web

No Tujuan Input Output Diharapkan

1. Menampilkan Data Kegiatan

Data kegiatan tampil sesuai dengan hak akses

2. Menguji

visibilitas tombol tambah kegiatan

Login berdasarkan

hak akses

Tombol login hanya muncul pada pengguna berstatus user dan tidak muncul pada panitia

3. Menguji tombol tambah kegiatan

Tombol tambah kegiatan

Menampilkan halaman


(66)

4. Menguji tombol detil kegiatan

Tombol detil kegiatan

Menampilkan form detil kegiatan 5. Menguji tombol

cetak laporan

Tombol cetak laporan

Menampilkan halaman pdf hasil cetak laporan

3.4.3 . Desain Pengujian Halaman Pendaftaran Kegiatan

Tabel 3. 15 Tabel Desain Pengujian Halaman Pendaftaran Kegiatan Web

No Tujuan Input Output Diharapkan

1. Menguji tombol pilih waktu kegiatan

Tombol pilih waktu kegiatan

Tampil datepicker untuk memilih waktu kegiatan

2. Menguji tombol tambah panitia

Tombol tambah panitia

Ada baris baru pada tabel panitia 3. Menguji tombol

simpan

Tombol simpan Aplikasi menyimpan kegiatan dan mengosongkan form isian

4. Menguji tombol batal

Tombol batal Mengosongkan form isian dan kembali ke halaman utama

3.3.4. Desain Pengujian Halaman Login Android

Tabel 3. 16 Tabel Desain Pengujian Halaman Login Android

No Tujuan Input Output Diharapkan

1. Menguji textbox password

Password Data 1

Karakter yang diinputkan tampil sebagai simbol *

2. Menguji validasi isian

Username Data 1, Password

Data 1

Menampilkan halaman utama

3. Menguji validasi isian

Username Data 1, Password

Data 2

Menampilkan pesan kesalahan

4. Menguji koneksi ke server

Menampilkan pesan tidak dapat terhubung ke server


(67)

56

3.3.5. Desain Pengujian Halaman Daftar Kegiatan Android

Tabel 3. 17 Tabel Desain Pengujian Halaman Daftar Kegiatan Android

No Tujuan Input Output Diharapkan

1. Menampilkan Data Kegiatan

Data kegiatan tampil sesuai dengan hak akses

2. Menguji tombol buka presensi kegiatan

Tombol buka presensi

Menampilkan halaman presensi

3.3.6. Desain Pengujian Halaman Tapping Kegiatan Android

Tabel 3. 18 Tabel Desain Pengujian Halaman Tapping Kegiatan Android

No Tujuan Input Output Diharapkan

1. Menguji fungsi info kegiatan

Info kegiatan menampilkan data dengan benar

2. Menguji tombol simpan manual

Tombol simpan manual

Menampilkan pesan data tersimpan

3.3.7. Desain Pengujian Halaman Data Peserta Kegiatan

Tabel 3. 19 Tabel Desain Pengujian Halaman Data Peserta Kegiatan

No Tujuan Input Output Diharapkan

1. Menampilkan Data Peserta

Data peserta tampil sesuai dengan kegiatan yang dipilih


(68)

57

BAB IV

IMPLEMENTASI DAN PENGUJIAN

Tahap akhir dari SDLC adalah tahap implementasi. Pada tahap ini, aplikasi yang dirancang benar – benar dibangun berdasarkan desain yang telah dibuat sebelumnya. Pada tahap implementasi, selain membangun aplikasi dengan melakukan coding, pengujian juga dilakukan untuk memastikan aplikasi dapat berjalan dengan baik ketika digunakan oleh pengguna.

4.1. Kebutuhan Aplikasi

Tahapan implementasi adalah tahapan dimana sistem atau aplikasi yang

dirancang telah siap untuk dibangun atau dikembangkan berdasarkan kebutuhan pengguna. Dalam melakukan pengembangan aplikasi, diperlukan beberapa peralatan atau tools yang dapat membantu agar aplikasi dapat dikembangkan dan berjalan dengan baik. Kebutuhan tersebut dibagi menjadi dua bagian, yaitu kebutuhan perangkat lunak dan kebutuhan perangkat keras.

4.1.1. Kebutuhan Perangkat Lunak

Kebutuhan perangkat lunak untuk aplikasi presensi terbagi menjadi dua, yaitu kebutuhan perangkat lunak untuk aplikasi presensi web dan aplikasi presensi Android karena memiliki perbedaan platform. Perangkat lunak yang diperlukan dalam mengembangkan aplikasi presensi web adalah minimal sebagai berikut:

a. Sistem Operasi Microsoft Windows atau Ubuntu b. Apache Web Server

c. MySql Database Management System d. Sublime Text 3 atau Notepad++


(69)

58

e. Astah Professional f. Power Designer 16.5 g. Balsamiq Mockup h. Git

Sedangkan kebutuhan minimal perangkat lunak yang diperlukan untuk mengembangkan aplikasi presensi Android yaitu :

a. Sistem Operasi Microsoft Windows b. Android Studio 2.1.2

c. ADB Debugging Interface Driver

4.1.2. Kebutuhan Perangkat Keras

Kebutuhan perangkat keras yang diperlukan agar aplikasi dapat berjalan dengan baik terbagi menjadi dua, yaitu perangkat keras untuk menjalankan aplikasi presensi web dan perangkat keras untuk menjalankan aplikasi presensi Android. Kebutuhan minimal perangkat keras untuk aplikasi web adalah sebagai berikut:

a. Intel Dual Core 2.0 GHz

b. Memori RAM minimal 2 Gigabytes c. Wireless Router B/G/N 2.4 GHz d. Layar monitor 14 inch

e. Keyboard f. Mouse

Sedangkat kebutuhan minimal perangkat keras untuk menjalankan aplikasi presensi Android yaitu Android Smartphone dengan sistem operasi minimal Ice Cream Sandwich dan telah tersedia NFC di dalamnya.


(70)

4.2. Implementasi Aplikasi

Implementasi aplikasi merupakan tahapan membangun aplikasi berdasarkan rancangan yang telah dibuat sebelumnya. Pada tahapan ini ditampilkan hasil tampilan dan uji coba pengerjaan aplikasi.

4.2.1 Halaman Login Web

Gambar 4. 1 Halaman Login Aplikasi Presensi Web

Pada Gambar 4.1 Halaman login Aplikasin Presensi Web ini digunakan sebagai pengamanan pada aplikasi. Pengguna harus mengisi username dan password miliknya lalu menekan tombol masuk. Aplikasi kemudian mengecek kesesuaian antara username dan password yang diisikan. Jika benar, maka selanjutnya aplikasi akan membawa pengguna ke halaman utama, namun jika salah maka aplikasi akan menampilkan pesan kesalahan kepada pengguna dan menampilkan halaman login kembali.


(71)

60

4.2.2 Halaman Data Kegiatan Web

Gambar 4.2 Halaman Data Kegiatan

Pada Gambar 4.2 Halaman data kegiatan menampilkan semua kegiatan yang telah didaftarkan sesuai dengan hak akses dan grup yang dimiliki pengguna. Bagi pengguna yang hanya memiliki hak akses sebagai panitia, maka tombol tambah kegiatan tidak akan muncul. Terdapat tiga tombol yang dapat digunakan untuk melihat detail kegiatan, mengubah kegiatan dan menghapus kegiatan. Tombol hapus kegiatan akan muncul bila kegiatan yang didaftarkan belum memiliki peserta.

4.2.3 Halaman Pendaftaran Kegiatan


(72)

Pada Gambar 4.3 Halaman pendaftaran kegiatan adalah halaman yang digunakan untuk menambah kegiatan. Pada halaman ini, pengguna mengisikan nama kegiatan, tempat kegiatan, penyelenggara, waktu kegiatan, jenis peserta dan panitia kegiatan. Agar pengguna dapat menyimpan kegiatan baru, maka diperlukan minimal satu panitia yang bertindak sebagai pengguna aplikasi presensi di perangkat Android. Setelah data kegiatan disimpan, maka pengguna akan diarahkan kembali oleh aplikasi ke halaman utama.

4.2.4 Halaman Login Android

Gambar 4.4 Halaman Login Android

Pada Gambar 4.4 Halaman login Android digunakan oleh panitia untuk masuk ke dalam aplikasi presensi Android. Halaman ini akan menampilkan pesan kesalahan jika pengguna tidak mengisikan username dan password yang benar.


(73)

62

Selain itu, bila pengguna bukan seorang panitia kegiatan, maka aplikasi akan menampilkan pesan bahwa pengguna tidak memiliki hak akses ke dalam aplikasi.

4.2.5 Halaman Data Kegiatan Android

Gambar 4.5 Halaman Data Kegiatan Android

Pada Gambar 4.5 Halaman data kegiatan Android ini menampilkan data kegiatan yang dapat dilakukan oleh panitia kegiatan. Data kegiatan yang muncul adalah data kegiatan yang sedang berlangsung ketika panitia menggunakan aplikasi tersebut. Aplikasi hanya akan menampilkan kegiatan sesuai dengan data kegiatan yang didaftarkan kepada panitia.


(74)

Panitia dapat melakukan presensi kegiatan dengan menekan tombol presensi sesuai kegiatan yang dipilih. Selanjutnya panitia akan dibawa ke halaman presensi kegiatan.

4.2.6 Halaman Tapping Kegiatan Android

Gambar 4.6 Halaman Tapping Kegiatan Android

Pada Gambar 4.6 Halaman Tapping kegiatan android menampilkan form untuk melakukan tapping kegiatan. Bila aplikasi telah menampilkan halaman ini, maka selanjutnya panitia dapat mulai melakukan proses presensi kegiatan dengan menyentuhkan kartu identitas peserta ke area NFC perangkat Android. Kartu yang telah dibaca oleh aplikasi, selanjutnya akan ditampilkan kode kartu pada field kode kartu. Bila aplikasi dapat terhubung ke server, maka aplikasi akan melakukan query data ke server berdasarkan kode kartu yang telah dibaca. Bila kartu dikenali maka


(75)

64

aplikasi akan menampilkan data NIM atau NIK dan nama peserta kegiatan. Bila kartu tidak dikenali, maka aplikasi akan menampilkan pesan bahwa kartu tidak dikenali.

4.2.7 Halaman Data Peserta Kegiatan

Gambar 4.7 Halaman Data Peserta Kegiatan

Pada Gambar 4.7 Halaman data peserta kegiatan menampilkan data peserta yang telah melakukan proses presensi sesuai dengan kegiatan yang dipilih. Jika tidak ada peserta yang melakukan proses presensi, maka data peserta diatas akan kosong.

4.3 Pengujian Aplikasi

Pengujian aplikasi dilakukan untuk memastikan bahwa aplikasi yang dibangun telah sesuai dengan rancangan yang dibuat. Pengujian aplikasi


(76)

menggunakan metode Black Box Testing dengan hasil yang ditampilkan pada tabel

– tabel dibawah.

4.3.1 Hasil Pengujian Form Login

Tabel 4. 1 Desain Data Pengujian Halaman Login Web

Data Username Password Hak Akses

1. 1241010001 12345 Ada

2. 1241010002 11223 Tidak


(77)

66

Gambar 4.9 Hasil Uji Validasi Isian Benar


(78)

Gambar 4.11 Hasil Uji Validasi Hak Akses

Tabel 4.2 Tabel Hasil Pengujian Halaman Login Web

No Tujuan Input Output Diharapkan Hasil

1. Menguji textbox password

Password Data 1

Karakter yang

diinputkan tampil sebagai simbol *

Berhasil (Gambar 4.8) 2. Menguji

validasi isian benar

Username Data 1, Password

Data 1

Menampilkan halaman utama dan nama pengguna

Berhasil (Gambar 4.9)

3. Menguji validasi isian salah

Username Data 1, Password

Data 2

Menampilkan pesan kesalahan

Berhasil (Gambar 4.10)

4 Menguji validasi hak akses

Username Data 2, Password

Data 2

Menampilkan pesan kesalahan hak akses

Berhasil (Gambar 4.11)


(79)

68

4.3.2 Hasil Pengujian Halaman Data Kegiatan

Gambar 4.12 Hasil Uji Tampilan Data Kegiatan

Gambar 4.13 Hasil Uji Visibilitas Tombol Tambah Kegiatan


(80)

Gambar 4.15 Hasil Uji Tombol Detail Kegiatan

Gambar 4.16 Hasil Uji Tombol Cetak Laporan Tabel 4.3 Tabel Hasil Pengujian Halaman Data Kegiatan

No Tujuan Input Output Diharapkan Hasil

1. Menampilkan Data Kegiatan

Data kegiatan tampil sesuai dengan hak akses

Berhasil (Gambar 4.12) 2. Menguji

visibilitas tombol tambah kegiatan

Login berdasarkan

hak akses

Tombol tambah kegiatan hanya

muncul pada

pengguna berstatus user dan tidak muncul pada panitia

Berhasil (Gambar 4.13)

3. Menguji

tombol tambah kegiatan

Tombol tambah kegiatan

Menampilkan

halaman pendaftaran kegiatan

Berhasil (Gambar 4.14)


(81)

70

No Tujuan Input Output Diharapkan Hasil

4. Menguji

tombol detail kegiatan

Tombol detil kegiatan

Menampilkan form detil kegiatan

Berhasil (Gambar 4.15) 5. Menguji

tombol cetak laporan

Tombol cetak laporan

Menampilkan

halaman pdf hasil cetak laporan

Berhasil (Gambar 4.16)

4.3.3 Hasil Pengujian Halaman Pendaftaran Kegiatan

Gambar 4.17 Hasil Uji Tombol Pilih Waktu Kegiatan

Gambar 4.18 Hasil Tombol Uji Tambah Panitia


(82)

Gambar 4.20 Hasil Uji Validasi Isian

Tabel 4.4 Tabel Hasil Pengujian Halaman Pendaftaran Kegiatan

No Tujuan Input Output Diharapkan Hasil

1. Menguji tombol pilih waktu

kegiatan

Tombol pilih waktu

kegiatan

Tampil datepicker untuk memilih waktu kegiatan

Berhasil (Gambar 4.17)

2. Menguji tombol tambah panitia Tombol tambah panitia

Ada baris baru pada tabel panitia

Berhasil (Gambar 4.18)

3. Menguji tombol simpan

Tombol simpan

Aplikasi menyimpan

kegiatan dan

mengosongkan form isian

Berhasil (Gambar 4.19) 4. Menguji

validasi isian

Menampilkan pesan kesalahan bila isian form tidak lengkap

Berhasil (Gambar 4.20)


(83)

72

4.3.4 Hasil Pengujian Halaman Login Android

Gambar 4.21 Hasil Uji Textbox Password


(84)

Gambar 4.23 Hasil Uji Validasi Isian Salah


(85)

74

Tabel 4.5 Tabel Hasil Pengujian Halaman Login Android

No Tujuan Input Output Diharapkan Hasil

1. Menguji textbox password

Password Data 1

Karakter yang

diinputkan tampil sebagai simbol *

Berhasil (Gambar 4.21) 2. Menguji

validasi isian

Username Data 1, Password

Data 1

Menampilkan halaman utama

Berhasil (Gambar 4.22) 3. Menguji

validasi isian

Username Data 1, Password

Data 2

Menampilkan pesan kesalahan

Berhasil (Gambar 4.23)

4. Menguji koneksi ke server

Menampilkan pesan tidak dapat terhubung ke server

Berhasil (Gambar 4.24)

4.3.5 Hasil Pengujian Halaman Daftar Kegiatan Android


(1)

4.3.6 Hasil Pengujian Halaman Tapping Kegiatan

Gambar 4.27 Hasil Uji Fungsi Info Kegiatan


(2)

77

Tabel 4.7 Tabel Hasil Pengujian Halaman Tapping Kegiatan

No Tujuan Input Output Diharapkan Hasil

1. Menguji fungsi info kegiatan

Info kegiatan

menampilkan data dengan benar

Berhasil

2. Menguji tombol simpan manual

Tombol simpan manual

Menampilkan pesan data tersimpan

Berhasil

4.3.6 Hasil Pengujian Halaman Data Peserta Kegiatan

Gambar 4.29 Hasil Uji Tampilan Data Peserta

Tabel 4.8 Tabel Hasil Pengujian Halaman Data Peserta Kegiatan

No Tujuan Input Output Diharapkan Hasil

1. Menampilkan Data Peserta

Data peserta tampil sesuai dengan kegiatan yang dipilih

Berhasil (Gambar 4.29)


(3)

4.4 Uji Coba Pengguna

Berdasarkan hasil pengujian aplikasi yang telah dilakukan, selanjutnya dilakukan uji coba pengguna untuk menentukan layak tidaknya aplikasi ini diterapkan di Stikom Surabaya. Uji coba pengguna dilakukan dengan memberi kuisioner kepada calon pengguna aplikasi nantinya. Bobot penilaian kuisioner tercantum pada Tabel 4.9

Tabel 4.9 Bobot Penilaian Kuisioner

No. Keterangan Pilihan Poin

1. Sangat setuju SS 5

2. Setuju S 4

3 Tidak Setuju TS 2

4 Sangat tidak setuju STS 1

Skor tertinggi untuk seluruh item adalah jumlah sampel x 5 (Sangat Setuju). Skor terendah adalah jumlah sampel x 1 (Sangat Tidak Setuju). Tingkat persetujuan didapatkan dari (jumlah skor : <jumlah responden x skor tertinggi >) x100 %.

Selanjutnya, hasil pengolahan data dari kuisoner yang diberikan kepada 9 responden calon pengguna aplikasi terdapat pada Tabel 4.10.


(4)

79

Tabel 4.10 Hasil Pengolahan Kuisioner

No Pertanyaan Penilaian Total Perhitungan Hasil 1 2 4 5

1 Kebutuhan untuk menggunakan aplikasi sangat tinggi

0 0 3 6 42 42 / 45 * 100%

93%

2 Aplikasi mudah dipahami

0 0 5 4 40 42 / 45 * 100%

88% 3 Aplikasi mudah

dipelajari

0 0 5 4 40 42 / 45 * 100%

88% 4 Tata letak tampilan

mudah dilihat dan dikenali

0 0 2 7 43 42 / 45 * 100%

95%

5 Informasi yang disajikan mudah dimengerti

0 0 5 4 40 42 / 45 * 100%

93%

6 Informasi yang disajikan akurat

0 0 4 5 41 42 / 45 * 100%

91% 7 Laporan dapat

dihasilkan dengan mudah

0 0 2 7 43 42 / 45 * 100%

90%

8 Laporan yang dihasilkan sesuai dengan kebutuhan

0 0 3 6 42 42 / 45 * 100%

93%

9 Anda puas dengan manfaat dari aplikasi

0 0 2 7 43 42 / 45 * 100%

90% 10 Anda mengajurkan

kepada orang lain untuk menggunakan aplikasi tersebut

0 0 3 6 42 42 / 45 * 100%

93%

Total 0 0 34 56 416 416 / 450 * 100%

92,4%

Dari hasil pengolahan kuisioner diatas didapatkan angka 92.4%. Dengan nilai tersebut maka aplikasi presensi kegiatan ini dapat dikatakan layak untuk diterapkan di Stikom Surabaya.


(5)

80 BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan yang dapat diambil dari pembuatan Rancang Bangun Aplikasi Presensi Kegiatan Dengan Memanfaatkan NFC Sebagai RFID Reader Pada Smartphone Android adalah sebagai berikut:

1. Aplikasi yang dibangun dapat memudahkan pengguna dalam melakukan presensi kegiatan di lingkungan kampus Stikom Surabaya.

2. Aplikasi ini dapat bekerja dalam sistem offline bila aplikasi tidak dapat tersambung ke jaringan server Stikom Surabaya.

5.2 Saran

Berdasarkan aplikasi yang dibuat, saran yang dapat diberikan untuk pengembangan aplikasi adalah:

1. Aplikasi dapat diintegrasikan dengan sistem presensi kegiatan belajar mengajar yang sudah ada.

2. Aplikasi dapat dikembangkan untuk perangkat lain yang berbeda platform seperti iOS.Aplikasi yang akan datang disarankan terintegrasi dengan berbagai macam gadget yang tentunya sesuai dengan spesifikasi, sehingga Direktur dapat mengetahui laporan dari gadget yang ada.


(6)

81

DAFTAR PUSTAKA

Dennis, A., Wixom, B. H., & Tegarden, D. (2009). System Analysis Design UML Version 2.0. New Jersey: Wiley.

Jogiyanto. (2003). Sistem Teknologi Informasi Pendekatan Terintegrasi: Konsep Dasar, Teknologi, Aplikasi, Pengembangan dan Pengelolaan. Yogyakarta: Penerbit ANDI.

Kasman, A. D. (2013). Kolaborasi Dahsyat Android Dengan PHP dan MySQL. Yogyakarta: Penerbit Lokomedia.

Ozdenizci, B., Alsadi, M., Ok, K., & Coskun, V. (2013). Classification of NFC Applications in Diverse Service Domains. International Journal of Computer and Communication Engineering, 614-620.

Sholiq. (2010). Analisis dan Perancangan Berorientasi Obyek. Bandung: Muara Indah. Simoes, D., Rodrigues, V., Veiga, L., & Ferreira, P. (2011). RFID and NFC in the Future of Mobile Computing. In M. M. Cruz-Cunha, & F. Moreira, Handbook of Research on Mobility and Computing: Evolving Technologies and Ubiquitous Impacts (p. 719). Hershey: IGI Global.