Hak cipta dan penggunaan kembali:
Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis dan melisensikan ciptaan turunan dengan syarat yang serupa dengan ciptaan asli.
Copyright and reuse:
This license lets you remix, tweak, and build upon work
non-commercially, as long as you credit the origin creator
and license it on your new creations under the identical
terms.
BAB IV
DATA DAN ANALISA
Dengan langkah-langkah yang telah dijabarkan, diperoleh hasil dari proses pembuatan program hingga pengujian dan berikut analisa data yang diperoleh. Data yang diperoleh berupa data proses pembuatan dan data pengujian. Data proses pembuatan adalah data yang digunakan untuk membangun sistem dan data pengujian merupakan data yang diperoleh dari proses pengujian. Analisa disajikan mengikuti data yang dipaparkan.
IV.1 Hasil Pembuatan Program
Dari proses pembuatan program, diperoleh hasil-hasil sebagai berikut. Use case diagram telah dirancang dan digambarkan sesuai dengan tujuan sistem secara garis besar. Use case diagram dapat dilihat pada lampiran II. Kemudian, dibuat class diagram yang mencakup method dan atribut yang dibutuhkan oleh tujuan yang dijabarkan pada use case diagram.
Class diagram program agent dapat dilihat pada lampiran III. Class diagram program client dapat dilihat pada lampiran IV. Setelah class diagram dibuat, dibuat flowchart proses yang merupakan langkah sistem berpikir secara detail dengan menghubungkan antar fungsi yang didefinisikan pada class diagram. Flowchart proses program agent dapat dilihat pada lampiran V. Flowchart proses client dapat dilihat pada lampiran VI. Setelah flowchart proses dibuat, cara berpikir sistem tersebut dituangkan dalam kode sumber dengan menggunakan bahasa pemrograman C#. Kode sumber program agent dapat dilihat pada lampiran VII. Kode sumber program client dapat dilihat pada lampiran VIII. Database server dibuat berdasarkan kebutuhan yang diperlukan. ERD dan spesifikasi masing-masing tabel database dapat dilihat pada lampiran IX. Langkah-langkah instalasi DBMS MySQL juga dapat dilihat pada
lampiran IX. Setelah sistem dibuat, masing-masing program dijalankan. Tampilan program agent dapat dilihat pada lampiran X. Tampilan program client dapat dilihat pada lampiran XI.
IV.2 Hasil Pengujian Fungsional dan Analisa
Untuk melakukan uji fungsi sistem, dilakukan uji respon sistem. Uji respon sistem adalah uji proses-proses yang telah dirancang dalam use case diagram. Respon agent dalam memberikan respon akan dinilai. Jika agent tidak berhasil maka agent tidak benar untuk sistem yang telah dipetakan dan sebaliknya.
IV.2.1 Proses inisialisasi koneksi client dengan agent
Inisialisasi koneksi client dengan agent diperlukan agar client dapat menemukan satu atau lebih agent yang ada dalam jaringannya. Client akan menerima pesan yang disebarkan secara broadcast. Berdasarkan karakteristik dasar router, broadcast tidak mampu melewati router untuk terhubung dengan jaringan subnet lain. Konsep inisialisasi koneksi client dengan agent seperti terlihat pada gambar 4.1 berikut.
Gambar 4.1 Inisialisasi koneksi client dengan agent
Dari pengujian, diketahui bahwa paket data yang dikirimkan oleh program agent secara broadcast berhasil diterima oleh program client dan ditampilkan pada listbox yang tersedia seperti ditampilkan pada gambar 4.2 sebagai berikut.
Gambar 4.2 Screenshot paket data broadcast dari program agent
Untuk memilih agent, click tombol ‘Join’. Dengan demikian, program client akan membangun koneksi dengan program agent. Pada prakteknya, dalam satu jaringan dimungkinkan untuk memiliki lebih dari program agent.
Gambar 4.3 Screenshot setelah program client terkoneksi dengan program agent
Dengan dua gambar di atas, diperlihatkan bahwa proses inisialisasi koneksi dari program client ke program agent telah dilakukan.
Pada proses inisialisasi koneksi client dengan agent, agent mampu mengirimkan paket
diterima oleh program agent mampu dipecah menjadi nama dan alamat IP agent. Kemudian, nama agent ditampilkan ke dalam listbox yang disediakan seperti yang diperlihatkan pada gambar 4.2. Jika data yang dikirimkan salah, maka proses pemecahan data tidak akan berhasil dan client tidak akan dapat membangun koneksi dengan agent. Karena agent memberikan data yang dapat dipecah secara benar, maka dalam proses ini, agent dinyatakan benar untuk sistem yang dibuat.
IV.2.2 Proses pengenalan client ke client lain
Proses pengenalan client ke client lain juga menggunakan konsep broadcast message seperti ditunjukkan oleh gambar 4.4 berikut.
Gambar 4.4 Pengenalan client ke client lain
Dari pengujian, diketahui bahwa client dapat mengenali client lain yang berada dalam satu jaringan yang diperlihatkan pada gambar 4.5 sebagai berikut.
Gambar 4.5 Screenshot pengenalan antar client
Paket data yang disebarkan oleh user ‘client2’ dapat diterima, diolah dan ditampilkan oleh user ‘client’.
Pada proses pengiriman pesan dari client ke agent untuk diteruskan, agent mampu menerima data dan mengirimkan kepada client-client yang terhubung dengannya. Dalam proses ini, respon yang diharapkan terpenuhi karena data yang dikirim oleh client diterima secara benar oleh client-client lain seperti diperlihatkan pada gambar 4.5. Karena data yang dikirim dan diterima sama, maka agent dinyatakan mampu menjalankan proses ini.
IV.2.3 Proses pengiriman data dari client ke agent untuk diteruskan
Agent mampu meneruskan data sehingga memungkinkan komunikasi antar client dalam jaringannya. Kemampuan tersebut dirancang seperti pada gambar 4.6 berikut.
Gambar 4.6 Pengiriman data dari client ke agent untuk diteruskan
Dari pengujian yang dilakukan, pesan dari salah satu client telah berhasil diteruskan oleh agent kepada client lain seperti diperlihatkan oleh gambar 4.7 sebagai berikut.
Gambar 4.7 Screenshot program client dari kedua user sebelum mengirimkan data teks
Dengan melakukan click pada tombol ‘Send’, maka program mengirimkan data ke program agent. Kemudian agent akan meneruskan data kepada kedua client. Hasil pengiriman ditampilkan pada gambar 4.8 sebagai berikut.
Gambar 4.8 Screenshot program client setelah menerima data dari program agent
Selain data teks, aplikasi juga dapat mengirimkan file kepada client lain dalam satu agent. Pengiriman dimulai dengan menekan tombol ‘send file’ sehingga muncul FileDialog untuk memilih data yang ingin dikirim seperti ditunjukkan oleh gambar 4.9 berikut.
Gambar 4. 9 FileDialog untuk memilih file yang akan dikirim
Data dikirimkan dengan rancangan yang sama dengan pengiriman pesan. Pengujian telah dilakukan pada data gambar, suara, dan video. Berikut adalah spesifikasi file yang dikirim.
Gambar 4. 10 Spesifikasi file yang dikirim
File-file tersebut dikirim melalui jaringan dan disimpan secara default di drive D:
masing-masing client. Spesifikasi file yang diterima sama dengan yang dikirim sebagai berikut.
Gambar 4. 11 Spesifikasi file yang diterima oleh masing-masing client
Dari spesifikasi file yang diterima dapat dilihat bahwa ukuran file sama. Perbedaan dari file yang dikirim dan diterima adalah pada informasi tanggal modifikasi dan pembuatan.
Karena data direkonstruksi dari byte, maka informasi tanggal modifikasi dan pembuatan adalah saat pembuatan file tersebut.
Dengan demikian, data yang dikirimkan oleh masing-masing client telah diteruskan oleh program agent dan diterima oleh client-client yang terkoneksi dengannya dengan benar.
IV.2.4 Proses permintaan daftar agent dan daftar client dari client ke server
Permintaan daftar agent dan daftar client terkait dengan fungi agent untuk mengirimkan pesan ke client di agent yang lain. Oleh karena itu, dirancang sistem seperti terdapat pada gambar 4.12.
Gambar 4.12 Permintaan daftar agent dan daftar client dari client ke server
Dari pengujian diperoleh bahwa program client dapat memperoleh daftar agent dan daftar client dari server melalui program agent seperti diperlihatkan pada gambar 4.13 dan gambar 4.14 sebagai berikut.
Gambar 4.13 Screenshot daftar agent yang berada di jaringan
Gambar 4.14 Screenshot daftar client yang berada pada agent terpilih
Dengan demikian, daftar agent dan daftar client pada agent terpilih telah dapat diterima.
IV.2.5 Proses pengiriman pesan dari client ke client di agent lain
Proses pengiriman pesan juga terkait dengan fungsi agent untuk mengirimkan pesan ke client di agent yang lain. Proses yang dilakukan untuk melakukan permintaan daftar dan pengiriman data berbeda. Oleh karena itu, dirancang sistem pengiriman data seperti pada gambar 4.15 berikut.
Gambar 4.15 Pengiriman pesan dari client dari satu agent ke client di agent lain
Dari pengujian diketahui bahwa data yang ditujukan pada client pada agent lain dapat diterima dengan baik. Pengiriman dilakukan oleh ‘client1’ pada ‘agent1’ kepada ‘client2’
pada ‘agent2’. Persiapan pengiriman data ditunjukkan pada gambar 4.16 sebagai berikut.
Gambar 4.16 Screenshot program client sebelum melakukan pengiriman data teks
Dengan melakukan click pada tombol ‘Send’, program client akan mengirimkan data.
‘User2’ akan menerima pesan seperti pada gambar 4.17 sebagai berikut.
Gambar 4.17 Screenshot client2 saat menerima data teks dari client1
Selain pesan, sistem juga melayani pengiriman data file dengan rancangan sistem yang sama. Dengan melakukan click pada tombol ‘Send File’, akan muncul FileDialog untuk memilih file yang akan dikirimkan seperti ditunjukkan pada gambar 4.18 berikut.
Gambar 4.18 FileDialog untuk memilih file yang akan dikirim
Spesifikasi file yang digunakan untuk uji pengiriman file kepada client lain di agent lain adalah sebagai berikut.
Gambar 4.19 Spesifikasi file yang akan dikirimkan ke client lain di agent lain
Data file diterima oleh client tujuan dan akan dimunculkan MessageBox seperti ditunjukkan pada gambar 4.20 berikut.
Gambar 4.20 Notifikasi penerimaan file dari client lain di agent lain
Data file yang diterima oleh client tujuan tersebut memiliki spesifikasi seperti ditunjukkan oleh gambar 4.21 berikut.
Gambar 4.21 Spesifikasi file yang diterima oleh client tujuan di agent lain
Dengan demikian, pengiriman data dari client ke client lain pada agent lain dapat dilakukan. Pada proses pengiriman pesan dari client dari satu agent ke client di agent lain, agent mampu menerima data, memecah data, menyusun menjadi command untuk mengakses
melakukan proses pengecekan database server secara berkala. Karena ada pesan yang ditujukan untuknya dan belum dibaca, maka data tersebut diambil, dipecah, dan disusun ulang sehingga dapat diterima oleh client tujuan.
Berdasarkan uraian di atas, agent mampu merespon input dengan benar maka pada proses ini, agent dinyatakan mampu melakukan proses ini. Agent dinyatakan telah berjalan dengan benar.
IV.3 Hasil Pengujian Performa dan Analisa IV.3.1 Uji konsistensi
Diperoleh hasil pengujian konsistensi yang terlihat pada tabel 4.1.
Tabel 4.1 Data uji konsistensi
Jumlah resources Konsistensi Data (%)
5 100
10 100
15 100
20 100
Terlihat bahwa data yang melewati sistem memiliki tingkat konsistensi 100%.
Konsistensi data 100% menunjukkan bahwa dalam 100 kali pengiriman, seluruh data yang dikirim dan diterima sesuai. Sistem telah diuji dengan data berukuran 1 MB. Data yang dikirim dan diterima disimpan dalam log file dan telah dibandingkan sehingga menghasilkan data yang ditampilkan pada tabel 4.1.
Keutuhan byte data diperlukan untuk menjamin rekonstruksi byte data menjadi file yang identik. Dengan konsistensi data 100%, pengiriman berbagai jenis data melewati jaringan terjamin validitasnya.
Rekonstruksi file dari byte yang diterima menghasilkan file yang sama. Proses mengubah file menjadi byte dan byte menjadi file berhasil dilakukan. File baru hasil rekonstruksi memiliki tipe data yang sama dengan file yang dikirimkan.
Tingkat konsistensi data dari sistem yang dibuat sama dengan DLNET dan JADE sehingga perbaikan pada konsistensi data sejauh ini belum diperlukan.
IV.3.2 Uji skalabilitas
Diperoleh hasil pengujian skalabilitas yang terlihat pada tabel 4.2.
Tabel 4.2 Data uji skalabilitas
Jumlah resources Skalabilitas
5 Ya
10 Ya
15 Ya
20 Ya
Dari uji skalabilitas, diketahui bahwa sistem dapat melayani komunikasi data sampai 20 client pada kondisi heavy load buffer.
Berkaitan dengan tujuan arsitektur multi-tier, program agent mampu meminimalkan jumlah koneksi yang dibutuhkan client untuk terhubung dengan database server. Misalnya, terdapat 100 client. Pada arsitektur client-server, dibutuhkan 100 koneksi ke database server. Pada sistem yang dibuat, cukup diperlukan 5 koneksi. 5 koneksi tersebut adalah koneksi antara agent dengan database
server. Masing-masing agent menangani 20 koneksi dari client. Dengan demikian, sistem yang dibuat mampu menurunkan jumlah koneksi dari 100 menjadi 5 koneksi.
IV.3.3 Uji response time
Diperoleh hasil pengujian response time secara bersamaan yang terlihat pada tabel 4.3.
Tabel 4.3 Data uji response time pengiriman data teks Jumlah resources Rata-Rata Response Time (ms)
5 266.1
10 1500
15 3002.3
20 6720.6
Pada tabel 4.3, rata-rata response time diperoleh dari 100 kali percobaan pengiriman data teks. Response time akan semakin lama jika jumlah resources-nya semakin banyak. Hal yang sama juga tampak pada data response time pengiriman file.
Ada tiga jenis file yang digunakan untuk uji coba yaitu mp3, jpg dan flv. Masing- masing file tersebut memiliki spesifikasi sebagai berikut.
1. michael-smooth-criminal.mp3 (0,99 MB/1.047.326 bytes) 2. gus2-original.jpg (953 KB/976.154 bytes)
3. The 30-Second Video – YouTube.flv (1,04 MB/1.094.732 bytes)
Rata-rata response time yang diperoleh dari pengujian dapat dilihat pada tabel 4.4 berikut.
Tabel 4.4 Data uji response time pengiriman data file
Jenis File
Rata-Rata Response Time (ms)
5 10 15 20
MP3 340.2 1584.2 3447.1 6833.2
JPG 379.5 1688.7 3058 7069
FLV 367.7 1670.6 3315.7 6775.5
Pada tabel 4.4, nilai rata-rata response time diperoleh dari percobaan sebanyak 5 kali untuk masing-masing tipe data dan jumlah komputer. Response time yang dihasilkan tidak jauh berbeda karena sebelum dikirim file direkonstruksi menjadi byte array. Melalui proses rekonstruksi tersebut, tipe data bukan merupakan masalah dalam pengiriman data.
Berdasarkan pada arsitektur sistem, agent akan melakukan 25 kali pengiriman untuk melayani 5 client karena setiap data yang diterima diteruskan kembali kepada client. Pengujian dengan 10 client menghasilkan 100 kali pengiriman dan seterusnya.
Oleh karena itu, grafik kenaikan total response time menunjukkan pola yang sama dengan fungsi persamaan kuadrat sesuai dengan jumlah pengiriman yang dilakukan oleh agent seperti ditunjukkan oleh gambar 4.22 berikut.
Gambar 4. 22 Perbandingan hasil uji response time secara bersamaan
Untuk mencari persamaan kuadrat digunakan rumus sebagai berikut.
= ( − ) −
Digunakan titik-titik yang diperoleh pada pengujian dengan data teks karena ukuran data teks yang digunakan tepat 1MB. Dengan koordinat titik puncak (0,0) dan salah satu titik yaitu (20, 6720), diperoleh perhitungan sebagai berikut.
6720 = (20 − 0) − 0
= 6720 400
= 16,8
Dengan demikian diperoleh persamaan sebagai berikut.
= 16,8
Persamaan yang diperoleh dapat berguna untuk memprediksi kemampuan layanan agent dan menentukan jumlah komputer yang mampu ditangani oleh agent
sehingga diperoleh kualitas layanan tertentu. Misalnya agar pesan yang disampaikan dapat dikirim dan diterima oleh client dalam waktu paling lama 30 detik, maka jumlah client paling banyak yang dapat dilayani dapat diprediksi sebagai berikut.
= 30000
30000 = 16,8( )
= 30000
16,8 = 1785, 7 = 42,2
= 42
Jadi, agar data dapat sampai kepada user paling lama 30 detik, maka jumlah client paling banyak yang dapat dilayani adalah 42 client.