implementasi data template menggunakan format json...

19
1 Implementasi Data Template dengan Melakukan Migrasi Menggunakan Format JSON (JavaScript Object Notations) (Studi Kasus: PT. Asuransi Sinar Mas, Jakarta) Artikel Ilmiah Peneliti: Jekry Tehe (672014126) Dr. Sri Yulianto Joko Prasetyo, S.Si., M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Januari 2018

Upload: dangthien

Post on 03-May-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

1

Implementasi Data Template dengan Melakukan Migrasi

Menggunakan Format JSON (JavaScript Object Notations)

(Studi Kasus: PT. Asuransi Sinar Mas, Jakarta)

Artikel Ilmiah

Peneliti:

Jekry Tehe (672014126)

Dr. Sri Yulianto Joko Prasetyo, S.Si., M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Januari 2018

2

3

4

5

6

7

1

1. Pendahuluan Setiap perusahaan membutuhkan struktur data dalam mengolah basis data

internal. JavaScript Object Notation (JSON) Formatter merupaka solusi dari model

struktur data perusahaan dalam melakukan pertukaran data. Saat ini banyak

perusahaan yang beralih menggunakan JSON formatter diantaranya Twitter, semua

data melalui tweets dan penulisan nama, ID unik, dan postingan semua

menggunakan JSON formatter [1]. PT. Asuransi Sinar Mas juga beralih

menggunakan JSON formatter menggantikan XML formatter. Alasan utama

perusahaan beralih menggunakan JSON formatter karena, JSON formatter memliki

fungsi json_encode yang berfungsi untuk menyediakan sebuah kolom untuk

menampung array yang diubah dalam bentuk JSON sehingga memudahkan

administrator database dalam melakukan update tabel [2]. JSON memiliki ukuran

file yang lebih kecil dibandingkan dengan XML [3]. Ukuran file yang lebih kecil

membantu perusahaan ASM dalam mengakses data lebih cepat, sehingga

perusahaan berharap agar semua data yang terintegrasi dengan proses bisnis dapat

diakses lebih cepat. Pertukaran data yang sebelumnya menggunakan XML formatter masih belum

memenuhi kriteria perusahaan yang mengharapkan akses data yang cepat meskipun

dengan data cukup besar. XML formatter tidak dapat meminimalkan proses

pembuatan kolom tabel sehingga banyak memakan spaces memori yang

mengakibatkan pertukaran data menjadi lebih lama serta dengan data yang cukup

banyak maka akan sangat merepotkan jika harus membuat tabel dengan kolom

sesuai jumlah data bisnis dari perusahaan. Berdasarkan latar belakang yang ada, maka dilakukan penelitian yang

bertujuan untuk melakukan migrasi data template menggunakan format JSON. Data

template ini berisikan data bisnis yang akan menjadi acuan dalam pembuatan

proposal bisnis berdasarkan jenis bisnis dari perusahaan. Dengan JSON formatter

diharapkan dapat membuat pertukaran data menjadi lebih cepat karena data

template dapat ditampung dalam satu kolom tabel dan tidak banyak memakan

banyak space memori sehingga membuat akses data menjadi lebih cepat serta

arsitektur pengolahan data menjadi lebih efisien. Hasil dari penelitian didapatkan

jumlah kolom tabel yang lebih sedikit dikarenakan semua data ditampung dalam

satu kolom tabel JSONDATA, sehingga membuat arsitektur pengolahan data

menjadi lebih terstruktur dan membuat ukuran file menjadi lebih kecil.

2

2. Tinjauan Pustaka Penelitian yang berjudul Implementasi JSON Untuk Minimasi Penggunaan

Jumlah Kolom Suatu Tabel Pada Database Postgresql memanfaatkan teknologi

JavaScript Object Notation (JSON) dalam hal ini fungsi json_encode dengan

bahasa pemrograman PHP untuk menyederhanakan penggunaan kolom sehingga

ketika ada kebutuhan penambahan kolom tidak perlu lagi membuat kolom baru di

tabel tersebut, Dari hasil penelitian menunjukkan bahwa JSON dapat

menyederhanakan tabel suatu basis data, tabel yang sebelumnya membutuhkan

banyak kolom menjadi satu kolom yang berisi string JASON [3]. Pada penelitian yang berjudul Optimalisasi Query Data dengan Javascript

Object Notation (JSON) Pada Aplikasi Penerimaan Mahasiswa Baru Online Stmik

Akba bertujuan untuk melakukan optimalisasi query data pada aplikasi Penerimaan

Mahasiswa Baru Online STMIK AKBA, sehingga proses pencarian dan

