• Tidak ada hasil yang ditemukan

Implementasi Web Service dengan Metode REST Berbasis Golang pada Layanan Google Cloud Platform di PT Sumber Alfaria Trijaya, Tbk.

N/A
N/A
Protected

Academic year: 2022

Membagikan "Implementasi Web Service dengan Metode REST Berbasis Golang pada Layanan Google Cloud Platform di PT Sumber Alfaria Trijaya, Tbk."

Copied!
24
0
0

Teks penuh

(1)

Implementasi Web Service dengan Metode REST Berbasis Golang pada Layanan Google Cloud Platform

di PT Sumber Alfaria Trijaya, Tbk.

Artikel Ilmiah

Peneliti:

Wiji Sulistiani (672015229) Dr. Wiwin Sulistyo, S.T., M.Kom.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

Salatiga

2020

(2)

i

Implementasi Web Service dengan Metode REST Berbasis Golang pada Layanan Google Cloud Platform

di PT Sumber Alfaria Trijaya, Tbk.

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti:

Wiji Sulistiani (672015229) Dr. Wiwin Sulistyo, S.T., M.Kom.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

Salatiga

2020

(3)

ii

(4)

iii

(5)

iv

(6)

v

(7)

vi

(8)

vii

(9)

viii

(10)

1

Implementasi Web Service dengan Metode REST Berbasis Golang pada Layanan Google Cloud Platform

di PT Sumber Alfaria Trijaya, Tbk.

1)Wiji Sulistiani, 2)Wiwin Sulistyo

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

Jl. Dr. O. Notohamidjodjo, Blotongan, Sidorejo, Salatiga, 50715, Indonesia Email: 1) 672015229@student.uksw.edu, 2)wiwinsulistyo@staff.uksw.edu

Abstract

The master data is important business information relating to the transactional and analysis of company operations. Currently PT. Sumber Alfaria Trijaya, Tbk is experiencing problems in synchronizing master data from the database server on premise (branch office) platform with cloud storage servers on the Google Cloud Platform. These problems can be overcome by implementing Web Service with the REST Method Based Golang on the Google Cloud Platform service. Based on the system testing results are as expected with a 100% success rate. With this result, the function of the web service application that is made has been according to the design of the Google Cloud Platform service.

Keywords: Master Data, Web Service, REST, Golang, Google Cloud Platform.

Abstrak

Data master merupakan informasi bisnis penting yang berkaitan dengan transaksional dan analisis operasi perusahaan. Saat ini PT. Sumber Alfaria Trijaya, Tbk sedang mengalami kendala dalam melakukan sinkronisasi data master dari platform basisdata server on premis (kantor cabang) dengan server cloud storage di Google Cloud Platform. Masalah tersebut dapat diatasi dengan mengimplementasikan Web Service dengan Metode REST Berbasis Golang pada layanan Google Cloud Platform. Berdasarkan hasil pengujian sistem telah sesuai dengan yang diharapkan dengan tingkat keberhasilan 100%. Dengan hasil ini maka fungsi dari aplikasi web service yang dibuat telah sesuai rancangan pada layanan Google Cloud Platform.

Kata Kunci: Data Master, Web Service, REST, Golang, Google Cloud Platform.

1)Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Wacana Salatiga.

2)Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

(11)

2 1. Pendahuluan

Pemanfaatan teknologi dalam sebuah perusahaan terus mengalami pembaruan. Terutama di perusahaan besar yang didalamnya mencakup berbagai macam aktivitas proses bisnis yang kompleks. Salah satu aktivitas bisnis perusahaan diantaranya pengelolaan data master. Data master merupakan informasi bisnis penting yang berkaitan dengan transaksional dan analisis operasi perusahaan. Suatu data dan informasi dapat dikatakan akurat apabila data tersebut jelas dan konsisten[1].

Salah satu strategi mengendalikan data master khususnya pada perusahaan ritel yaitu dengan menerapkan strategi Master Data Management (MDM), dimana MDM berfungsi untuk mengendalikan data master agar tetap konsisten, akurat, terkini, relevan, dan kontekstual untuk memenuhi kebutuhan bisnis yang berbeda- beda di lintas aplikasi dan divisi. Master Data Management (MDM) adalah metode yang memungkinkan perusahaan dalam menghubungkan entitas penting pada data perusahaan sehingga menampilkan sebuah informasi penting berupa Data Master yang dapat digunakan sebagai acuan dalam menentukan keputusan bisnis perusahaan[1].

