## IMPLEMENTASI PENDEKATAN BACKENDLESS DALAM RAPID PROTOTYPING APLIKASI MANAJEMEN PENUGASAN KARYAWAN
Irwan Kurnia Phan 1 , Yuricha 2 ,
1 Fakultas Teknologi Informasi, Universitas Widya Dharma Pontianak
1 Program Studi Sistem dan Teknologi Informasi, InstitutTeknologi dan BisnisSabda Setia Email : irwanphan@widyadharma.ac.id

## ABSTRAK
Kata kunci: Backendless, PaaS, Prototype Pengembangan  aplikasi  berbasis  web  telah  mencapai  titik  di  mana pengembangan  aplikasi  akan  membutuhkan  para  pengembang  untuk mempertimbangkan  banyak  aspek  di  dalam  proses  pengembangannya  seperti infrastruktur server, keamanan server, basis data, API, bahasa pemrograman, dan system operasi. Aspek-aspek ini menuju pada kegiatan-kegiatan yang kompleks yang membutuhkan para pengembang untuk memiliki kurva yang Panjang dalam pembelajaran  dan  pengembangan.  Ada  cara-cara  yang  tersedia  saat  ini  untuk merancang  dan  mengembangkan  sebuah  aplikasi  tanpa  para  pengembang  harus mempelajari  dan melakukan  semua hal  yang  disebutkan  di atas.  Salah  satu  dari solusi  yang  tersedia  saat  ini  adalah  dengan  pendekatan  backendless menggunakan  layanan-layanan  yang  disediakan  oleh  pihak  ketiga.  Dalam penulisan  ini,  sebuah  aplikasi  berbasis  web  untuk  manajemen  tugas  karyawan dirancang  dan  dikembangkan  sebagai  prototype  dengan  kemampuan  untuk membuat tugas, menugaskan, melihat, dan menelusuri daftar tugas menggunakan pendekatan  backendless.  Pendekatan  backendless  juga  memungkinkan  rapid prototyping,  yang  di  mana  para  pengembang  dapat  memperpendek  time-to- market  dan  mendapat  masukan  dari  pengguna  secepat  mungkin  untuk  dapat memberikan solusi. ABSTRACT Keywords : Backendless, PaaS, Prototype Web  application  development  has  reached  the  point  where  developing an application will need developers to consider a whole lot of aspects in development  such  as  server  infrastructures,  server  security,  database, APIs,  programming  language,  and  operating  systems.  These  aspects lead  to  complex  activities  that  require  developers  to  have  a  long learning  and  development  curve.  There  are  existing  possible  ways  to design and develop an application without developers have to learn and do all of things that had mentioned above. One of existing solution is the backendless  approach  using  provisioned  services  from  third  party.  In this article, an employee assignment management web-based application is designed and developed as prototype with the ability to create, assign, view  and  browse  list  of  assignments  using  backendless  approach. Backendless  approach  also  enable  rapid  prototyping  which  developers can  shorten  time-to-market  and  get  feedback  from  users  as  fast  as possible to deliver solution.

