IMPLEMENTASI WEB SERVICE UNTUK INFORMASI JADWAL PENERBANGAN
IMPLEMENTASI WEB SERVICE UNTUK
Tugas Akhir
Ditujukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Disusun Oleh : Nama : Bernadetta Maria Dwianintyasari
NIM : 015314005
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
WEB SERVICE IMPLEMENTATION FOR
FLIGHT SCHEDULE INFORMATION
Final Project
Presented as Partial Fulfillment of the Requirements
to Obtain the Sarjana Teknik Degree
in Information Engineering
By : Name : Bernadetta Maria Dwianintyasari
NIM : 015314005
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF ENGINEERING
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
Skripsi ini kupersembahkan untuk :
♥ Tuhan Yesus, yang selalu menyertai dan membimbingku ♥ Papa dan Mamaku yang tersayang
♥Kakak dan adikku, Theo dan Martha
, yang usil
♥Semua teman dan sahabat yang selalu mendukungku dalam
menyelesaikan skripsi ini
K alau kau pikir kau bisa atau kalau kau pikir kau tak bisa, keduanya benar
- Henry Ford
L akukanlah hal-hal biasa dengan kasih luar biasa
- Ibu Teresa
Janganlah hendaknya kamu kuatir tentang apapun juga,
tetapi nyatakanlah dalam segala hal keinginanmu kepada
Allah dalam doa dan permohonan dengan ucapan syukur- Filipi (4:6)
Setiap hari, baik ataupun buruk adalah satu hadiah yang
diberikan Tuhan kepada kita
ABSTRAKSI
Perkembangan mobilitas yang semakin tinggi menyebabkan banyak orang menginginkan kemudahan dalam memperoleh informasi yang mereka butuhkan, dimana saja dan kapan saja mereka membutuhkannya. Informasi jadwal penerbangan merupakan salah satu informasi yang diperlukan bagi orang-orang dengan mobilitas tinggi maupun bagi wisatawan dan orang-orang yang hendak bepergian dengan menggunakan jasa penerbangan. Implementasi Web Service sebagai penyedia layanan pencarian informasi jadwal penerbangan untuk aplikasi
mobile phone bertujuan memberikan kemudahan bagi orang-orang dalam
memperoleh informasi jadwal penerbangan secara cepat dimana pun dan kapan pun mereka mebutuhkan melalui mobile device yang mereka miliki.
Sistem ini memiliki 3 bagian yaitu, server Web Service sebagai penyedia layanan pencarian informasi jadwal penerbangan, server database yang digunakan untuk menyimpan data-data jadwal penerbangan, dan aplikasi client yang akan mengkases layanan pencarian informasi jadwal penerbangan yang disediakan oleh Web Service. Web Service dibangun dengan menggunakan
Netbeans dengan bahasa pemrograman Java. Aplikasi client dibangun dengan
bahasa pemrograman J2ME. Sedangkan database dibuat dengan Oracle 10g.Hasil yang diperoleh dari implementasi Web Service ini berupa informasi jadwal penerbangan yang meliputi informasi mengenai maskapai penerbangan dengan rute asal keberangkatan dari Yogykarta berikut nomor penerbangan, tujuan, hari, dan jam keberangkatan.
ABSTRACT
A higher mobility growth caused a lot of people desire an easy way to get information that they needed, anywhere and anytime. Flight schedule information is one of the information that needed by people with high mobility or tourist and people who want to travel with the flight services. The purpose of the Web Service implementation as the service provider for flight schedule information searching system for mobile phone application is to give a more simple way for people to get the flight schedule information quickly anywhere and anytime they needed through their own mobile device.
This system has three parts, the Web Service server as the service provider for flight schedule information searching system, database server which is used to save flight schedule data, and client application which is used to access flight schedule information searching system on Web Service. Web Service is built using Netbeans and Java as programming language. Client application built using J2ME programming language and database is built using Oracle 10g.
The result obtained from Web Service implementation is flight schedule information that include information about flight airlines company with departure route from Jogjakarta including flight number, destination, day, and departure time
KATA PENGANTAR
Puji serta syukur penulis panjatkan kepada Tuhan Yesus Kristus, karena atas segala cinta kasih dan bimbingan-Nya saya dapat menyelesaikan tugas akhir ini dengan baik dan lancar.
Dalam proses penulisan tugas akhir ini, penulis telah menerima perhatian dan bantuan dari banyak pihak dengan caranya masing-masing sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik. Oleh karena itu, pada kesempatan ini penulis ingin mengucapkan terima kasih antara lain kepada :
1. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing I, yang telah memberikan bimbingan, dukungan, dan fasilitas yang mendukung, sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik.
2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma.
3. Ir. Gregorius Heliarko SJ, SS, BST, MA, M.Sc., selaku Dekan Fakultas Teknik.
4. Bapak JB. Budi Darmawan, S.T., M.SC., Bapak St. Wisnu Wijaya, S.T., dan Ibu Merry, S.T., selaku panitia penguji yang telah memberikan banyak kritik dan saran demi sempurnanya tugas akhir penulis.
5. Pak Bele, Mas Danang, dan semua laboran serta staf kesekretariatan, Agus yang telah memberikan bantuannya terutama dalam proses pengerjaan tugas akhir ini.
6. Mama dan Papa yang selalu memberikan dukungan moril, materiil, maupun spiritual dalam menjalani kehidupan ini.
7. Theo dan Martha atas doa, dukungan, perhatian dan keceriaan serta canda tawa yang diberikan kepadaku.
8. Para sepupuku : Kristin, Yani, Vivien, Stanny, Lisa, Lendy, Vina, Vicky, Albert, Chris atas doa dan dukungan serta canda tawa yang diberikan. Untuk Lendy, terima kasih atas bantuan download tool yang diperlukan dalam pengerjaan tugas akhir ini.
9. Keluarga besar Sentral dan Sunu atas doa, dukungan, dan perhatian yang telah diberikan kepada saya.
10. Teman dan sahabat Teknik Informatika 2001 yang telah memberi warna baru dalam hidupku : Tina, Rita, Basilia, Dephiek, Alice, Lilik, Manu, Albert, Hendy, Bernad, Ndon, Tatag, Teguh, Devy, Iis, dan teman-teman lainnya atas semua doa, dukungan, perhatian, bantuan, dan keceriaan, serta canda tawa yang telah diberikan selama proses pengerjaan tugas akhir ini. Untuk Lilik dan Dephiek, terima kasih atas penjelasan dan keterangan-keterangan yang diberikan.
11. Teman dan sahabatku : Uut, Agnes, Beatrix, Tania, Yasti, Mba Sarie, Mas Wisnu yang selalu memberikan dukungan dan semangat kepadaku. Terima kasih juga atas doanya.
12. Dan seluruh pihak yang telah ambil bagian dalam proses penulisan tugas akhir ini yang tidak bisa saya sebutkan satu per satu.
Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini sangat saya harapkan.
Akhir kata, semoga tugas akhir ini bermanfaat bagi berbagai pihak yang membutuhkan informasi terutama informasi mengenai teknologi Web Service.
Terima kasih.
Yogyakarta, Juni 2007 Penulis
DAFTAR ISI
HALAMAN JUDUL .................................................................................... i HALAMAN PERSETUJUAN ...................................................................... iii HALAMAN PENGESAHAN ....................................................................... iv HALAMAN PERSEMBAHAN .................................................................... v HALAMAN MOTTO................................................................................... vi PERNYATAAN KEASLIAN KARYA ........................................................ vii ABSTRAKSI................................................................................................ viii ABSTRACT ................................................................................................. ix KATA PENGANTAR .................................................................................. x DAFTAR ISI ................................................................................................ xiii DAFTAR GAMBAR .................................................................................... xviii DAFTAR TABEL ........................................................................................ xxii
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ....................................................................
1 1.2 Rumusan Masalah .............................................................................
2 1.3 Batasan Masalah ...............................................................................
2 1.4 Tujuan dan Manfaat Penulisan ..........................................................
3 1.5 Metodologi Penelitian .......................................................................
3 1.6 Sistematika Isi...................................................................................
4 BAB II LANDASAN TEORI 2.1 Metodologi Pemrograman Berorientasi Objek ...................................
6
2.1.1 Object Oriented Analysis................................................................
18 2.4 Java 2 Enterprise Edition (J2EE) ......................................................
26 2.5.1 J2ME Profile..................................................................................
25 2.5 J2ME Configuration..........................................................................
24 2.4.7 Macam-macam Spesifikasi Web Service dalam platform J2EE .......
23 2.4.6 Komunikasi....................................................................................
22 2.4.5 J2EE API .......................................................................................
22 2.4.4 Tipe Container ...............................................................................
21 2.4.3 Platform dan Container Service .....................................................
19 2.4.2 Teknologi J2EE..............................................................................
19 2.4.1 Keuntungan J2EE...........................................................................
18 2.3.2.4 Web Service Description Language (WSDL)...............................
6 2.1.2 Object Oriented Design ..................................................................
17 2.3.2.3 Universal Description, Discovery, and Integration (UDDI).........
16 2.3.2.2 Simple Object Access Protocol (SOAP) .......................................
15 2.3.2.1.3 Document Type Definition (DTD).............................................
15 2.3.2.1.2 Prolog XML .............................................................................
14 2.3.2.1.1 Tag dan Atribut ........................................................................
12 2.3.2.1 Extensible Markup Language (XML) ..........................................
12 2.3.2 Standar Web Service .......................................................................
11 2.3.1 Keuntungan Web Service................................................................
7 2.3 Web Service ......................................................................................
7 2.2 UML ( Unified Modelling Language ) Diagram ................................
27
2.6 Java Database Connectivity (JDBC) .................................................
35 3.4 Analisis Berorientasi Objek ...............................................................
63 4.2.1 Perangkat Lunak ............................................................................
61 4.2 Kebutuhan Sistem .............................................................................
45 BAB IV IMPLEMENTASI SISTEM 4.1 Karakteristik Sistem ..........................................................................
44 3.7 Perancangan Sistem ..........................................................................
43 3.6 Struktur Database ..............................................................................
40 3.5.2 Class Diagram ...............................................................................
39 3.5.1 Sequence Diagram .........................................................................
37 3.5 Desain Berorientasi Objek.................................................................
33 3.3.2 Analisis Kebutuhan ........................................................................
28 2.7 Oracle ...............................................................................................
33 3.3.1 Konsep Kerja Sistem ......................................................................
32 3.3 Analisis Sistem..................................................................................
31 3.2 Kebutuhan Sistem .............................................................................
30 BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Gambaran Umum Sistem ..................................................................
30 2.7.5 Select Tabel....................................................................................
30 2.7.4 Delete Tabel...................................................................................
29 2.7.3 Update Tabel..................................................................................
29 2.7.2 Insert Tabel ....................................................................................
29 2.7.1 Membuat Tabel ..............................................................................
63
4.2.2 Perangkat Keras .............................................................................
83 4.3.3 Aplikasi Menu Web ........................................................................
93 4.3.4.4.2 Halaman Edit Data Jadwal........................................................
93 4.3.4.4.1 Halaman Edit Data Pesawat......................................................
91 4.3.4.4 Halaman Edit Data ......................................................................
90 4.3.4.3.2 Halaman Add Data Jadwal ........................................................
90 4.3.4.3.1 Halaman Add Data Pesawat ......................................................
86 4.3.4.3 Halaman Add Data.......................................................................
85 4.3.4.2 Halaman Data Maskapai..............................................................
85 4.3.4.1 Halaman Menu Utama Administrator ..........................................
83 4.3.4 Aplikasi Administrator ...................................................................
82 4.3.2.6 Halaman Informasi ......................................................................
64 4.3 Implementasi Program ......................................................................
82 4.3.2.5 Halaman Petunjuk Penggunaan ...................................................
81 4.3.2.4 Halaman Hasil Pencarian Informasi Jadwal Penerbangan ............
78 4.3.2.3 Halaman Hasil Pencarian Kategori Jadwal Penerbangan..............
77 4.3.2.2 Halaman Kategori Pencarian Jadwal Penerbangan .......................
76 4.3.2.1 Halaman Menu Utama Client ......................................................
66 4.3.2 Aplikasi Client ...............................................................................
66 4.3.1.3 Pembuatan Web Service...............................................................
65 4.3.1.2 Koneksi Database .......................................................................
65 4.3.1.1 Pembuatan Database ...................................................................
65 4.3.1 Aplikasi Server...............................................................................
95
4.3.4.5 Halaman Delete Data...................................................................
96 4.3.4.5.1 Halaman Delete Data Jadwal ....................................................
96 4.3.4.5.2 Halaman Delete Data Pesawat ..................................................
98
4.3.4.6 Menu Help .................................................................................. 100
4.4 Skenario Pengujian Sistem ................................................................ 101
4.4.1 Manajemen Jadwal Penerbangan menggunakan fasilitas administrator ............................................................................................................... 101
4.4.2 Pencarian Informasi Jadwal Penerbangan Melalui Mobile Client .... 115
BAB V ANALISA HASIL
5.1 Hasil Pengujian Sistem...................................................................... 118
5.2 Kelebihan Sistem .............................................................................. 119
5.3 Kekurangan Sistem ........................................................................... 119
5.4 Prospek Pengembangan Sistem ......................................................... 120
BAB VI PENUTUP
6.1 Kesimpulan ....................................................................................... 121
6.2 Saran................................................................................................. 122 DAFTAR PUSTAKA
DAFTAR GAMBAR
41 Gambar 3.11 Sequence Diagram Menampilkan Informasi Jadwal Penerbangan
Meminta Data Kategori
37 Gambar 3.5 Activity Diagram Meminta Data Jadwal Penerbangan
38 Gambar 3.6 Activity Diagram Meminta Layanan Informasi Jadwal Penerbangan
38 Gambar 3.7 Activity Diagram Menampilkan Informasi Jadwal Penerbangan
39 Gambar 3.8 Sequence Diagram Meminta Data Kategori
40 Gambar 3.9 Sequence Diagram Meminta Jadwal
40 Gambar 3.10 Sequence Diagram Meminta Layanan Informasi Jadwal Penerbangan
42 Gambar 3.12 Class Diagram Informasi Jadwal Penerbangan
36 Gambar 3.4
43 Gambar 3.13 Data Modelling
44 Gambar 3.14 Halaman Menu Utama Client
46 Gambar 3.15 Halaman Kategori Pencarian Informasi Jadwal Penerbangan
47 Gambar 3.16 Halaman Hasil Pencarian Kategori Tujuan
47 Gambar 3.17 Halaman Hasil Pencarian Informasi Jadwal Penerbangan Berdasarkan Kategori Tujuan
48 Gambar 3.18 Halaman Hasil Pencarian Kategori Maskapai
49 Gambar 3.19 Halaman Hasil Pencarian Informasi Jadwal Penerbangan Berdasarkan Kategori Maskapai
Activity Diagram
36 Gambar 3.3 Use Case Diagram Aplikasi Client
Gambar 2.1 Simbol Entity Object9 Gambar 2.9 Simbol Solid Dot di dalam Hollow Circle
7 Gambar 2.2 Simbol Interface Object
7 Gambar 2.3 Simbol Control Object
7 Gambar 2.4 Simbol Solid Dot
8 Gambar 2.5 Simbol Rounded-corner Rectangle
8 Gambar 2.6 Simbol Arrows
9 Gambar 2.7 Simbol Solid Black Bar
9 Gambar 2.8 Simbol Diamond
9 Gambar 2.10 Struktur SOAP Message
33 Gambar 3.2 Use Case Diagram Web Service Jadwal Penerbangan
17 Gambar 2.11 Aturan registry Web Service
18 Gambar 2.12 Deskripsi service WSDL
19 Gambar 2.13 Arsitektur J2EE
20 Gambar 2.14 JAXP untuk implementasi parser abstrak dari aplikasi
user
25 Gambar 2.15 Arsitektur JAX-RPC
26 Gambar 3.1 Konsep Kerja Sistem
49
Gambar 3.20 Halaman Hasil Pencarian Kategori Jam77 Gambar 4.10 Halaman Kategori Pencarian Jadwal Penerbangan
74 Gambar 4.5 Halaman Pengetesan Fungsi-fungsi Web Service pada implementasi di komputer server
74 Gambar 4.6 Halaman Pengetesan Fungsi getKategori di komputer
server
75 Gambar 4.7 Halaman Pengetesan Fungsi getJadwal di komputer
server
75 Gambar 4.8 Halaman Download File WSDL di komputer server
76 Gambar 4.9 Halaman Menu Utama Client
78 Gambar 4.11 Halaman Koneksi Ke Web Service
72 Gambar 4.3 Halaman Hasil Pengetesan Fungsi getKategori
80 Gambar 4.12 Halaman Hasil Pencarian Kategori
81 Gambar 4.13 Halaman Hasil Pencarian Informasi Jadwal Penerbangan
82 Gambar 4.14 Halaman Petunjuk Penggunaan
82 Gambar 4.15 Halaman Informasi
83 Gambar 4.16 Halaman Menu
84 Gambar 4.17 Halaman Login Administrator
84 Gambar 4.18 Halaman Download Aplikasi Client
85 Gambar 4.19 Halaman Menu Utama Administrator
73 Gambar 4.4 Halaman Hasil Pengetesan Fungsi getJadwal
72 Gambar 4.2 Halaman WSDL dari Implementasi Web Service pada Komputer Server
50 Gambar 3.21 Halaman Hasil Pencarian Informasi Jadwal Penerbangan Berdasarkan Kategori Jam
54 Gambar 3.29 Halaman Data Maskapai
50 Gambar 3.22 Halaman Petunjuk Penggunaan
51 Gambar 3.23 Halaman Informasi
51 Gambar 3.24 Halaman Tampilan Menu Web
52 Gambar 3.25 Halaman Menu Download Aplikasi Client
52 Gambar 3.26 Halaman Login Administrator
53 Gambar 3.27 Halaman Proses Login Gagal
53 Gambar 3.28 Halaman Menu Utama Administrator
54 Gambar 3.30 Form Pengolahan Data Maskapai
59 Gambar 4.1 Halaman WSDL dari Implementasi Web Service pada Komputer Personal
55 Gambar 3.31 Halaman Tambah Data Pesawat
55 Gambar 3.32 Halaman Tambah Data Jadwal Penerbangan
56 Gambar 3.33 Halaman Tampilan Edit Data Pesawat
57 Gambar 3.34 Halaman Edit Data Pesawat
57 Gambar 3.35 Halaman Tampilan Edit Data Jadwal Penerbangan
58 Gambar 3.36 Halaman Edit Data Jadwal Penerbangan
58 Gambar 3.37 Halaman Tampilan Hapus Data Pesawat
59 Gambar 3.38 Halaman Tampilan Hapus Jadwal Penerbangan
86
Gambar 4.21 Halaman Tambah MaskapaiGambar 4.53 Halaman Add Data Jadwal 10599 Gambar 4.45 Halaman Login Administrator 101
Gambar 4.46 Halaman Informasi Login Gagal 101Gambar 4.47 Halaman Menu Utama Administrator 102Gambar 4.48 Halaman Data Maskapai 103Gambar 4.49 Halaman Add Data Maskapai 103Gambar 4.50 Halaman Informasi Proses Add Data Maskapai 103Gambar 4.51 Halaman Add Data Pesawat 104Gambar 4.52 Halaman Informasi Data Pesawat Telah Disimpan 104Gambar 4.54 Halaman Informasi Data Jadwal Telah Disimpan 10599 Gambar 4.43 Halaman Informasi Data Pesawat Gagal Dihapus
Gambar 4.55 Halaman Edit Maskapai 106Gambar 4.56 Halaman Informasi Proses Edit Maskapai 106Gambar 4.57 Halaman Edit Data Pesawat 108Gambar 4.58 Halaman Data Pesawat Yang Dipilih 108Gambar 4.59 Halaman Informasi Data Pesawat Telah Disimpan 109Gambar 4.60 Halaman Edit Jadwal 109Gambar 4.61 Halaman Data Jadwal Yang Telah Dipilih 110Gambar 4.62 Halaman Informasi Data Jadwal Telah Disimpan 11099 Gambar 4.44 Halaman Informasi Data Pesawat Telah Dihapus
98 Gambar 4.42 Halaman Data Pesawat Yang Dipilih
87 Gambar 4.22 Halaman Informasi Proses Tambah Data Maskapai
92 Gambar 4.31 Halaman Informasi Proses Add Jadwal Bila Data Sudah Ada
88 Gambar 4.23 Halaman Pengubahan Data Maskapai
88 Gambar 4.24 Halaman Informasi Proses Pengubahan Data Maskapai
89 Gambar 4.25 Halaman Penghapusan Data Maskapai
89 Gambar 4.26 Halaman Informasi Proses Penghapusan Data Maskapai
90 Gambar 4.27 Halaman Add Data Pesawat
91 Gambar 4.28 Halaman Informasi Proses Add Pesawat
91 Gambar 4.29 Halaman Add Data Jadwal
92 Gambar 4.30 Halaman Informasi Proses Add Jadwal
93 Gambar 4.32 Halaman Edit Data Pesawat
97 Gambar 4.41 Halaman Delete Data Pesawat
94 Gambar 4.33 Halaman Data Pesawat Yang Dipilih
94 Gambar 4.34 Halaman Informasi Pengubahan Data Pesawat
94 Gambar 4.35 Halaman Edit Data Jadwal
95 Gambar 4.36 Halaman Data Jadwal Yang Dipilih
95 Gambar 4.37 Halaman Informasi Pengubahan Data Jadwal
96 Gambar 4.38 Halaman Delete Data Jadwal
97 Gambar 4.39 Halaman Data Jadwal Yang Dipilih
97 Gambar 4.40 Halaman Informasi Penghapusan Data Jadwal
Gambar 4.63 Halaman Delete Jadwal 111Gambar 4.64 Halaman Data Jadwal Yang Telah Dipilih 112Gambar 4.65 Halaman Informasi Data Jadwal Telah Dihapus 112Gambar 4.66 Halaman Delete Data Pesawat 113Gambar 4.67 Halaman Data Pesawat Yang Telah Dipilih 113Gambar 4.68 Halaman Informasi Data Pesawat Telah Dihapus 114Gambar 4.69 Halaman Data Maskapai Yang Dipilih 114Gambar 4.70 Halaman Informasi Proses Delete Data Maskapai 115Gambar 4.71 Halaman Menu Utama Client 116Gambar 4.72 Halaman Kategori Pencarian Jadwal Penerbangan 116Gambar 4.73 Halaman Hasil Data Kategori Pencarian Tujuan 116Gambar 4.74 Halaman Hasil Pencarian Jadwal Penerbangan 117
DAFTAR TABEL
Tabel 2-1. Perbandingan Antara CDC dan CLDC
27 Tabel 3-1. Struktur Tabel Pesawat
44 Tabel 3-2. Struktur Tabel Jadwal Penerbangan
44 Tabel 3-3. Struktur Tabel Administrator
45 Tabel 4-1. Perangkat Lunak Pada Masing-masing komputer
63 Tabel 4-2. Perangkat Keras Pada Masing-masing komputer
64
BAB I PENDAHULUAN
1.1 Latar Belakang
Sekarang ini teknologi Web Service menjadi topik yang populer dalam dunia teknologi informasi. Teknologi ini sudah banyak digunakan oleh para pengembang perangkat lunak dalam membuat dan mengembangkan sistem. Web
Service merupakan layanan yang ditawarkan suatu aplikasi ke aplikasi lain
melalui teknologi Web. Web Service menyediakan komunikasi diantara aplikasi perangkat lunak yang berjalan pada platform yang berbeda.
Web Service memiliki beberapa standar yang diperlukan dalam membuat Web
Service . Salah satu standar yang digunakan oleh Web Service adalah XML
(Extensible Markup Language). XML merupakan dasar terbentuknya Web
Service . Hal tersebut karena XML menyediakan format standar untuk
mengkomunikasikan data sehingga data dapat dipertukarkan pada aplikasi dan
platform yang berbeda. Dengan penggunaan XML sebagai salah satu standar Web
Service inilah, maka Web Service dapat memberikan layanan bagi aplikasi yang
berada pada platform yang berbeda.
Teknologi lain yang sekarang ini juga banyak digunakan adalah teknologi J2ME (Java 2 Micro Edition), yang digunakan pada aplikasi mobile phone.
Dengan menggunakan teknologi J2ME ini, sebuah aplikasi mobile phone dapat melakukan koneksi internet.
Dalam penulisan tugas akhir ini, kedua teknologi tersebut akan digunakan dalam pengembangan implementasi Web Service untuk memberikan layanan mengenai informasi jadwal penerbangan. Implementasi Web Service akan digunakan dalam Sistem Pencarian Informasi Jadwal Penerbangan melalui mobile
phone . Dengan demikian para pengguna mobile phone dapat memperoleh
informasi jadwal penerbangan yang dibutuhkan dimana saja dan kapan saja.1.2 Rumusan Masalah
Rumusan masalah dari penulisan tugas akhir ini adalah bagaimana membangun Web Service untuk menyediakan layanan informasi jadwal penerbangan?
1.3 Batasan Masalah
Penulisan tugas akhir ini memiliki batasan masalah sebagai berikut :
1. Web Service dibangun dengan tujuan melayani aplikasi penyediaan informasi jadwal penerbangan dari maskapai penerbangan yang memiliki rute asal keberangkatan dari Yogyakarta saja.
2. Perangkat lunak yang digunakan untuk membangun aplikasi ini meliputi tiga bagian, yaitu bagian server Web Service, bagian client, dan bagian database
server . Bagian server Web Service dibangun dengan bahasa pemrograman
Java dan menggunakan Netbeans 5.0, bagian client dibangun dengan bahasa pemrograman J2ME dan digunakan sebagai interface client, dan bagian
database server yang dibangun menggunakan Oracle 10g.
3. Aplikasi yang dibuat tidak membahas masalah keamanan dalam pertukaran data antara client dan server ataupun antara server dengan database server.
4. Pada bagian client, yaitu pada bagian aplikasi mobile hanya digunakan untuk menampilkan informasi jadwal penerbangan yang diminta user, berdasarkan tujuan, maskapai penerbangan, atau jam.
1.4 Tujuan dan Manfaat Penulisan
a. Tujuan Tujuan penulisan tugas akhir ini adalah membuat Web Service yang menyediakan layanan informasi jadwal penerbangan yang memiliki rute asal keberangkatan dari Yogyakarta dengan menggunakan salah satu teknologi Java, yaitu J2EE.
b. Manfaat Memberikan kemudahan bagi pengguna untuk memperoleh informasi jadwal penerbangan secara mudah dan cepat bagi user dimana pun mereka berada dan kapan saja mereka membutuhkan.
1.5 Metodologi Penelitian
Dalam penulisan tugas akhir ini, analisis kebutuhan yang diperlukan dilakukan melalui studi literatur, dengan langkah-langkah sebagai berikut : a. Mempelajari dan memahami konsep sistem yang akan dibangun.
b. Mempelajari konsep Web Service. c. Mempelajari dan memilih bahasa pemrograman yang sesuai untuk membangun Web Service, aplikasi pada mobile phone, dan database
server .
Sedangkan metodologi yang digunakan dalam tugas akhir ini adalah Rational
Unified Process (Whitten, J.L., Bentley, L.D., Dittman, K.C., 2004) karena proses
analisis dan desain sistem yang digunakan adalah beorientasi objek. Langkah- langkah yang dilakukan adalah sebagai berikut :
1. Analisis Sistem Melakukan analisis kebutuhan (Requirement Analysis) yang terdiri dari
Use Case Diagram , dan pemodelan proses (Process Modelling) yang terdiri dari Activity Diagram, Object Analysis, Use Case Realization.
2. Desain sistem Melakukan perancangan objek yang terdiri dari Sequence Diagram, Class
Diagram , perancangan masukan, perancangan keluaran, perancangan antarmuka pengguna.
1.6 Sistematika Penulisan
BAB I PENDAHULUAN Bab ini memberikan penjelasan mengenai latar belakang masalah, rumusan
masalah, batasan masalah, tujuan dan manfaat, metodologi penelitian, serta sistematika penulisan.
BAB II LANDASAN TEORI Bab ini memberikan penjelasan mengenai landasan teori yang mendukung
penulisan tugas akhir ini. Bab ini memberikan penjelasan mengenai Web Service, J2EE (Java 2 Enterprise Edition), J2ME (Java 2 Micro Edition), dan Oracle.
BAB III ANALISIS DAN PERANCANGAN SISTEM Bab ini memberikan penjelasan mengenai analisis dan desain sistem yang
dibangun, yaitu analisis dan desain sistem untuk Web Service, dan untuk aplikasi client yang berupa aplikasi mobile phone.
BAB IV IMPLEMENTASI Bab ini memberikan penjelasan mengenai implementasi dari analisis dan desain sistem yang telah dibuat. BAB V ANALISIS HASIL Bab ini memberikan penjelasan mengenai analisis terhadap hasil implementasi Web Service untuk mobile phone. BAB VI PENUTUP Bab ini memberikan kesimpulan dan saran dari keseluruhan proses implementasi teknologi Web Service.
BAB II LANDASAN TEORI
2.1 Metodologi Pemrograman Berorientasi Objek
2.1.1 Object Oriented Analysis
Merupakan pendekatan untuk mengidentifikasi dari kebutuhan sistem dari perspektif user dan mengidentifikasi objek, atribut, behaviour, dan relasi yang mendukung kebutuhan fungsional sistem. Objek modelling merupakan sebuah teknik untuk mengidentifikasikan objek ke dalam lingkungan sistem dan relasi antar objek.
Ada dua aktifitas utama dalam object oriented analysis yaitu :
1. Memodelkan fungsi dari sistem Pada saat requirement analysis dibangun use case diagram yang mendokumentasikan kebutuhan fungsional sistem. Proses ini bertujuan untuk mendapatkan dokumentasi yang cepat untuk seluruh bisnis event yang terjadi untuk mendefinisikan dan memvalidasi kebutuhan.
2. Mengorganisasikan objek dan mengidentifikasi relasinya Pada aktifitas ini dibuat class diagram yang menggambarkan struktur objek sistem, memperlihatkan class objek dari sistem yang disusun dengan relasi antar class objeknya.
2.1.2 Objet Oriented Design
Merupakan pendekatan yang digunakan untuk menspesifikasikan solusi perangkat lunak dalam bentuk kolaborasi objek, atribut, dan method-nya. Tahap ini merupakan kelanjutan dari proses object oriented analysis. Dalam tahap ini terdapat tiga buah objek yaitu : a. Entity Object
Merupakan sebuah objek yang berisi informasi yang berhubungan dengan bisnis dan secara khusus bersifat persistent dan disimpan dalam database.
Gambar 2.1 Simbol Entity Object (diambil dari Whitten, 2004)b. Interface Object Merupakan sebuah objek yang disediakan untuk menggambarkan bagaimana sebuah aktor akan melakukan interface dengan sistem.
Gambar 2.2 Simbol Interface Object (diambil dari Whitten, 2004)c. Control Object Merupakan sebuah objek yang berisi aplikasi logik yang bukan merupakan tanggung jawab dari entity objek.
Gambar 2.3 Simbol Control Object (diambil dari Whitten, 2004)2.2 UML (Unified Modelling Language) Diagram
UML merupakan bahasa standar yang digunakan untuk menjelaskan dan memvisualisasikan artifak dari proses analisis dan desain berorientasi objek. UML tidak menentukan sebuah metode untuk mengembangkan sistem, hanya sebuah notasi yang saat ini dapat diterima secara luas sebagai sebuah standar untuk objek
modelling . UML memungkinkan pengembang melakukan pemodelan secara
visual. UML mendefinisikan diagram-diagram sebagai berikut :
1. Use Case Diagram
Use case diagram digunakan untuk menjelaskan manfaat sistem jika dilihat
menurut pandangan orang yang berada di luar sistem (actor). Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem berinteraksi dengan dunia luar.
2. Activity Diagram
Activity diagram digunakan untuk memodelkan alur kerja sebuah proses bisnis
dan urutan aktivitas dalam suatu proses. Beberapa simbol yang digunakan untuk
activity diagram :
a. Solid dot, menggambarkan awal proses
Gambar 2.4 Simbol Solid Dotb. Rounded-corner rectangle, menggambarkan aktifitas atau tugas yang diperlukan.
Gambar 2.5 Simbol Rounded-corner rectangle c. Arrows, menggambarkan trigger yang menginisialisasi aktifitas.Gambar 2.6 Simbol Arrowsd. Solid black bar adalah bar sinkronisasi. Simbol ini menunjukkan aktifitas yang dilaksanakan secara paralel.
Gambar 2.7 Simbol Solid Black Bar [], menjelaskan trigger adalah sebuah hasil dari aktifitas keputusan.e. Text inside
f. Diamond, menggambarkan aktifitas keputusan
Gambar 2.8 Simbol Diamond g. Solid dot di dalam hollow circle menggambarkan akhir proses.Gambar 2.9 Simbol Solid Dot di dalam Hollow Circle3. Sequence Diagram
Sequence diagram digunakan untuk menjelaskan interaksi objek yang disusun
dalam suatu urutan waktu. Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu di dalam use case.
Diagram ini biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event-event menghasilkan output tertentu. Pada fase desain message akan dipetakan menjadi operasi atau metode dari class.
4. Class Diagram
Class merupakan sebuah spesifikasi yang diinstaniasi, akan menhasilkan
objek dan merupakan inti dari pengembangan dan desain berorientasi objek, menggambarkan keadaan (atribut / properti) sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (method / fungsi).
Class diagram menggambarkan struktur dan deskripsi class, package, dan
objek beserta hubungan satu sama lain seperti generalisasi, pewarisan, asosiasi, dan sebagainya. Class diagram memperlihatkan hubungan antar class dan penjelasan detail tiap-tiap class dalam model desain dari suatu sistem. Class memiliki tiga area pokok yaitu nama dan stereotype, atribut, dan method.
Atribut dan method memiliki sifat : a. private, tidak dapat dipanggil dari luar class bersangkutan.
b. protected, hanya dapat dipanggil class bersangkutan dan pewarisnya.
c. public, dapat dipanggil siapa saja. Beberapa hubungan antar class yang ada :
a. asosiasi, Merupakan hubungan statis antar class
b. agregasi, Merupakan hubungan antar class yang menyatakan bagian
c. pewarisan, Merupakan hubungan antar class yang menyatakan hirarkis
d. hubungan dinamis, Merupakan rangkaian pesan diparsing dari satu class ke class lain.
2.3 Web Service
Web Service merupakan sebuah aplikasi perangkat lunak yang dapat diakses
pada Web atau intranet melalui URL, yang diakses oleh client menggunakan protokol berbasis XML, seperti Simple Object Access Protocol (SOAP) yang dikirim melalui protokol internet seperti HTTP. Client mengakses sebuah aplikasi
Web Service melalui antarmukanya dan binding, yang didefinisikan menggunakan
dokumen XML, seperti Web Services Definition Language (WDSL).Web Service merupakan hasil dari evolusi Web. Pada awalnya, teknologi Web
merupakan situs yang berupa halaman HTML. Kemudian aplikasi Web tersebut berkembang menjadi lebih dinamis. Meskipun demikian, aplikasi Web tersebut masih memiliki batasan kemampuan GUI pada halaman HTML. Web Service mampu menangani batasan ini, karena Web Service memisahkan Website atau aplikasi dari GUI HTML.
Web Service dibangun berdasarkan pengetahuan yang diperoleh dari
lingkungan distributed computing sebelumnya (seperti COBRA, Java Remote
Method Invocation ) untuk memungkinkan komunikasi antara aplikasi dan
interoperability . Web Service menyediakan cara yang telah terstandarisasi bagi
aplikasi untuk menampilkan fungsionalnya melalui Web atau berkomunikasi dengan aplikasi lain melalui jaringan, tanpa memperhatikan implementasi aplikasi, bahasa pemrograman, atau platform komputer.
2.3.1 Keuntungan Web Service
Beberapa keuntungan Web Service adalah :
a. Web Service berjalan menggunakan open standard, sehingga memungkinkan aplikasi perangkat lunak ditulis dalam bahasa pemrograman yang berbeda dan memungkinkan komunikasi pada platform yang berbeda.
b. Web Service mudah dan tidak mahal untuk diimplementasikan, karena menggunakan infrastruktur yang sudah ada, seperti Web untuk pertukaran informasi.
c. Web Service membantu memperluas aplikasi dan layanan untuk dapat diakses oleh lebih banyak tipe client. Dengan menggunakan Web Service suatu layanan dapat diakses oleh client dalam berbagai platform, karena Web Service mendukung interoperability.
2.3.2 Standar Web Service
Standar merupakan suatu kumpulan dari spesifikasi, aturan, dan pedoman yang dirumuskan dan diterima oleh pasar. Kriteria yang perlu dipenuhi oleh standar yang digunakan Web Service dan teknologi yang mengimplementasikan
Web Service adalah :
1. Web Service harus mampu melayani permintaan ( request ) dari client tanpa memperhatikan platform yang digunakan oleh client.
2. Client harus mampu menemukan Web Service tanpa memperhatikan detail implementasi dan platform yang digunakan oleh Web Service.
Beberapa standar yang diperlukan Web Service adalah sebagai berikut :
a. XML ( Extensible Markup Language )
XML merupakan dasar terbentuknya Web Service. XML merupakan markup
language berbasis teks yang menjadi bahasa standar pertukaran data di web. Pesan