PT Sumber Alfaria Trijaya, Tbk dalam menjalankan strategi Master Data Management (MDM) saat ini terdapat masalah-masalah, seperti sekarang ini perusahaan sedang memanfaatkan teknologi Google Cloud Platform menggantikan teknologi manual dalam proses pengiriman data master dari kantor cabang yang terbagi di beberapa wilayah regional di Indonesia. Hal ini menyebabkan data master dari server on premis (kantor cabang) dengan server cloud storage di Google Cloud Platform harus dilakukan sinkronisasi untuk memastikan data master di dua platform tersebut tetap sinkron. Dengan adanya masalah dan kesulitan yang ada dalam strategi Master Data Management (MDM) dapat diatasi dengan mengimplementasikan suatu sistem web service dengan Metode REST. Pemilihan sistem web service dengan Metode REST sebagai solusi dari masalah-masalah yang ada. Karena dengan adanya aplikasi web service dengan Metode REST proses sinkronisasi data serta akses data menjadi lebih mudah.

Rumusan masalah yang dapat dirumuskan adalah bagaimana mengimplementasikan Web Service dengan Metode REST berbasis Golang pada Layanan Google Cloud Platform di PT Sumber Alfaria Trijaya, Tbk. Adapun tujuan dari penelitian ini adalah menerapkan sebuah aplikasi Web Service dengan Metode REST berbasis Golang pada Layanan Google Cloud Platform di PT Sumber Alfaria Trijaya, Tbk yang menghubungkan aplikasi on premis dengan cloud storage. Manfaat yang didapatkan dari penelitian ini adalah Data Master Store yang telah disinkronisasi pada cloud dapat diakses secara realtime dan digunakan secara maksimal sehingga kebutuhan bisnis yang berbeda-beda di lintas aplikasi dan divisi dapat terpenuhi. Penelitian ini menghasilkan sebuah aplikasi web service yang dapat melakukan sinkronisasi data sesuai request dari Aplikasi VB MasterStore di kantor cabang maupun kantor pusat dengan cloud storage Postgre untuk PT Sumber Alfaria Trijaya, Tbk.

(12)

3 2. Kajian Pustaka

Penelitian terdahulu membahas tentang penelitian yang sudah dilakukan sebelumnya, yang kemudian dapat digunakan sebagai pembanding dan atau sebagai acuan pada penelitian ini. Penelitian terdahulu yang pertama berjudul

“Implementasi REST web service untuk sales order dan sales tracking berbasis mobile” permasalahan yang dihadapi pada penelitian ini adalah perusahaan membutuhkan sistem yang dapat memantau aktivitas dan mempercepat proses pemesanan produk yang dilakukan penjual. Aplikasi dibuat menggunakan metode REST Service untuk memanipulasi data yang ada pada layanan komputasi awan.

Dengan menggunakan aplikasi mobile ini perusahaan dapat dengan mudah memantau tenaga penjual dan melakukan pemesanan barang dengan lebih cepat dan efisien[2].

Penelitian kedua berjudul “Penerapan RESTful Web Service dan JSON pada Application Programming Interface (API) Sistem Informasi Perkembangan Ayam Broiler Berbasis Kemitraan” permasalahan yang dihadapi pada penelitian ini adalah semakin banyaknya jumlah anak kandang maka proses pelaporan, penanganan dan pemantauan membutuhkan waktu yang lama serta data tidak bisa dilihat oleh perusahaan secara langsung. Metode yang digunakan adalah penggabungan RESTful web service dan JSON ke API membuat integrasi dapat dilakukan secara aman, simpel dan menjadi mudah digunakan. Penggunaan API sistem informasi perkembangan ayam broiler berbasis kemitraan ini berpotensi untuk diaplikasikan secara luas untuk melengkapi proses manual yang masih banyak diterapkan pada peternakan berpola kemitraan[3].

Penelitian ketiga berjudul “Rancang Bangun Web Service (Studi Kasus:

Layanan SIM Inventaris Barang)” permasalahan dalam penelitian ini adalah data perangkat yang mencakup area pabrik Makassar, Surabaya dan Jakarta. Dimana sistem tersebut harus fleksibel dan open platfrom. Seringkali data dibutuhkan secara realtime namun terhambat karena sistem yang digunakan masih menggunakan sistem konvensional seperti Microsoft Excel. Sistem yang dibangun menggunakan metode RESTful web service. Web Service dapat menjadi alternatif dalam pengelolaan manajemen data dengan penanaman konsep open platform sebagai solusi dalam integrasi data berbagai bahasa pemrograman serta menunjang interoperabilitas, sehingga web service dapat menjadi penghubung antar sistem yang ada[4].

