## SISTEM INFORMASI JADWAL SARANA TRANSPORTASI UNTUK KOTA SEMARANG BERBASIS MOBILE APPLICATION
Sesaria Kiki Tamara, Indriyati, Nurdin Bahtiar
Jurusan Ilmu Komputer/Informatika, FSM, Universitas Diponegoro sesaria.kt@gmail.com , indri52@yahoo.com , nurdinbahtiar@gmail.com

## ABSTRAK
Jadwal  sarana  transportasi  merupakan  suatu  informasi  yang  banyak  dibutuhkan.  Karena  itu,  sudah sepantasnya  apabila  informasi  ini  harus  mudah  didapatkan.  Kota  Semarang  merupakan  ibukota  dari Provinsi  Jawa  Tengah  serta  memiliki    sistem  transportasi  yang  besar  dan  kompleks.  Banyak  cara  yang dapat  dilakukan  masyarakat  untuk  mendapatkan  informasi  tersebut.  Salah  satunya  ialah  dengan mencarinya  di  internet.  Namun  terkadang  hal  ini  kurang  efektif,  karena  masyarakat  harus  membuka banyak  situs  untuk  mencari  berbagai  macam  jadwal.  Sistem  Informasi  Jadwal  Sarana  Transportasi Berbasis Mobile  Application untuk  Kota  Semarang  ini  dikembangkan  sebagai  alternatif  lain  agar masyarakat dapat mengakses bermacam-macam jadwal transportasi dalam satu sistem sehingga menjadi lebih mudah melalui ponsel Android. Pengembangan sistem ini menggunakan JAVA, PHP, dan MySQL. Melalui  sistem  ini,  diharapkan  dapat  menjadi  solusi  bagi  masyarakat  yang  ingin  mendapatkan  jadwal transportasi lebih mudah dan cepat. Selain itu, bagi wisatawan, sistem ini memudahkan wisatawan untuk mencari informasi mengenai sarana transportasi di Kota Semarang.
Kata kunci : Jadwal, Transportasi, Sistem Informasi, Mobile Application , Android

## I. PENDAHULUAN
Smartphone Android  merupakan  salah satu smartphone yang  penggunaannya  semakin banyak di kalangan masyarakat saat ini. Android merupakan  OS  Mobile  yang  tumbuh  di  tengah OS  lainnya  yang  berkembang  dewasa  ini.  OS lainnya  seperti  Windows  Mobile,  i-Phone  OS, Symbian,  dan  masih  banyak  lagi  yang  juga menawarkan  kekayaan  isi  dan  keoptimalan berjalan di atas perangkat hardware yang ada. Pengangkutan
atau transportasi mempunyai  peranan  yang  sangat  penting  dan strategis  dalam  mendukung  segala  aspek kehidupan  dan  penghidupan,  baik  di  bidang ekonomi, sosial-budaya, politik, maupun pertahanan  dan  keamanan  negara.  Karena  itu, informasi  transportasi  merupakan  salah  satu informasi  yang  sangat  dibutuhkan  oleh masyarakat.
Kota Semarang merupakan salah satu kota besar  karena  merupakan  ibukota  dari  Provinsi Jawa Tengah. Sehingga kota ini memiliki sistem transportasi  yang  besar  dan  kompleks.  Banyak informasi  transportasi  yang  dibutuhkan  oleh masyarakat  maupun  wisatawan  di  kota  ini. Seperti  informasi  jadwal  kereta  api,  pesawat
terbang  dan  jalur  bus.  Banyak  cara  yang  dapat dilakukan  masyarakat  untuk  mendapatkan informasi  tersebut.  Salah  satunya  ialah  dengan mencarinya di internet atau dapat juga membuka situs-situs resmi dari PT KAI, Garuda Indonesia, Air  Asia  dan  lain-lain.  Terkadang  masyarakat menginginkan  berbagai  macam  informasi jadwal.  Hal  itu  membuat  mereka  harus mengakses  banyak  situs,  sehingga  hal  ini  tidak efektif.
Dengan  adanya  sistem  ini,  masyarakat dapat  mengakses  bermacam-macam  jadwal melalui satu sistem saja sehingga dapat dijadikan sebagai alternatif lain oleh masyarakat.

## II. DASAR TEORI

