You are on page 1of 23

BAB III

ANALISIS DAN PERANCANGAN WEB SERVICE

3.1 Latar Belakang Masalah

Seiring dengan perkembangan internet, teknologi komputer juga terus berkembang.


Banyak program dan sistem komputer dikembangkan untuk semakin memutakhirkan
aplikasi agar dapat digunakan di internet. Sebuah organisasi dapat memiliki banyak
aplikasi komputer yang dibuat dengan bahasa pemrograman dan platform yang
berbeda-beda. Masalah timbul ketika aplikasi-aplikasi tersebut perlu beroperasi
bersama untuk melakukan suatu fungsi layanan tertentu.

3.2 Penyelesaian Masalah

Agar masalah perbedaan bahasa pemrograman tidak menjadi penghambat bagi


aplikasi dalam berkomunikasi dan bertukar data maka dirancanglah suatu metode
bernama Web Service. Pada dasarnya, Web Service memandang aplikasi sebagai
sebuah service dalam web. Penggunaan protokol transport HTTP dan format data
XML dalam Web Service sebagai standar web yang sudah umum dipakai,
memungkinkan untuk menghubungkan berbagai service dalam web tanpa
menyinggung masalah perbedaan bahasa pemrograman yang ada.

Guna menunjukkan fungsi dan cara kerja Web Service dalam tugas akhir ini,
maka dirancanglah sebuah sistem Web Service berupa aplikasi perekaman data murid.
Dalam kasus ini, server sebagai penyedia service mempunyai sebuah database yang
berisikan data murid. Database dibuat dengan MySQL dan dapat diakses dengan
bahasa pemrograman PHP.

Universitas Sumatera Utara


35

Program aplikasi yang dimiliki oleh server ini mempunyai beberapa fungsi,
yaitu:
1. Membuat data murid baru
2. Memodifikasi data murid yang sudah ada
3. Menghapus data murid
4. Mendapatkan data seluruh murid, dan
5. Menampilkan data seorang murid
Program aplikasi server ini nantinya diubah menjadi Web Service agar dapat diakses
oleh klien.

Sedangkan pengguna service atau klien hendak membangun aplikasi


perekaman data murid dengan menggunakan bahasa pemrograman Java. Agar aplikasi
klien dapat mengakses database server dan menggunakannya, maka dibangunlah Web
Service.

3.3 Perancangan Web Service

Tahap pertama, database dirancang sedemikian rupa sehingga dapat menyimpan data
murid berupa No. Induk, Nama, Kelas, dan Alamat. Database yang digunakan adalah
MySQL. Database tersebut diakses dengan menggunakan bahasa pemrograman PHP.
Agar dapat diakses oleh aplikasi/service lain, maka aplikasi diubah menjadi Web
Service dengan menggunakan Web Service Helper. Program ini dengan otomatis akan
membangkitkan WSDL bagi service perekaman data murid.

Di sisi klien, sebuah aplikasi berupa antarmuka untuk mempermudah


perekaman data murid dibuat dengan menggunakan bahasa pemrograman Java.
Selanjutnya, aplikasi tersebut diubah menjadi Web Service secara otomatis oleh
Apache Axis.

Pada hakikatnya, service yang dimiliki oleh server dan klien memiliki fungsi
yang sama, yaitu merekam data murid. Tetapi keduanya dibangun dengan bahasa
pemrograman yang berbeda, yaitu PHP dan Java. Pada kasus ini, server dan klien

Universitas Sumatera Utara


36

diasumsikan memiliki komputer yang berbeda sehingga keduanya memerlukan Web


Service untuk dapat saling berhubungan.

Tahapan pembuatan Web Service dari sisi server adalah sebagai berikut

MULAI

Buat database
menggunakan MySQL

• Nomor Induk
• Nama
• Kelas
• Alamat

Buat program pengakses


database dengan PHP

index,php

Buat class untuk


menyimpan data murid

Student.class.php

Buat class untuk


memodifikasi data
murid

StudentManager.class,php