Perbedaaan dengan penelitian sebelumnya adalah penelitian ini mengimplementasikan sebuah web service dengan standar arsitektural metode REST berbasis pada bahasa pemrograman Golang yang ditulis dalam framewok Iris dan diimplementasikan pada Layanan Google Cloud Platform di PT Sumber Alfaria Trijaya, Tbk, untuk dapat digunakan dalam melakukan sinkronisasi Data Master.

Web service merupakan ”sebuah sistem perangkat lunak yang dibuat untuk mendukung interoperabilitas atau interaksi antar dua aplikasi yang berbeda melalui protokol jaringan HTTP”[5]. Dengan adanya web service, maka satu aplikasi dapat diakses dan saling terhubung tanpa perlu mengetahui detail program secara mendalam dengan aplikasi lain walaupun aplikasi tersebut berbeda platform, bahasa pemrograman, dan sistem operasi[3].

(13)

4

REST (Representational State Transfer) merupakan standar arsitektur komunikasi berbasis web yang didalamnya berisi aturan-aturan dan sering diterapkan pada pengembangan layanan berbasis web. REST sangat populer karena simple, cepat, terukur dan mudah dalam maintenance-nya. REST tidak terkait dengan platform tertentu, melainkan merupakan sebuah ide untuk mengembangkan layanan yang fungsinya mirip dengan web[6]. Dengan demikian REST dapat mengoperasikan operasi CRUD (create, read, update dan delete) yang dapat dilakuan dengan memanfaatkan metode HTTP antara lain POST, GET, PUT dan DELETE[7]. Seluruh resource yang telah dibuat pada web service dengan RESTful dapat digunakan oleh platform lain melalui representasi data berupa JSON (Javascript Object Notation)[6].

Gambar 1 Cara Kerja Metode REST[7]

Gambar 1 mengilustrasikan cara kerja metode REST dimana Client meminta data melalui HTTP Request kemudian server memberikan respon melalui HTTP Response. Komponen pada HTTP Request meliputi: 1) Verb/method pada HTTP seperti GET, POST, PUT, DELETE. 2) Uniform Resource Identifier (URI) untuk mengindentifikasi lokasi sumber daya pada server. 3) Request Header yang berisi metadata untuk HTTP Request. 4) Request Body yang berisi konten data. Sedangkan komponen yang terdapat pada HTTP Response meliputi: 1) Response Status Code sebagai indikator status server terhadap resource yang diminta. 2) Response Header berisi metadata untuk HTTP Response. 3) Response Body berisi konten data[6].

JSON (Javascript Object Nation) adalah file format standar yang menggunakan tulisan yang dapat dibaca oleh manusia untuk pertukaran data, dimana didalamnya berisi pasangan antara key dan value. JSON memiliki ukuran data yang ringan sehingga dapat mempermudah programmer dalam melakukan pertukaran data (lebih singkat daripada array) dan format ini juga sangat mudah diolah oleh mesin untuk diurai. Properti ini membuat JSON merupakan format bahasa pertukaran data yang ideal[3].

Golang merupakan bahasa pemrograman yang dikembangkan di Google. Penciptaan bahasa Golang didasari bahasa C dan C++, oleh karena itu penulisan sintaks-nya sederhana dan terstruktur. Memiliki garbage collector, keamanan memori lebih terjaga, dan tipe data string di Golang adalah UTF-8 yang di encode secara default. Sehingga mendukung konkurensi di level bahasa dengan

Client Web Service

HTTP Response HTTP Request

(14)

5

pengaplikasian cukup mudah dan juga mendukung pemrosesan data dengan banyak procesor dalam waktu yang bersamaan (pararel processing)[8]. Hal ini membuat Golang sangat tepat digunakan dalam pembuatan REST API.

Iris merupakan web framework yang menyediakan fondasi yang mudah digunakan untuk membuat situs web, API, atau aplikasi terdistribusi lainnya. Iris ditulis dalam Bahasa Pemrograman Go dan merupakan salah satu kerangka kerja web tercepat. Kemudahan penggunaan dengan API sederhana dan kuat serta menyediakan dukungan MVC yang kompleks[9].

