BAB IV IMPLEMENTASI DAN PENGUJIAN

advertisement
BAB IV
IMPLEMENTASI DAN PENGUJIAN
Pada bab ini akan dijabarkan implementasi dan pengujian perangkat lunak
berdasarkan hasil analisis dan perancangan di bab III.
4.1
Implementasi
Bagian ini berisi penjelasan tentang lingkungan implementasi, batasan implementasi,
tahapan implementasi, serta status implementasi perangkat lunak.
4.1.1 Lingkungan Implementasi
Lingkungan implementasi meliputi lingkungan perangkat keras dan perangkat lunak.
Lingkungan perangkat keras yang digunakan dalam aplikasi fax gateway adalah
sebagai berikut:
1.
Processor Intel Xeon 2.80 GHz (2 CPU).
2.
RAM 1280 MB
3.
Harddisk 40 GB
4.
Monitor HP 7500
5.
Modem GSM iTegno 3000 sebagai fax modem.
Lingkungan perangkat keras yang digunakan tersebut bukan merupakan spesifikasi
minimum yang diperlukan. Aplikasi dapat berjalan pada lingkungan perangkat lunak
yang lebih kecil dengan syarat menggunakan modem GPRS/GSM yang mendukung
AT Command untuk operasi faksimili.
Spesifikasi lingkungan perangkat lunak yang digunakan dalam implementasi adalah
sebagai berikut:
1. Windows XP Server Edition 2003
2. J2SDK, Standard Edition 1.6.0 untuk subsistem fax gateway.
3. Netbeans 5.0 dan Eclipse 3.1 sebagai IDE untuk editor aplikasi.
IV-1
Adapun library yang dibutuhkan dalam pengembangan perangkat lunak adalah:
1. comm.jar, Java Communication API dari Sun yang digunakan untuk
komunikasi dengan GSM Modem menggunakan serial port.
2. acrobat.jar, library java yang digunakan dalam membaca dan mengkonversi
file portable document format menjadi format T.4.
3. ie-stubs.zip, library java yang dibutuhkan oleh acrobat.jar.
4. java1.2-stubs.zip, library java yang dibutuhkan untuk menjalankan acrobat.jar.
5. MRJToolkitStubs.zip, library java yang dibutuhkan untuk menjalankan
library acrobat.jar.
6. netscape-stubs.zip, library java yang digunakan untuk menjalankan library
acrobat.jar.
7. jdom.jar, library java yang digunakan untuk menjalankan acrobat.jar.
8. jai_core.jar, library java yang digunakan untuk menjalankan acrobat.jar.
9. jai_codec.jar, library java yang digunakan untuk menjalankan acrobat.jar.
4.1.2 Batasan Implementasi
Implementasi perangkat lunak pada tugas akhir ini memiliki batasan sebagai berikut:
1. Perangkat lunak hanya bekerja untuk modem GSM yang mendukung
komunikasi faksimili kelas 2. Kode untuk faksimili kelas 2.0 sudah
diimplementasikan, tetapi belum diujicobakan. Aplikasi ini sama sekali tidak
mendukung komunikasi dengan modem faksimili kelas 1 dikarenakan terlalu
rumitnya proses komunikasi menggunakan perangkat keras tersebut. Tidak
seperti halnya modem kelas 2 dan kelas 2.0, pengiriman frame HDLC pada
modem kelas 1 dilakukan secara manual melalui method atau fungsi. Pada
modem kelas 2 dan 2.0, pengiriman frame HDLC telah dibungkus dengan AT
Command dan ditangani di segi perangkat kerasnya.
2. Aplikasi difokuskan untuk aktivitas pengiriman faksimili.
3. Aplikasi hanya mampu mengirimkan dokumen tipe text (txt) dan portable
document format (pdf) sebagai pesan faksimili, mengingat kedua format ini
bersifat public license dan sangat luas digunakan sehingga library untuk
membaca kedua tipe dokumen tersedia secara gratisan di internet. Untuk
dokumen Microsoft Office (doc, xls, dan ppt), belum tersedia library yang
IV-2
bersifat public karena dokumen tipe tersebut bersifat komersial. Library yang
ada pun untuk membaca tipe dokumen Microsoft Office tersebut juga bersifat
komersial. Sampai saat ini, open source project yang menangani tipe dokumen
Microsoft Office masih dalam pengembangan dan masih belum matang.
4.1.3 File Implementasi
Subbab ini menjelaskan kode sumber implementasi kode java yang digunakan dalam
membangun aplikasi fax gateway.
Implementasi kode Java penyusun Fax Gateway dibungkus dalam sebuah package
org.NoteBOX.gateway.fax yang terdiri dari file-file berikut:
1. FaxProducer.java, berfungsi sebagai interface untuk kelas-kelas yang akan
mengimplementasikan pengkonversian format tertentu ke format image T.4.
2. PdfFaxProducer.java, berfungsi untuk melakukan encoding dari format
portable file format (pdf) ke dalam bentuk java.awt.Image. Kelas ini
menggunakan beberapa library untuk membaca file format pdf ini, antara lain:
acrobat.jar, jai_core.jar, jai_codec.jar, jdom.jar, ie-stubs.zip, java1.2-stubs.zip,
MRToolkitStubs.zip, dan netscape-stubs.zip.
3. TextFaxProducer.java, berfungsi untuk melakukan encoding dari format text
(txt) ke dalam bentuk java.awt.image. Proses encoding tipe text ini tidak
membutuhkan library tambahan. Keuntungan menggunakan kelas ini adalah,
format jenis font dan ukurannya bisa disesuaikan/diubah secara on the fly.
4. T4FaxEncoder.java, berfungsi untuk mengkonversi tipe java.awt.Image
pada kelas turunan FaxProducer.java menjadi format T.4 (raw fax).
5. TiffWriter.java, berfungsi untuk membungkus format file T.4 menjadi TIFF
sehingga bisa dibuka dengan aplikasi image viewer biasa.
6. FaxStatusListener.java, berfungsi untuk melacak status pengiriman pesan
faksimili.
7. Capabilities.java, berfungsi untuk mengakomodasi kemampuan yang dimiliki
oleh modem GSM yang digunakan.
8. CommTerminal, merupakan kelas yang berfungsi dalam membuka koneksi
dengan serial port pada modem. Kelas ini memiliki method untuk
IV-3
mengirimkan AT Command dan memparsing respon yang diberikan.
9. FaxModem.java,
merupakan
kelas
turunan
langsung
dari
CommTerminal.java, yang khusus menangani pengiriman pesan faksimili ke
remote fax machine.
10. FaxGateway.java, yaitu kelas yang mengimplementasikan interface gateway
pada NoteBOX yang berfungsi dalam mendengarkan event dari core server.
Kelas ini juga bertanggung jawab dalam mengecek dan menyampaikan pesan
faksimili ke tujuan.
4.1.4 File Konfigurasi
Sebelum menjalankan aplikasi fax gateway, diperlukan pengaturan konfigurasi
aplikasi. Adapun file konfigurasi yang harus diperhatikan pada aplikasi ini, yaitu:
1. gateway.xml, berisi konfigurasi modem serta memuat PIN dari SIM Card
yang digunakan. File ini juga berisi konfigurasi dari fax gateway.
4.2
Pengujian
Subbab ini berisi penjelasan tentang pengujian yang dilakukan terhadap aplikasi yang
dibangun. Pengujian dilakukan untuk memastikan apakah fax gateway telah
terintegrasi dengan baik dalam lingkungan sistem NoteBOX. Pengujian juga
dilakukan untuk memastikan apakah aplikasi sudah bekerja dengan baik sebagaimana
mestinya. Pembahasan pada subbab ini meliputi lingkungan pengujian, rencana
pengujian, dan hasil pengujian.
4.2.1 Lingkungan Pengujian
Pengujian aplikasi dilakukan dengan menggunakan lingkungan sebagai berikut:
1. Processor Intel Xeon 2.80 GHz (2 CPU).
2. RAM 1280 MB
3. Harddisk 40 GB
4. Monitor HP 7500
5. Windows XP Server Edition 2003
IV-4
4.2.2 Skenario Pengujian
Pengujian dilakukan terhadap fungsionalitas gateway dalam menyampaikan pesan
faksimili ke tujuan akhir. Pengujian terhadap search query pada native client tidak
dapat dilakukan karena search server belum dapat berjalan di lingkungan NoteBOX
revisi. Tidak semua skenario pada tiap use case akan diuji, tetapi hanya kasus tertentu
yang membutuhkan perhatian khusus, yaitu skenario request send fax melalui layanan
SMS.
Untuk melakukan pengujian di atas, perlu adanya integrasi antara core server
NoteBOX dengan gateway, dalam hal ini SMS gateway, e-mail gateway, dan fax
gateway. SMS gateway dibutuhkan untuk menerima request SMS, sedangkan fax
gateway sendiri berfungsi untuk menyampaikan pesan faksimili ke tujuan akhir. Email gateway dibutuhkan dalam menyampaikan report pengiriman pesan faksimili
(gagal atau sukses). Report juga bisa disampaikan melalui layanan SMS.
Sesuai dengan konsep NoteBOX, yaitu pemanfaatan layanan murah meriah melalui
SMS untuk meneruskan pesan, maka skenario pengujian dilakukan menggunakan
layanan SMS. Ada beberapa kasus uji untuk menguji integrasi fax gateway yang
masing-masing memiliki format pesan tertentu. Kasus-kasus uji tersebut adalah
sebagai berikut:
1. Mengirim pesan SMS pengiriman dokumen text (txt), report ditujukan ke
alamat e-mail.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat fax tujuan> doc:<file text>
email:<alamat report email> sms:null.
Alamat report e-mail di sini berupa xx@domain.
2. Mengirim pesan SMS pengiriman dokumen text (txt), report ditujukan ke
alamat SMS.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat fax tujuan> doc:<file text>
email:null sms:<alamat report SMS>.
Alamat report SMS di sini berupa +62XXX.
IV-5
3. Mengirim pesan SMS pengiriman dokumen text (txt), report ditujukan ke
alamat SMS dan e-mail.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat fax tujuan> doc:<file text>
email: <alamat report email> sms:<alamat report SMS>.
Alamat report e-mail di sini berupa xx@domain.
Alamat report SMS di sini berupa +62XXX.
4. Mengirim pesan SMS pengiriman dokumen portable document format (pdf),
report ditujukan ke alamat e-mail.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat
fax
tujuan>
doc:<file
pdf>
email:<alamat report email> sms:null.
Alamat report e-mail di sini berupa xx@domain.
5. Mengirim pesan SMS pengiriman dokumen portable document format (pdf),
report ditujukan ke alamat SMS.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat
fax
tujuan>
doc:<file
pdf>
email:null sms:<alamat report SMS>.
Alamat report SMS di sini berupa +62XXX.
6. Mengirim pesan SMS pengiriman dokumen portable document format (pdf),
report ditujukan ke alamat SMS dan e-mail.
Tujuan: <no sms gateway>.
Format pesan: fax:<alamat
fax
tujuan>
doc:<file
pdf>
email: <alamat report email> sms:<alamat report SMS>.
Alamat report e-mail di sini berupa xx@domain.
Alamat report SMS di sini berupa +62XXX.
Karena pada saat pengujian terdapat masalah pada subsistem SMS gateway, maka
pengujian dilakukan menggunakan SMTP client pada e-mail gateway. Begitu juga
pengiriman report, hanya bisa diteruskan melalui layanan e-mail.
IV-6
4.2.3 Hasil Pengujian
Hasil pengujian fungsionalitas fax gateway ditunjukkan pada tabel IV-1. Pada tabel
tersebut, masing-masing use case diuji pada skenario normal dan skenario alternatif.
Skenario alternatif di sini yaitu skenario pengiriman pesan faksimili yang
disengajakan gagal agar sistem mengirimkan report ketidakberhasilan pengiriman
melalui layanan e-mail. Skenario alternatif ini dilakukan dengan mencabut kabel
telepon nomor mesin faksimili tujuan atau dengan menggunakan saluran telepon
tersebut untuk aktivitas lain sehingga sistem mendapatkan pesan LINE BUSY.
Tabel IV-1 Hasil Pengujian
No
Use Case
1
Request file text sending, report to e-mail
skenario normal
skenario alternatif 1
2
Request file text sending, no report
skenario normal
skenario alternatif 1
3
Request file pdf sending, report to e-mail
skenario normal
skenario alternatif 1
4
Request file pdf sending, no report
skenario normal
skenario alternatif 1
Status
Sukses
Sukses
Sukses
Tidak diujicobakan
Sukses
Sukses
Sukses
Tidak diujicobakan
4.2.3 Evaluasi Hasil Pengujian
Pada pengujian nomor 1 tabel IV-1, digunakan dokumen text sebagai sumber pesan
faksimili ke nomor tujuan. Skenario normal berjalan lancar dan report keberhasilan
pengiriman sukses terkirim pada alamat e-mail tujuan. Skenario alternatif kasus 1
dilakukan dengan mencabut kabel telepon nomor faksimili tujuan sehingga subsistem
fax gateway tidak menerima respon sama sekali dari remote fax machine. Report yang
dikirimkan pada e-mail tujuan berisi pesan timeout sending fax message. Kasus 2
pada tabel IV-1 mirip dengan kasus 1 tanpa adanya pengiriman report.
Untuk kasus 3, digunakan dokumen portable document format. Pemrosesan dokumen
pdf menjadi image T.4 lebih memakan waktu daripada dokumen text, sama halnya
pada kasus pengkonversian dokumen ke format pdf. Pengiriman ke nomor tujuan
dapat dilakukan dengan baik, dan report keberhasilan juga sukses terkirim. Pada
skenario alternatif, remote fax machine digunakan untuk menghubungi nomor telepon
IV-7
lain, sehingga subsistem fax gateway tidak bisa berkomunikasi dengan nomor tujuan.
Pada report e-mail tertulis pesan kegagalan yang menyatakan bahwa nomor tujuan
pengiriman pesan sedang digunakan LINE BUSY. Kasus terakhir pada tabel IV-1
sama halnya dengan kasus nomor 3 tanpa pengiriman report.
IV-8
Download