menampilkan data dapat dilakukan dengan waktu yang relatif cepat. Teknik yang

diterapkan adalah dengan menggunakan JavaScript Object Notation (JSON)

sebagai format pertukaran data pada saat proses query. JSON memiliki format

penulisan yang sederhana sehingga ukuran file yang dihasilkan lebih kecil yang

secara otomatis berdampak pada peningkatan kecepatan waktu tampil data. Hasil

penelitian ini menunjukkan bahwa JSON mampu mereduksi ukuran file data dalam

format XML (Extensible Markup Language) sebesar 40,52% dan mereduksi waktu

query data sebesar 66,80% [4].

Penelitian yang berjudul Analisis Komunikasi Data dengan XML dan JSON

pada Webservice Penilitian ini bertujuan untuk mengetahui Ukuran data pada

proses komunikasi data menggunakan web service dalam jaringan akan sangat

memengaruhi kecepatan proses transfer. XML dan JSON merupakan format data

yang digunakan pada saat komunikasi data pada web service. JSON akan

menghasilkan ukuran data yang lebih kecil jika dibandingkan dengan format XML

[5]. Berdasarkan penelitian-penelitian yang pernah dilakukan terkait fleksibilitas

sebuah data menggunakan format JSON, maka akan dilakukan penelitian yang

membahas tentang migrasi data template menggunakan format JSON. Perbedaan

penelitian ini dengan penelitian-penelitian sebelumnya adalah pada proses

penelitian yang mengarah pada peralihan data dimana data dari database dan tabel

lama akan di migrasi ke tabel dan databse baru dengan menggunakan format JSON.

Dengan digunakannya format JSON maka proses pertukaran data akan menjadi

lebih efisien dan terstruktur.

Migrasi adalah perpindahan penduduk dari satu daerah ke daerah lain, yang

terjadi karena adanya perbedaan kondisi kedua daerah tersebut. Menurut Martin,

perbedaan terbesar yang mendorong terjadinya migrasi adalah kondisi ekonomi dan

non Migrasi Internasional : Tenaga Kerja Wanita & Human Trafficking Page 4

ekonomi [6]. Migrasi yang dimaksud dalam penelitian ini adalah perpindahan data

template dari tabel lama ke tabel baru, semua data yang berada pada tabel lama akan

di migrasi ke tabel baru.

3

Template dapat diartikan sebagai sebuah alat bantu yang berfungsi untuk

memastikan bahwa semua dokumen memiliki layout yang standar. Secara

sederhana, keberadaan template memungkinkan kita untuk menghasilkan dokumen

yang seragam secara cepat [7]. Data template yang dimaksud dalam penilitian ini

adalah sekumpulan dokumen atau data yang berada didalam database perusahaan.

Format JSON (JavaScript Object Notations) merupakan suatu syntax atau

format untuk menyimpan data atau digunakan dalam sebuah proses pertukaran data.

JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman

apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer

keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena

sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data [8].

3. Metode Penelitian Secara umum penelitian terbagi ke dalam empat tahap, yaitu: (1) tahap

identifikasi masalah, (2) perancangan modul, (3) implementasi modul, (4) pengujian modul.

Gambar 1 Tahapan Penelitian

Tahapan penelitian dimulai dari Analyze and Optimize data terkait dengan

implementasi data template dengan melakukan migrasi menggunakan format JSON

(Javascript Object Notation). Analisis data berisikan sumber data template yang

akan di migrasi. Data template diambil dari tabel lama perusahaan yaitu

New_underwriting.t_template_general kemudian akan dimigrasi kedalam tabel

baru yaitu m_template. Optimasi dilakukan untuk menentukan jumlah kolom pada

tabel m_template sehingga mengurangi pemakaian spaces memori pada database.

Pada tahap ini telah ditentukan kolom apa saja yang akan digunakan untuk

4

menampung hasil migrasi berupa data template yaitu, kolom ID, kolom OLDID,

dan kolom JSONDATA.

Tahap model and design sistem. Tahap desain meliputi identifikasi proses dan desain proses, identifikasi proses menentukan elemen utama apa saja yang

saling terkait dalam proses perancangan sistem yaitu tabel lama New_underwriting.t_template_general, tabel baru m_template, Procedure,

kemudian akan di desain dengan menghubungkan elemen utama yang telah diidentifikasi diatas dalam satu aliran proses mulai dari awal sampai dengan akhir

proses. Tahap pemodelan dimulai merancang desain seperti pada diagram Activity dibawah.

Perancangan Diagram Activity Diagram Activity secara visual menyajikan serangkaian tindakan atau aliran