Gambar 3.1.a Flowchart tahap pembuatan Web Service pada sisi server

Universitas Sumatera Utara


37

Menjadikan class
sebagai Web Service

config.php

Membangkitkan
dokumen WSDL

StudentManager.wsdl

SELESAI

Gambar 3.1.b Flowchart tahapan pembuatan Web Service (lanjutan)

Selanjutnya, tahapan pembuatan Web Service dari sisi klien adalah:

MULAI

Buat aplikasi Java untuk mengakses


database

StudentFrame.java
dan
Main.java

Buat Web Service secara


otomatis dengan Axis

SELESAI

Gambar 3.2 Tahap pembuatan web service pada sisi klien

Universitas Sumatera Utara


38

3.4 Perancangan Antarmuka

Ambil Data

File Keluar

<< 1 >> Sunting Hapus Simpan Tambah Siawa

Nomor Induk 1203948912

Nama John Doe

Kelas 9

Alamat Jl. Sei Belutu No. 17A Medan

Gambar 3.3 Perancangan antarmuka aplikasi Web Service

Keterangan:
1. Menu “File”
Jika dipilih, maka akan keluar 2 submenu, yaitu:
a. Ambil Data, yaitu pilihan untuk mengambil data tersedia di server.
b. Keluar, yaitu pilihan untuk keluar dari aplikasi.

2. Tombol “<<”
Merupakan tombol yang berfungsi untuk menampilkan satu data sebelum data
yang tampil.

3. Tombol “>>”.
Merupakan tombol yang berfungsi untuk menampilkan satu data setelah data
yang tampil. Textbox yang berada di antara tombol “<<” dan “>>” menunjukkan
urutan data yang sedang ditampilkan oleh aplikasi. Pada gambar di atas, data yang
ditampilkan merupakan data pertama.

Universitas Sumatera Utara


39

4. Tombol “Sunting”
Merupakan tombol yang berfungsi untuk membuat agar data yang ditampilkan
dapat disunting atau diedit. Jika tombol ini ditekan, data yang tadinya hanya
ditampilkan, akan dapat disunting.

5. Tombol “Hapus”
Adalah tombol untuk menghapus data siswa.

6. Tombol “Simpan”
Yaitu tombol yang berfungsi untuk menyimpan data dari aplikasi ke komputer
server.

7. Tombol “Tambah Siswa”


Yaitu tombol yang berfungsi untuk menambahkan data siswa dari aplikasi ke
database yang berada di komputer server.

Universitas Sumatera Utara


BAB IV

IMPLEMENTASI PERANGKAT LUNAK

4.1 Implementasi

Dari hasil perancangan sistem yang dilakukan, maka proses selanjutnya adalah tahap
implementasi ke dalam bentuk program komputer. Input yang dibutuhkan berupa data
murid yang disimpan dalam database milik server. Oleh karena itu, pembangunan sistem
Web Service dimulai dari sisi server.

4.2. Implementasi Web Service pada Server

Rancangan Web Service pertama dimulai dari sisi server. Untuk membuat Web Service,
mula-mula dirancang database yang dibangun dengan data seperti berikut:
1. Nomor Induk dengan tipe data Char(10).
2. Nama dengan tipe data Varchar(50).
3. Kelas dengan tipe data Integer(11).
4. Alamat dengan tipe data Varchar(100).

Database tersebut dibangun menggunakan file student.sql. Untuk menjalankannya


digunakan program phpMyAdmin yang terdapat dalam bundle program XAMPP. Berikut
adalah hasil pembentukan database di phpMyAdmin :

Universitas Sumatera Utara


41

Gambar 4.1 Database Student di phpMyAdmin

File pengakses database berbasis PHP dibuat dan diberi nama index.php. File ini
diletakkan dalam folder Student di folder htdocs milik XAMPP (C:\Program
Files\xampp\htdocs\student).

