Analisis Kebutuhan Analisa dan Desain Sistem

26

BAB III ANALISIS DAN PERANCANGAN

3.1 Analisis Kebutuhan

Aplikasi yang akan dibangun diharapkan nantinya dapat digunakan untuk membantu orang yang awam dengan teknologi informasidalam melakukan setting hotspot dan manajemen user hotspot. Pengguna membutuhkan aplikasi yang dapat melakukan setting hotspot secara otomatis dan membutuhkan menu untuk menambah, mengubah, dan menghapus user hotspot. Berikut ini adalah rincian kebutuhan fungsional dan non fungsional aplikasi: 3.1.1 Kebutuhan Fungsional Tabel 3.1 Kebututuhan Fungsional Kebutuhan Fungsional Keterangan Login Menghubungkan dengan router mikrotik, mengaktifkan API dan setting hotspot. Mengatur IP Gateway internet Mengisi atau mengubah IP gateway internet. Melihat user aktif Melihat user yang sedang terkoneksi. Manajemen kuota Menambahdan menghapus kuota waktu. Manajemen user hotspot Menambah dan menghapus user hotspot. Melihat daftar user Melihat keseluruhan yang terdaftar. 3.1.2 Kebutuhan Non Fungsional a. Performansi Aplikasi ini dalam kondisi siap dijalankan selama 24 jam jika komputer dalam kondisi hidup dan terhubung dengan router mikrotik. b. Kebutuhan adaptasi lokal Aplikasi membutuhkan file konfigurasi untuk router mikrotik yang nantinya dikirim secara FTP.

3.2 Analisa dan Desain Sistem