Gambar 2 Konsep MVC[6]

Gambar 2 adalah konsep model, view dan controller (MVC), MVC merupakan pola desain yang terkenal untuk merancang aplikasi berbasis GUI.

Pola ini membagi aplikasi menjadi tiga komponen untuk memisahkan representasi internal dari informasi dari cara penyajianya kepada pengguna. Model berguna untuk mengelola data aplikasi dan merangkum data aplikasi yang diberikan oleh Controller. View berguna untuk merepresentasi output dari informasi, seperti menampilkan informasi atau laporan kepada pengguna baik sebagai bentuk teks atau grafik. View biasanya adalah template JSP. Controller berguna untuk meminta Model untuk menjalankan logika bisnis dan kemudian memperbaharui View berdasarkan output Model[7].

Google Cloud Platform adalah kumpulan layanan komputasi awan yang ditawarkan oleh Google. Google Cloud Platform menyediakan layanan infrastruktur, layanan platform, dan lingkungan komputasi awan tanpa server berupa app engine untuk mengembangkan maupun hosting aplikasi web dan juga cloud storage memungkinkan untuk menyimpan dan mengelola data dalam skala besar di pusat data yang dikelola Google[10].

3. Metode Penelitian

Metode penelitian yang diterapkan pada penelitian ini adalah metode pengembangan sistem Waterfall versi Sommerville (2011). Metode waterfall merupakan model pengembangan sistem informasi yang sistematik dan sekuensial. Metode waterfall memiliki lima tahapan sebagai berikut:

(15)

6

Gambar 3 Metode Waterfall[11]

Gambar 3 merupakan kelima tahapan pada metode waterfall. Lima tahapan tersebut dilakukan secara berurutan, tahap berikutnya tidak akan dikerjakan sebelum tahap saat ini atau sebelumnya telah selesai dikerjakan.

Kelima tahapan tersebut dijelaskan sebagai berikut:

1) Requirements analysis and definition. Tahap pertama analisa persyaratan kebutuhan sistem. Pada tahap ini peneliti melakukan analisa terhadap syarat- syarat yang dibutuhkan dalam pengembangan sistem web service. Output yang dihasilkan pada tahap ini adalah informasi deskripsi kebutuhan serta cara kerja sistem web service.

2) System and software design. Tahap kedua desain sistem atau perancangan. Pada tahap ini peneliti melakukan perancangan yang menggambarkan abstraksi sebuah sistem web service. Perancangan sistem menggunakan Unified Model Language (UML). Output yang dihasilkan pada tahap ini adalah hasil perancangan dalam bentuk use case diagram, class diagram, dan activity diagram.

3) Implementation and unit testing. Tahap ketiga implementasi hasil perancangan sistem. Pada tahap ini peneliti menerapkan hasil perancangan sistem ke dalam kode program. Penulisan kode program merupakan tahap penerjemahan desain sistem ke dalam bentuk perintah-perintah yang dimengerti komputer dengan bahasa pemrograman. Output yang dihasilkan pada tahap ini adalah kode program yang berisi sekumpulan fungsi sistem web service serta pengujian unit dengan memperhatikan error dan melakukan perbaikan terhadap kesalahan unit.

4) Integration and system testing. Tahap keempat pengujian sistem. Pada tahap ini peneliti melakukan pengujian sistem web service. Pengujian sistem dilakukan terhadap keberhasilan masing-masing fungsi yang digunakan dan daya efektifitas.

Output yang dihasilkan pada tahap ini adalah analisis hasil pengujian dan penentuan kelayakan sistem.

5) Operation and maintenance. Tahap kelima operasi dan pemeliharaan sistem.

Pada tahap ini peneliti mengoperasikan sistem web service dengan aplikasi dan platform serta melakukan maintenance [12].

(16)

7 4. Hasil dan Pembahasan

Dari tahap metode pengembangan sistem dihasilkan sebuah perancangan sistem (System and software design) yang melibatkan identifikasi dan penggambaran abstraksi sistem dasar perangkat lunak dan hubungannya menjadi diagram Unified Model Language (UML)[12]. UML yang digunakan dalam perancangan sistem web service adalah use case diagram, class diagram, dan activity diagram.

Gambar 4 Use Case Diagram

