BAB 3 PERANCANGAN SISTEM DAN APLIKASI
Dalam tugas Akhir ini dikembangkan aplikasi mobile berbasis context aware dan location based service yang dinamakan dengan Mobile Surveyor. Mobile Surveyor bertujuan untuk memberikan layanan informasi berupa lokasi (koordinat) dan gambar dari suatu tempat kepada user lain yang berada di daerah lain . Aplikasi ini bersifat aware terhadap perubahan lokasi yang dilakukan oleh surveyor sehingga data yang diberikan akan selalu di update secara periodik. User tinggal mengakses sebuah web untuk mengetahui detail informasi yang ada, termasuk keterangan-keterangan tambahan tentang peta yang berbasis GeoSpasial. Pada bab ini
akan digambarkan proses dan tahapan perancangan
sistem. Langkah pertama yang dilakukan adalah mendefinisikan arsitektur sistem yang akan dibuat. Kemudian dilanjutkan dengan mendefinisikan lebih detail tentang aspek fungsionalitas berikut pemilihan perangkat dari perangkat-perangkat yang ada di dalam sistem. Kesemuanya itu akan di tempatkan pada sebuah framework yang nantinya akan diterjemahkan dalam bahasa pemrograman. Dalam hal ini, perancangan perangkat lunak beserta penggambaran relasi antar komponen dan class-class yang terbentuk di dalamnya di representasikan dalam bentuk diagram-diagram Unified Modelling language (UML) versi 2.0, dan sequence diagram.
28
3.1 Spesifikasi sistem 3.1.1 Gambaran umum Mobile Surveyor merupakan sistem yang berjalan berbasis server-client. Yakni suatu sistem yang menggunakan server untuk mengolah informasi agar bisa diakses oleh user. Informasi yang ada berupa data koordinat lokasi dan gambar yang diambil pada suatu wilayah. Informasi tersebut akan diolah server, yang nantinya akan di sajikan dalam bentuk web service. Dengan adanya aplikasi ini, maka surveyor yang berada pada suatu daerah yang jauh dan terpencil, misalnya di Kalimantan, dapat memberikan koordinat beserta gambar dari daerah yang di jelajahinya. Dengan menggunakan koneksi VSAT, maka data-data yang ada akan bisa ditransfer sehingga bisa di nikmati oleh user yang berada pada wilayah lain, Jakarta misalnya. Selain itu, user juga dapat menikmati layanan peta interaktif berupa GeoSpatial dimana dengan adanya fungsi tersebut akan memberikan detail lokasi yang sedang di jelajahi. Implementasi pada perangkat bergerak , yang dalam hal ini menggunakan nokia E61i, merupakan pengujian pada lingkungan yang sebenarnya. Dalam hal ini merupakan lingkungan dimana akan diterapkan aplikasi Mobile Surveyor.
29
gambar 3.1 : rancangan alur Mobile Surveyor
3.1.2 Spesifikasi Fungsional Secara fungsionalitas, aplikasi mobile surveyor dibagi menjadi 2 bagian, yakni pada sisi surveyor dan server. Pada sisi surveyor, memiliki spesifikasi fungsionall sebagai berikut: 1. Menyediakan antarmuka grafis
yang user-friendly agar
surveyor dapat menggunakan aplikasi 2. Melakukan pengambilan context lokasi berupa data koordinat (lintang dan bujur) dari GPS receiver secara kontinu 3. Menyediakan fungsi informasi berupa peta dan koordinat agar surveyor mengetahui tempat dimana dia berada 4. Melakukan pengambilan context lokasi berupa gambar dari suatu lokasi yang di survey 5. Menginisiasi pengiriman context baik berupa koordinat ataupun gambar melalui koneksi wireless Sedangkan pada sisi server, spesifikasi fungsional yang ada meliputi: 1. Menerima infomasi berupa gambar dan koordinat yang di kirimkan oleh mobile station melalui koneksi wireless
30
2. Menyajikan informasi gambar dan koordinat dalam bentuk web interaktif agar dapat diakses oleh user 3.1.3
Spesifikasi Teknis
Spesifikasi teknis yang ada pada sisi Mobile Station adalah sebagai berikut: 1. Komunikasi antara GPS receiver dengan aplikasi pada mobile station menggunakan koneksi Bluetooth, serial port. 2. Aplikasi yang dibuat pada mobile station menggunakan bahasa pemrograman J2ME 3. Peng-captur
gambar
menggunakan
camera
yang
terintegrasikan di dalam mobile station 4. Pada
pengiriman
gambar
dilakukan
enkripsi
dengan
menggunakan Base64 5. Pengiriman data dilakukan menggunakan koneksi http, yakni dengan memanfaatkan koneksi wireless LAN Sedangkan spesifikasi teknis yang ada pada server, adalah sebagai berikut: 1. Pengambilan data gambar dilakukan dengan menggunakan bahasa pemgrograman Java Servlet 2. Pengolahan database dilakukan menggunakan My SQL 3. Web interaktif di buat dengan menggabungkan bahasa PHP dan MapScript mapServer. 3.2 Arsitektur Sistem Sistem Mobile surveyor memiliki arsitektur double client server, yakni terdiri dari surveyor-server dan user-webserver. Surveyor-server melakukan koneksi http untuk pengiriman data, sedangkan user-web server menggunakan VSAT untuk pengaksesannya. Kerja sistem dimulai dari Mobile Station yang
31
mengambil data koordinat dari GPS receiver & gambar dari kamera yang ada. Kemudian mengirimkannya ke server yang berada pada kendaraan untuk di olah. Sedangkan user-webnserver merupakan layanan web interaktif yang di koneksikan menggunakan VSAT. Hal ini dikarenakan koneksi VSAT sangatlah dibutuhkan mengingat kendaraan yang ada berada di daerah terisolasi.
gambar 3.2 : Arsitektur Mobile Surveyor
3.3 Desain Perangkat Lunak untuk Aplikasi User Aktif 3.3.1
Usecase Diagram
Aktor-aktor yang terlibat dan berperan di dalam sistem Mobile surveyor adalah sebagai berikut:
32
Pengguna dari aplikasi mobile phone. Bertugas untuk turun langsung ke lapangan pada saat survey
Surveyor
Pengguna layanan Mobile Surveyor
User
gambar 3.3 : Aktor Mobile Surveyor
Sedangkan Usecase diagram yang menggambarkan komponen, relasi, dan fungsionalitas sistem tersebut dapat di lihat pada gambar 3.4
Get Position
Get Koordinat
View map
User Surveyor
Capture Image
gambar 3.4 : usecase diagram pada aplikasi mobie surveyor
Sesuai dengan spesifikasi dan arsitektur yang telah dirancang, aplikasi client dibuat menjadi beberapa usercase yang mendefinisikan fungsionalitas , yakni sebagai berikut: • Koordinat
: Menyajikan
layanan
surveyor pada suatu waktu
33
berupa
posisi
• Mengirimkan informasi koordinat
: Melakukan koneksi antara HP dengan GPS Receiver melalui koneksi Bluetooth untuk mentransfer koordinat lintang dan bujur ke mobile phone
• Mengambil gambar
: Meng-ambil gambar di lokasi surveyor
• Mengirim gambar dan : Melakukan koneksi http antara mobile koordinat
phone dengan server. Kemudian melakukan pengiriman gambar dan koordinat dari mobile phone ke handphone. Sebelum di kirim, pada gambar terlebih dahulu dilakukan pengkodean dengan Base64.
• Mengolah Informasi
: Melakukan dekripsi pada gambar yang dikirim
mobilephone
dengan
Base64
decoder. Kemudian mengolah informasi koordinat dan gambar yang ada untuk disajikan kepada user. • Display
: Berinteraksi dengan user melalui web service.,
sehingga
menggunakan
aplikasi,
user yakni
dapat dengan
melihat tampilan web yang berisi peta, gambar, dan koordinat tempat surveyor berada • Peta
: Menyajikan layanan berupa peta kepada user. Peta ini bersifat interaktif dan berbentuk vector dan berbasis GIS
34
• Gambar
: Menyajikan
layanan
berupa
gambar
kepada user. Gambar yang dihasilkan merupakan
gambar yang diproses semi
realtime
3.3.2
Deployment Diagram Sistem Mobile Surveyor dikembangkan menjadi 3 bagian
executable di dalam Deployment Diagram. Dua bagian tedapat di dalam server, sedangkan 1 bagian lainnya terdapat di dalam mobile Device. Aplikasi yang terdapat di dalam server adalah Gambar Processing, dan Web Service. Gambar Processing dipergunakan untuk memproses gambar yang di kirimkan dari mobile device. Sedangkan Web Sevice dipergunakan untuk menampilkan keseluruhan sistem agar bisa di nikmati oleh user yang ada.
Server
Mobile Communication Web Service
Mobile Surveyor Image Processing
gambar 3.5 : Deployment Diagram
3.3.3
Sequence Diagram Dari usecase diagram
yang telah di jelaskan sebelumnya,
dibuatlah mekanisme sequence diagram dari tiap-tiap usecase. Sequence diagram tersebut menjelaskan fungsionalitas dari tiap-tiap usecase yang ada.
35
Posisi surveyor diperoleh dengan mengaktifkan permintaan request pilihan menu My Position. Kelas instance di buat dari aplikasi tersebut, kemudian dilakukan request untuk meminta gambar dari ITB Map. Kelas ITB Map akan dilukiskan dalam MapCanvas untuk di tampilkan pada perangkat mobile . Ilustrasi hal ini dapat dilihat pada gambar 3. 6
gambar 3.6 : Diagram sequence analisis menampilkan posisi surveyor
Penjelasan sequence diagram selanjutnya adalah tentang sequence diagram anaisis Camera. Gambar yang diperoleh dengan mengaktifkan MMAPI yang ada pada CameraAccess. Gambar yang diperoleh akan dilukiskan didalam Canvas kemudian di kirimkan melalui koneksi Http. Sebelum dikirimkan ke server, dilakukan
36
pengkodean
terlebih
dahulu
oleh
dBase64.
Gambar
berikut
memperlihatkan sequence diagram analisis untuk Camera.
gambar 3.7 : diagram sequence analisis camera
Penjelasan sequence Diagram analisis untuk GPS dimulai dengan mengaktifkan koneksi Bluetooth antara GPS Receiver dengan perangkat mobile . Perangkat tersebut akan meminta data berformat NMEA untuk di kirimkan. Data tersebut kemudian diterima dan di parsing sesuai dengan kebutuhan yang di inginkan. Setelah data tersebut diperoleh, dilakukan koneksi http melalui protocol TCP/IP. Data tersebut kemudian di kirimkan ke server untuk kemudian diolah lebih lanjut. Gambar 3.8 menjelaskan tentang diagram sequence analisis untuk aplikasi GPS.
37
gambar 3.8 : sequence Diagram analisis GPS
Di bagian server, diagram sequence analisis di sajikan untuk permintaan request dari user yang ada. User akan berinteraksi dengan sistem Mobile Surveyor melalui request yang dilakukan terhadap website. Request tersebut akan di response oleh server, khususnya oleh MapServer untuk melayani jenis request yang di minta. Gambar berikut memperlihatkan sequence diagram untuk request peta.
38
gambar 3.9 : Sequence diagram untuk request Peta oleh user
39
3.3.4 Class diagram Aplikasi Mobile Surveyor dikembangkan dalam 5 buah kelas analisis yang terbagi dalam dua buah kelompok. Kelompok pertama merupakan kelas yang terdapat di mobile device yang terdiri dari tiga buah kelas yakni kelas Camera, Position, dan GPS. Sedangkan kelompok kedua merupakan kelas yang terdapat di server yang terdiri dari kelas GambarServlet dan Base64. Tiap-tiap kelas tersebut dijelaskan sebagai berikut: Camera
Position
+Base64 +Canvas
GPS
+Map +POI +Detail +Landmark
+Capture() +Sending() +encode()
+Screen +Connection +Connect() +Parsing() +Sending()
+Initialize() +Details()
gambar 3.10 : class diagram analisis untuk aplikasi di Mobile Device
ImageServlet
Base64
+HttpConnection +Base 64 Decoder
+Character +Buffer
+connect() +saving()
+decode()
gambar 3.11 : class diagram analisis aplikasi Server
40
Aplikasi pada mobile communication dikembangkan dalam 3 buah package. Tiap-tiap package memiliki fungsionalitas yang berbeda satu sama lainnya. 3.3.4.1 Class Camera Kelas ini terdiri dari beberapa atribut dan operation sebagai berikut:
Tabel 3.1 : Class Camera
No 1
Nama
Jenis Attribute
Base64
Fungsi Algoritma enkripsi untuk pengiriman gambar melalui koneksi htp
2
Attribute
Canvas
Tempat ditampilkannya gambar di tampilan handphone
3
Attribute
Capture()
Menangkap gambar yang di kehendaki melalui kamera yang terdapat di handphone
4
Operation
Sending()
Mengirimkan gambar melalui koneksi http
5
Operation
Encode()
Mengaktifkan pengkodean base64 untuk pengiriman gambar
3.3.4.2 Class Position Kelas ini terdiri dari beberapa atribut dan operation sebagai berikut:
Tabel 3.2 : Class Position
41
No 1
Nama
Jenis Attribute
Map
Fungsi Peta digital ITB yang terdapat pada handphone dalam bentuk format raster
2
Attribute
POI
Icon yang menunjukan posisi surveyor yang nantinya akan ditampilkan di dalam peta digital
3
Detail
Attribute
Keterangan lebih lanjut tentang sebuah landmark
4
Landmark
Attribute
Sebuah tempat yang tertera pada peta digital
5
Initialize()
Operation
Menginisiasi pengaktifan peta digital ITB & mengaktifkan segenap komponen pendukung seperti Bluetooth,
6
Details
Operation
Melihat keterangan lebih lengkap tentang landmark yang di pilih
3.3.4.3 Class GPS Kelas ini terdiri dari beberapa atribut dan operation sebagai berikut:
Tabel 3.3 : Class GPS
No 1
Nama Screen
Jenis Attribute
Fungsi Berfungsi dalam penyajian menampilkan keluaran data
42
GPS 2
Connection
Attribute
Memberikan koneksi Http untuk pengiriman data
3
Connect()
Operation
Mengaktifkan connection
4
Parsing()
Operation
Memilah-milah data yang diperlukan dari keseluruhan data yang diberikan GPS
5
Sending()
Operation
Mengirimkan koordinat yang telah di pilih dari handphone ke server
3.3.4.4 Class Gambar Servlet Kelas ini terdiri dari beberapa atribut dan operation sebagai berikut:
Tabel 3.4 : Class Gambar Servlet
No
Nama
Jenis
Fungsi
1
HttpConnection
Attribute
Menyajikan koneksi http
2
Base64 decoder
Attribute
Decoder gambar yang diterima server
3
Connect()
Operation
Mengaktifkan connection
4
Saving()
Operation
Menyimpan gambar yang telah di terima server
3.3.4.5 Class Base64 Kelas ini terdiri dari beberapa atribut dan operation sebagai berikut:
43
Tabel 3.5 : Class Camera
No 1
Nama
Jenis Attribute
Character
Fungsi Input yang diproses oleh algoritma pengkodean Base64
2
Attribute
Buffer
Tempat penyimpanan sementara hasil pengkodean
3
decode()
Operation
3.3.5
State Chart Diagram
Mengaktifkan decoder
Aplikasi pada mobile phone dimulai dengan menampilkan splash screen yang berisi tampilan lambang mobile surveyor. Aplikasi tersebut dijalankan kurang lebih selama 2.5 detik. Setelah ditampilkan splash screen, maka aplikasi akan memasuki main menu (Menu Utama). Di menu utama ini, surveyor akan memilih beberapa aplikasi yang disediakan. Aplikasi tersebut adalah My Position, GPS, dan Camera. My position berfungsi untuk menunjukan letak surveyor pada peta digital di mobile phone. GPS berfungsi untuk mengetahui posisi koordinat lintang dan bujur dimana surveyor berada, aplikasi tersebut juga berfungsi untuk memfasilitasi pengiriman ke server. Sedangkan aplikasi Camera berfungsi untuk mengambil gambar yang berada di sekita surveyor. Sama seperti GPS, aplikasi ini juga berfungsi untuk memfasilitasi surveyor mengirimkan gambar ke server melalui Wireless LAN. Setelah informasi gambar dan koordinat dikirimkan melalui WLAN, maka server akan merespon informasi-informasi tersebut.
44
Informasi tersebut akan disimpan ke dalam database terlebih dahulu sebelum di tampilkan ke dalam web. Setelah disimpan, maka web akan merequest informasi terbaru dari gambar dan koordinat yang ada. Di sisi yang lain, mapserver akan merespon koordinat yang terbaru dengan memberikan point of interest (POI) yang terbaru pada peta yang berkaitan.
45
gambar 3.12 : State Chart Diagram aplikasi Mobile Surveyor
46