kontrol dalam sistem yang mirip dengan flowchart atau diagram alir data. Diagram

activity sering digunakan dalam pemodelan proses bisnis. Mereka juga bisa menggambarkan langkah-langkah dalam use case diagram. Aktivitas yang

dimodelkan bisa berurutan dan bersamaan. Dalam kedua kasus diagram aktivitas akan memiliki permulaan dan an [9]. Berikut perancangan diagram activity

terhadap penelitian ini.

Gambar 2 Diagram Activity

Gambar 2 diatas menunjukkan proses migrasi data template menggunakan

procedure dengan format JSON untuk menarik data dari tabel lama

(New_underwriting.t_template_general) ke tabel baru (m_template). Procedure

5

berisikan query insert menggunakan format JSON dengan mengambil value data

template berdasarkan nama kolom dari tabel lama kemudian memasukkan value

tersebut ke tabel baru. Semua data hasil migrasi akan ditampung pada tabel baru

dalam format JSON berdasarkan OLDID dari tabel lama dan ID dari tabel baru. Tahap configure and deploy. Tahap konfigurasi merupakan tahap dalam

menyiapkan semua elemen-elemen dari elemen utama pada tahap pemodelan dan

desain diatas, pada diagram Sequence dibawah terdapat semua elemen-elemen yang dibutuhkan dalam proses migrasi data template.

Konfigurasi Sistem Dalam Migrasi Data Template

Perancangan konfigurasi sistem dalam migrasi data template pada

penelitian ini adalah dengan menggunakan diagram Sequence. Diagram Sequence adalah solusi pemodelan dinamik yang populer di UML karena secara khusus

berfokus pada " lifelines " objek dan bagaimana berkomunikasi dengan objek lain untuk melakukan fungsi sebelum lifelines berakhir [10]. Berikut perancangan

diagram Sequence.

Gambar 3 Diagram Sequence

Gambar 3 diatas merupakan konfigurasi sistem dengan membuat elemen-

elemen yang dibutuhkan dalam melakukan migrasi data template mulai dari

membuat tabel baru sampai dengan membuat procedure. Berikut penjelasan tiap-

tiap elemen diatas: (1) membuat tabel m_template. Langkah pertama dalam migrasi

data template adalah membuat tabel baru yang berguna untuk menampung data dari

tabel lama ke tabel baru yang akan dibuat. (2) Membuat Procedure yang digunakan

sebagai penghubung antara tabel lama dan tabel baru untuk mengambil dan

menginputkan data yang dibutuhkan kedalam tabel baru. (3) Proses penarikan data

6

dari tabel New_underwriting.t_template_general ke tabel baru m_template dengan

format JSON. (4) Data template akan ditampung dalam tabel m_template

berdasarkan OLDID dari tabel lama dan ID dari tabel baru. (5) Insert data to tabel

m_template menggunakan procedure yang diisi dengan query select OldID FROM

tabel lama, dimana data template akan diambil berdasarkan OldID yang ada

didalam database berdasarkan data yang akan di inputkan. Data yang menuju ke

tabel m_template merupakan data template dalam format JSON yang akan

ditampung dalam kolom JSONDATA.

Tahap Execute merupakan tahap testing dimana dalam penelitian ini

pengujian dilakukan dengan pengujian unit / unit testing. Unit testing merupkan

tahap pengujian suatu unit program layak untuk di gunakan atau tidak. Dalam

proses migrasi data template terdapat banyak unit-unit atau subproses didalamnya

sehingga jika dilakukan testing disetiap unit tersebut maka akan mengurangi

terjadinya kesalahan dalam melakukan migrasi serta mendapatkan hasil yang

maksimal. Dalam penelitian ini pengujian unit testing akan dilakukan mulai dari

pembuatan tabel baru m_template sampai dengan proses penginputan data template

menggunakan procedure dengan format JSON.

Maintenance and Monitoring. Data template akan digunakan oleh pihak

underwriting (UW) dalam pembuatan proposal bisnis asuransi. Pihak underwriting

sering kali mengalami masalah dalam proses pembuatan proposal bisnis karena data

yang diinputkan tidak sesuai dengan template yang telah disiapkan, sehingga pada

tahap akhir pembuatan proposal bisnis asuransi akan terjadi error yang

mengharuskan data diinputkan berdasarkan dengan template yang telah ditentukan

dari awal pembuatan proposal bisnis. sehingga sangat dibutuhkan proses

maintenance and monitoring dari developer agar data yang mengalami masalah

dapat langusung diatasi dengan melakukan update data template atau mencocokan