## PENDAHULUAN
Transformasi  digital  telah  berkembang  secara  massif  ditandai  dengan  adanya  digitalisasi diberbagai  sector  kehidupan  (Sugiono,  2020).  Kemudahan  dalam  mengakses  internet  dan peningkatan  kebutuhan  masyarakat  terhadap  internet  dan  solusi  digital  yang  inklusif  menjadi salah  satu  pendorong  percepatan  transformasi  digital  di  kalangan  masyarakat.  Solusi  digital dalam  bentuk aplikasi telah  menjadi salah  satu tool kebutuhan primer dalam  bisnis dan  menjadi business enabler (Arribe, Aryanto, Putriani, & Wulandari, 2022).
Perancangan dan pengembangan  aplikasi  bisa  memiliki  spesifikasi dan fitur  yang berbeda tergantung  dari  basis  yang  dipilih,  baik  berbasis web , desktop maupun mobile .  Aplikasi web dianggap  mampu  untuk  memberikan  solusi  digital  dengan  cepat  untuk  mendukung  bisnis  dan dapat  diakses  melalui  computer  maupun smartphone selama  terkoneksi  dengan  jaringan  serta dapat  dijalankan  dengan  baik  di  berbagai  platform  atau  system  operasi  yang  berbeda,  baik  di desktop maupun di mobile terutama pada dua platform yang paling banyak dipakai saat ini, yaitu Android dan iOS.
Dalam memenuhi kebutuhan masyarakat akan aplikasi dalam bisnis (pengusaha), arsitektur aplikasi  juga  menjadi  semakin  kompleks.  Perancangan  dan  pengembangan  aplikasi  pun memerlukan  pemahaman  dari  berbagai  lapisan,  di  antaranya  siklus  hidup  pengembangan aplikasi, maturity  models ,  proses  dan  metode  pengembangan,  termasuk Unified  Process dan metodologi agile ,  analisis  dan  teknik  pengembanganaplikasi,  seperti Object  Oriented Programming (OOP),  Test-Driven  Development  (TDD),  dan  Continuous  Integration  (Araujo, Moura,  &  França,  2015).  Sedangkandalammenjalankanbisnis,  faktorefisiensiwaktumerupakan salah  satu  factor  penting  menentukan  pencapaian  dalam  bisnis,  di  mana  waktu  pengembangan dan  rilis  berpengaruh  terhadap  sumberdaya  yang  terpakai  dan  keuntungan  kompetitif  dalam bisnis  (Belay,  Kekäle,  &  Helo,  2011).  Semakin  kompleks  proses  perancangan  dan pengembangan aplikasi, maka waktu yang diperlukan oleh programmer juga akan semakin lama. Hal ini menjadi tidak sebanding dengan kecepatan waktu yang menjadi tuntutan di dalam bisnis (Carter, 2022).
Mempertimbangkan  demikian  banyak  aspek  pengembangan  aplikasi  modern,  salah  satu cara mempercepat perancangan dan pengembangan aplikasi adalah dengan meniadakan sebagian atau  beberapa  aspek  yang  memerlukan  sumberdaya,  seperti  infrastruktur  atau  pengaturan database  atau  proses  pengembangan  backend  aplikasi.  Salah  satucara  yang  dapat  dilakukan adalah  menggunakan  pendekatan  backendless  di  mana  proses  pengembangan backend aplikasi ditiadakan.
Pendekatan backendless dapat  dilakukan  dengan  penggunaan  layanan  pihak  ketiga  yang memanfaatkan Cloud  Computing dengan  biaya  komputasi  yang  lebih  rendah  tanpa  harus menyediakan  infrastruktur  (Sether,  2016).  Dengan  ketidaksediaan  infrastruktur,  proses perancangan  dan  pengembangan  aplikasi  bisa  berfokus  pada  sisi  fungsional  aplikasi  dan interface aplikasi.
Semakincepat  proses  perancangan  dan  pengembanganaplikasi,  makasemakincepat  pula aplikasi  tersebut  dapat  digunakan  untuk  diuji  dalam  pasar  ( time - to - market )  dan  mendapatkan feedback dari  user    (Eurenius  &  Teravainen,  2020). Feedback yang  didapatkan  dari  pengguna juga  akan  mempercepat  pencapaian  solusi  yang  diperlukan  dalam  bisnis.  Dengan  adanya percepatan pencapaian solusi, biaya yang perlu dikeluarkan juga dapat diminimalisir dan dikelola se-efektif mungkin sehingga dapat memberikan profit dalam bisnis.
Selain  itu,  percepatan  waktu  proses  perancangan  dan  pengembangan  aplikasi  juga  akan mempermudah  dari  sisi  pengembang  untuk  penghematan  waktu  dan  biaya  (Belay,  Kekäle,  &

## Penugasan Karyawan
Helo,  2011).  Salah  satu  cara  yang  dapat  digunakan  adalah Rapid  Prototyping .  Metode  ini memungkinkan  untuk  melakukan deliverprototype aplikasi  dengan  lebih  cepat,  sehingga programmer  dapat  segera  mencapai  solusi  untuk  melakukan deploy terhadap  aplikasi sesungguhnya.
Oleh  karenaitu,  dengan  penerapan Rapid  Prototyping dengan  menggunakan  pendekatan Backendless  dapat  mempercepat  proses  perancangan  dan  pengembangan  aplikasi  dalam  rangka percepatan pencapaian solusi bisnis dan digital.