3.2.1 Gambaran Umum Sistem Pada aplikasi yang akan dibangun ini nantinya admin hotspot akan dimudahkan dalam setting hotspot. Admin hanya perlu login dengan mengisikan ip default mikrotik, port dan username untuk setting hotspot .Sedangkan untuk manajemen user bisa dilakukan setelah login berhasil. Berikut ini adalah gambaran umum sistem yang digambarkan dalam bentuk flowchart. Flowchart dibawah ini menggambarkan proses dari awal hingga menu manajemen user bisa digunakan. . Username dan password Login Username password sesuai Mulai Jika belum ada setting hotspot Menampilkan Menu Manajemen hotspot YA TIDAK TIDAK YA Selesai Cek username dan password Menghubungkan dengan router Upload file konfigurasi hotspot Manajemen hotspot Restore Konfigurasi hotspot Gambar 3.1 Gambaran Umum Sistem 3.2.2 Model Use case 3.2.2.1. Aktor Hanya ada satu jenis aktor dalam aplikasi ini. Aktor tersebut adalah seseorang yang diberi wewenang sebagai admin untuk melakukan setting hotspot dan manajemen user hotspot. Aktor ini berhak mengakses seluruh menu aplikasi. 3.2.2.2. Use case Diagram Manajemen Kuota Lihat User aktif Setting gateway Lihat daftar user profile Setting Hotspot Tambah user profile Hapus user profile Login depends on depends on depends on depends on admin include Manajemen User Tambah user Hapus user Lihat daftar User depends on depends on depends on depends on Ubah password Admin depends on Gambar 3.2 Use case Diagram 3.2.2.3. Narasi Use Case Skenario Use case merupakan deskripsi dari interaksi antara aktor atau pengguna terhadap system. 1. Login Use case : Login Pre kondisi : sistem sudah berjalan running Actor : admin Deskripsi : use case ini menggambarkan verifikasi admin untuk bisa masuk ke halaman utama aplikasi dan menandakan bahwa aplikasi sudah terhubung dengan router. Tabel 3.2 Narasi use caselogin Aksi aktor Reaksi sistem 1. Aktor mengisikan username dan password. 2. Aktor klik tombol login 3. Sistem melakukan pengecekkan username dan password ke router melalui port API. Username dan password benar. 4. Menampilkan Pesan bahwa login berhasil 5. Cek Sudah ada konfigurasi atau belum. Jika belum : include use case: setting hotspot 6. Menampilkan halaman utama manajemen user Skenario Alternatif 1 5. Sistem melakukan pengecekkan username dan password ke router melalui port API. Username dan atau password salah. 6. Sistem menampilkan pesan login gagal. 2. SettingHotspot Use case :setting hotspot Pre kondisi :sistem berada di dalam rangkaian proses login Actor :admin Deskripsi :use case ini menggambarkan proses setting hotspot Tabel 3.3 Narasi use case setting hotspot Aksi aktor Reaksi sistem 1. Aktor klik tombol oke di message dialog login success 2. Cek Sudah ada konfigurasi atau belum. Belum ada konfigurasi hotspot. 3. Aktor klik tombol oke di message dialog setting hotspot 4. Sistem melakukan upload file konfigurasi dengan FTP 5. Sistem merestore konfigurasi hotspot 6. Sistem menampilkan message dialog setting hotspot berhasil. 7. Aktor klik tombol oke di message dialog sukses setting hotspot 8. Sistem berhenti System exit. 3. Lihat User Aktif Use case :lihat user aktif Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses melihat daftar user yang yang sedang aktif Tabel 3.4Narasi use case lihat user aktif Aksi aktor Reaksi sistem 1. Aktor klik panel monitoring hotspot 2. Sistem menampilkan daftar user yang aktif table monitoring hotspot Skenario Alternatif 1. aktor klik tombol refresh di panel monitoring hotspot 2. Sistem menampilkan daftar user yang aktif 4. Setting gateway Use case :setting gateway Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses setting gateway untuk keperluan terhubung internet. Tabel 3.5 Narasi use case setting gateway Aksi aktor Reaksi sistem 1. Aktor klik panel setting gateway 2. Sistem akan menampilkan form setting gateway 3. Aktor mengisikan ip gateway dan klik submit 4. Submit sukses, menampilkan pesan sukses 5. Sistem sistem menambahakannya ke router dan menghubungkannya ke internet Skenario Alternatif 3. Aktor mengisikan ip gateway dan klik submit 4. Submit gagal, menampilkan pesan gagal submit 5. Ubah Password Admin Use case :ubah password admin Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses mengubah passwordadmin Tabel 3.6 Narasi use caseubah passwordadmin Aksi aktor Reaksi sistem 1. Aktor klik panel monitoring hotspot 2. Menampilkann Form monitoring hotspot 3. Aktor klik tombol Change Password 4. Menampilkan form untuk mengubah password 5. Aktor memasukkan password lama, password baru, dan confirm new password, kemudian klik tombol change 6. Sistem melakukan check apakah password lama benar dan password baru dengan confirm new password sesuai. 7. Jika data sesuai, sistem mengganti password lama dengan password baru dan menampilkan pesan sukses. Jika data tidak sesuai, menampilkan pesan gagal. 6. Tambah User Profile Use case :tambah user profile Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses penambahan user profile baru. Tabel 3.7 Narasi use casetambah user profile Aksi aktor Reaksi sistem 1. Aktor klik panel quota management 2. Menampilkann Form quota management 3. Aktor klik tombol “Addprofile” 4. Menampilkan form untuk menambah profile 5. Aktor mengisi form untuk menambah profile 6. Sistem akan menyimpan data ke dalam file. Jika berhasil, menampilkan pesan sukses. Jika gagal, menampilkan pesan gagal. 7. Hapus User Profile Use case :hapus user profile Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses penghapusandata tipe kamar Tabel 3.8 Narasi use case hapus user profile Aksi aktor Reaksi sistem 1. Aktor klik panel quota management 2. Menampilkann Form quota management 3. Aktor klik salah satu list user profile 4. Aktor klik tombol delete 5. Sistem akan menghapus data. Jika berhasil, menampilkan pesan sukses. Jika gagal, menampilkan pesan gagal. 8. Lihat Daftar User Profile Use case :lihat daftar user profile Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses untuk melihat daftar user profile Tabel 3.9 Narasi use case tambah kamar Aksi aktor Reaksi sistem 1. Aktor klik panel quota management 2. Menampilkann Form quota management beserta daftar user profile 9. Tambah User Use case :tambah user Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses menambah user pemakai hotspot Tabel 3.10 Narasi use case tambah user Aksi aktor Reaksi sistem 1. Aktor klik panel user management 2. Menampilkann Form user management 3. Aktor klik tombol “Add User” 4. Menampilkan form untuk menambah user 5. Aktor mengisi form untuk menambah user 6. Sistem akan menyimpan data ke router. Jika berhasil, menampilkan pesan sukses. Jika gagal, menampilkan pesan gagal. 10. Hapus User Use case :hapus user Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses penghapusandata user Tabel 3.11 narasi use case hapus user Aksi aktor Reaksi sistem 1. Aktor klik panel user management 2. Menampilkann Form user management beserta daftar user 3. Aktor klik salah satu list user profile 4. Aktor klik tombol delete user 5. Sistem akan menghapus data. Jika berhasil, menampilkan pesan sukses. Jika gagal, menampilkan pesan gagal. 11. Lihat Daftar User Use case :lihat daftar user Pre kondisi :sistem berada di halaman menu utama aplikasi Actor :admin Deskripsi :use case ini menggambarkan proses melihat daftar user Tabel 3.12 Narasi use case lihat daftar user Aksi aktor Reaksi sistem 1. Aktor klik panel user management 2. Menampilkann Form user management beserta daftar user. 3.2.3 Diagram Sequence 3.2.3.1. Login Tabel 3.13 Daftar Kelas Dalam Use case Login No Nama Kelas Tipe Deskripsi 1 LoginFrame Boundary Interface Kelas ini berfungsi untuk menampilkan halaman login 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari view dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controlleruntuk terhubung ke router. Untuk mengirim command, set datacommand, hasher md5, mengaktifkan listener data dari router 5 Readcommand Entity Model Kelas ini berfungsi sebagai listener command ke router 6 WriteCommand Entity Model Kelas ini berfungsi sebagai setcommand sehingga command bisa dijalankan di router 7 Hasher Entity Model Kelas ini berfungsi untuk enkripsi password login ke router 8 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar Proses login dalam diagram sequence di berikut ini adalah gambar proses login saat sudah terjadi konfigurasi. Jika belum terdapat konfigurasi, maka setelah controller menerima pesan dari Data receiver setting hotspot is exist system akan menampilkan message dialog untuk setting hotspot. Gambaran dari proses setting hotspot akan diperlihatkan dalam diagram sequencesettinghotspot. Gambar 3.3 Diagram Sequence login 3.2.3.2. Setting Hotspot Tabel 3.14 Daftar Kelas Dalam Use case Setting Hotspot No Nama Kelas Tipe Deskripsi 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3 FTPUploadFile Entity Model Kelas ini berfungsi untuk melakukan upload file konfigurasi ke router. Gambar 3.4 Diagram Sequence Setting Hotspot 3.2.3.3. Diagram Sequence Lihat User Aktif Tabel 3.15 Daftar Kelas Dalam Use case Lihat User Aktif No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel Hotspot Monitoring. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controller untuk terhubung ke router. Untuk mengirim command, set data command, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai set command sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk set command untuk print user active. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.5Diagram Sequence Lihat User Aktif 3.2.3.4. Diagram Sequence Setting Gateway Tabel 3.16 Daftar Kelas dalam use case Setting Gateway No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel Hotspot Monitoring. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controller untuk terhubung ke router. Untuk mengirim command, set data command, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai set command sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk set command addedit gateway. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.6 Diagram Sequence Setting Gateway 3.2.3.5. Diagram Sequence Ubah Password Tabel 3.17 Daftar Kelas use case Ubah PasswordAdmin No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel Hotspot Monitoring. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controlleruntuk terhubung ke router. Untuk mengirim command, set datacommand, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai setcommand sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk setcommand untuk ubahpassword. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.7 Diagram Sequence Ubah Password Admin 3.2.3.6. Diagram Sequence Tambah User Profile Tabel 3.18 Daftar Kelas use case Tambah User Profile No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel Quota Management. 2 AddProfileForm Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman form untuk menambah data profile baru. 3 Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke fileprofile.txt Gambar 3.8 Diagram Sequence Tambah User Profile 3.2.3.7. Diagram Sequence hapus User Profile Tabel 3.19 Daftar Kelas use case Hapus User Profile No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel Quota Management. Panel Quota management berisi tabel daftar profile. 2 Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke fileprofile.txt Gambar 3.9 Diagram Sequence Hapus User Profile 3.2.3.8. Diagram SequenceLihat Daftar User Profile Tabel 3.20 Daftar Kelas use case Lihat Daftar User Profile No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panelQuotaManagement. PanelQuotamanagement berisi tabel daftar profile. 2 Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke file profile.txt Gambar 3.10 Diagram Sequence Lihat User Profile 3.2.3.9. Diagram Sequence Tambah User Tabel 3.21 Daftar Kelas use case Tambah User No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel User Management. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3. Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke file user.txt 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controller untuk terhubung ke router. Untuk mengirim command, set datacommand, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai set command sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk set command add user. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.11 Diagram Sequence Tambah User 3.2.3.10. Diagram Sequence Hapus User Tabel 3.22 Daftar Kelas use case Hapus User No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel User Management. Panel User Management berisi tabel daftar user. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3. Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke file user.txt 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controller untuk terhubung ke router. Untuk mengirim command, set datacommand, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai set command sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk set command remove user. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.12 Diagram SequenceHapus User 3.2.3.11. Diagram Sequence Lihat Daftar User Tabel 3.23 Daftar Kelas use case Lihat Daftar User No Nama Kelas Tipe Deskripsi 1 MonitoringHotspot Boundary Interface Kelas ini berfungsi untuk menampilkan Halaman untuk manajemen user, terdiri dari panel-panel termasuk juga panel User Management. Panel User Management berisi tabel daftar user. 2 Controller Controller Kelas ini berfungsi sebagai penampungan events yang dibuat oleh user dari View dan melakukan update terhadap komponen Model menggunakan data yang dimasukkan oleh user. 3. Profile EntityModel Kelas ini berfungsi untuk membaca, menyimpan, dan menghapus data dari atau ke file. Dalam case ini ke fileuser.txt 3 APIConn EntityModel Kelas ini berfungsi sebagai penampungan events yang dibuat dari kelas Controller untuk terhubung ke router. Untuk mengirim command, set data command, hasher md5, mengaktifkan listener data dari router. 4 WriteCommand Entity Model Kelas ini berfungsi sebagai set command sehingga command bisa dijalankan di router. Dalam case ini digunakan untuk set command user print. 5 Datareceiver Entity Model Kelas ini berfungsi untuk menerima Pesan balasan dari command yang telah dikirim ke router. Gambar 3.13 Diagram Sequence Lihat User 3.2.4 Diagram Kelas «interface» AddProfileFrame «interface» AddUserFrame -readCommand : ReadCommand -writeCommand : WriteCommand Apiconn «interface» ChangePassword +login : void +outputHere : void +captureString : string +getUserActive : Object +getUserList : Object +addUser : void +deleteUser : void +addGateWay : void +ChangePassword : void Controller DataReceiver «interface» LoginFrame FTPUploadFile Hasher «interface» MonitoringHotspot +addData : Boolean +remove : Boolean +bacaData : void +getSession : String +maptostringarray : Object Profile ReadCommand WriteCommand Gambar 3.14 Diagram Kelas 3.2.5 Desain Antar Muka 3.2.5.1. Fom Login login cancel User Name Password _ X Gambar 3.15 Desain Form Login 3.2.5.2. Form Manajemen User a. Panel Hotspot Monitoring _ X Hotspot Monitoring Quota Management User Management Setting New Gateway No UpTime IP Address Refresh User Name Time-Left Change Password Gambar 3.16 Desain Panel Hotspot Monitoring b. Panel Quota Management _ X Hotspot Monitoring Quota Management User Management Setting New Gateway No Quota Time Add Profile Quota ModeProfile Delete Profile Gambar 3.17 Desain Panel Quota Management c. Panel User Management _ X Hotspot Monitoring Quota Management User Management Setting New Gateway No Password Uptime Add User User Name Profile Delete User Gambar 3.18 Desain Panel User Management d. Panel Setting Gateway _ X Hotspot Monitoring Quota Management User Management Setting New Gateway SUBMIT Input new gateway : Gambar 3.19 Desain Panel Setting Gateway 3.2.5.3. Form Add Profile cancel add _ X Profile Session Gambar 3.20 Desain Form Add Profile 3.2.5.4. Form Add User cancel add _ X User Name Password Profile Gambar 3.21 Desain Form Add User 56

BAB IV IMPLEMENTASI SISTEM