Gambar 4 merupakan Use Case yang akan dibangun pada sistem dimana di dalamnya hanya melibatkan satu aktor dari sisi user/pegawai kantor cabang pada sisi client. User/pegawai kantor cabang dapat mengelola Data Master Store dengan menginputkan dan memilih Data Master Store yang harus dikirimkan ke cloud.

Gambar 5 Class Diagram

Gambar 5 merupakan Class Diagram yang menunjukkan kelas-kelas yang ada pada sistem web service, dimana setiap kelasnya memiliki atribut serta fungsi masing-masing. Dilihat dari Gambar 5 terdapat satu kelas utama yaitu server (web service), kelas ini berisikan alamat URL yang digunakan oleh sisi client untuk melakukan request. Dari request selanjutnya akan diteruskan ke controller untuk

(17)

8

melakukan response dengan melakukan pengolahan data pada model beserta respon balikannya.

Gambar 6 Activity Diagram

Gambar 6 merupakan alur dari aktivitas yang terjadi pada sistem ketika proses pengiriman Data Master Store dilakukan. User/pegawai kantor cabang membuka aplikasi dan melakukan setting koneksi ke basisdata dengan memasukkan alamat URL dengan benar. Apabila alamat URL benar maka akan ditampilkan List Data Master. Kemudian user/pegawai akan memilih Data Master yang akan diproses. Request data master kemudian diteruskan ke web service beserta request method. Web service akan menerima request dan melakukan response dengan pengolahan data dan mengirimkan kode status beserta total data.

Berdasarkan perancangan sistem yang telah dibuat kemudian dilakukan penerapan hasil perancangan sistem. Penerapan desain metode REST lebih banyak digunakan untuk web service yang berorientasi pada resource/sumber daya. Menyediakan sumber daya sebagai layanannya dan bukan merupakan kumpulan-kumpulan dari aktivitas yang mengolah sumber daya[7].

(18)

9

Gambar 7 Arsitektur Web Service dengan REST

Gambar 7 merupakan desain arsitektur web service yang dibangun pada sistem dengan menerapkan metode REST. Aplikasi MasterStore akan mengirimkan data content beserta request method melalui URI pada HTTP Request ke web service. Web service bertugas menerima data dan meneruskan data ke cloud storage. Web service akan melakukan pilah method kiriman data lalu memanggil fungsi dengan query syntax ke cloud storage. Cloud storage akan menjalankan query syntax yang diminta dan mengembalikan query result berisi pesan dalam bentuk JSON ke web service. Web service akan menerima pesan dari query result kemudian mengembalikan data yang berisi pesan beserta kode status dalam bentuk JSON melalui HTTP response ke Aplikasi MasterStore. Berikut merupakan hasil implementasi web service dengan metode REST berbasis golang pada layanan Google Cloud Platform diakses melalui aplikasi MasterStore:

Gambar 8 Tampilan Aplikasi MasterStore HTTP Request

(method, URI, data content)

HTTP Response

(status code, data content) Query Result se

HTTP Response

Aplikasi

MasterStore Web Service Cloud Storage

Query Syntax se

HTTP Response

(19)

10

Gambar 8 merupakan tampilan Aplikasi MasterStore yang melakukan proses pengiriman data master Orastore dari basisdata on premis ke cloud storage. Pada saat proses pengiriman data yang terjadi pada sisi client adalah melakukan request dengan komponen berupa konten data yang di generate ke JSON kemudian dikirimkan dengan request method POST ke alamat URL web service sesuai endpoint. Aplikasi MasterStore akan menerima response dari web service berisi kode status dan jumlah record yang berhasil disampaikan ke cloud storage.

Kode Program 1 API endpoint untuk Request Data Master

1. app.Handle("POST", "/orastore", func(ctx context.Context) { 2. var jsonString string

3. jsonString = ctx.FormValue("insdbf")

4. ctx.HTML(controllers.OraStoreMethod(jsonString)) 5. })

Kode program 1 adalah fungsi pada sisi web service sebagai API endpoint atau alamat yang dapat diakses melalui HTTP Request. Pada baris 1 terdapat handler yang menjalankan request method POST untuk endpoint /orastore beserta konten data. Kiriman data akan ditangkap ke dalam variabel jsonString dengan key “insdbf”. Lalu akan dilakukan pemanggilan fungsi OraStoreMethod dari controller pada baris 4 untuk kemudian melakukan pilah method kiriman data dan pengolahan data beserta variabel jsonString. Penerapan web service dengan metode REST pada layanan Google Coud Platform dideklarasikan pada controller yang berisi tugas dan fungsi yang akan dikerjakan ketika web service diakses.