## METODE
Penelitian  ini  menggunakan  metode  Rapid  Prototyping  merancang  aplikasi  manajemen penugasan  karyawan  yang  dimulai  dari  menganalisis  sistem  yang  diusulkan  sampai  pada  rilis produk seperti pada Gambar 1.

## Gambar 1. MetodePenelitian
Analisis Dan Identifikasi Kebutuhan
Analisis  dan  identifikasi  kebutuhan  disesuaikan  dengan  yang  diperlukan  dalam  manajemen penugasan karyawan dan setiap item yang dibutuhkan dipetakan sesuaikan dengan prioritas.

## Identifikasi Objek Dan Action
Setelah  analisis  dan  identifikasi  kebutuhan,  selanjutnya  adalah  melakukan  identifikasi  objek  dan action yang  diperlukan  untuk  merealisasikan  kebutuhan.  Setiap  objek  dan action yang  terkait  kemudian disatukan dan dibentuk alur aplikasinya.

## Prototyping
Pada tahap ini, penulis  membuat prototype yang sesuai  dengan  identifikasi  objek  dan action yang diperlukan.  Kemudian  akan  diberikan  kepada user untuk  diperoleh feedback secepatnya.  Setelah mendapatkan feedback ,  langkah  selanjutnya  adalah  melakukan  improvisasi  terhadap  kode prototype hingga  mencapai  hasil  yang  diinginkan  oleh user .  Langkah-langkah  dalam  tahapan  ini  bersifat  iterative sehingga  akan  selesai  ketika user memberikan feedback setuju  untuk  melanjut  ke  tahap development / pengembangan. Tahapan ini menggunakan metode Rapid Prototyping dengan pendekatan backendless .
Development Aplikasi
Tahap ini akan dilakukan setelah mendapatkan persetujuan dari user dan melanjutkan ke tahap ini. Langkah  selanjutnya  adalah  memberikan  kepada user untuk  didapatkan feedback ,  sehingga  dapat dilakukan  improvisasi  terhadap  kode development .  Tahapan  ini  juga  bersifat  iterative  hingga user memberikan persetujuan untuk melanjutkan ketahap berikutnya.

## Rilis Produk/Aplikasi
Tahap ini merupakan akhir dari serangkaian proses perancangan dan pengembangan aplikasi. Pada tahapan  ini,  aplikasi  akan  digunakan  bertahap  oleh  user  lainnya  yang  membutuhkan  aplikasi  tersebut untuk mendukung proses dalam bisnis.

