Implementasi Sistem Tracking Kereta Api dengan Protokol Publish Subscribe

  Vol. 1, No. 9, Juni 2017, hlm. 915-924 http://j-ptiik.ub.ac.id

  

Implementasi Sistem Tracking Kereta Api dengan Protokol Publish

1 Subscribe 2 3 Sapta Oryza Putra , Adhitya Bhawiyuga , Mochammad Hannats Hanafi l.

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email: greenlifetian@gmail.com, bhawiyuga@ub.ac.id, hanas.hanafi@ub.ac.id

  

Abstrak

  Sudah menjadi pengetahuan umum bahwa kereta api sebagai salah satu sarana transportasi, dibutuhkan oleh setiap lapisan masyarakat. Pada penelitian sebelumnya, tracking kereta api menggunakan GPS dilakukan dengan teknologi XML RPC. Pada tiap kereta yang akan dilacak dipasang sebuah perangkat mobile berbasis Android dengan aplikasi untuk mengirim sinyal GPS berupa data posisi dalam selang waktu tertentu menuju server melalui mekanisme webservice dengan memanfaatkan teknologi XML RPC. Penulis meyakini bahwa metode publish/subscribe dapat digunakan untuk menggantikan metode pada penelitian sebelumnya dengan hasil kinerja yang tidak kalah dari XML RPC client-server. Penelitian ini menggunakan protokol MQTT (MQ Telemetry Transport) dan broker Mosquitto guna mengimplementasikan arsitektur publish/subscribe. Dari pengukuran performa sistem yang telah dibangun dapat disimpulkan bahwa kualitas delay yang dihasilkan telah memenuhi hipotesa penulis, yakni delay yang dihasilkan oleh protokol publish/subscribe lebih kecil daripada delay pengiriman pesan ketika menggunakan protokol XML RPC seperti yang telah ditunjukkan pada pengujian preliminary research, dimana delay yang dihasilkan XML RPC selalu lebih besar daripada protokol MQTT. Hal ini dibuktikan dalam 2 skenario pengujian untuk masing-masing protokol, yaitu skenario pengujian one-to-many dan skenario pengujian many-to-one.

  Kata kunci: mqtt, publish/subscribe, pelacakan, perangkat bergerak, android, sensor.

  

Abstract

It’s a common sense that the railways as a means of transportation is needed by all kind of people. In

previous studies, GPS train tracking is done with XML RPC technology. For each train that will going

to be tracked, it’s being installed with an Android based mobile device that comes with an application

wh ich will sends GPS’s signals that contains position data at a certain time’s interval to a server via a

webservice mechanism by utilizing XML RPC technology. The author believes, the method of

publish/subscribe can be used to replace the method in the previous studies without having a result

that inferior to XML RPC client-server. This study uses MQTT protocol (MQ Telemetry Transport)

and Mosquitto broker to implement publish/subscribe architecture. Finally, it can be concluded that

the quality of the produ ced delay is in compliance with the author’s hypothesis, that the delays

required to deliver messages generated by the publish/subscribe protocol are smaller than XML RPC

protocol ’s delays, as has been shown in the preliminary research, where the resulting delay of XML

RPC protocol are always greater than MQTT. This is being proved using 2 testing scenarios for each

protocol, these are one-to-many testing and many-to-one testing.

  Keywords: mqtt, publish/subscribe, tracking, mobile, android, sensor.

  Kereta api merupakan alat transportasi massal 1.

   PENDAHULUAN yang umumnya terdiri dari lokomotif

  (kendaraan dengan tenaga gerak yang berjalan

  M enurut (Sniady & Soler, 2013), sudah

  sendiri) dan rangkaian kereta atau gerbong menjadi pengetahuan umum bahwa kereta api (dirangkaikan dengan kendaraan lainnya). sebagai salah satu sarana transportasi yang

  Rangkaian kereta atau gerbong tersebut dibutuhkan oleh setiap lapisan masyarakat.

  Fakultas Ilmu Komputer Universitas Brawijaya