Controller menentukan bagaimana informasi akan diolah dan disajikan.

Kode Program 2 Method kiriman data pada Web Service 1. case "orastore":

2. var errno_insorastr, errmsg_insorastr = Ins_MasterStore(jsonString) 3. if errno_insorastr != "0" {

4. responOraStore := model.ResponAPI{

ErrNo: errno_insorastr, ErrMsg: errmsg_insorastr, 5. }

6. result, err = json.Marshal(responOraStore) 7. return string(result)

8. } else {

9. return string(errmsg_insorastr) 10. }

Kode program 2 mendeskripsikan bagaimana web service akan melakukan response terhadap Aplikasi MasterStore dan cloud storage dalam menyampaikan data. Pada baris 1-12 merupakan deklarasi dari method kiriman data “orastore”.

Pada baris 2 berisi variabel yang menentukan response dengan memanggil fungsi Ins_MasterStore. Pada baris 3-7 menjalankan pelemparan nilai ke kelas model Orastore. Pada baris 8 menjalankan proses decode data ke jsonString. Pada baris 9-11 pengembalian hasil.

(20)

11

Kode Program 3 Proses mengirimkan query syntax ke Cloud Storage 1. for i := range kirimanOraStore.Data {

2. _, err = db.Exec(model.InsMstStore, 3. kirimanOraStore.Data[i].KdStoreStr, 4. kirimanOraStore.Data[i].TypeTokoStr, 5. kirimanOraStore.Data[i].FPrcStr, 6. kirimanOraStore.Data[i].KodeDcStr, 7. kirimanOraStore.Data[i].TglDmStr) 8. }

Kode program 3 mendeskripsikan bagaimana melakukan proses kiriman data ke cloud storage. Pada baris 1 menjalankan perulangan dalam pengiriman data. Pada baris 2 menjalankan ekseskusi ke basisdata/cloud storage dengan pemanggilan fungsi InsMstStore berisi query Insert data pada kelas model. Pada baris 3-7 memasukkan data sesuai atribut.

Kode Program 4 Proses mendapatkan query result dari Cloud Storage 1. GetMstStore = `select row_to_json(t)

2. from ( select case when ( select array_to_json(array_agg(row_to_json(c))) 3. as jsonnya

4. from ( select count(*) total_data from mstdata_orastore where kode_dc = $1 5. and tgl_dm = $2

6. ) c ) is null

7. then '1' else '0' end errNo,

8. case when ( select array_to_json(array_agg(row_to_json(c))) as jsonnya 9. from ( select count(*) total_data from mstdata_orastore where kode_dc = $1 10. and tgl_dm = $2

11. ) c ) is null

12. then 'No data found' else '' end errMsg, $1 as kddc, 'orastore' as dbfmst, 13. ( select count(*) total_data from mstdata_orastore where kode_dc = $1 14. and tgl_dm = $2) as total_data

15. ) t;`

Kode program 4 mendeskripsikan bagaimana mendapatkan query result dari basisdata/cloud storage dengan menjalankan query Select data untuk kebutuhan response ke Aplikasi MasterStore. Pada baris 1-15 menjalankan perintah untuk merubah setiap row (baris) menjadi JSON object lalu memasukannya ke dalam array.

Pengujian sistem selanjutnya dilakukan dengan teknik pengujian Add-Ons menggunakan API testing tools Postman. Pengujian ini bertujuan untuk menguji keberhasilan penerapan web service dengan menggunakan metode REST pada layanan Google Cloud Platform dan aplikasi MasterStore. Tahapan dalam pengujian ini dilakukan dengan memasukkan URL HTTP Request dan mengamati respon dari HTTP Response ini berlaku untuk semua endpoint pada Web Service.

Pengujian dikatakan berhasil apabila terdapat respon yang dikembalikan dalam bentuk JSON berisi error message, total data dan status dari response tersebut menunjukkan kode status 200. Pengujian dikatakan gagal apabila tidak ada response dari HTTP Response dan status false dan messages “Not found” atau kosong.

(21)

12

Gambar 9 Pengujian pada endpoint /orastore