Dalam folder student tersebut, diletakkan folder WSH yang nantinya akan men-
generate file PHP menjadi Web Service. Setelah itu, file yang akan dijadikan Web Service
dibuat. File pertama adalah Student.class.php. File ini berfungsi untuk mengenkapsulasi
data murid. File kedua yaitu StudentManager.class.php. File ini akan dijadikan sebagai
web service yang berfungsi untuk:
a. Membuat data murid baru
b. Memodifikasi data murid
c. Menghapus data murid
d. Mendapatkan data seluruh murid, dan
e. Menampilkan data seorang murid
Kedua file tersebut diletakkan di dalam folder ws\lib\data objects. File config.php yang
ada dalam folder ws harus dimodifikasi sedemikian rupa, agar kedua file tersebut dapat
diaktifkan sebagai Web Service.

Universitas Sumatera Utara


42

Untuk mengetahui apakah Web Service tersebut telah aktif atau tidak,
buka http://localhost/ws/service.php?class=StudentManager dengan menggunakan web
browser. Jika Web Service sudah aktif, maka akan tampil seperti ini:

Gambar 4.2 Web Service yang sudah aktif

Saat alamat tersebut diakses, WSH akan men-generate file StudentManager.wsdl


pada folder wsdl yang ada di dalam folder ws (C:\Program
Files\xampp\htdocs\student\ws\wsdl\StudentManager.wsdl). File WSDL diperlukan agar
Web Service dapat diakses oleh aplikasi lain. Dengan demikian, pembuatan Web Service
pada sisi server dengan menggunakan PHP telah selesai.

Gambar 4.3 XAMPP Control Panel

Universitas Sumatera Utara


43

Agar Web Service tersebut dapat diakses oleh klien, harus dipastikan bahwa server
berfungsi dengan baik. Pengendalian server (Apache) dalam XAMPP dapat dilakukan
dengan menggunakan XAMPP Control Panel. Aktif tidaknya server dapat juga dilihat
melalui Task Manager.

Gambar 4.4 Task Manager

4.3. Implementasi Web Service pada Sisi Klien

Data pada server telah selesai dibangun, maka selanjutnya pada sisi klien akan
dibuat program aplikasi pengakses database berbasis Java. Program yang akan dibangun
memiliki fungsi yang sama dengan yang ada pada server, yaitu:
a. Membuat data murid baru
b. Memodifikasi data murid
c. Menghapus data murid
d. Mendapatkan data seluruh murid, dan
e. Menampilkan data seorang murid

Hasil implementasi program tersebut adalah sebagai berikut:

Universitas Sumatera Utara


44

Gambar 4.5 Tampilan awal program perekaman data pada klien

Pada tampilan awal aplikasi, tidak ada data yang ditampilkan dan tombol-tombol
dinonaktifkan. Hal ini dikarenakan data yang ada pada server belum diambil oleh aplikasi.
Untuk mengambil data dari sever, pengguna dapat memilih menu submenu “Ambil Data”
dari menu “File”.

Gambar 4.6 Mengambil data murid yang sudah ada dari Server

Data yang diambil dari server ditampilkan satu per satu dalam aplikasi dan
tombol-tombol untuk memodifikasi data diaktifkan.

Universitas Sumatera Utara


45

Gambar 4.7 Data pertama yang ada pada server

Untuk melihat data selanjutnya, pengguna dapat menekan tombol “>>”.

Gambar 4.8 Data kedua dari Server

Pada gambar terlihat bahwa hanya terdapat tiga tombol yang aktif, yaitu “Sunting”,
“Hapus”, dan “Tambah Siswa”. Tombol “Simpan” tidak diaktifkan karena saat ini
program hanya berfungsi untuk menampilkan data saja. Tombol “Simpan” hanya akan
diaktifkan jika data mengalami perubahan seperti modifikasi data atau penghapusan data,
atau penambahan data.

Universitas Sumatera Utara


46

Tombol “Sunting” dapat digunakan bila pengguna/klien ingin mengubah salah


satu data, tekan. Misalkan data yang ingin diubah adalah data kedua. Pada data ini, nama
murid yang bernama Jane Doe akan diganti menjadi Jan Peter.

