Desain representasi yang dikirim ke server

Gambar 16 Ilustrasi format representasi hasil pembacaan resource Pada interface PUT dan POST, representasi yang dikembalikan adalah URI dari resource yang telah diubahdibuat. Pada interface DELETE, tidak ada representasi yang dikembalikan oleh server karena resource yang dituju pada dasarnya telah dihapus.

4.3.6 Integrasi resource menggunakan hypermedia

Integrasi resource yang satu dengan lainnya diwujudkan menggunakan konsep HATEOAS. Resource yang memiliki hubungan dengan resource lainnya akan memiliki entitas berupa hypermedia yang berisi URI dari resource rujukannya tersebut. Hubungan antara resource satu dengan lainnya digambarkan pada elemen rel pada hypermedia yang ada. Sebagai contoh pada Gambar 17, representasi yang dikembalikan oleh server mengandung entitas berbentuk URI yang menunjukkan entitas tersebut sebuah hypermedia. Resource bernama garden harvesting panen tandan memiliki hubungan dengan resource garden bunch tandan, sedangkan resource garden bunch tandan merujuk lagi kepada resource garden tree pohon, dan seterusnya. Informasi tautan antara resource yang satu dengan lainnya dapat diproses lebih lanjut oleh client untuk mengetahui informasi lebih lanjut tentang entitas yang dituju. Gambar 17 Implementasi hypermedia pada representasi resource Implementasi hypermedia dilakukan untuk mengurangi kesalahan yang ditimbulkan oleh client terutama pada format URI dari suatu resource yang dikirimkan. Selain itu, manfaat utama yang dapat diperoleh adalah pengubahan yang dilakukan terhadap sistem yang ada dapat dilakukan lebih terisolasi dan terkontrol, karena URI yang berisi rujukan terhadap suatu resource ditangani seluruhnya oleh server. Hal tersebut memungkinkan penambahan atau pengurangan terhadap rujukanfitur dari suatu resource menjadi lebih mudah.

4.3.7 Kode respon dari server

Perancangan kode respon dilakukan sebagai rujukan dari komunikasi yang terjadi antara client dengan server. Rancangan kode respon yang digunakan pada penelitian ialah operasi GET Tabel 12, PUT Tabel 13, POST Tabel 14 dan DELETE Tabel 14. Tabel 12 Kode respon dari server untuk operasi menggunakan interface GET Kode Deskripsi 200 Resource yang dituju ada 204 Resource yang dituju ada, tapi tidak memiliki konten masih kosong 401 Operasi tidak dapat dilakukan karena client tidak memiliki otoritas 404 Resource yang dituju tidak ada 406 Terjadi bila client meminta representasi dalam format yang tidak didukung server 500 Terjadi kesalahan lain yang terjadi di server Tabel 13 Kode respon dari server untuk operasi menggunakan interface PUT Kode Deskripsi 200 Resource berhasil diubah. 401 Operasi tidak dapat dilakukan karena client tidak memiliki otoritas 404 Resource yang dituju tidak ada. 409 Resource tidak dapat diubah karena konflik dengan resource lain. 415 Server tidak mendukung format representasi yang dikirimkan 500 Terjadi kesalahan lain yang terjadi di server Tabel 14 Kode respon dari server untuk operasi menggunakan interface POST Kode Deskripsi 201 Resource baru berhasil dibuat. 400 Representasi yang dikirimkan memiliki format yang salah 401 Operasi tidak dapat dilakukan karena client tidak memiliki otoritas 404 Resource yang dituju tidak ada. 409 Resource yang ingin dibuat mengalami konflik dengan resource lain yang telah ada 415 Server tidak mendukung format representasi yang dikirimkan 500 Terjadi kesalahan lain yang terjadi di server Tabel 15 kode respon dari server untuk operasi menggunakan interface DELETE Kode Deskripsi 200 Resource berhasil dihapus. 401 Operasi tidak dapat dilakukan karena client tidak memiliki otorisasi 404 Resource yang dituju tidak ada. 500 Terjadi kesalahan lain yang terjadi di server Kode respon seperti 401, 404, dan 500 merupakan kode respon yang dapat muncul dari seluruh interface yang ada karena merupakan respon dari proses yang tidak tergantung dari jenis interface yang digunakan. Setelah rancangan tersebut selesai, implementasi akan dilakukan dengan cara menyisipkan kode tersebut pada respon yang dikembalikan oleh server. Pada operasi seperti pembacaan, penulisan, dan pembuatan resource baru, server akan merespon dengan representasi resource dalam bentuk XML dan memberikan kode respon pada header sebagai metadatanya. Implementasi dilakukan secara implisit pada kode pemrograman bersamaan dengan saat pengiriman representasi resource tersebut.

4.4 Implementasi front-end Sistem Informasi SI

Front-end SI akan menjadi titik masuk data ke sistem. Sistem front-end SI menjadi penyambung komunikasi antara pengguna dengan sistem melalui tampilan berbasis web yang dapat dioperasikan secara langsung Gambar 18. Gambar 18 Front-end sistem informasi sebagai penengah komunikasi Sistem front-end sekaligus berfungsi menerjemahkan data yang dikirim oleh pengguna ke bentuk representasi yang didukung oleh back-end sistem informasi. Sistem ini juga berfungsi sebaliknya, menerjemahkan representasi data dalam bentuk XML ke bentuk yang dapat dimengerti secara langsung oleh pengguna. Sistem ini dikembangkan menggunakan bahasa pemrograman PHP dengan framework Code Igniter. Sistem diimplementasikan menggunakan konsep Model View Controller MVC. Model yang dihasilkan tidak berkomunikasi dengan sistem basis data melainkan dengan back-end sistem informasi yang berada pada komputer yang bebeda menggunakan protokol HTTP. Data yang terkirim ke sistem front-end ini disimpan pada server lainnya, yaitu server back-end. Sistem menerjemahkan data yang diperoleh dari pengguna ke XML, lalu mengirimkannya kepada back-end sistem informasi yang berada pada komputer yang berbeda. Pembacaan data yang berasal dari sistem back-end dalam bentuk XML pun diterjemahkan ke dalam format data PHP sebelum ditampilkan kepada pengguna.