Penerapan Teknologi Web Service Dengan Menggunakan Platform J2EE Pada Server Traffic Report System Dosen Pembimbing : Dr. Eng. Febriliyan Samopa, S.Kom, M.Kom NIP. 19730219 199802 1 001
Oleh : Yulianto
5206 100 035
Laboratorium Bidang Minat E-Bisnis Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya
OVERVIEW Latar Belakang
Traffic Report System ialah suatu sistem yang bertujuan memberikan informasi kepada penggunanya mengenai kondisi lalu lintas disekitar mereka, sistem ini akan mengolah informasi yang masuk dari pengguna serta meneruskan informasi tersebut ke pengguna lainnya. Tujuan Tugas Akhir
Tujuan dari tugas akhir ini adalah mempelajari serta melakukan implementasi teknologi Web Service pada Traffic Report System sehingga server dapat melayani request dari client dengan cepat.
Here comes your footer
Page 2
PENDAHULUAN (lanjt.) Perumusan Masalah
Permasalahan yang akan diselesaikan dalam tugas akhir ini adalah: Bagaimana untuk mengetahui posisi para pelanggan yang sedang aktif. Bagaimana untuk mengolah dan memberikan informasi kondisi lalu lintas secara cepat. Bagaimana untuk mengetahui pelanggan mana saja yang berada di sekitar posisi pelapor dengan jarak tertentu.
Here comes your footer
Page 3
PENDAHULUAN (lanjt.) Batasan Masalah
Batasan pemasalahan dalam tugas akhir ini adalah: Aplikasi yang dikembangkan didesain untuk mengirimkan output informasi ke aplikasi client berupa koordinat dan kondisi lalu lintas. Aplikasi yang dikembangkan hanya untuk server. Aplikasi dikembangkan dengan menggunakan teknologi Web Service pada platform J2EE.
Here comes your footer
Page 4
PENDAHULUAN (lanjt.) Tujuan Tugas Akhir
Tujuan dari tugas akhir ini adalah mempelajari serta melakukan implementasi teknologi Web Service pada Traffic Report System sehingga server dapat melayani request dari client dengan cepat.
Relevansi atau Manfaat Kegiatan Tugas Akhir
Tugas akhir ini dapat memberikan contoh sistem pull-push web service yang kemudian dapat dikembangkan lebih lanjut lagi serta dapat menjadikan nilai tambah untuk provider yang mungkin tertarik untuk melakukan komersialisasi aplikasi ini.
Here comes your footer
Page 5
TINJAUAN PUSTAKA Cell Id ( Cell Identification )
Cell Id ialah suatu teknik yang digunakan dalam komunikasi jaringan seluler. Digit angka dalam Cell Id menunjukkan posisi BTS (Base Transmitter Station) yang paling dekat dengan perangkat seluler. Jika sebuah perangkat seluler terdeteksi oleh BTS tertentu bisa dipastikan bahwa perangkat tersebut sedang berada di lokasi yang dapat dijangkau oleh BTS tersebut.
Gambar Daerah Cakupan Jaringan Selular
Here comes your footer
Page 6
TINJAUAN PUSTAKA (lanjt.) GIS ( Geographic Information System )
GIS ialah suatu tool yang terdapat pada komputer yang memungkinkan user untuk melakukan mapping dan analisa pada permukaan bumi. GIS digunakan pada banyak aspek kehidupan, seperti: Perbankan, untuk mengetahui lokasi penempatan ATM yang cocok Militer, untuk mendukung strategi perang Lingkungan hidup, untuk mengetahui area konservasi yang sesuai untuk binatang langka Industri, untuk mengetahui atau melakukan eksplorasi terhadap daerah potensial
Here comes your footer
Page 7
TINJAUAN PUSTAKA (lanjt.) GIS ( Geographic Information System )
Gambar Komponen Utama GIS
Here comes your footer
Page 8
TINJAUAN PUSTAKA (lanjt.) J2EE ( Java 2 Enterprise Edition )
J2EE merupakan platform java yang dirancang untuk jenis komputasi mainframe-scale. Aplikasi yang dikembangkan menggunakan arsitektur client/server three-tier yang terdiri dari tiga well-defined dan proses yang terpisah, masing – masing berjalan dalam platform yang berbeda : 1.User interface, berjalan pada client 2.Middle tier yang melakukan pemrosesan data, berjalan pada server 3.Sebuah sistem manajemen basis data yang menyimpan data yang diperlukan oleh middle tier, berjalan pada database server.
Here comes your footer
Page 9
TINJAUAN PUSTAKA (lanjt.) J2EE ( Java 2 Enterprise Edition )
Gambar Arsitektur Aplikasi J2EE Here comes your footer
Page 10
TINJAUAN PUSTAKA (lanjt.) PostGIS
PostGIS merupakan produk dari hasil proyek open source software yang dapat digunakan untuk tujuan non-komersil maupun komersil. PostGIS berfungsi untuk menambahkan fungsi objek geometri pada PostgreSQL sebagai sistem basis data geospasial. PostGIS telah mendukung beberapa fungsi atau prosedur dengan menggunakan bahasa PG/PLSQL untuk memproses kebutuhan-kebutuhan standar GIS seperti perhitungan jarak, perhitungan luas area, geocoding, reverse geocoding dan sebagainya.
Here comes your footer
Page 11
TINJAUAN PUSTAKA (lanjt.) JAX-RS
Pada Februari 2007, Sun mengumumkan JSR 311 (yang juga dikenal dengan nama JAX-RS) sebagai Java API untuk RESTful web service. JAX-RS merupakan annotation-based API dalam implementasi RESTful web service berdasarkan HTTP dalam Java. Ada beberapa framework yang mengimplementasikan JAX-RS seperti Jersey, Restlet, Apache CXF, dan RESTeasy.
Here comes your footer
Page 12
METODOLOGI PENELITIAN
Here comes your footer
Page 13
Domain Model
class Domain Model
Pengguna
Jalan
Kondisi Jalan
Here comes your footer
Page 14
Updated Domain Model
class Updated Domain Model
Daftar Jalan
Jalan
Daftar Pengguna
Pengguna
Kondisi Jalan
Here comes your footer
Page 15
Requirements
custom Functional Requirements
Memberikan Informasi Status Jalan Yang Diinginkan Memberikan Informasi Status Jalan
Meminta Informasi Jalan Yang Diinginkan
(from Use Case Package 1)
Memberikan Informasi Status Jalan Di Sekitar
Meminta Informasi Jalan Di Sekitar
(from Use Case Package 1)
Here comes your footer
Page 16
Requirements
custom Functional Requirements
Memberikan Informasi Status Jalan Yang Diinginkan Memberikan Informasi Status Jalan
Meminta Informasi Jalan Yang Diinginkan
(from Use Case Package 1)
Memberikan Informasi Status Jalan Di Sekitar
Meminta Informasi Jalan Di Sekitar
(from Use Case Package 1)
Here comes your footer
Page 17
Requirements (lanjt.)
Kebutuhan fungsional aplikasi didefinisikan sebagai berikut: Memberikan informasi status jalan: informasi status jalan yang diinginkan dan informasi status jalan disekitar. Manajemen user: menyimpan data pengguna dan berhenti berlangganan. Melakukan update informasi status jalan. Mengidentifikasi posisi pengguna saat online. Otomasi kadaluwarsa informasi status jalan. Sedangkan untuk kebutuhan non-fungsional, mencakup melakukan pengiriman data ke client seminimal mungkin dan pengolahan data secepat mungkin.
Here comes your footer
Page 18
Use Case Diagram uc Use Case Diagram 1 Traffic Report System Identifikasi Posisi Pengguna
«extend»
Berhenti Langganan
«extend»
Pendaftaran Pengguna
Meminta Informasi Jalan Di Sekitar
Pengguna
Manaj emen Data Rutin
Sistem Meminta Informasi Jalan Yang Diinginkan
Update Informasi Jalan Di Sekitar
Here comes your footer
Page 19
Robustness Diagram
analysis Berhenti Langganan
Basic Course : Pelanggan memanggil service berhenti langganan. Kemudian sistem akan melakukan penghapusan data pelanggan dan daftar pelanggan. Alternate Course : -
Berhenti
Hapus Data
Daftar Pengguna
Panggil Service
Pengguna
Here comes your footer
Pengguna
Page 20
Sequence Diagram
sd Berhenti Langganan
Basic Course : Pelanggan memanggil service berhenti langganan. Kemudian sistem akan melakukan penghapusan data pelanggan dan daftar pelanggan.
Pengguna Berhenti
Pengguna Hapus
Pengguna Daftar Pengguna
post(id pengguna)
Alternate Course : -
post(id pengguna)
hapus(id pengguna)
hapus(id pengguna)
Here comes your footer
Page 21
Data Model class Data Model
Domain Model::Pengguna
DAO Pengguna
Pengguna «column» *PK id nama status «PK» + PK_pengguna_id()
Domain Model::Kondisi Jalan
DAO Kondisi
Kondisi «column» *PK id kondisi long aw lat aw long ak lat ak keterangan logtime
Domain Model::Jalan
DAO Jalan
Jalan «column» *PK id nama longitude latitude «PK» + PK_jalan_id()
«PK» + PK_pengguna_id()
Here comes your footer
Page 22
Class Diagram class Detailed Class Diagram Kondisi Jalan -
id kondisi: int jalan: Jalan kondisi: int long_aw: float lat_aw: float long_ak: float lat_ak: float keterangan: char logtime: datetime
+ + + + + + + + + + + + + + + + +
setID(int) : void setKondisi(int) : void setLongAw(float) : void setLatAw(float) : void setLongAk(float) : void setLatAk(float) : void setKeterangan(char) : void setLogtime(datetime) : void getID() : int getKondisi() : float getLongAw() : float getLatAw() : float getLongAk() : float getLatAk() : float getKeterangan() : char getLogtime() : datetime getDaftarJalan(int) : Object
Jalan
Daftar Jalan -
jalan: Jalan
+
getDaftarJalan() : Array
-
id jalan: int nama jalan: char longtiude: float latitude: float
+ + + + + + + +
setID(long) : void setNama(char) : void setLongitude(float) : void setLatitude(float) : void getID() : long getNama() : char getLongitude() : float getLatitude() : float
Daftar Pengguna
Pengguna
-
pengguna: Pengguna status: boolean
-
id pengguna: long nama: char
+ + +
getDaftarPengguna() : Array getStatus() : boolean setStatus(boolean) : void
+ + + +
getID() : long getNama() : char setID(long) : void setNama(char) : void
Here comes your footer
Page 23
Test Case Skenario use case Informasi Jalan Sekitar No
Skenario
1
Menampilkan kondisi jalan terdekat
Course
Alternate
Basic Course
Test case use case Informasi Jalan Sekitar ID
Skenario
1
Menampilkan kondisi jalan terdekat
Ambil posisi V
Here comes your footer
Keterangan Daftar jalan sekitar pengguna beserta kondisi
Page 24
Uji Coba
Pengujian dilakukan dengan proses pengisian data kondisi jalan ke dalam database. Ketika proses insert berhasil dilakukan maka akan muncul informasi kondisi di sekitar posisi pengguna.
Here comes your footer
Page 25
Kesimpulan dan Saran Kesimpulan • Penggunaan teknologi open source dan database berbasis komunitas dapat memenuhi semua kebutuhan fungsional aplikasi server Traffic Report System. • Teknologi GPS dapat digantikan oleh teknologi Cell Id akan tetapi memiliki kelemahan akan tingkat akurasi dalam penentuan posisi. • Penggunaan persistence layer yang merupakan salah satu penerapan platform J2EE dapat meningkatkan kecepatan pemrosesan data.
• Pertukaran data antar device yang berbeda platform dapat diatasi dengan menggunakan XML dan JSON. • Digunakannya teknologi PostGIS sebagai database spatial sehingga dapat diketahui jarak antar pengguna yang sedang aktif. Selain itu, juga dapat digunakan sebagai informasi nama jalan di sekitar pengguna. • Dapat terjadi ambiguitas nama jalan apabila digunakannya teknologi map yang berbeda pada aplikasi client. Here comes your footer
Page 26
Kesimpulan dan Saran (lanjt.) Saran • Pada penelitian selanjutnya dapat digunakan resource data yang memiliki data lebih lengkap dengan lisensi open source agar informasi yang ditampilkan bisa lebih valid. • Diterapkannya data mining pada aplikasi sehingga nantinya dapat digunakan sebagai informasi pengganti mengenai kondisi suatu jalan apabila suatu saat pengguna tidak melaporkan kondisi jalan tersebut. • Penambahan fitur routing sehingga dapat memberikan jalur alternatif apabila jalan yang akan dilewati terjadi kemacetan.
Here comes your footer
Page 27
Terima Kasih Atas Perhatian dan Waktu yang diberikan.
Here comes your footer
Page 28