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