## Rapid Prototyping
Metode Rapid  Prototyping adalah  pendekatan  pengembangan  aplikasi  dengan  melibatkan pengguna  di  tahapan  awal  perancangan  sistem  dan  memungkinkan  untuk  perubahan  terutama  pada halaman antar muka dan interaksi sistem yang digunakan oleh pengguna (Sadabadi & Tabatabaei, 2009). Rapid Prototyping mengadopsi kecepatan dalam menggambarkan system dalam low-fidelity dapat berupa sketsa kasar maupun high-fidelity yang sudah diedit dengan baik menggunakan alat bantu-alat bantu yang lazim  digunakan  oleh designer .  Proses prototyping tersebut  dilakukan  secara  iterative  sampai  suatu rancangan  mencapai kesepakatan. Berbeda dengan pendekatan pengembangan aplikasi secara tradisional maupun  metode waterfall , Rapid  Prototyping berorientasi  pada  proses  iterative  dan  keterlibatan pengguna  yang  tinggi.  Pada Rapid  Prototyping ,  pengguna  terlibat  dalam  keseluruhan  proses pengembangan.  Dengan  proses  iteratif,  penambahan  dan  perubahan  pada  fitur  aplikasi  menjadi  lebih mudah untuk dilakukan seperti pada Gambar 2.
Gambar 2. Proses Rapid Prototyping PaaS
Penulis  memanfaatkan layanan dari pihak ketiga yang menyediakan platform siap pakai atau yang biasanya  disebut  sebagai Platform-as-a-Service (PaaS)  dalam  bentuk Cloud  Computing .  PaaS  adalah suatu  bentuk  bisnis  yang  menyediakan  layanan  berbasis platform yang  memungkinkan  penggunanya untuk  dapat  mengakses,  mengambil  dari  representasi  yang  ada,  menjalankan,  dan  mengatur  berbagai platform komputasi yang bersifat modular, tanpa perlu melakukan proses pembangunan dan pemeliharaan infrastruktur yang kompleks (Boniface, et al., 2010).
Layanan  PaaS  yang  digunakan  adalah  Supabase.  Supabase  adalah  produk open  source yang  di mana semua komponen di dalamnya juga merupakan produk open source (Supabase Architecture, 2022). Arsitektur Supabase sebagai PaaS mencakup beberapa komponen yang terlihat pada Gambar 3.

## Gambar 3. Arsitektur Supabase (Supabase Architecture, 2022)
Penggunaan  Supabase  sebagai  PaaS  sudah  memiliki  (1)  database  Postgre  SQL,  (2)  Supabase Studio, sebuah dashboard untuk mengatur penggunaan database dan layanan di atasnya, (3) GoTrue, API berbasis  JWT  untuk  mengatur  pengguna  dan  memberikan token akses,  (4)  Postg  REST,  sebuah  web server  yang  menjadikan  Postgre  SQL  sebagai  RESTful  API,  (5)  Realtime  API  &  Multilayer, engine websocket untuk message broadcasting dan database streaming , (6) Storage  API, sebuah object storage yang  kompatibel  dengan  S3  (Simple  Storage  Service)  dari  AWS  untuk  menyimpan  metadata  pada Postgre,  (7)  Deno,  [10]  sebuah runtime untuk  Java  Script  dan  Type  Script,  (8)  postgres-meta,  RESTful API untuk  mengatur Postgre, (9) PgBouncer, connection pooler untuk Postgre SQL dan (10) Kong, API gateway yang dibangun di atas Nginx.

## Backendless
Pendekatan Backendless memungkinkan  proses  perancangan  dan  pengembangan  aplikasi  secara cepat  dan  berfokus  lebih  pada  pengalaman  pengguna  aplikasi  dan  menyerahkan  rangkaian  proses sepenuhnya  pada cloud  platform untuk  kebutuhan  proses  bisnis  aplikasi  kepada  layanan  pihak  ketiga dalam  bentuk  PaaS  (Morozov,  Sidenko,  Kondratenko,  &  Kondratenko,  2020).  Terdapat  banyak cloud platform yang  menyediakan  layanan  PaaS,  seperti Google  Cloud  Platform (GCP), Amazon  Web  Service (AWS)  dan Microsoft  Azure .  (Supabase  Architecture,  2022)  Layanan  PaaS  memiliki  empat  lapisan arsitektur  yaitu:  (1) Front - end –  dengan  serangkaian  API  dan  alat  bantu  untuk  pengembang  aplikasi ( development APIs)  dan  pengguna  aplikasi  (user  APIs). Development API  memungkinkan  pengembang untuk  mengatur  dan  mengalokasikan  sumberdaya  pada  PaaS. User API  digunakan  untuk  mengeksekusi layanan  aplikasi  pada  PaaS.  (2) Core –  merupakan  framework  yang  dibutuhkan  untuk  hosting  dan menjalankan aplikasi. (3) Managementand Governance – berupa entitas-entitas untuk mengatur PaaS dan aplikasi  yang  dijalankan  di  atasnya,  missal  untuk  kebutuhan  pengawasan,  skalabilitas  dan  pembiayaan. (4) Abstraction Interface – sekumpulan API yang memungkinkan interaksi dengan IaaS.
Penggunaan  PaaS  dan  kapabilitasnya  untuk  berinteraksi  dengan  lapisan  infrastruktur  dalam arsitektur  pengembangan  aplikasi  melalui  API  membuat  pengembangan  aplikasi  bisa  lebih  difokuskan pada  pengembangan  pada  antar  muka  dan  proses  bisnis  dengan  mengesampingkan  lapisan  pengaturan infrastruktur dan skalabilitas aplikasi.
Sehingga arsitektur aplikasi dalam penelitian ini dapat dilihat pada Gambar 4, dimana infrastruktur dan pengaturan resource sudah difasilitasi oleh PaaS serta interaksi dengan PaaS dapat dilakukan melalui user API.
Gambar 4. Arsitektur Aplikasi