data yang diinputkan underwriting dengan data template.

7

4. Hasil dan Pembahasan

Melakukan migrasi data template dengan menggunakan format JSON ke tabel m_template maka yang pertama harus dilakukan adalah menganalisis sumber

data template yang akan dimigrasi, data template awalnya berada pada tabel t_template_general yang disimpan dalam database server perusahaan.

Gambar 4 New_Underwriting.t_template_general

Hasil analisis data yang menunjukkan sumber data template yang berada pada tabel ”New_Underwriting.t_template_general” memiliki 500 data dengan 250

jumlah kolom dalam satu baris data atau satu nomor template yang akan dimigrasi

kedalam tabel baru m_template dengan menggunakan format JSON. Data template masih bisa mengalami perubahan dan penambahan data terkait dengan proses bisnis

perusahaan.

Gambar 5 Tabel m_template

Proses pembuatan tabel m_template atribut yang digunakan adalah ID,

OldID, dan JSONDATA. ID digunakan untuk menampung nomor template yang

baru, OldID digunakan untuk menampung nomor template yang lama agar tabel

t_template_general dan m_template dapat dihubungkan dalam melakukan proses

pertukaran data. Data dalam satu nomor template memiliki ribuan data sehingga

dalam proses pembuatan tabel atribut JSONDATA menggunaka type data CLOB

yang bisa menampung data hingga 4GB.

8

Atribut JSONDATA digunakan untuk menampung semua data hasil dari

migrasi berdasarkan setiap nomor template. Data yang berada pada kolom

JSONDATA merupkan data dalam format JSON sehingga data dalam satu nomor

template dapat ditampung pada satu kolom tabel tanpa perlu membuat kolom tabel

yang banyak sesuai dengan data template. Untuk melakukan proses migrasi data

template kedalam tabel m_template dari tabel t_template_general dibutuhkan

procedure. Procedure ini digunakan untuk melakukan query insert data dalam

format JSON. Procedure juga sekaligus menjadi penghubung antara tabel

t_template_general dan m_template dalam melakukan migrasi data. Berikut ini

adalah pseudo-code dari procedure migrasi data template menggunakan format JSON.

Baris 1 merupakan fungsi pembuatan procedure dalam database Pooldata.

Baris 2 terdapat parameter ID, OLID, JSONDATA yang akan menampung value

dari hasil migrasi. Baris 3 berisi Template_No ysng merupakan ID dari tabel lama

yang disimpan dengan nama ID dan OLDID pada tabel m_template. Untuk

menginputkan data template ke tabel m_template pada kolom JSONDATA dengan

type data CLOB maka membutuhkan fungsi SQL seperti pada baris 4 yaitu

TO_CLOB untuk mengkonversi karakter string dan karakter lainya ke nilai CLOB

seperti CHAR, VAR, CHAR2, atau CLOB agar dapat terbaca pada kolom

JSONDATA yang memiliki type data CLOB. Untuk membuat hasil migrasi data

template dalam format JSON maka dibutuhkan format JsonObjectWriter yang

digunakan untuk menginputkan suatu data kedalam suatu objek seperti

(JsonObjectWriter ('ID', b.template_no,',')). ID merupakan objek dan

b.template_no merupakan data, sehingga ID akan terisi dengan value b.template_no

dari tabel t_template_general. Hasil dari migrasi data template dengan

menggunakan format JSON ditampung dalam satu kolom JSONDATA pada tabel

m_template. Baris 5 merupakan fungsi untuk menyimpan data template dalam satu

kolom JSONDATA. Baris 6 digunakan untuk mendeklarasikan alamat tabel dan

database pengambilan data template yang diinputkan kedalam tabel m_template.

Baris 7 Digunakan untuk menyetujui transaksi dari serangkaian perintah yang telah

berhasil dilakukan sebelumnya.

9

Gambar 5 Data Template in m_template

Kolom ID dan OLDID telah terisi dengan value Template_No dari tabel

New_underwriting.t_template_general. Untuk menghubungkan kedua tabel antara

m_template dan New_underwriting.t_template_general adalah dengan

menggunakan kolom ID dan OLDID dengan menyamakan kedua value kolom

tersebut. Pada kolom JSONDA terdapat HUGECLOB yang merupakan karakter

dari type data CLOB yang menunjukkan bahwa terdapat banyak data didalmnya.

Denggan menampung data template dalam satu kolom tabel membaut akses data

menjadi lebih cepat, terstruktur dan efisien.

Gambar 6 Data Template in Format JSON

10

Gambar 7 Data Template in JSON formatter