## 2.1. Sistem Informasi
Sistem  informasi  mencakup  sejumlah komponen,  ada  sesuatu  yang  diproses  (data menjadi  informasi),  dan  dimaksudkan  untuk mencapai suatu sasaran atau tujuan [4]. Adapun komponen-komponen  suatu  sistem  informasi yaitu  perangkat  keras  ( hardware ),  perangkat lunak  ( software ),  prosedur,  orang,  basis  data, jaringan komputer dan komunikasi data.

## 2.2. Mobile Application
Kata mobile mempunyai arti bergerak atau berpindah. Sehingga diperoleh pengertian bahwa aplikasi bergerak merupakan aplikasi yang dapat dijalankan  walaupun  pengguna  berpindah  atau karena  pengguna  berpindah.  Pemrograman aplikasi  bergerak  tidak  banyak  berbeda  dengan pemrograman  konvensional  pada  PC.  Aspek karakteristik  dari  perangkat  bergerak  sering mempengaruhi  arsitektur  dan  implementasi  dari aplikasi  tersebut.  Dalam  pemrograman  aplikasi bergerak  berbagai  aspek  teknis  perangkat  lebih menonjol  karena  memiliki  banyak  keterbatasan dibandingkan  komputer  konvensional  atau  PC [1].

## 2.3. Sistem Operasi Android
Android  merupakan  sistem  operasi  yang dikembangkan  untuk  perangkat  mobile  berbasis Linux  [2].  Beberapa  komponen  fundamental dalam Android antara lain :
a. Activities Suatu activity akan  menyajikan  user interface  (UI)  kepada  pengguna,  sehingga pengguna  dapat  melalukan  interaksi.  Satu activity biasanya akan dipakai untuk menampilkan  aplikasi  atau  yang  bertindak sebagai user interface saat aplikasi diperlihatkan kepada pengguna. [6].
b. Service Service pada  android  tidak  memiliki Graphic  User  Interface (GUI),  tetapi service berjalan  secara  background.  Sebagai  contoh dalam  memainkan  musik,  media  player  sedang memutar lagu dari list yang ada, aplikasi ini akan memiliki  dua  atau  lebih activity yang memungkinkan  pengguna  untuk  memilih  lagu atau  menulis  sms  sambil  musik  tetap  berjalan. Untuk  menjaga  musik  tetap  dijalankan,  activity player  dapat  menjalankan service . Service dijalankan  pada thread utama  dari  proses aplikasi [6].
c. Broadcast Receiver
Broadcast
receiver ini berfungsi menerima  dan  bereaksi  untuk  menyampaikan notifikasi.  Contoh  b roadcast ini  seperti  zona waktu berubah, baterai low , gambar telah selesai diambil  oleh  kamera  atau  pengubahan  referensi bahasa yang digunakan. Broadcast activity tidak
memiliki user  interface tetapi  memiliki  sebuah activity untuk  merespon  informasi  yang  mereka terima [6].
d. Content Provider
Komponen  ini  membuat  kumpulan aplikasi  data  secara  spesifik  sehingga  dapat digunakan  oleh  aplikasi  lain.  Data  disimpan dalam  file  sistem  seperti  basis  data  SQLite. Content  Provider menyediakan  cara  untuk mengakses  data  yang  dibutuhkan  oleh  suatu activity , misalnya ketika
pengguna menggunakan  aplikasi  yang  membutuhkan  peta (Map),  atau  aplikasi  yang  membutuhkan  untuk mengakses data kontak dan navigasi [6].

## 2.4. Unified Process
Unified  Software  Development  Process atau  biasa  disebut  sebagai Unified  Process merupakan suatu proses pengembangan perangkat  lunak.  Dalam  hal  ini  perlu  dipahami bahwa  proses  pengembangan  perangkat  lunak sesungguhnya  merupakan  aktivitas-aktivitas yang diperlukan untuk menerjemahkan kebutuhan  pengguna  menjadi  sebuah  sistem perangkat lunak [3].
Unified  Process merupakan  proses pengembangan perangkat lunak yang daur hidup ( life cycle ) nya terdiri atas 4 fase yaitu inception , elaboration , construction ,  dan transition . Masing-masing  fase  dapat  memiliki  satu  atau lebih  iterasi  dan  masing-masing  iterasi mengeksekusi 5 core workflow yaitu requirement , analysis , design , implementation , dan test .
2.5. Unified Modelling Language
Unified  Modelling  Language (UML) merupakan  suatu  alat  bantu  pemodelan  visual yang digunakan untuk menspesifikasi, memvisualisasi, mengkonstruksi dan mendokumentasikan  suatu  sistem  khususnya sistem yang dibangun
menggunakan pemrograman berorientasi objek. Didalam UML juga  menangkap  keputusan-keputusan  dan pemahaman  mengenai  sistem  yang  harus dikonstruksi [5].