915 berukuran relatif luas sehingga mampu memuat penumpang maupun barang dalam skala besar. Karena sifatnya sebagai angkutan massal efektif, beberapa negara berusaha memanfaatkannya secara maksimal sebagai alat transportasi utama angkutan darat baik di dalam kota, antarkota, maupun antar negara. Oleh karena banyaknya masyarakat yang membutuhkan sarana kereta api, maka dibutuhkan pula keamanan dan kenyamanan kereta api.

  Penggunaan GPS dan sistem satelit lain untuk melacak kereta api dan menyampaikan informasi secara real-time telah lama menjadi alat yang ditunggu-tunggu oleh para calon penumpang kereta api untuk mengetahui informasi dengan cepat perihal kenapa kereta mereka terlambat, dimana kereta mereka berada dan dan kapan akan tiba di stasiun (Lim & Rizos, 2008). Penggunaan sistem tracking berbasis satelit ini tidak terbatas untuk pelayanan kepada calon penumpang, tetapi juga untuk mencegah serta memperkecil resiko terjadinya bencana kecelakaan dan mengarahkan pengiriman layanan darurat ke lokasi yang tepat ketika kemungkinan terburuk terjadi.

  XML-Remote Procedure Call (

  dan temporal decoupling), dan 3) scalability. Semua fitur ini dapat digunakan untuk mendukung sistem pelaporan yang kokoh dan fleksibel untuk lingkungan bergerak. Publishers bersifat loosely coupled terhadap subscriber, artinya ia tetap dapat berjalan sendiri tanpa perlu mengetahui akan adanya subscriber. Oleh karena itu masing-masing publisher dan

  Publish/subscribe mendukung: 1) multicast delivery , 2) asynchronous connectivity (spatial

  Pada salah satu jurnal (Eugster, et al., 2003) juga mengungkapkan bahwa,

  untuk melihat posisi kereta api pada peta berbasis Google Maps. Selain itu, data posisi masing-masing kereta juga dimanfaatkan untuk mengirimkan pemberitahuan kepada setiap penjaga pintu perlintasan kereta api jika terdapat kereta yang mendekati perlintasan dengan jarak kurang dari 20 km.

  server dapat diakses oleh pengguna aplikasi

  spesifikasi final yang lebih sederhana dan mudah diimplementasikan dibanding SOAP. Secara fundamental perubahan yang dibawa oleh kedua adalah kemampuan untuk memindahkan data kemana pun melalui web. Sebelumnya hal itu hanya mampu ditangani oleh Electronic Data Interchange (EDI). EDI mendefiniskan message dan protocol yang digunakan untuk pertukaran data melalu jaringan. Tapi hal ini mengunci jaringan- jaringan yang tergabung pada satu standar tertentu, dan membuat mahal implementasi pada jaringan baru yang akan digabungkan. Pada penelitian ini (Bhawiyuga, et al., 2011), data posisi yang tersimpan dalam database

  coupled (tak terikat erat). XML-RPC adalah

  data terdistribusi dan interaksi yang loosely

  SOAP adalah perspektif middleware pertukaran

  protokol-protokol berbasis XML. Keduanya adalah teknologi web service yang dihasilkan dari perkembangan lanjutan dari XML. Jadi keduanya secara literal merupakan kombinasi dari Web dan HTTP yang membuka kemungkinan baru pertukaran data antar lingkungan yang terhubung dalam jaringan.

  Simple Object Access Protocol (SOAP) adalah

  XML RPC) dan

  melalui mekanisme web service dengan memanfaatkan teknologi XML RPC. Seperti yang dijelaskan oleh (Nurwidyanto, 2005),

  Menurut (Lim & Rizos, 2008), Global

  server

  Pada penelitian sebelumnya (Bhawiyuga, et al., 2011), tracking menggunakan GPS dilakukan dengan teknologi XML RPC. Pada tiap kereta yang akan dilacak dipasang sebuah perangkat mobile berbasis Android dengan aplikasi untuk mengirim sinyal GPS berupa data posisi dalam selang waktu tertentu menuju

  kerahasiaan data tetap terjaga, dan dapat di akses dimanapun pengguna tracking berada.

  SMS dengan pengamanan khusus sehingga

  dapat pula melalui ponsel yang berupa berita

  Website Tracking dalam bentuk peta digital dan

  kemudian disimpan, hasil akhir data tersebut dapat dilihat oleh pengguna Tracking melalui

  GSM /GPRS ke pusat data (server), yang

  yang menangkap signal GPS yang dikeluarkan perangkat (boleh jadi perangkat tersendiri atau berupa mobile phone), kemudian menghasilkan titik koordinat, data tersebut dikirim melalui

  Tracking dimulai dari beberapa Satelit GPS

  suatu sistem pemantauan jarak jauh yang menggunakan satelit GPS sebagai penentu lokasi kendaraan/asset bergerak dengan tepat dan akurat dalam bentuk titik koordinat yang kemudian diimplementasikan ke dalam bentuk peta digital, sehingga dapat dimengerti dengan mudah bagi penggunanya. Cara kerja GPS

  Positioning System (GPS) Tracking adalah

  subscriber dapat berjalan normal terlepas dari satu sama lain mengabaikan topologi dari sistem. Sedangkan pada paradigma client-

  server tradisional, client tidak dapat mengirim

  manager ) dan para konsumen melakukan subscribe terhadap informasi apapun yang

  yang cocok dengan ketertarikannya tersebut, yang mana event tersebut dihasilkan oleh sebuah publisher. Sebuah event disebarkan secara asynchronous kepada semua subscriber yang memiliki ketertarikan yang sama dengan event tersebut. Keunggulan dari interaksi bergaya event-based seperti ini terletak pada decoupling penuh dalam hal waktu, ruang dan sinkronisasi antara

  publisher dan subscriber. Banyak sistem-sistem

  industrial dan purwarupa-purwarupa penelitian mendukung interaksi dengan gaya ini, dan terdapat beberapa usaha penelitian skema interaksi publish/subscribe terkemuka dalam bentuk-bentuk yang baru. Namun, karena banyaknya perkembangan sistem-sistem dan purwarupa semacam ini, menyebabkan sulitnya untuk mencari kesamaan dan menggolongkan mereka ke dalam macam-macam jenis utamanya.

  Paradigma interaksi publish/subscribe menyediakan subscriber dengan kemampuan untuk menyatakan ketertarikannya pada sebuah

  event atau pola dari event-event dengan tujuan

  untuk mendapatkan notifikasi secara terus- menerus ketika terdapat event apapun yang diproduksi oleh sebuah publisher dan cocok dengan ketertarikannya. Dengan kata lain, para produsen mem-publish informasi ke dalam sebuah jalur perangkat lunak (sebuah event

  mereka inginkan dari jalur tersebut. Informasi ini biasanya disebut dengan nama event, sedangkan kegiatan untuk melakukan pengiriman informasi ini disebut sebagai notifikasi.

  pesan ke server jika proses server tidak berjalan, server juga tidak dapat menerima pesan jika client tidak berjalan.

  2.2 Tracking pada Lingkungan Bergerak

  Proses tracking dikatakan ideal, apabila dapat mengirimkan perubahan lokasi secara

  robust dalam kondisi yang berubah-ubah.

  Beberapa penelitian sebelumnya (Leonhardi & Rothermel, 2001) (Leonhardi, et al., 2002) (Civilis, et al., 2005) telah mengusulkan adanya

  tracking secara dinamis untuk memperbarui

  lokasi. Dalam sistem EnTracked (Kjaergaard, et al., 2009) sebuah sistem tracking yang efisien

  event

  seterusnya akan menerima notifikasi ketika terdapat

  event , atau pola-pola event tertentu, dan

  skala besar. Subscriber memiliki kemampuan untuk menyatakan ketertarikannya pada sebuah

  Publish/subscri

  be juga menyediakan skalabilitas yang lebih baik daripada client-

  server tradisional melalui operasi pararel, message caching, tree-based atau network- based routing dan lain-lain.

  MQTT adalah singkatan dari MQ

  Telemetry Transport , merupakan sebuah

  protokol pengiriman pesan yang sangat sederhana dan ringan yang didesain untuk perangkat-perangkat yang memiliki kemampuan terbatas dan bandwidth kecil, tingkat latensi tinggi atau berada dalam jaringan yang tidak dapat dihandalkan (MQTT.org, n.d.), yang mana digunakan bersama dengan

  Mosquitto , yaitu sebuah broker pengiriman

  pesan yang mengimplementasikan protokol MQTT dan menyediakan sebuah metode layanan pengiriman pesan yang ringan dengan model publish/subscribe (Mosquitto.org, n.d.).

  Pada penelitian ini penulis juga telah melaksanakan preliminary research dengan melakukan pengujian terhadap XML RPC yang berbasis client-server dan MQTT yang berbasis

  publish/subscribe untuk membuktikan hipotesa

  peneliti dan menjadikannya sebagai dasar penelitian. Atas dasar hal-hal yang telah disebutkan di atas, penulis meyakini bahwa metode publish/subscribe dapat digunakan untuk membangun sebuah sistem pelacakan kereta api dengan menggunakan metode baru dengan hasil kinerja yang tidak kalah dengan metode pada penelitian sebelumnya.

  Oleh karena itu penulis tertarik mengambil topik publish/subscribe sebagai metode pengiriman data untuk membangun sebuah sistem pelacakan kereta api yang tidak kalah layaknya atau bahkan lebih baik daripada ketika menggunakan metode XML RPC client-server pada penelitian sebelumnya, khusunya dalam hal delay yang diperlukan dalam melakukan pengiriman pesan.

  Skema interaksi publish/subscribe mendapatkan banyak perhatian dan diakui dapat menyediakan bentuk interaksi yang loosely

  coupled yang dibutuhkan dalam lingkungan

2. LANDASAN KEPUSTAKAAN

2.1 Publish/Subscribe

  Tabel 1. Kajian Pustaka No.

  tracking , node sensor WSN yang aktif. Hal ini

  Bab ini membahas mengenai langkah- langkah dalam melakukan penelitian. Penelitian ini merupakan tipe penelitian implementatif- pengembangan lanjut. Penelitian ini dimulai dari tahapan studi literatur yaitu mencari referensi untuk menemukan dan memahami permasalahan. Kemudian dilanjutkan dengan mencari dan mempelajari arsitektur sistem yang sudah ada dan telah dikembangkan pada penelitian sebelumnya. Setelah itu melakukan implementasi dengan melakukan perancangan aplikasi terlebih dahulu menggunakan metode alternatif yang diusulkan. Setelah rancangan arsitektur yang baru diimplementasikan, barulah dilakukan pengujian dan analisa untuk mengetahui kinerja sistem yang baru. Jika sudah sesuai, maka diambillah kesimpulan serta saran dari hasil penelitian

  3. METODOLOGI

  sebelumnya dan rencana penelitian yang dibangun seperti terlihat pada Tabel 1.

  gateway . Berikut perbedaan pada penelitian

  masing kereta juga dimanfaatkan untuk mengirimkan pemberitahuan kepada setiap penjaga pintu perlintasan kereta api jika terdapat kereta yang mendekati perlintasan dengan jarak kurang dari 20 km melalui SMS

  Google Maps . Selain itu, data posisi masing-

  yang dikirim berupa data posisi dalam selang waktu tertentu menuju server melalui mekanisme web service dengan memanfaatkan teknologi XML RPC. Data yang masuk kemudian mengalami proses pembacaan dan penerjemahan. Data masing-masing kereta dimanfaatkan untuk menggambar posisi kereta dengan bantuan Google Maps. Data posisi yang tersimpan dalam database server ini kemudian dapat diakses oleh pengguna aplikasi untuk melihat posisi kereta api pada peta berbasis

  server melalui mekanisme web service. Data

  mengirim sinyal GPS melalui koneksi GPRS ke

  mobile berbasis Android dengan aplikasi untuk

  Pada penelitian sebelumnya (Bhawiyuga, et al., 2011), tracking menggunakan GPS dilakukan dengan teknologi XML RPC. Sistem ini terdiri dari beberapa aplikasi yang dibangun pada perangkat mobile berbasis Android dan perangkat lunak berbasis web. Pada tiap kereta yang akan dilacak dipasang sebuah perangkat

  dapat mengurangi penggunaan energi dan pengurangan latency pada jaringan.

  Target tracking dapat melibatkan satu objek maupun lebih. Semakin banyak objek yang di-tracking maka semakin besar energi yang dibutuhkan dan pembaharuan posisi yang terjadi. Perbedaan arah pergerakan, variasi kecepatan serta konektifitas pada jaringan tak handal menjadi faktor utama dalam tracking banyak objek. Dalam penelitian sebelumnya (Bhawiyuga, et al., 2011) mengajukan metode target kinematika dalam tracking pada lingkungan WSN (Wireless Sensor Networks). Proses tracking hanya aktif ketika sebuah obyek memasuki area tertentu. Hanya pada area

  Nama Penulis, Tahun dan Judul Persamaan Perbedaan

  EnTracked diaplikasikan pada sistem tracking tunggal.

  untuk meminimalkan penggunaan GPS. Ketika perangkat bergerak, dilakukan estimasi kecepatan sehingga diketahui lokasi berikutnya. Ketika mencapai batas waktu tertentu, digunakan sensor GPS kembali. Sistem

  EnTracked memanfaatkan sensor accelerometer

  Sistem Entracked dapat melakukan protokol pelaporan secara adaptif. Sistem

  pada lingkungan perangkat bergerak untuk target tunggal. Sistem ini dapat secara adaptif menentukan kebutuhan presisi penentuan lokasi pada lingkungan bergerak. Penentuan lokasi dapat memanfaatkan sensor GPS atau estimasi kecepatan obyek.

  Pembangunan aplikasi cukup hanya sampai dapat ditampilkan pada Google Maps saja.

  Mengimplementasikan metode pengiriman data menggunakan teknologi publish/subscribe.

  Pembangunan aplikasi meliputi perhitungan jarak, kecepatan dan estimasi kedatangan kereta api.

  Mengimplementasikan metode pengiriman data menggunakan teknologi XML RPC.

  Melakukan pelacakan posisi kereta api menggunakan bantuan GPS

  .

  1. Bhawiyuga, Adhitya, et al. 2011. Sistem Pelaporan dan Informasi Posisi Kereta Api Berbasis Global Positioning System (GPS) pada Device Berbasis Android

  Persamaan Terdahulu Rencana Penelitian

2.3 Tracking Menggunakan GPS pada Kereta Api

  tersebut. Diagram alur tahapan dalam proses pengerjaan penelitian ini ditunjukan pada Gambar 1. sebagai berikut.

  preliminary research yang dilakukan sebagai

  perancangan sistem untuk service publish dapat dilihat pada Gambar 3. XML RPC MQTT Preliminary Research Pengujian Delay Publisher Subscriber Aplikasi Perangkat Bergerak Broker/Server MQTT Vs. A B C

  input yang dimasukkan, proses sistem, dan output yang dihasilkan. Diagram model

  Percancangan sistem ini menggunakan diagram model yang menjelaskan cara kerja sistem secara terstruktur yang terdiri dari

  B.

  pada penelitian ini didapat dari protokol yang memiliki hasil pengujian dengan delay yang paling kecil jika dibandingkan satu sama lain.

  many-to-one . Protokol yang digunakan

  membandingkan delay pada XML RPC dan MQTT dalam mengirimkan pesan data posisi dengan skenario one-to-many dan

  research ini dilakukan dengan

  Preliminary research dilakukan guna menentukan apakah penilitian ini layak untuk dilanjutkan atau tidak sebelum penulis memulai penelitian. Preliminary

  A.

  data. Diagram model perancangan sistem dapat dilihat pada Gambar 2.

  broker/server MQTT sebagai pusat pertukaran

  dasar penelitian dan aplikasi perangkat bergerak yang dihasilkan dari penelitian ini dengan

  Percancangan sistem ini menggunakan diagram model yang menjelaskan cara kerja sistem secara terstruktur yang terdiri dari

  Gambar 1. Diagram Alur Tahapan Penelitian

  Gambar 2. Diagram Blok Sistem

  Tahap perancangan dilakukan ketika penulis telah melakukan analisa sistem karena perancangan untuk mengembangkan sistem nantinya akan diikuti dari arsitektur awal sistem yang sudah dikembangkan sebelumnya. Pada tahap perancangan ini penulis terlebih dahulu akan memulai dengan menggambarkan secara umum arsitektur awal sistem dan setelah itu dilakukan perancangan arsitektur sistem yang akan dikembangkan dengan menerapkan protokol publish/subscribe.

  3.2 Perancangan

3.1 Studi Literatur

  Api

   Topic-Based Publish/SubscribeContent-Based Publish/SubscribeType-Based Publish/Subscribe 2. Tracking pada Lingkungan Bergerak 3. Tracking Menggunakan GPS pada Kereta

  Publish/Subscribe

  Kerabat Dekat: Bermacam-macam

  Alternatif  Message Passing  RPC  Notifikasi  Shared SpacesMessage Queuing c.

  Skema Interaksi Dasar  Space DecouplingTime DecouplingSynchronization Decoupling b. Kerabat Jauh: Paradigma Komunikasi

  Publish/Subscribe a.

  memiliki keterkaitan dengan penelitian ini didapat dari buku, situs internet, jurnal, dosen pembimbing, dan rekan-rekan mahasiswa. Adapun teori-teori yang dipelajari tentang: 1.

  publish/subscribe . Informasi dan pustaka yang

  Tahapan penelitian ini membutuhkan studi literatur untuk merealisasikan implementasi sistem pelacakan kereta api dengan protokol Gambar 3. Diagram Model Perancangan Service Publish

  Model perancangan sistem secara umum berdasarkan Gambar 3. adalah sebagai berikut:

  C.

  Jalankan service subscribe, yaitu memulai proses service yang mana akan menjalankan segala aktivitas yang diperlukan untuk menampilkan data posisi dalam bentuk lokasi pada Google Maps misalnya seperti kegiatan subscribe terhadap topik unit kereta api yang dikehendaki, melakukan koneksi terhadap broker Mosquitto , melakukan penanganan kegagalan koneksi, dan lain-lain.

  JSON data posisi, digunakan untuk menyediakan longitude dan latitude yang dibutuhkan untuk menampilkan lokasi unit kereta api pada Google Maps.  Proses Proses pada sistem ini yaitu dengan menjalankan service publish. Langkah- langkah proses service publish yang dilakukan adalah: 1.

  Input pada sistem ini yaitu: 1.

   Input

  Model perancangan sistem secara umum berdasarkan Gambar 4. adalah sebagai berikut:

  Gambar 4. Diagram Model Perancangan Service Subscribe

  perancangan sistem untuk service subscribe pada Gambar 4.

  output yang dihasilkan. Diagram model

  yang dimasukkan, proses sistem, dan

  input

  Percancangan sistem ini menggunakan diagram model yang menjelaskan cara kerja sistem secara terstruktur yang terdiri dari

  posisi yang berbentuk JSON String yang berisikan data topik, waktu pengiriman, waktu diterima, longitude dan latitude.

   Input

  Output pada sistem ini yaitu JSON data

   Output

  Mosquitto dengan topik berupa id unit kereta api.

  3. Publish data posisi dengan topik id unit kereta api, yaitu proses untuk mengirimkan data posisi melalui mekanisme publish menuju broker

  terhadap satelit untuk mendapatkan data posisi terkini perangkat yang ditanami aplikasi.

  longitude dan latitude melaui GPS

  2. Request posisi via GPS, yaitu proses melakukan permintaan

  kegagalan koneksi, melaksanakan publish , dan lain-lain.

  Mosquitto , melakukan penanganan

  Jalankan service publish, yaitu memulai proses service yang mana akan menjalankan segala aktivitas yang diperlukan untuk melakukan pengiriman pesan misalnya seperti kegiatan request posisi GPS, melakukan koneksi terhadap broker

  Id unit kereta api yang akan digunakan sebagai topik untuk melakukan publish data posisi.  Proses Proses pada sistem ini yaitu dengan menjalankan service publish. Langkah- langkah proses service publish yang dilakukan adalah: 1.

  Input pada sistem ini yaitu: 1.

  2. Subscribe data posisi dengan topik id unit kereta api, yaitu proses melakukan subscription terhadap topik dengan id unit kereta api yang dikehendaki untuk mengambil dan menerima pesan data posisi. Id Unit Kereta Api Request posisi via GPS Publish data posisi dengan topik id unit kereta api Jalankan service publish JSON data posisi INPUT PROSES OUTPUT JSON data posisi Subscribe data posisi dengan topik id unit kereta api Tampilkan data posisi dalam Google map Jalankan service subscribe Tampilan lokasi data posisi pada Google map INPUT PROSES OUTPUT

3. Tampilkan data posisi dalam

  6. Untuk skenario pengujian one-to-many, dilakukan 5 kali percobaan dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien sehingga total percobaan keseluruhan yang dilakukan dalam pengujian ini berjumlah 10 kali percobaan. Untuk tiap-tiap percobaan, masing-masing klien melakukan pengiriman data sebanyak 60 kali dengan interval waktu pengiriman satu detik.

  Longlat Send: Longlat Request: null null Send: null Request: Longlat

  Longlat Send: Longlat Request: null null Send: null Request: Longlat Broker Mosquitto Server XML-RPC n Publisher Subscriber n Sender Client Receiver Client Performance Monitor Performance Monitor Publish: Longlat Subscribe: Longlat

  Sender Client Performance n Receiver Client Monitor Performance Monitor Publish: Longlat Subscribe: Longlat

  2. Sistem dapat melakukan subscribe posisi, yaitu dapat mengambil dan menampilkan Broker Mosquitto Server XML-RPC Publisher n Subscriber

  1. Sistem dapat melakukan publish posisi, yaitu dapat mengirimkan informasi lokasi saat ini secara terus menerus ke server/broker MQTT.

  Kebutuhan fungsional merupakan jenis kebutuhan berisi tentang proses-proses yang dilakukan oleh sistem, informasi apa saja yang harus ada dan dihasilkan oleh sistem. Kebutuhan fungsional pada sistem antara lain sebagai berikut.

  4.1 Kebutuhan Fungsional

  4. REKAYASA PERSYARATAN/KEBUTUHAN

  Untuk skenario pengujian many-to-one, dilakukan 5 kali percobaan dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien sehingga total percobaan keseluruhan yang dilakukan dalam pengujian ini berjumlah 10 kali percobaan. Untuk tiap-tiap percobaan, masing-masing klien melakukan pengiriman data sebanyak 60 kali dengan interval waktu pengiriman satu detik.

  Gambar 6. Skenario Pengujian Many-to-One

  Google Maps , untuk memproses

  data posisi yang didapat dengan mengambil data longitude dan

  Gambar 5. Skenario Pengujian One-to-Many

  Karena keterbatasan sarana, pada skenario pengujian ini akan diwakili oleh hasil dari pengujian preliminary research, yang menggunakan protokol pengiriman data identik dengan yang digunakan oleh aplikasi yaitu MQTT.

  3.4 Pengujian Delay

  api. Penelitian ini didasarkan pada kebutuhan akan aktifitas pemberian informasi berupa posisi menggunakan perangkat bergerak dengan mengedepankan aspek kemudahan dan efisiensi waktu. Sehingga dalam penelitian ini akan dibangun sebuah aplikasi berbasis mobile yang kompatibel dengan perangkat bersistem operasi Android .

  publish/subscribe pada sistem pelacakan kereta

  Tahap implementasi di sini adalah mulai mengimplementasikan metode yang sudah ditawarkan oleh penulis pada beberapa pembahasan sebelumnya yaitu

  3.3 Implementasi

  yang menandai identitas unit kereta api yang dikehendaki pada koordinat lokasi keberadaan unit kereta api tersebut dalam peta digital Google.

  Output pada sistem ini yaitu tampilan marker

  tersebut untuk dijadikan sebagai koordinat lokasi yang akan ditampilkan dalam peta digital Google .  Output

  latitude pada JSON data posisi

  Terdapat 4 skenario pengujian, yang terdiri atas 2 skenario pengujian untuk masing-masing protokol, yaitu skenario pengujian one-to-many dan skenario pengujian many-to-one seperti yang ditunjukkan pada Gambar 5. dan Gambar pesan berupa informasi posisi yang 1.

  Mulai. dikirimkan oleh publisher untuk kemudian 2.

  Rencana percobaan yang dilakukan total ditampilkan dalam bentuk lokasi pada berjumlah 20 kali percobaan. Percobaan . dibagi menjadi 4 sesi dan tiap sesi terdiri

  Google Maps

  dari 5 kali percobaan. Masing-masing Sistem dapat melakukan penanganan apabila protokol memiliki 2 sesi percobaan yaitu terjadi putus koneksi. sesi pengujian delay one-to-many dan sesi pengujian delay many-to-one. Untuk

4.2 Kebutuhan Non-Fungsional

  pengujian protokol XML RPC many-to- Kebutuhan perangkat keras yaitu spesifikasi one , X adalah jumlah klien sender. minimal komputer yang digunakan untuk

  Sedangkan untuk sesi one-to-many, X membangun aplikasi sistem pelacakan kereta adalah jumlah klien receiver. Namun, api pada penelitian ini. untuk pengujian protokol MQTT sesi 1. Kebutuhan Perangkat Keras many-to-one , X adalah jumlah klien a.

  Processor Intel® Core™ i5-3210M

  publisher . Sedangkan untuk sesi one-to-

  Processor (2.5 GHz, Cache 3 MB) many , X adalah jumlah klien subscriber.

  b.

  RAM 8 GB DDR3 PC-12800 Untuk tiap sesi pengujian, 5 kali percobaan 2. Kebutuhan Perangkat Lunak tersebut dilakukan menggunakan klien a)

  Sistem Operasi: Windows 10 64-bit secara berurutan yaitu, percobaan dengan

  b) Server Software: Mosquitto 10 klien, 20 klien, 30 klien, 40 klien, dan

  c) Android Studio 2.2.3 50 klien.

  d) JRE 1.8.0_76-release-b03 amd64 3.

  Menjalankan performance monitor untuk

  e)

  VMWare WorkStation 12.5.2 memantau pemakaian memori dan

  f) GenyMotion 2.8 persentase pemakaian prosesor bilmana sewaktu-waktu dibutuhkan datanya.

  Pengujian delay dilakukan dengan

