PEMBANGUNAN WEB SERVICE SEBAGAI PENYEDIA LAYANAN M-TICKETING BERBASIS MOBILE
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Lutfi Santriwan 09560024
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2014
LEMBAR PERSETUJUAN PEMBANGUNAN WEB SERVICE SEBAGAI PENYEDIA LAYANAN M-TICKETING BERBASIS MOBILE
TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Menyetujui
Pembimbing I
Pembimbing II
Hariyady, S.Kom, M.T.
Agus Eko Minarno, S.Kom
NIP : 101.9406.0262
NIDN : 0729118203
LEMBAR PENGESAHAN PEMBANGUNAN WEB SERVICE SEBAGAI PENYEDIA LAYANAN M-TICKETING BERBASIS MOBILE
TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh : Lutfi Santriwan 09560024
Tugas Akhir ini telah diuji dan dinyatakan lulus melalui sidang majelis penguji Pada tanggal 7 Januari 2014
Menyetuji,
Penguji I
Penguji II
Galih Wasis Wicaksono, S.Kom
Dhebys Suryani H., S.Kom, M.T.
Mengetahui, Ketua Jurusan Teknik Informatika
Eko Budi Cahyono, S.Kom, M.T. NIP :108.9504.0330
LEMBAR PERNYATAN
Yang bertanda tangan dibawah ini : NAMA
: LUTFI SANTRIWAN
NIM
: 09560024
FAK./JUR.
: TEKNIK/INFORMATIKA
Dengan
ini
saya
menyatakan
bahwa
Tugas
Akhir
dengan
judul
“PEMBANGUNAN WEB SERVICE SEBAGAI PENYEDIA LAYANAN MTICKETING BERBASIS MOBILE” beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya. Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila kemudian ditemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini, atau ada klaim dari pihak lain terhadap keaslian kaya saya ini maka saya siap menangung segala bentuk resiko/sanksi yang berlaku.
Mengetahui,
Malang, 07 Januari 2014
Dosen Pembimbing
Yang Membuat Pernyataan
Hariyady, S.Kom, M.T.
Lutfi Santriwan
LEMBAR PERSEMBAHAN Puji syukur kepada Allah SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan Tugas Akhir ini. Penulis menyampaikan ucapan terima kasih yang sebesar-besarnya kepada : 1.
Bapak Mochammad Zaini dan Ibu Anna Rita selaku orang tua yang sangat saya sayangi yang selalu memberikan kasih sayang dan doa’nya tanpa henti kepada saya, serta Adik saya Cholifatun Nisaa’ yang selalu memberikan dukungan dan semangat serta do’anya.
2.
Bapak Hariyady, S.Kom, M.T. dan Bapak Agus Eko Minarno, S.Kom selaku dosen pembimbing tugas akhir yang dengan sabar telah membimbing saya menyelesaikan penelitian ini.
3.
Para dosen dan staf Jurusan Informatika yang telah memberikan ilmu serta segala bantuannya.
4.
Pihak Dekan beserta staf TU Fakultas Teknik Universitas Muhammadiyah Malang atas segala bantuannya.
5.
Miftahul Jannah yang selalu menyayangi, mendampingi dan tanpa henti memberikan semangat serta motivasinya untuk saya.
6.
Sahabat dan teman, khususnya Ruli, Nina Sakti, Rida, Nasta, Awlia, Abthal, Kukuh, Rini, Eka dan seluruh warga kelas A angkatan 2009 yang tidak dapat disebutkan satu per satu terima kasih banyak telah berbagi pengalaman, memberikan dukungan serta berbagi ilmu.
7.
Adit dan Tomi teman satu tempat kerja yang sama-sama mendapatkan pengalaman baru.
8.
Kepala beserta staff Lembaga Informasi dan Komunikasi (Infokom) atas ilmu dan pengalaman yang sangat berharga bagi saya.
9.
Serta semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah berjasa dalam pengerjaan Tugas Akhir ini.
iii
KATA PENGANTAR Dengan memanjatkan puji syukur kehadirat Allah Subhanahu Wa Ta’ala atas limpahan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir yang berjudul : “PEMBANGUNAN WEB SERVICE SEBAGAI PENYEDIA LAYANAN M-TICKETING BERBASIS MOBILE”
Di dalam tulisan ini disajikan pokok - pokok pembahasan yang meliputi pendahuluan, landasan teori, perancangan sistem, implementasi dan pengujian sistem. Penulis menyadari sepenuhnya bahwa dalam penulisan tugas akhir ini masih banyak kekurangan dan keterbatasan. Oleh karena itu penulis mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi perkembangan ilmu pengetahuan ke depan.
Malang, 07 Januari 2014
Lutfi Santriwan
iv
DAFTAR ISI ABSTRAK ............................................................................................................... i ABSTRACT ............................................................................................................ ii LEMBAR PERSEMBAHAN ................................................................................ iii KATA PENGANTAR ........................................................................................... iv DAFTAR ISI ........................................................................................................... v DAFTAR GAMBAR ........................................................................................... viii DAFTAR TABEL ................................................................................................... x BAB I PENDAHULUAN ....................................................................................... 1 1.1 1.2 1.3 1.4 1.5 1.6
Latar Belakang ......................................................................................... 1 Rumusan Masalah .................................................................................... 2 Tujuan ....................................................................................................... 2 Batasan Masalah ....................................................................................... 2 Manfaat Penelitian .................................................................................... 3 Metodologi Penelitian .............................................................................. 3
BAB II TINJAUAN PUSTAKA............................................................................. 4 2.1 Web Service ............................................................................................. 4 2.1.1 Pengenalan Web Service ...................................................................... 4 2.1.2 Cara Kerja Web Service ....................................................................... 5 2.2 Android ..................................................................................................... 6 2.3 JSON ........................................................................................................ 9 2.4 Eclipse ...................................................................................................... 9 2.5 API (Application Programing Interface) ................................................ 10 2.6 M-Ticketing Kereta Api .......................................................................... 10 2.7 PHP ......................................................................................................... 11 BAB III ANALISA DAN PERANCANGAN SISTEM ....................................... 13 3.1 Analisa Sistem ........................................................................................ 13 3.1.1 Analisa Masalah .................................................................................. 13 3.1.2 Solusi Permasalahan ........................................................................... 13 3.1.3 Kebutuhan Fungsional ........................................................................ 14 3.1.4 Kebutuhan Non Fungsional ................................................................ 15 3.1.5 Use Case Diagram .............................................................................. 15 3.2 Perancangan Sistem ................................................................................ 16 3.2.1 Perancangan Parameters ..................................................................... 17 3.2.1.1 Stasiun Asal ................................................................................... 17 3.2.1.2 Stasiun Tujuan ............................................................................... 17
v
3.2.1.3 Kelas Kereta Api............................................................................ 18 3.2.1.4 Data Diri Pesanan .......................................................................... 18 3.2.1.5 Verifikasi Pesanan ......................................................................... 18 3.2.2 Perancangan API................................................................................. 18 3.2.2.1 Fungsi get_stasiun ......................................................................... 18 3.2.2.2 Fungsi get_kereta ........................................................................... 18 3.2.2.3 Fungsi get_kelas ............................................................................ 19 3.2.2.4 Fungsi get_jadwal .......................................................................... 19 3.2.2.5 Fungsi get_pesan............................................................................ 19 3.2.2.6 Fungsi add_pesan........................................................................... 19 3.2.2.7 Fungsi batal_pesan ......................................................................... 19 3.2.2.8 Fungsi verify_pesan ....................................................................... 19 3.2.3 Perancangan Web Service .................................................................. 19 3.2.4 Activity Diagram ................................................................................ 20 3.2.4.1 Activity Diagram Pada Admin ...................................................... 20 3.2.4.1.1 Activity Diagram Pencarian Data Jadwal Kereta Api ............. 20 3.2.4.1.2 Activity Diagram Memasukkan Data Jadwal Kereta Api ....... 21 3.2.4.1.3 Activity Diagram Menghapus Jadwal ..................................... 22 3.2.4.1.4 Activity Diagram Mengubah Status Pesanan .......................... 22 3.2.4.2 Activity Diagram Pada Client ........................................................ 23 3.2.4.2.1 Activity Diagram Pencarian Jadwal Kereta Api ...................... 23 3.2.4.2.2 Activity Diagram Memilih Jadwal Kereta Api ........................ 24 3.2.4.2.3 Activity Diagram Mengubah Status Pesanan .......................... 25 3.2.4.2.4 Activity Diagram Verifikasi Pembayaran ............................... 25 3.2.4.2.5 Activity Diagram Cek Status ................................................... 26 3.2.5 Sequence Diagram .............................................................................. 27 3.2.5.1 Sequence Diagram Pada Admin .................................................... 27 3.2.5.1.1 Pencarian Data Jadwal ............................................................. 27 3.2.5.1.2 Masukkan Data Jadwal ............................................................ 27 3.2.5.1.3 Ubah Data Jadwal .................................................................... 28 3.2.5.1.4 Hapus Data Jadwal .................................................................. 28 3.2.5.1.5 Ubah Status Pesanan ................................................................ 29 3.2.5.2 Sequence Diagram Pada Client...................................................... 29 3.2.5.2.1 Pencarian Jadwal ..................................................................... 29 3.2.5.2.2 Pilih Jadwal .............................................................................. 30 3.2.5.2.3 Input Data Diri ......................................................................... 30 3.2.5.2.4 Verifikasi Pembayaran ............................................................. 31 3.2.5.2.5 Cek Status ................................................................................ 31 3.2.6 Class Diagram ..................................................................................... 32 3.2.6.1 Class Diagram Aplikasi M-Ticketing ............................................ 32 3.2.6.2 Class Diagram Web Admin ........................................................... 33 3.3 Desain Interface ...................................................................................... 33
vi
3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8
Rancangan Antarmuka Aplikasi Tampilan Utama ............................. 33 Rancangan Antarmuka Aplikasi List Jadwal Kereta Api ................... 34 Rancangan Antarmuka Aplikasi Isi Data Diri Client ......................... 35 Rancangan Antarmuka Aplikasi Verifikasi Pemesanan ..................... 35 Rancangan Antarmuka Aplikasi List Data Pemesanan ...................... 36 Rancangan Antarmuka Web Admin Data Jadwal Kelas .................... 36 Rancangan Antarmuka Memasukkan Data Jadwal Kereta Api .......... 37 Rancangan Antarmuka Verifikasi Pembayaran .................................. 38
BAB IV IMPLEMENTASI DAN HASIL PENGUJIAN ..................................... 39 4.1 Implementasi .......................................................................................... 39 4.1.1 Lingkungan Pengembangan Perangkat Lunak ................................... 39 4.1.2 Lingkungan Pengembangan Perangkat Keras .................................... 39 4.1.3 Implementasi Web Service ................................................................. 40 4.1.3.1 Konfigurasi Database Server ......................................................... 40 4.1.3.2 Fungsi get_stasiun ......................................................................... 40 4.1.3.3 Fungsi get_kereta ........................................................................... 41 4.1.3.4 Fungsi get_kelas ............................................................................ 42 4.1.3.5 Fungsi get_jadwal .......................................................................... 42 4.1.3.6 Fungsi get_pesan............................................................................ 43 4.1.3.7 Fungsi add_pesan........................................................................... 43 4.1.3.8 Fungsi batal_pesan ......................................................................... 44 4.1.3.9 Fungsi verify_pesan ....................................................................... 45 4.1.4 Implementasi Aplikasi M-Ticketing ................................................... 45 4.1.4.1 Interface Cari Jadwal ..................................................................... 45 4.1.4.2 Interface Hasil Pencarian Jadwal ................................................... 47 4.1.4.3 Interface Pemesanan Jadwal .......................................................... 50 4.1.4.4 Interface Verifikasi Pembayaran ................................................... 52 4.1.4.5 Interface Hasil Pencarian Verifikasi Pembayaran ......................... 53 4.1.5 Implementasi Web Admin .................................................................. 57 4.1.5.1 Interface Data Jadwal Kereta Api .................................................. 57 4.1.5.2 Interface Masukkan Data Kereta Api ............................................ 58 4.1.5.3 Interface Ubah Data Kereta Api .................................................... 59 4.1.5.4 Interface Halaman Report .............................................................. 60 4.1.5.5 Interface Halaman Verifikasi Pesanan ........................................... 61 4.2 Pengujian Sistem .................................................................................... 62 BAB V KESIMPULAN DAN SARAN ................................................................ 70 5.1 5.2
Kesimpulan ............................................................................................. 70 Saran ....................................................................................................... 70
DAFTAR PUSTAKA ........................................................................................... 72 BIOGRAFI PENULIS .......................................................................................... 73
vii
DAFTAR GAMBAR Gambar 2.1 Cara Kerja Web Service ...................................................................... 6 Gambar 2.2 Komponen Sistem Android ................................................................. 7 Gambar 3.1 Use Case Diagram Sistem ................................................................. 16 Gambar 3.2 Arsitektur Aplikasi Web Service dan M-Tickeitng........................... 17 Gambar 3.3 Alur Proses Dari Web Service .......................................................... 20 Gambar 3.4 Activity Diagram Pencarian Data Jadwal ......................................... 21 Gambar 3.5 Activity Diagram Masukkan Data Jadwal ........................................ 21 Gambar 3.6 Activity Diagram Menghapus Jadwal ............................................... 22 Gambar 3.7 Activity Diagram Mengubah Status Pesanan .................................... 23 Gambar 3.8 Activity Diagram Pencarian Jadwal .................................................. 24 Gambar 3.9 Activity Diagram Memilih Jadwal .................................................... 24 Gambar 3.10 Activity Diagram Konfirmasi Pesanan ........................................... 25 Gambar 3.11 Activity Diagram Verifikasi Pesanan .............................................. 26 Gambar 3.12 Activity Diagram Cek Status........................................................... 26 Gambar 3.13 Sequence Diagram Pencarian Jadwal .............................................. 27 Gambar 3.14 Sequence Diagram Masukkan Jadwal ............................................. 28 Gambar 3.15 Sequence Diagram Ubah Jadwal ..................................................... 28 Gambar 3.16 Sequence Diagram Hapus Jadwal ................................................... 29 Gambar 3.17 Sequence Diagram Ubah Status Jadwal .......................................... 29 Gambar 3.18 Sequence Diagram Cari Jadwal....................................................... 30 Gambar 3.19 Sequence Diagram Pilih Jadwal ...................................................... 30 Gambar 3.20 Sequence Diagram Input ................................................................. 31 Gambar 3.21 Sequence Diagram Verifikasi Pemabayaran ................................... 31 Gambar 3.22 Sequence Diagram Cek Status Pesanan .......................................... 32 Gambar 3.23 Class Diagram Aplikasi M-Ticketing ............................................. 32 Gambar 3.24 Class Diagram Web Admin ............................................................ 33 Gambar 3.25 Rancangan Antarmuka Tampilan Utama ........................................ 34 Gambar 3.26 Rancangan Antarmuka Tampilan Hasil Pencarian.......................... 34 Gambar 3.27 Rancangan Antarmuka Tampilan Isi Data Diri Client .................... 35 Gambar 3.28 Rancangan Antarmuka Tampilan Verifikasi Pemesanan ................ 35 Gambar 3.29 Rancangan Antarmuka Tampilan Utama ........................................ 36 Gambar 3.30 Rancangan Antarmuka Web Admin ............................................... 37 Gambar 3.31 Rancangan Antarmuka Masukkan Data Jadwal .............................. 37 Gambar 3.32 Rancangan Antarmuka Verfikasi Pembayaran ............................... 38 Gambar 4.1 Konfigurasi Database Server ............................................................. 40 Gambar 4.2 Potongan Kode Fungsi Get Stasiun ................................................... 41 Gambar 4.3 Hasil Request Fungsi Get Stasiun ..................................................... 41 Gambar 4.4 Potongan Kode Fungsi Get Kereta .................................................... 41 Gambar 4.5 Hasil Request Fungsi Get Kereta ...................................................... 42 Gambar 4.6 Potongan Kode Get Kelas ................................................................. 42
viii
Gambar 4.7 Hasil Request Fungsi Get Kereta ...................................................... 42 Gambar 4.8 Potongan Kode Fungsi Get Jadwal ................................................... 42 Gambar 4.9 Hasil Request Fungsi Get Jadwal ...................................................... 43 Gambar 4.10 Potongan Kode Fungsi Get Pesan ................................................... 43 Gambar 4.11 Hasil Request Fungsi Get Jadwal .................................................... 43 Gambar 4.12 Potongan Kode Fungsi Add Pesan .................................................. 44 Gambar 4.13 Hasil Request Fungsi Add Pesan .................................................... 44 Gambar 4.14 Potongan Kode Fungsi Batal Pesan ................................................ 44 Gambar 4.15 Hasil Request Fungsi Batal Pesan ................................................... 44 Gambar 4.16 Potongan Kode Fungsi Verify Pesan .............................................. 45 Gambar 4.17 Hasil Request Fungsi Verify Pesan ................................................. 45 Gambar 4.18 Potongan Kode Class CariActivity ................................................. 46 Gambar 4.19 Potongan Kode Ambil Data Stasiun................................................ 47 Gambar 4.20 Tampilan Halaman Cari Jadwal ...................................................... 47 Gambar 4.21 Potongan Kode Hasil Pencarian Jadwal .......................................... 48 Gambar 4.22 Potongan Kode Ambil Data Jadwal ................................................ 49 Gambar 4.23 Tampilan Halaman Hasil Pencarian Jadwal .................................... 50 Gambar 4.24 Potongan Kode Pemesanan Jadwal ................................................. 51 Gambar 4.25 Tampilan Halaman Pemesanan Jadwal ........................................... 51 Gambar 4.26 Potongan Kode Verifikasi Pembayaran .......................................... 52 Gambar 4.27 Tampilan Halaman Masukkan Verifikasi Pembayaran ................... 52 Gambar 4.28 Potongan Kode Hasil Pencarian Verifikasi Pembayaran ................ 54 Gambar 4.29 Potongan Kode Untuk Melakukan Verifikasi Pembayaran ............ 55 Gambar 4.30 Tampilan Halaman dan Proses Verifikasi Pembayaran .................. 56 Gambar 4.31 Kode Menampilkan Data Jadwal Kereta Api .................................. 57 Gambar 4.32 Tampilan Data Jadwal Kereta Api .................................................. 58 Gambar 4.33 Kode Masukkan Data Jadwal Kereta Api ....................................... 58 Gambar 4.34 Tampilan Masukkan Data Jadwal Kereta Api................................. 59 Gambar 4.35 Kode Ubah Data Jadwal Kereta Api ............................................... 59 Gambar 4.36 Tampilan Halaman dan Proses Verifikasi Pembayaran .................. 60 Gambar 4.37 Kode Menampilkan Data Client ...................................................... 60 Gambar 4.38 Tampilan Halaman dan Pesanan Client .......................................... 61 Gambar 4.39 Kode Ubah Status Client ................................................................. 61 Gambar 4.40 Tampilan Halaman dan Proses Verifikasi Pembayaran .................. 62
ix
DAFTAR TABEL Tabel 3.1 Kebutuhan Fungsional Dari Mobile ...................................................... 14 Tabel 3.2 Kebutuhan Fungsional Dari Web Service ............................................. 14 Tabel 3.3 Kebutuhan Non Fungsional .................................................................. 15 Tabel 4.1 Spesifikasi Perangkat Keras .................................................................. 40 Tabel 4.2 Pengujian Aplikasi M-Ticketing ........................................................... 62 Tabel 4.3 Pengujian Web Service ......................................................................... 67
x
DAFTAR PUSTAKA [1]
Sulistiono Wahyu Eko, 2009, “Web Service Sebagai Penyedia Layanan Pada Sistem Informasi Manajemen Jurusan”, Universitas Lampung.
[2]
Kreger Heater, 2001, “Web Services Conceptual Architecture (WSCA 1.0)”, IBM Sofware Group.
[3]
A’la Syauqi, April Dewi K., Rumalia, “Rancang Bangun Aplikasi Mobile Learning Pada Sistem Operasi Android”, Universitas Islam Negeri Malang.
[4]
Android Architecture, http://developer.android.com/about/versions/index.html, diakses pada tanggal 07 Mei 2013.
[5]
Introduction JSON, http://www.json.org/, diakses pada tanggal 07 Mei 2013.
[6]
Eclipse (Software), http://en.wikipedia.org/wiki/Eclipse_(software), diakses pada tanggal 07 Mei 2013.
[7]
Antarmuka Pemrograman Aplikasi, http://id.wikipedia.org/wiki/Antarmuka_pemrograman_aplikasi/, diakses pada tanggal 07 Mei 2013.
[8]
Hamdani, 2011, “Rancang Bangun Web Service Untuk Penjualan Tiket Bus Damri”, Universitas Mulawarman.
[9]
Meilawati Kania, 2012, “Pembangunan Aplikasi Android Blood For Life Dengan Menggunakan Arsitektur Rest Web Service”, Politeknik Telkom Bandung.
[10] Annas M. F. H., “Aplikasi Pembacaan Quick Response Code Identifikasi Film Menggunakan Perangkat Mobile Berbasis Android”, Institut Teknologi Sepuluh November.
72