## III. ANALISIS DAN PERANCANGAN
3.1. Deskripsi Sistem Sistem Informasi Jadwal Sarana Transportasi (SIJATRA) ini merupakan
perangkat  lunak mobile yang  berfungsi  untuk memberikan  informasi  mengenai  jadwal  sarana transportasi,  seperti  jadwal  kereta,  jadwal pesawat,  dan  rute  bus  yang  ada  di  Kota Semarang.
Adapun  fitur-fitur  yang  terdapat  pada sistem ini antara lain :
a. Rute Bus
Pada  fitur  ini  pengguna  dapat  melihat informasi  rute  bus  yang  ada  di  kota  Semarang. Terdapat  tiga  jenis  rute  bus,  yaitu  rute  trans semarang, rute bus umum dan rute angkot.
b. Jadwal Kereta
Merupakan  fitur  untuk  mencari  jadwal kereta  yang  bersumber  pada  dua  stasiun  di Semarang,  yaitu  stasiun  Poncol  dan  stasiun Tawang.  Di  sini  pengguna  dapat  mencari  nama kereta  dan  jadwalnya  berdasarkan  stasiun,  dan tujuan keberangkatan.
c. Jadwal Pesawat
Pengguna  dapat  mengetahui  jadwal penerbangan  yang  ada  di  bandara  Ahmad  Yani Semarang.  Pencarian  jadwal  berdasarkan  hari dan tujuan keberangkatan.
d. Taxi Dialer Pada  fitur  ini,  pengguna  dapat  langsung melakukan  panggilan  terhadap  armada  taksi yang diinginkan.
e. Lihat Lokasi Fitur  ini  menggunakan  Google  Maps. Pada fungsi ini dibagi menjadi dua bagian, yaitu fungsi  My  Location  yang  melihat  titik keberadaan pengguna pada peta serta fungsi Get Direction yang menampilkan jalur di peta untuk tujuan  yang  diinginkan.  Adapun  tujuan-tujuan yang  ada  pada  fungsi  Get  Direction  antara  lain Terminal  Mangkang,  Terminal  Banyumanik, Terminal  Terboyo,  Stasiun  Poncol,  Stasiun Tawang, dan Bandara Ahmad Yani.
3.2. Model Use Case
Use  case  model atau  model use  case merupakan  hasil requirement  workflow dari Unified  Process. Use  case  diagram digunakan untuk  menunjukkan  hubungan  antara  aktor
dengan use  case .  Gambar  1  menunjukkan use case diagram dari sistem yang akan dibangun.
Gambar 1. Use Case Diagram SIJATRA
Penjelasan  dari  tiap use  case dijelaskan dengan use  case  detail .  Tabel  1  menunjukkan salah satu contoh use case detail .
Tabel 1 Use Case Detail Melihat Jadwal Kereta Use Case Melihat Jadwal Kereta ID : UC3 Actors : Pengguna Preconditions : Pengguna membuka SIJATRA pada ponselnya Flow of Events :
1. Pengguna memilih menu Jadwal Kereta
2. Pengguna mengisi data pada form pencarian jadwal kereta
Postconditions :
Pencarian jadwal kereta berhasil dilakukan, sistem menampilkan hasil pencarian
3.3. Kebutuhan Non-fungsional
Non-functional requirements atau kebutuhan  non-fungsional  menentukan  atribut atau  kualitas  secara  keseluruhan  dari  suatu sistem.  Adapun  kebutuhan non-functional pada pengembangan  SIJATRA  ditunjukkan  pada Tabel 2.