5. PERANCANGAN & IMPLEMENTASI 4.

  mengirimkan pesan yang disisipi oleh

5.1 PRELIMINARY RESEARCH

  timeStamp yang berisikan waktu

  Diagram alir berikut menggambarkan pengeriman pesan. Ketika pesan tersebut proses pelaksanaan preliminary research. diterima, sisi klien penerima/subscriber Berikut akan dijelaskan proses pada Gambar 7. akan mencatat waktu kedatangan pesan secara rinci: Mulai sehingga delay pesan dapat dilihat dari selisih antara waktu kedatangan dan waktu pengiriman.

  5. X=10, X<=50, Tiap kali satu sesi pengujian telah selesai, maka dilakukan perekapan data, menyalin

  Ya Tidak X+10;

  catatan delay tersebut ke dalam datasheet agar dapat diolah dan dibaca.

  6. Selesai.

  Mulai Perfmon

  5.2 IMPLEMENTASI SISTEM

  Implementasi adalah tahapan penerapan di mana sistem telah selesai dirancang setelah

  Pengujian Delay melewati tahapan analisis dan perancangan.

  Dalam penelitian ini, penulis mengimplementasikan metode

  publish/subscribe menggunakan MQTT (MQ Telemetry Transport ) yang berlisensi bebas Rekap Hasil

  dengan aplikasi yang dibangun menggunakan

  Pengujian

  bahasa pemrograman java pada perangkat Selesai bergerak berbasis Android.

  Implementasi sistem berdasarkan hasil analisa sistem yang sudah dilakukan dibagi

  Gambar 7. Diagram Alir Preliminary Research Per

  menjadi beberapa bagian berikut:

  Sesi

  1. Implementasi service publish.

  10 25.41 458.41

  33.86ms, 48.24ms, dan 88.17ms. Pada pengujian protokol XML RPC untuk skenario

  many-to-one , dilakukan 5 kali percobaan

  dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing- masing menghasilkan rata-rata dari delay rata- rata secara berurutan yaitu, 458.41ms, 455.46ms, 520.99ms, 381.87ms, dan 490.18ms.

  Tabel 3. Perbandingan Skenario Many-to-One Many to One

  Rata-rata dari Delay Rata-Rata (ms) Skenario (klien)

  MQTT

  XML-RPC

  20 30.56 455.46

  to-one , dilakukan 5 kali percobaan dengan

  30 33.86 520.99

  40 48.24 381.87

  50 88.17 490.18 7.

   KESIMPULAN

  Dari pengukuran performa sistem yang telah dibangun dapat disimpulkan bahwa kualitas delay yang dihasilkan telah memenuhi hipotesa penulis, yakni delay yang dihasilkan oleh protokol publish/subscribe lebih kecil daripada delay pengiriman pesan ketika menggunakan protokol XML RPC seperti yang telah ditunjukkan pada pengujian preliminary

  research . Hal ini dibuktikan dalam 2 skenario

  pengujian untuk masing-masing protokol, yaitu skenario pengujian one-to-many dan skenario pengujian many-to-one . Pada pengujian protokol MQTT untuk skenario one-to-many, dilakukan 5 kali percobaan dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing-masing menghasilkan rata- rata dari delay rata-rata secara berurutan yaitu 2.91ms, 8.40ms, 16.16ms, 27.94ms dan 31.22ms. Sedangkan untuk skenario many-to- one masing-masing secara berurutan yaitu, 25.41ms, 30.56ms, 33.86ms, 48.24ms, dan 88.17ms. Pada pengujian protokol XML RPC untuk skenario one-to-many, dilakukan 5 kali percobaan dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing-masing menghasilkan rata-rata dari

  delay rata-rata secara berurutan yaitu 386.20ms, 514.95ms, 520.99ms, 743.08ms, dan 635.11ms.

  perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing-masing menghasilkan rata-rata dari delay rata-rata secara berurutan yaitu 25.41ms, 30.56ms,

  Pada pengujian protokol MQTT ditunjukkan oleh Tabel 3. untuk skenario many-

  2. Implementasi service subscribe.

  MQTT

  6. PENGUJIAN DELAY

  Untuk mengetahui apakah delay pada pengiriman pesan menggunakan teknologi

  publish/subscribe telah layak atau tidak,

  dilakukanlah pengujian dengan membandingkan hasil kinerja pengiriman pesan menggunakan protokol MQTT dengan hasil kinerja pengiriman pesan yang menggunakan teknologi pada penelitian sebelumnya, yakni

  XML RPC. Pengujian delay pada aplikasi yang dibangun di sini dapat diwakili oleh hasil dari pengujian pada preliminary research yang menggunakan protokol pengiriman data yang identik yaitu MQTT.

  Tabel 2. Perbandingan Skenario One-to-Many One to Many

  Rata-rata dari Delay Rata-Rata (ms) Skenario (klien)

  XML-RPC

  delay rata-rata secara berurutan yaitu 386.20ms, 514.95ms, 520.99ms, 743.08ms, dan 635.11ms.

  10 2.91 386.20

  20 8.40 514.95

  30 16.16 520.99

  40 27.94 743.08

  50 31.22 635.11

  Pada pengujian protokol MQTT ditunjukkan oleh Tabel 2. untuk skenario one-

  to-many , dilakukan 5 kali percobaan dengan

  perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing-masing menghasilkan rata-rata dari delay rata-rata secara berurutan yaitu 2.91ms, 8.40ms, 16.16ms, 27.94ms dan 31.22ms. Sedangkan pada pengujian protokol XML RPC untuk skenario one-to-many , dilakukan 5 kali percobaan dengan perlakuan yang berbeda secara berurutan yaitu, percobaan dengan 10 klien, 20 klien, 30 klien, 40 klien, dan 50 klien masing-masing menghasilkan rata-rata dari

  Sedangkan untuk skenario many-to-one masing-masing secara berurutan yaitu, 458.41ms, 455.46ms, 520.99ms, 381.87ms, dan 490.18ms.

  Pembangunan sistem pelacakan kereta api menggunakan GPS dan teknologi

  Reckoning Protocol for Updating Location Information. Proceedings of 16 th Int. Parallel and Distributed Processing Symposium.

  Journal of Global Positioning Systems, 7(2), pp. 148-155.

  publish/subscribe pada perangkat bergerak

  Mosquitto.org, n.d. Home Page. [Online] Available at: https://Mosquitto.org/ [Accessed 12 Desember 2016]. MQTT.org, n.d. Frequently Asked

  Question. [Online] Available at: http://MQTT.org/faq [Accessed 12 Desember 2016].