Gambar 4.9 Data yang akan disunting

Tekan tombol “Sunting”, maka baris-baris yang menampilkan data berubah


menjadi aktif dan dapat disunting. Selain itu, tombol “Simpan” juga diaktifkan. Hal ini
dimaksudkan agar setelah data diubah, maka data dapat disimpan kembali ke server.
Dengan demikian, setiap perubahan yang dilakukan oleh klien akan berlaku terhadap data
yang ada di server.

Gambar 4.10 Penyuntingan data oleh klien

Universitas Sumatera Utara


47

Untuk memastikan bahwa perubahan data terjadi pada server, maka buka
phpMyAdmin. Seperti terlihat pada gambar di bawah, data pada server telah berubah.

Gambar 4.11 Penyuntingan data pada server berhasil dilakukan

Tombol “Tambah Siswa” memungkinkan klien menambah data siswa yang ada
pada server. Jika tombol ini ditekan, otomatis semua baris data akan menjadi kosong.
Dengan demikian, klien dapat menuliskan data murid yang akan ditambah. Perhatikan
bahwa no rekam data secara otomatis bertambah satu. Hal ini berarti bahwa data murid
yang baru akan dimasukkan sebagai data tambahan setelah data terakhir.

Gambar 4.12 Tampilan setelah tombol “Tambah Siswa” ditekan

Setelah selesai menuliskan data tambahan, klien dapat menekan tombol “Simpan”
untuk meyimpan data tersebut.

Universitas Sumatera Utara


48

Gambar 4.13 Data yang akan ditambahkan oleh Klien

Setelah tombol “Simpan” ditekan, maka secara otomatis aplikasi akan


menampilkan data dari urutan pertama (lihat Gambar 4.9). Untuk melihat apakah data
baru tersebut telah masuk, tekan tombol “>>” hingga sampai kepada urutan data yang
baru.

Gambar 4.14 Tampilan awal setelah penambahan data murid

Pada gambar di bawah, terlihat bahwa data baru dengan no rekam 3 telah ada.

Universitas Sumatera Utara


49

Gambar 4.15 Data yang telah ditambahkan

Untuk memastikan agar data tidak dapat diubah lagi, maka tekan kembali tombol
“Sunting”. Maka baris-baris yang menampilkan data akan kembali nonaktif.

Gambar 4.16 Tampilan setelah tombol “Sunting” diaktifkan kembali

Untuk memastikan apakah perubahan benar-benar terjadi pada server, buka


kembali phpMyAdmin. Seperti yang terlihat pada gambar di bawah, data baru telah
ditambahkan pada database Student.

Universitas Sumatera Utara


50

Gambar 4.17 Penambahan data pada server berhasil dilakukan

Selanjutnya, untuk menghapus data salah satu murid dapat digunakan tombol
“Hapus”. Misalkan yang akan dihapus adalah data murid no.2, yaitu Jan Peter.

Gambar 4.18 Data yang akan dihapus

Setelah tombol “Hapus” ditekan, maka aplikasi secara otomatis menampilkan


kembali data dari urutan pertama (Gambar 4.13).

Universitas Sumatera Utara


51

Gambar 4.19 Tampilan setelah tombol “Hapus” ditekan

Untuk memastikan bahwa data tersebut memang telah dihapus, maka dapat
ditelusuri kembali data yang ada dengan menekan tombol “>>”. Tombol “>>” yang
nonaktif menunjukkan bahwa data yang ditampilkan adalah data terakhir. Dengan
demikian, maka benar bahwa data tersebut telah dihapus.

Gambar 4.20 Data terakhir setelah data kedua dihapus

Untuk memastikan perubahan telah terjadi di server, bukalah kembali


phpMyAdmin. Maka terlihat pada gambar bahwa data Jan Peter pada database server
telah terhapus.

Universitas Sumatera Utara


52

Gambar 4.21 Penghapusan data pada server berhasil dilakukan