Baris 1 terdapat simbol “{” yang merupakan karakter utama format JSON

yang berarti bahwa data template berhasil di migrasi kedalam tabel m_template

dengan format JSON. karakter utama yang membedakan format JSON adalah

diawali dengan kurung kurawal dilanjutkan dengan tanda petik (“”) sebagai objek

yang merupakan kolom dan value dari tabel yang hendak akan di inputkan. Baris 2

sampai dengan baris 33 merupakan value data template. Untuk menampilkan data

template seperti pada gambar diatas maka harus menggunakan query select seperti

“select a.JSONDATA from m_template a” dengan memilih kolom JSONDATA

yang berisikan semua data template hasil dari migrasi. Data dalam format JSON ini

membuat akses data lebih cepat karena tabel m_template yang digunakan tidak

memakan banyak spaces memori dengan hanya menggunakan satu kolom tabel

untuk menampung data template yaitu kolom JSONDATA yang dapat menampung

hingga 4GB data. Dengan format JSON maka membuat data template lebih

terstruktur sehingga mudah untuk dibaca oleh administrator database dalam

mengolah dan melakukan perbaikan data template yang sewaktu-waktu dapat berubah dan bertambah berdasarkan proses bisnis dari perusahaan.

11

5. Simpulan Berdasarkan penelitian yang telah di uraikan dalam penelitian ini, maka dapat

disimpulkan: (1) Migrasi data template dengan menggunakan format JSON pada

PT. Asuransi Sinar Mas sangat membantu pihak developer dalam mengolah data

bisnis asuransi yang cukup banyak, serta untuk memudahkan pihak underwriting

perusahaan (user) dalam mengakses data lebih cepat meskipun dengan jumlah data

yang cukup banyak. (2) Data template yang sangat banyak membuat proses

pertukaran data menjadi lebih lama dan membutuhkan tabel dengan kolom yang

banyak sehingga memakan banyak spaces dalam proses pembuatan tabel. Dengan

menggunakan format JSON maka file data akan memiliki ukuran yang kecil

sehingga membuat proses pertukaran data menjadi lebih cepat dan semua data dapat

ditampung dengan terstruktur dalam satu kolom JSONDATA pada tabel

m_template, sehingga tidak membuat banyak spaces terbuang dan mempermudah

developer dalam melakukan pengolahan data. (3) Dengan menggunakan format

JSON maka untuk menampilkan data template menjadi lebih cepat dan mudah

karena format penulisan yang sederhana hanya dengan memanggil nama kolom

JSONDATA dengan value yang akan digunakan maka data template dapat

ditampilkan.

6. Daftar Pustaka

[1] Developer Twitter. 2010. Intorduction to Tweet JSON.

https://developer.twitter.com/en/docs/tweets/datadictionary/overview/intr

o-to-tweet-json. Diakses 23 November 2017 [2] Rosid, M.A. 2016. Implementasi JSON untuk Minimasi Penggunaan Jumlah

Kolom Suatu Tabel Pada Database PostgreSQL [3] Surendra, M.R.S. 2014. Implementasi PHP Web Service Sebagai Penyedia Data

Aplikasi Mobile.

[4] Pasnur, P. 2013. Optimalisasi Query Data Dengan JavaScript Object

Notation (JSON) Pada Aplikasi Penerimaan Mahasiswa Baru Online

STMIK AKBA.

[5] Sudirman. 2016. Analisis Komunikasi Data Dengan Xml Dan Json

PadaWebservice.http://download.portalgaruda.org/article.php?article=4

43695&val=8273&title=analisis%20komunikasi%20data%20dengan%2

0xml%20dan%20%20json%20pada%20webservice. Diakses online 29

Agustus 2017.

[6] Martin, Philip. 2003. Sustainable Labor Migration Policies in a

GlobalizingWorld.http://www.ilo.org/wcmsp5/groups/public/--greports/

inst/documents/publication/wcms_193625.pdf. Diakses 13 November

2017.

[7] Didik, Irianto, Patmanthara. 2016. Desain Template Buku Digital Epub.

http://sentia.polinema.ac.id/index.php/SENTIA2016/article/viewFile/27/22.

Diakses 13 November 2017

[8] JSON Team. 2013. ECMA-404 The JSON Data Interchange Standard.

http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-

\404.pdf. Diakses 27 Juli 2017

12

[9] Activty Diagram. https://www.smartdraw.com/activity-diagram/.

Diakses 13 Januari 2018

[10] UML Sequence Diagram Tutorial. https://www.lucidchart.com/pages/uml-

sequence-diagram. Diakses 13 Januari 2018