Dilihat pada Gambar 9 teknik pengujian Add-Ons dilakukan dengan cara memasukkan URL https://sat-cmm.appspot.com/orastore pada field URL Postman dengan request method POST, serta memasukkan konten data berupa key “insdbf”

dan value JSON data. Kemudian send untuk mendapatkan hasil dari HTTP Response. URL ini diuji untuk endpoint /orastore.

Gambar 10 Hasil Pengujian pada endpoint /orastore

Berdasarkan pengujian web service yang dilakukan pada endpoint /orastore dengan request method POST didapatkan hasil pada Gambar 10, dimana pengujian dikatakan berhasil karena diperoleh response yang dikembalikan berupa JSON berisi nomor status error "0" dan total data sejumlah 4. Dan status dari response tersebut menunjukkan kode status 200. Maka HTTP Response berhasil memberikan respon sesuai permintaan HTTP Request. Untuk rincian pengujian pada endpoint /orastore dapat dilihat pada Tabel 1.

(22)

13

Tabel 1 Hasil Pengujian pada endpoint /orastore

No Skenario Pengujian Hasil yang Diharapkan Status Pengujian 1 Melakukan request

pengiriman data yang sesuai dengan request method dan alamat URL dengan benar

menggunakan HTTP Request berikut:

Test Case:

https://sat-

cmm.appspot.com/orastore

HTTP Response akan memberikan response tanpa pesan error dan total data yang sesuai dengan total data pada cloud storage seperti yang diharapkan.

Hasil pengujian:

Valid

2 Melakukan request

pengiriman data yang tidak sesuai namun dengan request method dan alamat URL benar menggunakan HTTP Request berikut:

Test Case:

https://sat-

cmm.appspot.com/orastore

HTTP Response akan memberikan response berisi nomor error dan pesan error bahwa inputan JSON data tidak sesuai.

Hasil pengujian:

Valid

3 Melakukan request pengiriman data dengan method kiriman data tidak sesuai namun request method dan alamat URL benar.

“method”:”orastoree”

Test Case:

https://sat-

cmm.appspot.com/orastore

HTTP Response akan memberikan response berisi nomor error dan pesan error bahwa method salah.

Hasil pengujian:

Valid

4 Melakukan request pengiriman data yang sesuai dengan request method salah namun alamat URL benar.

Test Case:

GET https://sat-

cmm.appspot.com/orastore

HTTP Response akan memberikan response berisi kode status 404 dan keterangan “Not found”.

Hasil pengujian:

Valid

(23)

14 5 Melakukan request

pengiriman data dengan tipe data pada nilai yang tidak sesuai namun request method dan alamat URL benar.

Test Case:

https://sat-

cmm.appspot.com/orastore

HTTP Response akan memberikan response berisi nomor error dan pesan error dari query result bahwa inputan tidak sah untuk tipe data date.

Hasil pengujian:

Valid

Analisis hasil dari pengujian diperoleh lima kasus uji pada skenario pengujian keberhasilan sistem. Setelah dilakukan pengujian terhadap lima kasus uji tersebut diperoleh status valid, sehingga hasil pengujian sistem telah sesuai dengan yang diharapkan dengan tingkat keberhasilan 100%. Dengan hasil ini maka fungsi dari aplikasi web service yang dibuat telah sesuai rancangan sistem pada layanan Google Cloud Platform dan dapat digunakan untuk menerima request dan mengembalikan response berisi informasi kode status dan total data ke aplikasi MasterStore.

5. Simpulan

Dalam penelitian ini disimpulkan bahwa aplikasi Web Service dengan Metode REST berbasis Golang dapat digunakan untuk melakukan sinkronisasi Data Master secara keseluruhan. Implementasi sistem yang diterapkan pada layanan Google Cloud Platform dan diakses melalui aplikasi MasterStore telah berjalan dengan baik. Sehingga dalam proses pertukaran data yang dilakukan dapat terdistribusi dan diakses secara bersama-sama lebih cepat dengan ukuran data lebih kecil dalam format JSON. Hal ini akan sangat membantu manajemen dalam mengambil keputusan bisnis.

Saran untuk penyempurnaan sistem selanjutnya dengan penambahan request method GET, PUT, DELETE dan penambahan fungsi lainnya ke dalam program, sehingga aplikasi Web Service untuk Master Data Management perusahaan dapat berjalan secara optimal.

6. Daftar Pustaka