## HASIL DAN PEMBAHASAN
Prototype yang dikembangkan meliputi front-end aplikasi manajemen penugasan karyawan dengan user  API  berbasis  REST  untuk  berinteraksi  dengan  PaaS. Frontend aplikasi  dibangun  dengan menggunakan framework Next JS, sebuah framework aplikasi berbasis Bahasa Java Script yang dibangun di  atas library React.  Pada  pengembangan prototype ,  penulis  juga  menggunakan library Chakra-UI, sebuah library komponen React yang modular untuk mempercepat proses prototyping . Proses pada prototype mencakup fungsi utama dari aplikasi manajemen penugasan karyawan yang diujikan kepengguna aplikasi. Proses pada aplikasi mencakup beberapa aktivitas berdasarkan peranannya, yaitu pengguna melihat daftar tugas yang telah dibuat atau yang ditugaskan kepadanya, pengguna melihat detail  dari  isi  tugas  dan  pengguna membuat  tugas  dan  menugaskan  kepengguna  lain  seperti  pada Gambar 5.
Gambar 5. Peta Prototype Awal
Proses prototyping dilakukan sebagai proses  iteratif  yang dimulai dari pembuatan prototype awal  dengan  fungsi  utama  untuk  dipresentasikan  atau  diujikan  kepengguna  aplikasi.  Dari pengujian  kepengguna, feedback yang  diberikan  oleh  pengguna  kemudian  diadopsi  kedalam prototype untuk  memenuhi  kebutuhan  pengguna  aplikasi.  Gambar  6  berikut  adalah  peta prototype hasil iterasi pengujian terhadap pengguna aplikasi di mana pada beberapa proses bisnis awal telah mengalami pengembangan fungsi.
Gambar 6. Peta Prototype Setelah Iterasi Pengujian
Setiap  proses  bisnis  pada  aplikasi  yang  diujikan  kepengguna  tidak  dibatasi  jumlah iterasinya  namun tetap dalam cakupan proses bisnis yang sama. Iterasi pengujian menggunakan prototype mempercepat pengembang mendapat feedback dari pengguna yang semakin mendekati kebutuhan pengguna seperti pada Gambar 7.

## Gambar 7. Iterasi Halaman Melihat Tugas yang Sudah Ditugaskan ke Pengguna Lain
Setelah  pengujian low-fidelity  prototype, penulis  melanjutkan  pengembangan prototype kebentuk high-fidelity menggunakan  pengkodean  aplikasi web seperti  pada  Gambar  8.  Proses bisnis yang dikembangkan di dalam aplikasi adalah proses bisnis yang telah melewati pengujian kepada pengguna seperti perubahan pada halaman detil tugas yang tampak pada Gambar 7.
Gambar 8. Screenshot Halaman Aplikasi Manajemen Penugasan Karyawan.