Pada dasarnya, Web Service adalah komponen dari aplikasi yang dibuat
sedemikian rupa agar dapat diakses oleh aplikasi lain melalui jaringan web. Jadi,
perubahan apapun yang hendak dilakukan oleh Web Service klien tidak akan dapat terjadi
bila keduanya tidak terhubung.

Misalkan sistem server mengalami kerusakan sehingga tidak dapat diakses oleh
klien, maka Web Service pada klien dapat tetap berjalan, tetapi tidak dapat mengakses
database yang ada pada server.

Gambar 4.22 Ketiadaan server dilihat dari Task Manager

Universitas Sumatera Utara


53

Gambar 4.23 Tampilan awal aplikasi klien

Perhatikanlah gambar di atas. Pada saat dijalankan, Web Service klien dapat
berjalan dengan baik. Tetapi, pada saat aplikasi mengambil data yang ada pada server,
tidak ada data yang ditampilkan. Dan hanya tombol ”Tambah siswa” yang aktif.

Gambar 4.24 Tampilan aplikasi klien saat server tidak dapat diakses

Jika tombol ”Tambah siswa” ditekan, maka semua baris data akan aktif, demikian
juga tombol ”Sunting”, ”Hapus”, dan ”Simpan”. Dengan demikian, data dapat diisi
seperti biasa. Tetapi, saat tombol ”Simpan” dihapus, tidak terjadi perubahan apa-apa. Hal
ini dikarenakan aplikasi klien tidak dapat mengakses aplikasi server sehingga perubahan
data yang terjadi tidak dapat diaplikasikan pada server.

Universitas Sumatera Utara


54

Gambar 4.25 Aplikasi klien tidak berfungsi dengan benar karena tidak
adanya hubungan dengan server

Listing program selengkapnya dapat dilihat pada CD yang disertakan dalam


laporan tugas akhir ini.

Universitas Sumatera Utara


BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan pembahasan dan evaluasi dari bab-bab terdahulu dan teori yang, maka
dapat ditarik kesimpulan sebagai berikut :
1. Web Service dapat digunakan untuk mentransformasikan satu atau beberapa
class dan objek yang terpisah dalam satu ruang lingkup menjadi satu, sehingga
menjadikan pembangunan sistem lebih efisien.
2. Web Service bersifat interoperabilitas dan memiliki kemudahan dalam proses
deployment-nya karena tidak memerlukan registrasi khusus ke dalam suatu
sistem operasi. Hal ini menjadikan Web Service bisa diakses oleh aplikasi yang
berjalan pada platform yang berbeda.
3. Web Service memberikan kemudahan dalam hal aksesibilitas karena Web
Service cukup di-upload ke web server dan siap diakses oleh pihak-pihak yang
telah diberikan otorisasi.
4. Web Service memungkinkan fungsi-fungsi pada banyak perangkat lunak di
Internet untuk dipadukan menjadi satu Web Service baru. Web Service
memungkinkan penggunaan ulang layanan dan komponen.
5. Web Service mendukung konsistensi abstraksi karena setiap perubahan yang
terjadi dalam Web Service berlaku juga dalam sistem.

5.2 Saran

Berdasarkan penelitian dari implementasi sistem yang dilakukan, maka diberikan


saran untuk mengembangkan Web Service menjadi lebih baik lagi.

Universitas Sumatera Utara


56

Penggunaan Web Service mempunyai resiko keamanan yang sama dengan


aplikasi Internet pada umumnya. Ini berarti merancang dan mengembangkan suatu
aplikasi Web Service berarti juga mempertimbangkan dan memikirkan banyak aspek
keamanan di dalam suatu aplikasi Internet. Untuk suatu Web Service, ada beberapa
aspek keamanan yang harus dipertimbangkan. Ada keamanan dari sisi Internetnya
sendiri, keamanan pada program XML-nya atau keamanan pada aplikasi Web Service-
nya sendiri. Oleh karena itu, untuk pengembangan lebih lanjut, keamanan dalam Web
Sevice dapat dibahas.

Universitas Sumatera Utara

You might also like