[1] Nugraha, Aria Bagus, dkk, 2018, Analisis dan Perancangan Master Data Management (MDM) Berbasis DAMA-DMBOK v2 (Studi Kasus: PT Kereta Api Indonesia), e-Proceeding Art & Design, vol. 5(no. 3): pp. 3282- 3289.

[2] Kurniawan, Erick, 2014, Implementasi Rest Web Service untuk Sales Order dan Sales TrackingBerbasis Mobile, Jurnal Eksis, vol. 7, pp. 1-12.

[3] Saputro, Dody Agung, dkk, 2015, Penerapan RESTful Web Service dan JSON pada Application Programming Interface ( API ) Sistem Informasi

(24)

15

Perkembangan Ayam Broiler Berbasis Kemitraan.

[4] Masyhur, Ninis Insiyah, dkk, 2015, Rancang Bangun Web Service (Studi Kasus : Layanan SIM Inventaris Barang), Prosiding Seminar Nasional Komunikasi dan Informatika (SNKI), pp. 51-55.

[5] Rahmatulloh, Alam, 2018, Keamanan RESTful Web Service Menggunakan JSON Web Token (JWT) HMAC SHA-512, JNTETI, vol. 7(no. 2): pp.

131-137.

[6] Setiawan, Agus Indra, 2019, Implementasi Web Service pada PT Televisi Kampus Universitas Dian Nuswantoro Menggunaan Metode REST.

[7] Ismail, Muhammad Lutfi, dkk, 2019, Perancangan Sistem Informasi Pengolahan Nilai Siswa Menggunakan Java Spring RESTful Web Service.

[8] Prayogo, Noval Agung. 2012. Dasar Pemrograman Golang. [online]

https://dasarpemrogramangolang.novalagung.com/. Diakses tanggal 19 Mei 2019.

[9] Iris Web Framework. [online] https://iris-go.com/. Diakses tanggal 14 Agustus 2019.

[10] Trust&Security Google Cloud. [online] https://cloud.google.com/security/.

Diakses tanggal 14 Agustus 2019.

[11] Binanto, Iwan, 2015, Analisa Metode Classic Life Cycle (Waterfall) untuk Pengembangan Perangat Lunak Multimedia, pp. 1-6.

[12] Sasmito, Ginanjar Wiro, 2017, Penerapan Metode Waterfall Pada Desain Sistem Informasi Geografis Industri Kabupaten Tegal, Jurnal Informatika:Jurnal Pengembangan IT(JPIT) vol. 2(no. 1): pp. 6-12.

Gambar

Gambar 1 Cara Kerja Metode REST[7]
Gambar 2 Konsep MVC[6]
Gambar 3 Metode Waterfall[11]
Gambar 4 Use Case Diagram
+6

Referensi

Dokumen terkait

Berdasarkan kajian-kajian di atas disimpulkan bahwa (1) terdapat peningkatan hasil pembelajaran dengan menggunakan media e-book atau buku elektronik (2) e -book

Gambar 4.3 Data dosen berisi table informasi staff pengajar berupa nama dosen, matakuliah, ruang, jam masuk, jam keterlambatan dan status apakah dosen tersebut sudah

guru sekaligus demonstrasi kinerja sistem pengapian elektronik CDI-AC pada trainer. Peserta didik mengidentifikasi gangguan pada sistem pengapian yang dibuat oleh

Ada cukup banyak orang dengan AIDS yang belum dapat diobati, jadi tidak ada alasan yang baik dalam sebagian besar rangkaian untuk menawarkan pengobatan kepada yang belum bergejala

Desmond Tutu näkee kaikki ihmiset Jumalan kuvina (imago Dei), eikä halua tehdä länsimaiselle fundamentaaliteologialle ominaisempaa rajanvetoa antroposentrisen ja teosentrisen

Data historis diambil 6 tahun ke belakang tiap lokasi yang ada di kabupaten Jember dengan 6 variabel masukan yaitu Populasi Penduduk, Jumlah Rumah Tangga, Pelanggan

Skripsi yang berjudul “Tinjauan Hukum Islam terhadap Mempersamakan Jumlah Nilai Maskawin setara dengan Batas Minimal Nafkah Bulanan di Desa Umbuldamar Kecamatan Binangun

Pelaksanaan Bauran Promosi di PT.Anugrah Parahyangan Plaza adalah Iklan di radio,pemasangan Billboard di tempat-tempat yang strategis, Brosur-brosur yang disebarkan