## KESIMPULAN
Perancangan  dan  pengembangan  aplikasi  dengan  pendekatan  backendless  di  mana  focus perancangan dan pengembangan aplikasi lebih kesisi front-end tanpa terdistraksi oleh pengaturan dan  alokasi  sumberdaya  pada  infrastruktur  mempercepat  waktu  perilisan  aplikasi  (time-to- market). Penulis  dalam  penelitian  ini  mencoba  melakukan  uji  coba  dengan  membuat  prototype aplikasi  sederhana  dengan  memanfaatkan  PaaS  dan  berfokus  pada  pengembangan  front-end aplikasi.  Penerapan  backendless  ini  memungkinkan  rapid  prototyping  untuk  dilakukan  dan pengembang  bisa  melakukan  iterasi  terhadap  feedback  dari  pengguna  pada  tingkat  prototype aplikasi.

## DAFTAR PUSTAKA
Araujo,  A.  R.,  Moura,  H.  P.,  &  França,  C.  (2015).  Complexity  Within  Software  Development Projects: an Exploratory Overview. Revista Gestão.Org, 13 (Edição Especial), 445-455.
Arribe, E., Aryanto, Putriani, & Wulandari, D. (2022). Analisis Manajemen Layanan Teknologi Informasi  Dengan  Framework  (ITIL)  Domain  Service  Strategy. Jurnal  Software Engineering and Information Systems (SEIS), 2 , 23-27.
Belay,  A.  M.,  Kekäle,  T.,  &  Helo,  P.  (2011).  Time-to-market  and  concurrent  engineering  in product  development processes. International  Journal  of Innovation and Learning, 10 (1), 60-84.
Boniface, M., Nasser, B., Papay, J., Phillips, S. C., Servin, A., Yang, X., . . . Kyriazis, D. (2010). Platform-as-a-Service  Architecture  for  Real-Time  Quality  of  Service  Management  in Clouds. 010  Fifth  International  Conference  on  Internet  and  Web  Applications  and Services. Barcelona: IEEE.
Carter,  J.  (2022,  12  10). Time  To  Market  (TTM)  Why  it’s  important  –  5  Ways  to  Reduce  it . (TCGen)  Retrieved  December  2022,  from  https://www.tcgen.com/time-to-market/: https://www.tcgen.com/time-to-market/
Deno:  Secure  V8  TypeScript  Runtime  from  Original  Node.js  Creator .  (2018,  December). Retrieved from InfoQ: https://www.infoq.com/news/2018/12/deno-v8-typescript/
Eurenius, E., & Teravainen, B. (2020). Reducing Time to Market in New Product Development. Chalmers  University  of  Technology,  Department  of  Technology  Management  and Economics. Gothenburg: Chalmers University of Technology.
Morozov, K., Sidenko, I., Kondratenko, G., & Kondratenko, Y. (2020). Increasing Web-Design Effectiveness Based on Backendless Architecture. COLINS .
Sadabadi, A. T., & Tabatabaei, N. M. (2009). Rapid Prototyping for Software Projects with User Interface. University of Pitesti - Electronics and Computers Science, Scientific Bulletin , 85- 90.
Sether, A. (2016). Cloud
Computing Benefits. SSRN Electronic Journal. DOI:10.13140/RG.2.1.1776.0880 .
Soltanian,  A.,  Belqasmi,  F.,  Yangui,  S.,  &  Salahuddin,  M.  A.  (2017).  A  Cloud-Based Architecture for Multimedia Conferencing Service Provisioning. IEEE .
Sugiono,  S.  (2020).  Industri  Konten  Digital  Dalam  Perspektif  Society  5.0  (Digital  Content Industry  in  Society  5.0  Perspective). JURNAL  IPTEKKOM  (Jurnal  Ilmu  Pengetahuan  & Teknologi Informasi) , 175-191.
Supabase Architecture . (2022, December). Retrieved from Supabase: https://supabase.com/docs/architecture
Tizkar,  A.,  &  Tabatabaei,  N.  M.  (2009).  Rapid  Prototyping  for  Software  Projects  with  User Interface. UNIVERSITY  OF  PITESTI  –  ELECTRONICS  AND  COMPUTERS  SCIENCE, SCIENTIFIC BULLETIN, No. 9, Vol.2, 2009 , 85-90.