## Tabel 2. Kebutuhan Non-Fungsional
No  Parameter Requirement 1. Availability Sistem tersedia dalam 24 jam sehari, 7 hari seminggu. 2. Usability Tampilan antarmuka konsisten, pesan kesalahan yang informatif. 3. Reliability
Tidak pernah gagal.
4. Performance
Memiliki respon time kurang dari 10 detik.
5. Security Data hanya diubah oleh
administrator sistem.
3.4. Realisasi Use Case Tahap Analisis
Interaksi  antara class  analysis dengan fungsional  perangkat  lunak  ditunjukkan  dengan realisasi use case . Setiap use case direalisasikan dengan  menggunakan analysis  class  diagram dan communication  diagram .  Gambar  2 menunjukkan  salah  satu analysis  class  diagram dan  Gambar  3  menunjukkan  salah  satu communication diagram .
Gambar 2 Analysis Class Diagram Melihat Jadwal Kereta
Analysis  class  diagram  Melihat  Jadwal Kereta  menunjukkan  kelas-kelas  yang  terkait pada use case Melihat Jadwal Kereta yaitu: a. Class Boundary : jadwalkereta
b. Class Control :
HasilJadwalKereta,
detailkereta
c. Class Entity : kereta
Gambar 3 Communication Diagram Melihat Jadwal Kereta
3.5. Realisasi Use Case Tahap Perancangan Use  Case  realization tahap  perancangan merupakan  kolaborasi design  class dan  objek- objeknya  yang  merealisasikan use  case .  Setiap
use  case direalisasikan  dengan  menggunakan class diagram .
3.6. Deployment Diagram
Pada deployment  diagram ini,  komponen yang  dihasilkan  antara  lain  SIJATRA.apk,
Android OS, Apache, Web Browser, DBConnectior,  dan  MySQL  DB. Deployment diagram SIJATRA ditunjukkan pada Gambar 4.

## Gambar 4 Deployment Diagram

## 3.7. Perancangan Basisdata
DBMS  yang  digunakan  pada  SIJATRA ini adalah basis data relasional. Pemodelan basis data  digambarkan  dengan class  diagram dan ditunjukkan  pada  Gambar  5.    Serta  contoh deskripsi  perancangan  basis  data  ditunjukkan Tabel 3.
Gambar 5 Class Diagram Perancangan Basisdata
Tabel 3   Deskripsi Tabel Jadwal

## Keberangkatan Pesawat
Id Field Deskripsi Tipe Keteran gan departure _pid Id int(5) Primary Key tanggal Tanggal ketika memasukkan data date
maskapai  Nama maskapai penerbangan varchar (20) no_flight  Nomor penerbangan pesawat varchar (10) waktu Waktu keberangkatan varchar (5) tujuan Tujuan varchar (20) hari Hari varchar (6) harga Harga tiket varchar (12)

## IV. IMPLEMENTASI DAN PENGUJIAN

