98
user bisa menampilkan kotak dialog ini dengan mengklik icon pada system tray.
4.7 Pseudocode 4.7.1 Pseudocode Aplikasi Server Spesifikasi proses class Utama Mulai Panggil class scan Panggil class threadtanggal Panggil class gambarPeta Panggil class threadgambarPeta Panggil class TableStatus Panggil class grafik Panggil class threadgrafik Jalankan thread pada class scan Jalankan thread pada class threadgrafik Jalankan thread pada class threadtanggal Jalankan thread pada class threadgambarPeta Jika Menu Laporan Status Jaringan di klik
99
Panggil class LogStatusJaringan Jika Menu Laporan Status Traffic di klik Panggil class GrafikperDaerah Jika Menu Pencarian di klik Panggil class pencarian Jika Menu Login di klik Jika flag adalah true Tampilkan peringatan udah login Jika flag adalah false Panggil class Login Jika Menu Tambah Data di klik Jika flag adalah true Panggil class AddData Jika flag adalah false Tampilkan error Anda belum login Jika Menu Rubah Data di klik Jika flag adalah true Panggil class UpdateData
100
Jika flag adalah false Tampilkan pesan Error : Anda belum login Jika Menu Hapus Data di klik Jika flag adalah true Panggil class DeleteData Jika flag adalah false Tampilkan pesan Error : Anda belum login
Akhir Jika Selesai
Spesifikasi class threadtanggal Mulai Panggil class tanggal Lakukan Thread Lakukan Perulangan terus-menerus Ambil tanggal sekarang Berhenti selama 1 detik
101
Akhir Perulangan Akhir Thread Selesai
Spesifikasi class TableStatus Mulai Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_daerah, ms_ip, ms_status, tr_status untuk mendapatkan isi field dari nm_daerah, status Ambil parameter yang telah dipisahkan Lakukan perulangan dari nol sampai dengan banyaknya parameter Masukkan parameter ke dalam tableStatus Akhir Perulangan Selesai
Spesifikasi class scan Mulai Panggil class ping
102
Buat koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_ip untuk mendapatkan isi field
dari ip_router, ip_telkom
Lakukan Thread Lakukan Perulangan terus-menerus Lakukan ping ke parameter ip_router selama 300 milidetik Ambil status dari ping Eksekusi statement SQL untuk membuka tabel tr_status untuk mendapatkan isi dari kd_status berdasarkan parameter ip_router Cek Jika parameter kd_status != status dari ping Eksekusi statement SQL UpdateIp untuk memasukkan data parameter ip_router, tanggal sekarang, waktu sekarang, status dari ping ke tabel tr_status Akhir Jika Lakukan ping ke parameter ip_router_telkom selama 300 milidetik
103
Ambil status dari ping Eksekusi statement SQL untuk membuka tabel tr_status_telkom untuk mendapatkan isi dari kd_status berdasarkan parameter ip_router_telkom Cek Jika parameter kd_status != status dari ping Eksekusi statement SQL UpdateIp untuk memasukkan data
parameter ip_router, tanggal sekarang, waktu
sekarang, status dari ping ke tabel tr_status Akhir Jika Pindah ke parameter berikutnya pada tabel ms_ip Jika parameter pada ms_ip sudah sampai akhir Pindah ke parameter awal pada tabel ms_ip Akhir Jika Akhir Perulangan Akhir Thread Selesai
104
Spesifikasi class Login Mulai Lakukan pengisian User Name Lakukan pengisian Password Klik tombol Login Buka koneksi ke basis data Buat Statement SQL Eksekusi statement untuk membuka tabel user Cek User Name dan Password ke basis data Jika User Name dan Password sesuai maka Set nilai flag menjadi true Selain itu Tampilkan pesan error Lakukan pengisian ulang Akhir Jika Selesai
105
modul bikingambar ambil waktu saat ini tentukan besar gambar 430x250 tentukan format gambar png tentukan rentang waktu yang akan di tampilkan pd gambar menjadi 1 hari tentukan judul gambar dengan nama daerah ambil data traffic in dari file rrd ambil data traffic out dari file rrd tentukan warna garis untuk grafik traffic out dengan warna biru tentukan warna garis untuk grafil traffic in dengan warna hijau buat file gambar selesai akhir modul
spesifikasi class Ping simpan alamat ip ke variabel address1 jalankan thread jalankan ping ke alamat address1 sebanyak 1 kali
106
ambil hasil ping akhir thread selesai
Spesifikasi class AddData Mulai Panggil modul bukakoneksi Panggil modul isipropinsi Panggil tutupkoneksi
Jika tombol Tambah diklik Set iprouter dari textfield iprouter Set iptelkom dari textfield iptelkom Set koordinat dari textfield koordinat Set kdpropinsi dari combobox propinsi yang dipilih Panggil modul tambahdata Panggil modul tutupkoneksi Akhir jika
107
Jika tombol Peta diklik Tampilkan gambar peta Akhir jika Jika ada penekanan mouse pada gambar peta Isi textfield koordinat dari tempat dimana terjadi penekanan tombol pada peta Akhir jika
Modul bukakoneksi Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_propinsi untuk mendapatkan isi field dari nm_propinsi Akhir Modul
Modul isipropinsi Ambil parameter yang telah dipisahkan Lakukan perulangan dari nol sampai banyaknya parameter Masukkan parameter ke combobox propinsi
108
Akhir perulangan Panggil modul tutupkoneksi Akhir Modul
Modul tambahdata Buka koneksi ke database Eksekusi statement SQL nambahdata1 untuk Memasukkan data iprouter, iptelkom, CID ke tabel ms_ip Eksekusi statement SQL nambahdata2 untuk Memasukkan data iprouter, namadaerah, kdpropinsi, koordinat dari textfield namadaerah, kdpropinsi, koordinat ke tabel ms_daerah
Modul tutupkoneksi Tutup koneksi ke database Akhir Modul Selesai
109
Spesifikasi class UpdateData Mulai Panggil modul bukakoneksi Panggil modul isipropinsi
Jika tombol Update diklik Panggil modul ubahdata Panggil modul tutupkoneksi Akhir jika Jika tombol Peta diklik Tampilkan gambar peta Akhir jika Jika ada penekanan mouse pada gambar peta Isi textfield koordinat dari tempat dimana terjadi penekanan tombol pada peta Akhir jika Jika Melakukan pemilihan pada combobox cbpropinsi Panggil modul isidaerah
110
Akhir Jika Jika Melakukan pemilihan pada combobox cbdaerah Panggil modul datadaerah Akhir Jika
Modul isipropinsi Ambil parameter yang telah dipisahkan dari modul bukakoneksi Lakukan perulangan dari nol sampai banyaknya parameter Masukkan parameter ke combobox propinsi Akhir perulangan Panggil modul isidaerah Panggil tutupkoneksi Akhir Modul
Modul isidaerah Panggil modul bukakoneksi2 Ambil parameter yang telah dipisahkan dari modul bukakoneksi2 Lakukan perulangan dari nol sampai banyaknya parameter Masukkan parameter ke combobox daerah
111
Akhir perulangan Panggil modul datadaerah Panggil modul tutupkoneksi Akhir Modul
Modul datadaerah Memasukkan parameter pertama ke textfield iprouter Memasukkan parameter kedua ke textfield iptelkom Memasukkan parameter ketiga ke textfield CID Memasukkan parameter keempat ke textfield koordinat Panggil modul tutupkoneksi Akhir Modul
Modul bukakoneksi Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_propinsi untuk mendapatkan isi field dari nm_propinsi Akhir Modul
112
Modul bukakoneksi2 Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_daerah untuk mendapatkan isi field dari nm_daerah dimana kd_prop = hasil dari combobox cbpropinsi yang dipilih Akhir Modul
Modul bukakoneksi3 Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_ip, ms_daerah untuk mendapatkan isi field dari IP_router, IP_telkom, CID, koordinat dimana nm_daerah = hasil dari combobox cbdaerah yang dipilih Akhir Modul
113
Modul tutupkoneksi Tutup koneksi ke database Akhir Modul
Modul ubahdata Buka koneksi ke database Eksekusi statement SQL ubah1 untuk Memasukkan data iprouter, iptelkom, CID ke tabel ms_ip Eksekusi statement SQL ubah2 untuk Memasukkan data iprouter, namadaerah dari textfield namadaerah, kdpropinsi, koordinat ke tabel ms_daerah Akhir Modul
Spesifikasi class Pencarian Mulai Jika tombol cari diklik Panggil modul bukakoneksi Panggil modul bukakoneksi2 Panggil modul tampilpencarian
114
Modul bukakoneksi Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_ip, ms_daerah, ms_status, tr_status untuk mendapatkan isi dari field dari nm_daerah, IP_router, jam, status Akhir Modul Modul bukakoneksi2 Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_ip, ms_daerah, ms_status, tr_status_telkom untuk mendapatkan isi dari field dari nm_daerah, IP_telkom, jam, status Akhir Modul
Modul tampilpencarian Ambil parameter yang telah dipisahkan dari bukakoneksi Lakukan perulangan dari nol sampai dengan banyaknya parameter
115
Masukkan parameter ke dalam table Hasil Akhir perulangan Ambil parameter yang telah dipisahkan dari bukakoneksi2 Lakukan perulangan dari nol sampai dengan banyaknya parameter Masukkan parameter ke dalam table Hasil Akhir perulangan Panggil modul tutupkoneksi Akhri Modul
Modul tutupkoneksi Tutup koneksi ke database Akhir Modul Selesai
Spesifikasi class laporan status ambil tanggal sekarang buat dokumen dengan size A4 ambil resultset
116
ambil nama file buat file pdf set header halaman buka dokumen buat tabel dengan 4 kolom set lebar masing-masing kolom buat cell nm_daerah buat cell IP buat cell status tambahkan nm_daerah pada tabel tambahkan IP pada tabel tambahkan status pada tabel akhir tabel header pindahkan pointer ke awal resultset selama pointer tidak berada setelah akhir tambahkan resultset(1) ke dalam tabel tambahkan resultset(2) ke dalam tabel tambahkan resultset(3) ke dalam tabel
117
pindahkan pointer ke posisi selanjutnya konvert tabel ke tabel pdf tutup dokumen selesai
Spesifikasi class laporanLog ambil tanggal sekarang buat dokumen dengan size A4 ambil resultset ambil nama file buat file pdf set header halaman buka dokumen buat tabel dengan 4 kolom set lebar masing-masing kolom buat cell nm_daerah buat cell IP buat cell jam buat cell status
118
tambahkan nm_daerah pada tabel tambahkan IP pada tabel tambahkan jam pada tabel tambahkan status pada tabel akhir tabel header pindahkan pointer ke awal resultset selama pointer tidak berada setelah akhir tambahkan resultset(1) ke dalam tabel tambahkan resultset(2) ke dalam tabel tambahkan resultset(3) ke dalam tabel tambahkan resultset(4) ke dalam tabel pindahkan pointer ke posisi selanjutnya konvert tabel ke tabel pdf tutup dokumen selesai
Spesifikasi class report inisialisasi tampilan jika memilih status jaringan
119
tentukan query untuk manampilkan status jaringan tentukan nama file ahir jika jika memilih status jaringan yang up tentukan query untuk manampilkan status jaringan yang up tentukan nama file ahir jika jika memilih status jaringan yang down tentukan query untuk manampilkan status jaringan yang down tentukan nama file ahir jika jika memilih log jaringan tentukan query untuk menampilkan log jaringan tentukan nama file akhir jika jika tombol ditekan jika checkbox dipilih panggil Modul statusJaringan untuk menampilkan
120
status jaringan panggil Modul statusJaringan untuk menampilkan status jaringan yang up panggil Modul statusJaringan untuk menampilkan status jaringan yang down panggil Modul logJaringan untuk menampilkan log jaringan akhir jika selain itu jika dipilih log jaringan panggil Modul logJaringan untuk menampilkan log jaringan akhir selain itu jika selain itu panggil Modul statusJaringan untuk menapilkan haril query akhir selain itu akhir jika
121
Modul statusJaringan buka koneksi basis data ambil resultset pindahkan pointer resultset ke akhir jika pointer tidak berada di baris ke 0 panggil class laporanStatus akhir jika selain itu tmapilkan peringatan akhir selain itu tutup resultset tutup koneksi basis data akhir Modul Modul statusLog buka koneksi basis data ambil resultset pindahkan pointer resultset ke akhir jika pointer tidak berada di baris ke 0
122
panggil class laporanLog akhir jika selain itu tmapilkan peringatan akhir selain itu tutup resultset tutup koneksi basis data akhir Modul selesai
Spesifikasi class capture Panggil class captureInterface Jalankan thread class captureInterface Selesai
Spesifikasi class captureInterface Siapkan device untuk capture Tentukan filter untuk capture Panggil packet Listener Selesai
123
Spesifikasi class dataCapture Modul setTraffic Jumlahkan semua packet yang melewati interface Akhir Modul Modul getTraffic Bagi nilai traffic dengan 1000 Ubah nilai traffic menjadi 0 Kembalikan nilai traffic Akhir Modul Selesai
Spesifikasi class PacketHandler Modul packetArrived Jika packet TCP Ambil alamat source Ambil alamat destination Ambil nilai besar packet Jalankan Modul setTraffic dari class dataCapture Akhir jika Jika packet UDP Ambil alamat source Ambil alamat destination Ambil nilai besar packet Jalankan Modul setTraffic dari class dataCapture Akhir jika Akhir Modul
124
Selesai
Class snmp Ambil waktu sekarang Jika file belum ada Definisikan file rrd Buat file rrd Akhir jika Selain itu Buka file rrd dengan mode read dan write Akhir selain itu Jalankan thread Panggil Modul bikingambar Simpan hasil Modul trafficIN Simpan hasil Modul trafficOUT Ambil waktu sekarang Buat sampel file rrd Update file rrd berdasarkan sampel Akhir thread Tunggu thread selama 4 detik sebelum dihancurkan
Modul bikingambar Ambil waktu sekarang Definisikan file gambar Buat file gambar Akhir Modul
125
Modul trafficIN Jika oktet pertama ip bernilai 10 Gunakan jardiknas sebagai community string Akhir jika Selain itu Gunakan diknas sebagai community string Akhir selain itu Jalankan snmpwalk dengan mib .1.3.6.1.2.1.2.2.1.10 Selama hasil snmpwalk tidak null Ambil nilai snmpwalk Jika nilai snmpwalk lebih besar dari temp=0 Nilai temp sama dengan nilai snmpwalk Akhir jika Kembalikan nilai temp Akhir Modul
Modul trafficOUT Jika oktet pertama ip bernilai 10 Gunakan jardiknas sebagai community string Akhir jika Selain itu Gunakan diknas sebagai community string Akhir selain itu Jalankan snmpwalk dengan mib .1.3.6.1.2.1.2.2.1.16 Selama hasil snmpwalk tidak null Ambil nilai snmpwalk
126
Jika nilai snmpwalk lebih besar dari temp=0 Nilai temp sama dengan nilai snmpwalk Akhir jika Kembalikan nilai temp Akhir Modul Selesai
Spesifikasi class jalaninSNMP Buat koneksi basis data Ambil resultset Pindahkan pointer ke awal resultset Selama pointer tidak berada di setelah akhir Jalankan class snmp Jika pinter berada di akhir resultset Pindahkan pointer ke awal resultset Akhir jika Pindahkan pointer ke awal resultset Akhir Tutup koneksi Tutup resultset Selesai
Spesifikasi class messages Buat serversocket Buat socket Panggil Modul initComponent
127
Jalankan thread Jalankan Modul startServer Akhir thread
Modul initComponent Definisikan tampilan Tampilkan ke layar Akhir Modul initComponent
Modul startServer Buat server socket di port 8080 Lakukan terus Accept socket Jika belum ada koneksi yang terhubung Tambahkan koneksi ke vector Jalankan element vector terakhir Simpan alamat host yang terhubung Akhir jika Selain itu Selama i=0 dan i kurang dari besar vector Jika terdapat koneksi dengan alamat yang sama Simpan koneksi di tempat yang sama Jalankan thread dari isi vector ke i
128
Simpan alamat host Keluar dari loop Akhir jikaa Jika sudah ada isi dalam vector Tambahkan koneksi ke vector Jalankan element vector terakhir Simpan alamat host yang terhubung Akhir jika Akhir selain itu Akhir jalankan berulang-ulang Akhir Modul startServer
Modul send Buat socket Kirim pesan melalui socket Akhir Modul
Modul processMessage Tambahkan pesan ke tampilan Akhir Modul
Modul getKirimStatus Kembalikan nilai status kirim Akhir Modul
129
Modul getMessage Kembalikan isi pesan Akhir Modul
Modul removeVector Hapus element vector Akhir Modul Selesai
Spesifikasi class koneksi Deklaraikan socket Ambil aliran input Jalankan Modul processMessage dari kelas messageListener
Modul setFlag Set nilai flag Akhir Modul
Modul getInetAddr Kembalikan alamat yang terhubung ke socket Akhir Modul
Modul send Kirim pesan melalui aliran output Bersihkan aliran outpur Akhir Modul
130
Modul run Selama listening Baca isi input Jika input outpu terganggu Lanjutkan Akhir jika Jika input output error Keluar dari loop Akhir jika Jalankan Modul processMessage dari class MessageLinstener Keluar dari loop Akhir Akhir Modul Selesai
Spesifikasi class gambarPeta Mulai Modul paint Panggil class createDBConnection untuk menampilkan ip router, koordinat dan status dari tabel ms_daerah dan tr_status Simpan hasil createDBConnection pada resultset Tampilkan gambar peta Indonesia pada file Indonesia.jpg Letakkan pointer ke awal resultset
131
Lakukan perulangan sampai pointer ke akhir resultset Set koordinat menjadi nilai yang ada pada parameter pada kolom ke 2 Jika parameter pada kolom ke 3 sama dengan up Gambar titik pada koordinat Warnai titik menjadi merah Selain itu jika parameter pada kolom ke 3 sama dengan down Gambar titik pada koordinat Warnai titik menjadi biru Akhir jika Akhir perulangan Modul draw Panggil modul paint Akhir Modul Selesai
Spesifikasi class threadgambarPeta Mulai Lakukan Thread
132
Panggil modul draw pada class gambarPeta Berhenti selama 1 detik Akhir Thread Seleasi
Spesifikasi class grafik Mulai Set x = x1 = 745 Set y = 119 Set panjang = 0; Modul paint Jika panjang = 238 x=x+3 Lakukan perulangan dari i=0 sampai i=jumlah panjang Set nilai array ke i pada y1 sama dengan nilai array ke i+1 pada y1 Akhir perulangan Akhir Jika Lakukan perulangan
133
Gambar bar grafik dengan koordinat x, y dengan lebar 2 dan tinggi sama dengan nilai array ke i pada y1 x=x+3 Akhir perulangan Akhir modul
Modul draw Jika panjang = 238 panjang = 238 selain itu panjang = panjang + 1 akhir jika set array ke n$ilai panjang = paket panggil modul paint Akhir modul Selesai
134
Spesifikasi class threadgrafik Mulai Lakukan Thread Lakukan Perulangan terus menerus Simpan nilai dari class capture ke modul draw dari class grafik Berhenti selama 1 detik Akhir Perulangan Akhir Thread Selesai
Spesifikasi class DeleteData Mulai Panggil modul bukakoneksi Panggil modul isipropinsi Jika tombol Update diklik Panggil modul deletedata Panggil modul tutupkoneksi Akhir jika Jika Melakukan pemilihan pada combobox cbpropinsi
135
Panggil modul isidaerah Akhir Jika Jika Melakukan pemilihan pada combobox cbdaerah Panggil modul datadaerah Akhir Jika
Modul isipropinsi Ambil parameter yang telah dipisahkan dari modul bukakoneksi Lakukan perulangan dari nol sampai banyaknya parameter Masukkan parameter ke combobox propinsi Akhir perulangan Panggil modul isidaerah Panggil tutupkoneksi Akhir Modul
Modul isidaerah Panggil modul bukakoneksi2 Ambil parameter yang telah dipisahkan dari modul bukakoneksi2 Lakukan perulangan dari nol sampai banyaknya parameter
136
Masukkan parameter ke combobox daerah Akhir perulangan Panggil modul datadaerah Panggil modul tutupkoneksi Akhir Modul
Modul datadaerah Memasukkan parameter pertama ke textfield iprouter Memasukkan parameter kedua ke textfield iptelkom Memasukkan parameter ketiga ke textfield CID Memasukkan parameter keempat ke textfield koordinat Panggil modul tutupkoneksi Akhir Modul
Modul bukakoneksi Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_propinsi untuk mendapatkan isi field dari nm_propinsi
137
Akhir Modul
Modul bukakoneksi2 Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_daerah untuk mendapatkan isi field dari nm_daerah dimana kd_prop = hasil dari combobox cbpropinsi yang dipilih Akhir Modul
Modul bukakoneksi3 Buka koneksi ke basis data Buat statement SQL Eksekusi statement SQL untuk membuka tabel ms_ip, ms_daerah untuk mendapatkan isi field dari IP_router, IP_telkom, CID, koordinat dimana nm_daerah = hasil dari combobox cbdaerah yang dipilih Akhir Modul
138
Modul tutupkoneksi Tutup koneksi ke database Akhir Modul
Modul deletedata Buka koneksi ke database Eksekusi statement SQL ubah1 untuk Menghapus data iprouter, namadaerah, kdpropinsi, koordinat dari tabel ms_daerah Akhir Modul Selesai
4.7.2 Pseudocode Aplikasi Client A. Layar isi IP Server Modul isi IP mulai Lakukan pengisian IP Tekan enter Cek Validasi IP
139
Jika pengembalian nilai = true MAKA Masuk ke layar utama Client Selain itu Tampilkan pesan bahwa IP tidak valid Lakukan pengisian ulang Akhir jika Selesai akhir modul
Modul Cek Validasi IP Mulai Jika panjang IP kurang dari 8 maka Tampilkan pesan bahwa IP tidak valid Keluar dari modul Akhir jika Setel variabel i = 1 Setel variabel titik = 0 ketika i kurang dari panjang IP
140
Lakukan perulangan : Jika karakter ke-i adalah “.” (titik) maka Titik ditambah 1 Selain itu Jika karakter ke i bukan angka maka MsgBox IP & " bukan IP", , "Warning" Keluar dari modul Akhir jika Akhir jika Akhir ketika Jika titik tidak sama dengan 3 maka MsgBox IP & " bukan IP", , "Warning" Keluar dari modul Akhir jika Keluar dari modul Tampilkan layar utama client Selesai Akhir modul
141
B. Layar Utama Client Modul masuk form utama mulai Setel ip_address Isi ip_address dari modul isi IP Jika LAN terhubung adalah false maka MsgBox IP & " LAN anda putus", , "Pemberitahuan" Akhir jika Setel remotehost Setel remoteport Masukkan isi ip_address ke remotehost Set remoteport menjadi 8000 Lakukan koneksi socket Selesai Akhir modul
142
Modul terima pesan dari Server mulai Socket terima data dari server Masukkan data ke dalam output string panggil modul form_animasi_naik Akhir modul Selesai Modul timer tampil (tampilkan selama 6 detik) mulai Setel i = 6 Ketika i lebih dari 0 Ubah isi label countdown menjadi i Jika i adalah 0 maka panggil modul form_animasi_turun akhir jika i ditambah 1 akhir ketika selesai akhir modul
143
Modul cek koneksi ke server mulai Ketika i tidak sama dengan 5 (detik) Lakukan perulangan selama 5 detik sekali : Jika keadaan socket adalah terkoneksi maka Tidak melakukan apa - apa Selain itu Tutup socket Isi Remotehost dengan ip_address Isi remoteport dengan 8000 Akhir jika Jika LAN terhubung adalah false maka Isi output dengan “LAN anda putus, cek kabel atau hubungi petugas” panggil modul form_animasi_naik akhir jika akhir ketika selesai akhir modul
144
Modul form_animasi_naik Mulai Perbarui isi output Selama batas atas layar utama lebih besar dari batas atas Lakukan Tampilkan layar utama Batas atas layar utama dikurangi 5 Tampilkan layar utama Perbarui isi output Panggil modul timer tampil Selesai Akhir modul
Modul form_animasi_turun mulai Selama batas atas layar utama dikurangi layar utama tinggi form lebih kecil dari tinggi form Lakukan perulangan: Batas atas layar utama ditambah 5
145
Tampilkan layar utama Perulangan selesai Sembunyikan layar utama Letakkan icon di system tray Selesai Akhir modul
Modul hide Mulai Panggil form_animasi_naik Selesai Akhir modul
Modul exit Mulai Tampilkan pesan pertanyaan ‘anda yakin keluar dari program?’ Jika YA maka Tutup socket Akhiri program
146
Akhir jika Selesai Akhir modul
Modul klik icon system tray mulai Jika klik kiri maka Panggil modul form_animasi_naik Jika klik kanan maka Tampilkan menu klikkanan Akhir jika Selesai Akhir modul
4.8 Implementasi 4.8.1 Spesifikasi Perangkat Keras a. Spesifikasi minimum perangkat keras untuk menjalankan aplikasi server adalah : •
Processor setara dengan pentium 4.
147
•
Memori 512 MB (Mega Byte)
•
Hard Disk 10 GB (Giga Byte)
•
NIC (Network Interface Card)
•
Monitor dengan resolusi 1024 x 768
b. spesifikasi minimum perangkat keras untuk aplikasi Client adalah: •
Processor setara dengan pentium 2
•
Memor 128 MB
•
Hard Disk 4 GB
•
NIC
•
Monitor dengan resolusi 800x600
4.8.2 Spesifikasi Perangkat Lunak untuk mengimplementasikan aplikasi network monitoring ini, diperlukan perangkat lunak sebagai berikut : a. aplikasi server • Linux Fedora Core 4 sebagai sistem operasi • MySQL 5.0.4 sebagai Database Engine • Java SDK 1.5
148
• JPCAP sebagai modul Packet Capture pada Java • JRobin sebagai modul SNMP pada Java • Itext-1.4.8 sebagai modul cetak ke file pada Java b. Aplikasi client •
Windows XP sebagai sistem operasi
•
Installer aplikasi client
4.8.3 Sumber Daya Manusia Untuk mengoperasikan aplikasi server DMNT ini membutuhkan : 1. Seorang yang mengerti sistem operasi linux. 2. Seorang yang memiliki otoritas untuk menambah maupun menghapus data pada database DNMT.
4.8.4 Penerapan Sistem Dalam penerapan sistem , Aplikasi ini membutuhkan sebuah komputer yang akan digunakan sebagai server yang bertugas memantau jaringan Depdiknas dan menyimpan kondisinya kedalam database. Selain itu aplikasi ini juga memerlukan minimal 1 buah komputer lagi untuk menjalankan aplikasi client. Jalannya sistem ini adalah sebagai berikut :
149
1. Admin menjalankan aplikasi server DNMT. 2. Secara otomatis, aplikasi server melakukan ping ke tiap IP router Depdiknas di daerah dan IP router telkom yang terhubung ke IP router Depdiknas tersebut. Apabila terjadi perubahan kondisi jaringan dari status terhubung menjadi tidak terhubung atau sebaliknya, maka data akan dimasukkan kedalam database. 3. Aplikasi server juga menjalankan service snmpwalk ke router Depdiknas di tiap daerah, dan memasukkan data yang diterima ke dalam rrd (Round Robin Database). 4. Apabila admin ingin melihat keadaan jaringan keseluruhan, data dalam database akan diambil dan ditampilkan ke user. 5. Apabila admin ingin mencari keadaan jaringan suatu daerah,
admin
harus mengetikkan nama daerah atau IP daerah yang dicari. Data dalam database akan diambil dan diproses pencariannya kemudian ditampilkan ke user. 6. Apabila admin ingin melihat lalu lintas data suatu daerah dapat dilakukan dengan memilih propinsi kemudian memilih daerah yang diinginkan. Data dalam database rrd akan diambil dan diproses oleh JRobin, kemudian grafik lalu lintas data akan ditampilkan. 7. Apabila admin ingin mengubah, menambah atau menghapus data daerah, dapat dilakukan dengan login terlebih dahulu.
150
8. Data yang telah diubah, atau ditambah akan langsung muncul status jaringan pada peta dan log status. 9. User client menjalankan aplikasi client dan memasukkan alamat IP server yang menjalankan aplikasi DNMT. 10. Server DNMT secara otomatis menerima koneksi TCP dari client dan IP client ditampilkan pada DNMT. 11. Admin dapat mengirimkan pesan SOP pada client dengan mengetikan pesan dan mengklik tombol kirim.
4.8.5 Petunjuk Instalasi Aplikasi Server Aplikasi server ini dibuat dengan menggunakan bahasa pemrograman JAVA, basis data MySQL, modul JPCAP, modul konektor JAVA dengan MySQL , modul JRobin serta text editor KWrite pada linux sehingga program tersebut dapat berjalan dengan baik. Langkah – langkah yang harus dilakukan untuk menginstalasi aplikasi DNMT ini dalam sistem operasi Linux Fedora Core 4 adalah sebagai berikut : A. Instalasi Java Cara 1 : •
Installer java terdapat didalam CD installer fedora core 4
•
Masukkan CD installer Fedora Core 4
151
•
Klik Desktop pada taskbar, pilih System Setting lalu pilih Add/Remove Application.
•
Tandai checkbox Java Development
•
Klik Update
Cara 2 : •
Download file JDK_1_5.rpm di situs www.sun.com
•
Klik 2 kali pada file tersebut.
•
Ikuti perintah instalasi sampai selesai.
B. Instalasi MySQL •
Installer MySQL terdapat didalam CD installer fedora core 4
•
Masukkan CD installer Fedora Core 4
•
Klik Desktop pada taskbar, pilih System Setting lalu pilih Add/Remove Application.
•
Tandai checkbox MySQL Database
•
Klik Update
•
Download
file
www.mysql.com
MySQL-Connector-Java-5.0.4.tar.gz
di
website
152
•
Ekstrak
file
tersebut
(misalnya
diletakan
pada
/root/Desktop/depdiknas/ MySQL-Connector-Java-5.0.4/) •
Lakukan
penyetelan
CLASSPATH.
Buka
terminal,
ketikkan
CLASSPATH=$CLASSPATH:/root/Desktop/depdiknas/:/root/ Desktop/depdiknas/mysql-connector-java-5.0.4-bin.jar
C. Instalasi Modul JRobin •
Download file JRobinLite-1.5.4.tar.gz dari website www.jrobin.org
•
Ekstrak
file
JRobin
tersebut
(misalnya
diletakan
pada
/root/Desktop/depdiknas/JrobinLite-1.5.4/) •
Lakukan
penyetelan
CLASSPATH.
Buka
terminal,
ketikkan
CLASSPATH=$CLASSPATH:/root/Desktop/depdiknas/JRobinLite1.5.4\lib\jrobin-1.5.4.jar
D. Instalasi Modul JPCAP •
Download file jpcap-0.01.16.rpm dari website www.sourceforge.net
•
Klik dua kali file tersebut. Linux akan melakukan auto install.
•
Lakukan penyetelan CLASSPATH. Buka terminal, ketikkan CLASSPATH=$CLASSPATH:/usr/lib/jpcap-0.01.16/jars/ net.sourceforge.jpcap-0.01.16.jar
153
4.8.6 Petunjuk Instalasi Aplikasi Client •
Lakukan proses instalasi dengan cara double click setup.exe
•
Ikuti proses-proses instalasi yang akan dibimbing oleh installation wizard aplikasi tersebut.
•
Setelah selesai, aplikasi client siap dijalankan.
4.8.7 Petunjuk Pemakaian Aplikasi Server Pada saat pertama kali aplikasi server dijalankan, akan muncul layar utama sebagai induk dari layar – layar yang lain. Dan juga menampilkan layar Status Jaringan yang berada didalam layar utama.
Gambar 4.30 Tampilan DNMT saat pertama kali dijalankan
154
Layar utama terdiri dari 3 buah menu, yaitu File, Edit, dan Help. Pada menu File terdapat item menu Status Jaringan, Log Status Jaringan, Grafik per Daerah, Kirim Pesan SOP, Pencarian Status, dan Exit. Pada menu Edit terdapat item menu Log In, Tambah Data, Ubah Data, Hapus Data, dan Log Out. Pada menu Help terdapat item menu About. Proses pemantauan jaringan dilakukan pada saat program dijalankan pertama kali, dan dilakukan secara
terus-menerus. Aplikasi server
menjalankan proses packet capture pada Local Interface, kemudian memasukkan datanya kedalam database serta menggambarkan titik pada peta Indonesia.
Gambar 4.31 Pesan informasi tidak ada data pada pencarian status
155
Pada pencarian status, textfield kata pencarian dapat diisi dengan kata kunci nama daerah, alamat IP router Depdiknas di daerah, alamat IP router Telkom, CID. Apabila data ditemukan, hasil pencarian akan muncul pada tabel hasil pencarian. Sedangkan jika data tidak ditemukan akan ditampilkan pesan informasi bahwa data tidak ditemukan dalam database, seperti gambar diatas.
Gambar 4.32 Kotak Dialog Log Status Jaringan Jika user ingin melihat status jaringan secara terperinci, user harus membuka menu Log Status Jaringan. Disini user hanya diminta memilih nama propinsi yang diinginkan, kemudian system akan memprosesnya dan menampilkannya dalam tabel. Informasi yang diterima adalah nama daerah
156
IP router depdiknas, IP telkom, status jaringan, dan waktu ketika status jaringan berubah.
Gambar 4.33 Grafik lalu lintas data per daerah Gambar diatas merupakan tampilan kotak dialog Grafik per daerah. Disini user dapat melihat grafik lalulintas data tiap daerah dengan cara memilih nama propinsi yang diinginkan kemudian memilih nama daerah yang diinginkan. Grafik yang dimunculkan adalah kondisi lalu lintas jaringan per lima menit.
157
4.8.8 Petunjuk Pemakaian Aplikasi Client Setelah melakukan instalasi, aplikasi client dapat langsung dijalankan. Pada saat awal aplikasi ini dijalankan, akan muncul kotak dialog seperti gambar dibawah. User diminta untuk mengisi alamat IP server yang menjalankan aplikasi DNMT.
Gambar 4.34 Kotak dialog input IP server Gambar 4.33 dibawah merupakan tampilan setelah user melakukan pengisian IP server. Ini adalah tampilan utama aplikasi client yang akan menerima pesan SOP dari aplikasi server DNMT. Aplikasi client ini akan muncul selama 6 detik, kemudian berjalan pada background system, dan akan ditampilkan otomatis jika menerima pesan dari server.
Gambar 4.35 Tampilan utama aplikasi client
158
4.9 Evaluasi Implementasi dilakukan pada tanggal 22 – 23 Januari 2007 di Kantor Depdiknas Pusat gedung C lantai 7. Kami bekerja sama dengan divisi IT dan Biro Perencanaan, maka didapatlah kelebihan DNMT sebagai berikut : •
Sistem yang dirancang mampu menghasilkan data keadaan seluruh jaringan.
•
Sistem sebagai agregator dari sistem yang lama, yaitu aplikasi network monitoring dan aplikasi GIS (Geographical Information System) , yang menampilkan keadaan jaringan pada peta Indonesia.
•
Aplikasi client sangat berguna bagi pegawai Depdiknas yang awam terhadap komputer, dan internet khususnya.
•
Sistem memiliki authentifikasi apabila user ingin menambah, mengubah, dan menghapus data. Sehingga hanya orang tertentu yang dapat melakukan hal tersebut.
•
Sistem yang dirancang dapat menghasilkan laporan yang terperinci dari keadaan jaringan pada saat pencetakkan laporan kedalam file berformat pdf.
Kekurangan dari sistem ini adalah sebagai berikut : •
Pada saat pertama kali aplikasi server dijalankan, dibutuh waktu kurang lebih 150 detik untuk mendapatkan seluruh status jaringan WAN Depdiknas.
•
Format laporan yang dihasilkan tidak dapat disesuaikan dengan kebutuhan user
159
•
Laporan yang dihasilkan hanya berisi laporan 1 hari, yaitu hari pada saat pencetakan laporan
•
Laporan yang dihasilkan hanya dalam satu format file yaitu pdf.
•
Lalu lintas bandwidth yang tinggi pada saat aplikasi dijalankan karena proses pemantauan dilakukan secara terus menerus.
•
Kebutuhan perangkat keras yang cukup tinggi, sehingga tidak semua komputer dapat menjalankan aplikasi ini.
Hasil Percobaan Aplikasi DNMT :
Gambar 4.36 Tampilan awal aplikasi DMNT dijalankan
160
Gambar 4.37 Tampilan status berdasarkan propinsi
Gambar 4.38 Tampilan halaman pencarian
161
Data pertama diambil pada pukul 14:09 untuk merepresentasikan keadaan jaringan Depdiknas pada siang hari. Hasil yang didapat adalah 163 daerah dalam keadaan aktif atau up dan 280 daerah dalam keadaan tidak aktif atau down. Seluruh daerah yang terhubung melalui VSAT dalam keadaan tidak aktif. Keadaan disdik DKI Jakarta selaku gateway dalam jaringan Depdiknas adalah:
Gambar 4.39 Lalu lintas Jaringan Disdik Propinsi DKI Jakarta
162
Percobaan kedua dilakukan pukul 21:35
Gambar 4.40 Tampilan percobaan kedua
Gambar 4.41 Tampilan status berdasarkan propinsi
163
Gambar 4.42 Tampilan pencarian status Data ke 2 memberikan informasi bahwa 154 daerah dalam keadaan aktif dan 289 daerah dalam keadaan tidak aktif. Seluruh daerah yang terhubung melalui VSAT dalam keadaan tidak aktif. Disdik DKI Jakarta yang menjadi gateway pada jaringan Depdiknas berstatus tidak aktif pada pukul 21:30. Berikut keadaan disdik DKI Jakarta sebelum menjadi tidak aktif :
164
Gambar 4.43 Lalu lintas jaringan Disdik Propinsi DKI Jakarta
Percobaan ke 3 dilakukan pada pukul 08:43 tanggal 23 Januari 2007
Gambar 4.44 Tampilan awal percobaan ke tiga
165
Gambar 4.45 Tampilan status berdasarkan propinsi
Gambar 4.46 Tampilan pencarian status
166
Data ke 3 memberikan informasi bahwa 171 daerah dalam keadaan aktif dan 272 daerah dalam keadaan tidak aktif. Seluruh daerah yang terhubung melalui VSAT dalam keadaan tidak aktif. Disdik DKI Jakarta yang menjadi gateway pada jaringan Depdiknas berstatus aktif kembali pada pukul 08:41. Berikut data disdik DKI Jakarta hingga pukul 09:00:
Gambar 4.47 Lalu lintas jaringan Disdik Propinsi DKI Jakarta Berikut ini adalah tampilan percobaan aplikasi DNMT yang terhubung dengan aplikasi client SOP:
167
Gambar 4.48 Tampilan Kirim Pesan pada DNMT
Gambar 4.49 Tampilan aplikasi client SOP
168
Perbandingan sistem yang baru dengan sistem yang lama : Tabel 4.8 Sistem Lama
Sistem Baru
Data dapat di ubah, ditambah, dan dihapus
Ya
Ya
Menampilkan keadaan jaringan pada peta
Tidak
Ya
Ya
Ya
Sistem dapat berjalan secara multiplatform
Tidak
Tidak
Sistem dapat menampilkan grafik lalu lintas data pada Local Interface
Tidak
Ya
Ya
Ya
Tidak
Ya
Laporan yang dihasilkan dapat melihat nama daerah, ip, waktu pada saat perubahan status, dan status jaringan
Program server menggunakan GUI Sistem dapat mencetak laporan ke dalam file
Perancangan sistem ini membutuhkan suatu proses perancangan yang terdiri dari perancangan database, perancangan menu, perancangan State Transition Diagram (STD), perancangan layar, dan perancangan pseudocode. Implementasi dan evaluasi dilakukan setelah proses perancangan. Hasil evaluasi menunjukkan bahwa sistem ini mampu memperbaiki kekurangan-kekurangan yang ada pada sistem yang lama serta fungsi-fungsi yang ada dapat berjalan dengan baik walaupun masih terdapat kekurangan yang perlu diperbaiki.