DAFTAR PUSTAKA

  Nurwidyanto, M., 2005. XMLRPC: Sebuah Perkenalan.

  Bhawiyuga, A., Shiddiqi, A. M. & Adipratomo,

  Dispersive Errors of Network-Based Real-Time Kinematic Positioning.

  longitude dan latitude dalam bentuk JSON String hingga sampai diterima oleh pihak subscriber untuk diolah dan ditampilkan dalam bentuk lokasi pada Google Maps.

  berguna untuk melakukan penanganan hal-hal yang berkaitan dengan proses publish/subscribe sehingga aplikasi publisher dapat berhasil mengirimkan pesan data posisi berupa

  org.eclipse.paho.android.service-1.0.2 dan org.eclipse.paho.client. MQTTv3-1.0.2 yang

  posisi menggunakan bahasa pemrograman Java dan library MQTT eksternal yakni

  service publish posisi dan service subscribe

  berbasis Android dimulai dengan membangun

  Leonhardi, A. & Rothermel, K., 2001. A Comparison of Protocols for Updating Location Information. s.l.:Cluster Computing. Lim, S. & Rizos, C., 2008. Application of Running Average Function to Non-

B., 2011. Sistem

  Kjaergaard, M. B., Langdal, J., Godsk, T. & Toftkjaer, T., 2009. EnTracked: Energy-Efficient Robust Position Tracking for Mobile Devices. s.l.:s.n. Leonhardi, A., Nicu, C. & Rothermel, K., 2002. A Map-Based Dead

  254 –269. Eugster, P. T., Felber, P. A., Guerraoui, R.

  Proceedings of the OOPSLA ’01 Conference on Object Oriented Programming Systems Languages and Applications. s.l.:ACM Press, p.

  Network-Based Tracking of Moving Objects. IEEE Trans. Data Eng. Eugster, P., Guerraoui, R. & Damm, C., 2001. On Objects and Events. In:

  [Online] Available at: http://meta.wacana.net/archives/8- xmlrpc-sebuah-perkenalan.html [Accessed 12 Desember 2016]. Sniady, A. & Soler, J., 2013. Impact of the Traffic Load on Performance of an

  Alternative LTE Railway Communication Network. 13th International Conference on ITS Telecommunications (ITST).

  Pelaporan dan Informasi Posisi Kereta Api Berbasis Global, s.l.: Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember. Civilis, A., Jensen, C. S. & Pakalnis, S., 2005. Techniques for Efficient Road

  & Kermarrec, A.-M., 2003. The Many Faces of Publish/Subscribe, s.l.: ACM Computing Survey.