## 4.1. Implementasi
Implementasi  ini  dilakukan  dengan menggunakan  perangkat  keras  dan  perangkat lunak.  Sistem  ini  memiliki  pengimplementasian yang  berbeda  bagi  masing-masing  aktornya. Berikut  daftar  spesifikasi  perangkat  keras  dan perangkat lunak yang digunakan untuk pengguna yaitu :
a. Smartphone Android  dengan  versi  sistem operasi 2.2 Froyo atau 2.3 Gingerbread
b. Koneksi internet
Sedangkan  daftar  spesifikasi  perangkat keras dan perangkat lunak yang digunakan untuk admin yaitu :
a. CPU  :  Intel  Core  i3-2350M  Processor  2.30 GHz
b. Memory 2 GB / Hard Disk 320 GB
c. Sistem operasi : Microsoft Windows 7 Home Basic 64bit
d. Eclipse 3.6 Helios beserta emulatornya
e. Android Development Tools (ADT)
f. Android Software Development Kit (SDK)
g. Xampp 1.7.4
h. PhpMyAdmin 3.3.9
i. MySQL 5.0
j. Notepad++
k. PHP dan JAVA
Contoh  implementasi  class  dapat  dilihat pada
implementasi class entity
keberangkatan_pesawat pada kode 1.
Kode 1 Implementasi Class Entity keberangkatan_pesawat <?php Class keberangkatan_pesawat { private $departure_pid; private $maskapai; private $no_flight; private $waktu; private $tujuan; private $hari;
//konstruktor public function keberangkatan_pesawat () { } //selektor public function getdeparture_pid () { return $this->departure_pid;} public function getmaskapai () { return $this->maskapai;} public function getno_flight () { return $this->no_flight;} public function getwaktu () { return $this->waktu;} public function gettujuan () { return $this->tujuan;} public function gethari () { return $this->hari;} //mutator public function setdeparture_pid ($departure_pid) { $this->departure_pid = $departure_pid; } public function setmaskapai ($maskapai) { $this->maskapai = $maskapai;}  public function setno_flight ($no_flight) { $this->no_flight = $no_flight;} public function setwaktu ($waktu) { $this->waktu = $waktu;} public function settujuan ($tujuan) { $this->tujuan = $tujuan;} public function sethari ($hari) {
$this->hari = $hari;} }
?>
Adapun implementasi antarmuka
ditunjukkan pada Gambar 6 hingga Gambar 11.
Sistem   Informasi   Jadwal   Sarana   Transportasi   untuk   Kota   Semarang   Berbasis   Mobile   Application
Gambar 6 Tampilan Menu Utama
Gambar 7 Tampilan Form Pencarian
Gambar 8 Tampilan List Hasil Pencarian
Gambar 9 Tampilan Detail Hasil Pencarian
Gambar 10 Tampilan Menu Rute Bus
Gambar 11 Tampilan Menu Get Direction
4.2. Pengujian Pengujian perangkat lunak Sistem
Informasi  Jadwal  Sarana  Transportasi  untuk Kota  Semarang  Berbasis Mobile  Application (SIJATRA) dilakukan dengan metode black box , yaitu  menguji  fungsionalitas  dari  perangkat lunak,  tanpa  harus  mengetahui  struktur  internal program.  Sebuah  perangkat  lunak  yang  diuji menggunakan  metode black-box dikatakan berhasil jika fitur-fitur yang ada telah memenuhi spesifikasi requirement s  ( use  case )  yang  telah dibuat sebelumnya.
Dari  hasil  pengujian,  dapat  diketahui  bahwa SIJATRA ini telah memenuhi untuk :
a. Melakukan otentikasi pengguna
b. Mengelola data
c. Melihat jadwal kereta
d. Melihat jadwal pesawat
e. Melihat rute bus
f. Melihat daftar taksi
g. Melihat rute pada peta

## V. KESIMPULAN DAN SARAN

## 5.1. Kesimpulan
Dihasilkan  sebuah  sistem  informasi jadwal  sarana  transportasi  di  Kota  Semarang berbasis mobile  application bagi  pengguna ponsel  Android  yang  dikembangkan  dengan menggunakan JAVA, PHP dan MySQL.
Sistem  ini  memiliki  beragam  informasi mengenai  jadwal  transportasi,  tidak  hanya  satu jenis  sarana  transportasi  saja.  Hal  ini
mempermudah  masyarakat  mencari  informasi jadwal  dengan  transportasi  yang  berbeda  dalam satu aplikasi.

## 5.2. Saran
Untuk  pengembangan  lebih  lanjut,  sistem ini  dapat  dikembangkan  dengan  menambahkan pengaksesan  basis  data  secara  langsung  yang terhubung dengan server basis data dari website masing-masing jadwal. Seperti website PT. KAI, Bandara Ahmad Yani, dan lain-lain.

## DAFTAR PUSTAKA
[1] Darytamo, Budi, et all., 2007,
“ Pemrograman Berorientasi Obyek dengan Java  2  Platform  Micro  Edition  (J2ME) ”, Bandung:  Java  Competency  Center  – Institut Teknologi Bandung
[2] Hermawan,  Stephanus,  2011,  “ Mudah Membuat  Aplikasi  Android ”,  Yogyakarta: Penerbit Andi.
[3] Jacobson,  Ivar,  et  all.,  1999,  “ The  Unified Software  Development  Process ”,  Boston, Addison Wesley Longman inc.
[4] Kadir,  Abdul,  2003,  “ Pengenalan  Sistem Informasi ”, Yogyakarta: Penerbit Andi.
[5] Rumbaugh, James dkk, 1999, “ The Unified Modelling  Language  Reference  Manual ”, Boston: Addison Wesley Longman inc.
[6] Safaat,  Nazruddin,  2011,  “ Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis  Android ”,  Bandung  :  Penerbit Informatika.
Sistem   Informasi   Jadwal   Sarana   Transportasi   untuk   Kota   Semarang   Berbasis   Mobile   Application