## PEMANFAATAN DART, FLUTTER, FIREBASE, DAN STRIPE DALAM MEMBANGUN APLIKASI MOBILE
Candra Wijaya, Felik Rolantius Jovito, Viktor Handrianus Pranatawijaya, Nova Noor Kamala Sari Teknik Informatika, Universitas Palangka Raya Jalan Yos Sodarso, kota Palangka Raya 73112, Kalimantan Tengah, Indonesia candra.wijaya.250303@gmail.com

## ABSTRAK
Dalam era bisnis yang terus berkembang, teknologi memainkan peran krusial dalam meningkatkan efisiensi operasional  dan  memenuhi  kebutuhan  pelanggan.  Aplikasi  mobile  telah  menjadi  komponen  integral  dalam ekosistem  bisnis  modern,  memfasilitasi  interaksi  antara  pelanggan  dan  penyedia  layanan.  Aplikasi  Mobile Ka'Cake  Delivery  hadir  sebagai  solusi  inovatif  untuk  memenuhi  kebutuhan  pelanggan  dalam  melakukan pemesanan dan pengiriman pesanan secara efisien. Pengembangan aplikasi Ka'Cake Delivery melibatkan tahap persiapan, desain sistem, implementasi, dan pengujian. Data dari studi literatur dan penelitian lapangan digunakan untuk mendukung penelitian, sementara metode pengembangan sistem waterfall digunakan sebagai pendekatan utama. Rancangan sistem diintegrasikan dengan Dart, Flutter, Firebase, dan Stripe, kemudian diuji menggunakan black  box  testing  untuk  memvalidasi  fungsionalitasnya.  Hasil  pengujian  menunjukkan  kesesuaian  aplikasi Ka'Cake  Delivery  dengan  kebutuhan  yang  ditetapkan,  memberikan  pengalaman  yang  mudah,  cepat,  dan memuaskan  bagi  pelanggan  dalam  memesan  dan  menerima  pesanan.  Implementasi  aplikasi  ini  memberikan desain sistem, pengkodean, dan pengujian yang optimal. Publikasi hasil penelitian dilakukan dalam jurnal nasional terakreditasi,  memberikan panduan  yang berguna dalam pengembangan aplikasi  mobile untuk pengiriman dari restoran.
Kata kunci :  Aplikasi Mobile, Dart, Flutter, Firebase, Stripe, Delivery

## 1. PENDAHULUAN
Dalam  dinamika  bisnis  yang  terus  berkembang, pemanfaatan  teknologi  menjadi  kunci  utama  dalam meningkatkan efisiensi operasional dan meningkatkan pengalaman pelanggan. Aplikasi mobile telah menjadi komponen  integral  dalam  ekosistem  bisnis  modern, memainkan  peran  penting  dalam  memfasilitasi interaksi  antara  pelanggan  dan  penyedia  layanan.  Di tengah  tuntutan  akan  kenyamanan  dan  efisiensi, Aplikasi  Mobile  Ka'Cake  Delivery  muncul  sebagai solusi inovatif untuk memenuhi kebutuhan pelanggan dalam  melakukan  pemesanan  dan  mengirimkan pesanan dengan cepat dan efektif.
Tujuan  utama  pembuatan  Aplikasi  Mobile Ka'Cake Delivery adalah untuk memberikan pengalaman yang lebih mudah, cepat, dan memuaskan bagi  pelanggan  dalam  memesan  ataupun  menerima pesanan. Dengan Aplikasi ini, pelanggan dapat dengan mudah  menjelajahi  berbagai  pilihan  kue,  minuman, menyesuaikan pesanan sesuai preferensi  mereka, dan mengatur  pengiriman  sesuai  jadwal  yang  mereka inginkan.  Selain  itu,  Aplikasi  ini  juga  memudahkan penyedia layanan dalam mengelola pesanan, inventaris, dan interaksi dengan pelanggan.
Manfaat  yang  ditawarkan  oleh  Aplikasi  Mobile Ka'Cake Delivery sangatlah beragam. Bagi pelanggan, Aplikasi ini memberikan kemudahan akses, meminimalkan  waktu  tunggu,  dan  meningkatkan kepuasan  pelanggan  melalui  pengalaman  pengguna yang intuitif dan responsif. Sedangkan, bagi penyedia layanan, Aplikasi ini membantu dalam mengoptimalkan proses manajemen pesanan,
meningkatkan  efisiensi  operasional,  dan  memperluas jangkauan pasar mereka melalui platform digital.
Dalam  artikel  ini,  akan  dieksplorasi  bagaimana penggunaan  teknologi  terkini  seperti  Dart,  Flutter, Firebase, dan Stripe mendukung terwujudnya Aplikasi Mobile  Ka'Cake  Delivery.  Dari  desain  antarmuka hingga integrasi sistem pembayaran, kita akan melihat bagaimana  pemanfaatan  teknologi  ini  memberikan kontribusi dalam menciptakan solusi yang memenuhi kebutuhan  pelanggan  dan  memberikan  keunggulan kompetitif bagi penyedia layanan di industri kue.
Pemanfaatan  teknologi  terkini  seperti  Dart, Flutter,  Firebase,  dan  Stripe  menjadi  fondasi  utama dalam pembangunan aplikasi mobile ini. Dart, sebagai bahasa  pemrograman  yang  efisien,  Flutter,  sebagai kerangka  kerja  UI  yang  tangguh,  Firebase,  sebagai platform  pengembangan  aplikasi  yang  menyediakan berbagai  layanan  backend,  dan  Stripe,  sebagai  solusi pembayaran yang aman dan terpercaya, bersatu dalam menciptakan  pengalaman  pengguna  yang  luar  biasa dan menjalankan fungsi aplikasi dengan optimal.
Dengan  pemahaman  yang  mendalam  tentang pemanfaatan  Dart,  Flutter,  Firebase,  dan  Stripe, diharapkan  pembaca  dapat  memperoleh  wawasan yang  lebih  baik  tentang  bagaimana  teknologi  dapat digunakan  secara  efektif  dalam  menciptakan  aplikasi mobile  yang  sukses  dan  relevan  dalam  ekosistem bisnis saat ini.

## 2. TINJAUAN PUSTAKA
Setelah peneliti melakukan penelaahan terhadap beberapa  penelitian  terdahulu,  ada  beberapa  yang memiliki keterkaitan dengan penelitian yang
dilakukan.  Berdasarkan  hasil  penelitian  Putra  M, Kurniawan  D  pada  “Implementasi  Sistem  Reminder Jadwal  pada  eLearning  Moodle  Berbasis  API Menggunakan  Framework  Flutter”  yang  dimana dalam  konteks  ini,  penggunaan  framework  Flutter sebagai alat pengembangan aplikasi mobile memberikan  potensi  besar  untuk  meningkatkan pengalaman  pengguna  dalam  menggunakan  sistem reminder jadwal pada Moodle. Flutter adalah kerangka pengembangan  aplikasi  mobile  open-source  yang dikembangkan  oleh  Google.  Dengan  menggunakan Flutter, pengembang dapat membangun aplikasi yang memiliki antarmuka pengguna menarik, responsif, dan dapat berjalan di berbagai platform [6].
Kemudian  pada  penelitian  Ma  M.,  Wijaya  W.
pada
“PENGEMBANGAN SISTEM BERLANGGANAN APLIKASI DI USERTIP MENGGUNAKAN  STRIPE”  yang  dimana  Usertip juga tidak menerima pembayaran menggunakan kartu kredit  atau  kartu  debit  dikarenakan  belum  adanya sistem  payment  gateway  yang  dapat  menerima  jenis pembayaran  tersebut.  Usertip  juga  tidak  bisa melakukan bisnis dengan pelanggan secara internasional  karena  keterbatasan  dalam  metode pembayaran. Dengan mengimplementasi sistem Stripe pada aplikasi back-end, semua masalah yang dihadapi oleh  pihak  Usertip  dalam  hal  metode  pembayaran, kecepatan  verifikasi,  dan  cakupan  pelanggan  dapat diselesaikan  secara  langsung.  Stripe  adalah  sebuah platform  pembayaran,  aplikasi,  dan  layanan  yang berbasis  API  yang  bisa  diimplementasi  langsung secara  kode  ataupun  no-code.  Stripe  memberikan layanan  verifikasi  pembayaran  secara  otomatis, menerima  hampir  semua  jenis  pembayaran,  dan  bisa memproses  transaksi  dari  seluruh  dunia  tanpa  perlu mengkhawatirkan perbedaan mata uang [2].
Pada  penelitian  Enggar  Krisnada  F.,  Tanone  R. dengan  judul  “Aplikasi  Penjualan  Tiket  Kelas Pelatihan  Berbasis  Mobile  menggunakan  Flutter” dijelaskan  bahwa  Flutter  menggunakan  bahasa pemrograman  Dart  dalam  pengkodean.  Perbedaan framework  Flutter  dengan  yang  lainnya  yaitu  dalam build  aplikasi,  pada  framework  ini  semua  kodenya dikompilasi  dalam  kode  native-nya  (Android  NDK, LLVM,  AOT-compiled)  tanpa  ada  interpreter  pada prosesnya  sehingga  proses  kompilasi  menjadi  lebih cepat [9].
Penelitian  Izzuddin  A.,  Ramli  M.,  Saringat  M. yang memiliki judul “Development of Road Damage Report  Application  (Road  Repair)”  memiliki  hasil bahwa  bagian  ini  mencerminkan  data  dan  analisis aplikasi Perbaikan Jalan. Tujuan dari proyek ini adalah untuk  mengembangkan  aplikasi  pelaporan  jalan  dan menguji  sistem  yang  dikembangkan.  Ruang  lingkup aplikasi  Perbaikan  Jalan  secara  khusus  dibuat  untuk platform Android, termasuk untuk administrator untuk mengelola keluhan, tugas, dan kontraktor. Aplikasi ini dikembangkan  dengan  menggunakan  Dart  dengan Flutter bersama Firebase sebagai basis datanya [8].
Android Studio IDE, yang menggunakan bahasa pemrograman Dart untuk sisi pengguna back-end dan sistem  front-end.  Panel  Administrator  Pemantauan Mandiri  Layanan  Kesehatan  Seluler  dikembangkan dalam  kerangka  Flutter  dan  bahasa  Dart.  Firebase digunakan  untuk  menyiapkan  sistem  yang  diusulkan dengan  prosedur  keamanan  dan  pemulihan  yang ditentukan  sepenuhnya  [1].  Setelah  melakukan identifikasi  masalah,  selanjutnya  merumuskan  dari permasalahan tersebut. Hasil dari perumusan masalah yaitu  pembentukan  sistem  [3].  Dart  adalah  bahasa pemrograman yang dioptimalkan klien untuk aplikasi pada  berbagai  platform.  Bahasa  ini  dikembangkan oleh  Google  dan  digunakan  untuk  membangun aplikasi seluler, desktop, server, dan web. Dart adalah bahasa yang berorientasi objek, berbasis kelas, dengan sintaks  C-style.  Dart  dapat  dikompilasi  ke  kode  asli atau  JavaScript.  Ini  mendukung  antarmuka,  mixin, kelas  abstrak,  generik  reified,  dan  tipe  inferensi. Flutter adalah Mobile App SDK (Software Development  Kit)  untuk  membuat  aplikasi  Android dan  iOS  dari  satu  codebase  dengan  performa  tinggi. Artinya  kita  hanya  perlu  mempelajari  Flutter  untuk membangun aplikasi mobile untuk dua platform. Versi pertama  Flutter  dikenal  sebagai  "Sky"  dan  berjalan pada  sistem  operasi  Android.  Diresmikan  pada perhelatan Dart developer summit tahun 2015, dengan tujuan untuk mampu merender grafis secara konsisten pada  120  fps  [4].  Flutter  merupakan  perangkat  UI seluler  dari  Google  untuk  membuat  antarmuka  yang cantik  untuk  aplikasi  mobile  yaitu  Android  dan  iOS. Eksperimen  yang  dilakukan  menggunakan  Flutter sangat  cepat  dan  mudah  seperti  membuat  UI, menambahkan  fitur-fitur  yang  diperlukan  dan memperbaiki  bug  [5].  Firebase  adalah  API  yang disediakan Google untuk penyimpanan dan penyelarasan  data  ke  dalam  aplikasi  Android,  iOS, atau  web.  Firebase  memiliki  banyak  fitur  seperti authentication, database, storage, hosting, pemberitahuan dan lain-lain [7].
Dengan merangkum penelitian-penelitian sebelumnya  serta  teknologi  yang  digunakan,  jelas terlihat  bahwa  pengembangan  aplikasi  menggunakan Flutter  dan  Dart  memberikan  banyak  keuntungan, termasuk performa yang tinggi, kemudahan pengembangan,  serta  kemampuan  untuk  berjalan  di berbagai  platform.  Firebase  sebagai  backend  juga menyediakan  fitur  yang  lengkap  untuk  mendukung kebutuhan  aplikasi  modern.  Kombinasi  ini  sangat relevan  dalam  konteks  pengembangan  aplikasi pemantauan  mandiri  layanan  kesehatan  seluler  yang memerlukan  performa  tinggi  dan  keamanan  yang terjamin.

## 3. METODE PENELITIAN
Adapun  metode  yang  kami  gunakan  dalam penelitian ini ialah mencakup hal-hal berikut :

## 3.1. Diagram Alir Penelitian
Gambar 1. Diagram alir peneltian
Pengembangan aplikasi mobile Ka'Cake Delivery  melibatkan  serangkaian  langkah  yang dimulai  dengan  persiapan,  di mana  peneliti mengumpulkan data dari studi literatur dan penelitian lapangan.  Tujuannya  adalah  untuk  mendukung penelitian  dengan  mengumpulkan  informasi  teoritis yang relevan dengan topik yang dibahas. Setelah tahap persiapan,  langkah  berikutnya  adalah  merancang konsep penelitian menggunakan metode
pengembangan  sistem  waterfall  sebagai  pendekatan utama.
Selanjutnya,  pada  tahap  desain  sistem,  akan dibuat  rancangan  untuk  mengintegrasikan  Dart, Flutter, Firebase, dan Stripe ke dalam aplikasi mobile Ka’Cake  Delivery.  Rancangan  ini  kemudian diimplementasikan dalam kode program menggunakan  bahasa  pemrograman  Dart.  Tahapan selanjutnya  adalah  pengujian  sistem  yang  dilakukan
oleh  tim  pengembang  aplikasi  mobile  Ka'Cake Delivery untuk memastikan kesesuaian sistem dengan kebutuhan yang telah ditetapkan.
Pengujian  fungsional  dilakukan  menggunakan metode  black  box  testing  untuk  memvalidasi fungsionalitas  sistem  dan  memastikan  bahwa  sistem dapat  beroperasi  sesuai  dengan  spesifikasi  use  case. Setelah  implementasi  aplikasi  selesai,  dilakukan pembuatan  artikel  penelitian  dan  publikasi  hasil penelitian dalam jurnal nasional terakreditasi.
Tahapan  ini  merupakan  tahap  terakhir  dalam proses  pengembangan  aplikasi  Ka'Cake  Delivery,  di mana hasil penelitian dapat dijadikan sebagai pedoman dalam pengembangan aplikasi mobile untuk pengiriman  dari  restoran  dan  jenis  pengantaran lainnya. Implementasi aplikasi menjadi tahap di mana program  telah  selesai  dalam  hal  desain  sistem, pengkodean,  dan  pengujian  aplikasi,  dan  siap  untuk digunakan.  Tahap  terakhir  adalah  pembuatan  artikel penelitian dan publikasi  hasil penelitian dalam jurnal dengan peringkat SINTA 5.

## 3.2. Metode Pengembangan Sistem

## Gambar 2. Metode Air Terjun (Waterfall)
Metode yang dipilih untuk pengembangan sistem adalah  metode  air  terjun  (waterfall).  Metode  ini  juga dikenal sebagai pendekatan sekuensial linier atau alur hidup  klasik,  yang  mengikuti  serangkaian  langkah berurutan  mulai  dari  analisis,  desain,  pengkodean, pengujian, hingga tahap pendukung. Dengan menerapkan metode air terjun, pengembangan sistem dijalankan dengan struktur yang terorganisir, di mana setiap  tahap  harus  diselesaikan  sepenuhnya  sebelum memasuki tahap berikutnya.

## 3.3. Analisis Kebutuhan Sistem
Analisis  kebutuhan  sistem  untuk  aplikasi  ini mencakup  beberapa  komponen  utama  yang  harus dipertimbangkan  dengan  cermat.  Pertama,  karena aplikasi menggunakan Stripe sebagai media pembayaran, ada kebutuhan untuk memastikan bahwa sistem  mendukung  pengembangan  dan  peluncuran aplikasi untuk platform Android dan iOS. Oleh karena itu,  aplikasi  harus  dapat  berjalan  minimal  pada Android  5.0  atau  versi  yang  lebih  baru,  dan  iOS  13 atau versi yang lebih baru.
Kedua,  penggunaan  Firebase  sebagai  media penyimpanan  data  menuntut  infrastruktur  yang  dapat mengelola dan menyimpan data pengguna secara aman dan  andal.  Sistem  harus  mampu  mengintegrasikan Firebase  dengan  aplikasi  dan  memastikan  koneksi yang  stabil  untuk  mengakses  dan  menyimpan  data pengguna dengan tepat waktu.
Terakhir,  penggunaan  API  Gemini  untuk  fitur chat  bot  menambahkan  dimensi  interaksi  pengguna tambahan.  Sistem  harus  dapat  mengintegrasikan  API Gemini  dengan  aplikasi,  memungkinkan  interaksi pengguna  yang  mulus  dengan  bot,  dan  memastikan ketersediaan layanan chatbot yang stabil dan responsif.
Secara keseluruhan, kebutuhan sistem mencakup kemampuan  untuk  menjalankan  aplikasi  dengan dukungan  untuk  platform  Android  dan  iOS  yang ditentukan,  integrasi  yang  solid  dengan  Firebase, Stripe,  dan  API  Gemini,  serta  menjaga  koneksi internet  yang  stabil  untuk  memastikan  fungsionalitas yang  mulus.  Dengan  memperhatikan  semua  ini, pengembang dapat merencanakan dan mengimplementasikan  sistem  dengan  memenuhi kebutuhan yang ditetapkan dan memberikan pengalaman pengguna yang memuaskan.

## 3.4. Pengkodean
Desain  sistem  diimplementasikan  dalam  bentuk perangkat  lunak,  menghasilkan  program  komputer sesuai dengan desain yang telah disusun sebelumnya. Dalam  konteks  penelitian  ini,  implementasi  kode dilakukan dengan menggunakan bahasa pemrograman Dart.

## 3.5. Pengujian Sistem
Pengujian  memiliki  peran  yang  sangat  penting dalam  proses  pengembangan  perangkat  lunak. Tujuannya  adalah  untuk  memastikan  kualitas  produk dan  mengidentifikasi  kelemahan  dalam  sistem  yang sedang  dikembangkan.  Melalui  pengujian,  kita  dapat memverifikasi  bahwa  sistem  yang  dibuat  memenuhi standar  kualitas  yang  telah  ditetapkan  sebelumnya. Dalam konteks ini, metode pengujian yang digunakan adalah  black  box  testing,  yang  memungkinkan pengujian  fungsionalitas  sistem  tanpa  memerlukan pengetahuan tentang struktur internalnya.

## 4. HASIL DAN PEMBAHASAN

## 4.1 Hasil
Hasil yang diperoleh setelah melakukan beberapa penelitian  adalah  mobile  aplikasi  Ka’Cake  Delivery yang  telah  diterapkan  dengan  menggunakan  Dart, Flutter,  Firebase  dan  Stripe.  Aplikasi  mobile  ini dimaksudkan  untuk  memudahkan  dalam  melakukan transaksi  pada  restaurant  Ka’Cake.  Aplikasi  mobile Ka’Cake  Delivery  dapat  dikatakan  siap  digunakan apabila  telah  mencapai  tujuan  utamanya  untuk memberikan  pengalaman  yang  nyaman  dan  efisien bagi  pengguna  dalam  melakukan  transaksi  di restaurant  Ka’Cake.  Keberhasilan  aplikasi  Ka’Cake Delivery dapat diukur dengan sejauh mana ia mampu memberikan kemudahan dan efisiensi dalam pengalaman transaksi kepada pengguna, mempersembahkan  sebuah  solusi  yang  tangkas  dan andal dalam konteks pembelian kue ataupun minuman di  restaurant  Ka’Cake.  Berikut  merupakan  uraian tampilan  Mobile  Aplikasi  Ka’Cake  Delivery  yang telah berhasil dibuat :
4.2 Halaman Awal
Gambar 3. Tampilan Halaman Awal
Pada  gambar  3  menunjukkan  tampilan  halaman awal aplikasi mobile Ka’cake Delivery ketika pertama kali  dibuka,  halaman  ini  akan  menampilkan  3  slide yang mendeskripsikan tentang aplikasi.

## 4.3 Halaman Login
Pada  halaman  login  akun  akan  berisi  2  pilihan untuk  pengguna,  yaitu Login atau Sign  Up .  Bagian Login bisa  digunakan  oleh  pengguna  apabila  sudah memiliki  akun  sebelumnya,  dimana  pengguna  akan langsung memasukkan Email dan password pengguna untuk  akun  yang  sudah  dibuat.  Terdapat  juga  bagian “Forgot Password?” apabila pengguna lupa password akun  yang  telah  dibuat  sebelumnya.  Bagian Sign  Up bisa digunakan oleh pengguna apabila belum membuat atau  belum  memiliki  akun  sebelumnya.  Pengguna akan  mengisi  Nama  Pengguna,  Alamat,  Email  dan Password untuk akun yang dibuat.
Gambar 4. Tampilan Login dan sign up Pengguna

## 4.4 Halaman Home
Gambar 5. Tampilan Halaman Home Aplikasi
Gambar  5  menampilkan  bagian  Home  aplikasi akan  menunjukkan  beberapa  kue  dan  minuman  yang tersedia  di  Ka’Cake.  Terdapat  juga  keranjang  pada bagian  ini.  Dimana  ketika  produk  di  buka  maka  bisa dimasukkan  ke  dalam  keranjang  sebelum  dilakukan transaksi.

## 4.5 Halaman Produk
Gambar 6. Tampilan Produk
Gambar 6 menunjukkan tampilan ketika produk dipilih.  Akan  tampil  deskripsi  produk  dan  juga harganya.  Tersedia  juga  bagian  untuk  pengguna menambah jumlah produk dan memasukkan produk ke dalam keranjang.

## 4.6 Halaman Keranjang Pengguna
Bagian keranjang akan berisi produk yang sudah dimasukkan  oleh  pengguna  sebelumnya.  Terdapat jumlah produk dan juga total harga produk pada bagian ini.
Gambar 7. Tampilan Keranjang

## 4.7 Halaman Pembayaran
Gambar  8  menampilkan  bagian  pembayaran ketika pelanggan ingin melakukan pembelian produk. Pada  bagian  pembayaran,  pengguna  memasukkan harga  produk  dan  memasukkan  beberapa  informasi seperti kartu untuk melakukan pembayaran.

## 4.8 Halaman ChatBot
Pada aplikasi mobile Ka’Cake Delivery terdapat fitur  chatbot  untuk  pengguna  dapat  memberikan pertanyaan  mengenai  makanan  atau  minuman  yang ada di restaurant Ka’cake Delivery. Pertanyaan dapat berupa  resep  ataupun  penjelasan  makanan  tersebut. Chatbot  ini  hanya  bisa  digunakan  untuk  bertanya perihal  restaurant  Ka’cake,  contohnya  resep  ataupun lainnya. Apabila pertanyaan yang diberikan pengguna diluar  restaurant  Ka’cake,  maka  Chatbot  tidak  akan bisa  menampilkan  jawaban  untuk  pertanyaan  yang diberikan oleh pengguna tersebut.

## Gambar 9. Chatbot pada Aplikasi

## 4.9 Halaman Akun
Halaman akun berisi informasi pengguna seperti Nama,  Email  dan  Alamat  Pengguna.  Terdapat  pula bagian untuk menghapus akun dan fitur Logout.

## Gambar 10. Halaman Akun Pengguna

## 4.10 Pembahasan
Dari  hasil  yang  telah  ditunjukkan  oleh  penulis, selanjutnya  aplikasi  akan  dilakukan  pengujian  [10]. Pengujian  dilakukan  dengan  menggunakan  metode black  box untuk  menguji  fungsionalitas  aplikasi berjalan  dengan  baik.  Pengujian  dilakukan  terutama untuk fitur-fitur utama dalam aplikasi agar tidak terjadi kegagalan sistem. Berikut beberapa hal yang diuji pada aplikasi mobile Ka’Cake Delivery yang telah dibuat

## 4.11 Pengujian Halaman Sign Up dan Login
Gambar 11. Pengisian Halaman Sign Up
Gambar  11  menunjukkan  pengujian  untuk menggunakan  bagian  Sign  Up  aplikasinya.  Setelah pengguna  memasukkan  informasinya,  maka  datanya akan masuk seperti pada Gambar 12 berikut.
Gambar 12. Berhasil Menambahkan Data
4.12 Pengujian Memasukkan Produk Ke
Keranjang

## Gambar 13. Menambahkan Produk Kedalam
Keranjang
Pada Gambar 13 menunjukkan bahwa fitur untuk memasukkan  produk  ke  dalam  keranjang  berfungsi dengan baik, terlihat bahwa produk tersebut masuk ke dalam  keranjang  sesuai  dengan  jumlah  yang dimasukkan  oleh  pengguna.  Pada  keranjang  juga ditampilkan  total  dari  harga  produknya.  Untuk melakukan  pembelian,  pelanggan  dapat  memilih tombol “Checkout” untuk melakukan transaksi produk dan membayar.

## 4.13 Pengujian Pemesanan Produk
Gambar 14. Halaman Memasukkan Jumlah Uang Untuk Dompet
Gambar 15. Halaman Pembayaran Dompet
Gambar 16. Berhasil Melakukan Checkout
Setelah  pengguna  memilih  “CheckOut”  pada keranjang,  maka  akan  masuk  ke  bagian  pembayaran. Pada  bagian  pembayaran,  pengguna  akan  mengisi harganya,  lalu  mengisi  informasi  dan  melakukan pembayaran. Setelah pengguna melakukan pembayaran, maka uang pengguna akan berkurang dan produk yang diinginkan berhasil dipesan dan juga akan diantarkan oleh kurir dari restaurant Ka’Cake.

## 4.14 Pengujian ChatBot
Pengujian pengguna yang menunjukkan “Berhasil”  dan  “Gagal"  untuk  chatbot  pada  website Ka’Cake  delivery  ditunjukkan  pada  tabel  berikut. Dimana  akan  dikatakan  berhasil  apabaila  chatbot memberikan  hasilnya  dan  akan  dikatakan  gagal apabila chatbot tidak dapat memberikan jawaban atas pertanyaan yang diberikan.
Tabel 1. Scenario Hasil Uji ChatBot
No Skenario Pengujian Hasil yang diberikan Status 1 Pengguna bertanya tentang bahan-bahan kue tertentu Chatbot memberikan daftar bahan-bahan kue tersebut Berhasil 2 Pengguna meminta resep kue tertentu Chatbot memberikan resep dan cara membuatnya Berhasil 3 Pengguna meminta rekomendasi kue berdasarkan preferensi rasa tertentu Chatbot memberikan rekomendasi kue Berhasil 4 Pengguna bertanya tentang promosi dan diskon Chatbot menyatakan tidak dapat menjawab pertanyaan diluar food/beverage Gagal 5 Pengguna bertanya siapa menteri bidang tertentu saat ini Chatbot menyatakan tidak dapat menjawab pertanyaan diluar food/beverage Gagal 6 Pengguna bertanya mengenai jam operasional restaurant Ka’cake Chatbot menyatakan tidak dapat menjawab pertanyaan diluar food/beverage Gagal
Gambar 17. Melakukan Pengujian Chat terhadap Chatbot
Pada  gambar  17  menunjukkan  hasil  dari pengguna yang melakukan chat terhadap chatbot yang kemudian  chatbot  menampilkan  hasil  dari  apa  yang ditanyakan  oleh  pengguna,  kemudian  chatbot  ini hanya  akan  menjawab  seputar  Food&Beverage  yang dmana  jika  diluar  dari  seputar  hal  tersebut,  maka chatbot tidak dapat menjawabnya.

## 4.15 Pengujian Pengguna/User
Pengujian  pengguna  atau  user  testing  adalah langkah  penting  untuk  memastikan  bahwa  aplikasi Ka’Cake Delivery dapat digunakan dengan mudah dan efisien oleh pengguna akhir. Pengujian ini melibatkan pengguna  nyata  untuk  menguji  berbagai  aspek  dari aplikasi,  mulai  dari  antarmuka  pengguna  hingga fungsionalitas utama. Berikut adalah tahapan dan hasil
dari  pengujian  pengguna  pada  aplikasi  Ka’Cake Delivery:
1. Metodologi Pengujian
a. Pemilihan Peserta : Sepuluh pengguna dipilih secara  acak  dari  pelanggan  restoran  Ka’Cake yang beragam dalam hal usia dan pengalaman teknologi. Tujuannya adalah untuk mendapatkan  umpan  balik  yang  representatif dari basis pengguna yang luas.
b. Skenario  Pengujian :  Pengguna  diberikan beberapa skenario untuk diselesaikan, termasuk:
 Mendaftar dan masuk ke dalam aplikasi.
 Menjelajahi  produk  yang  tersedia  dan menambahkannya ke keranjang belanja.
 Melakukan transaksi pembelian dan pembayaran menggunakan Stripe.
 Menggunakan fitur chatbot untuk mendapatkan informasi produk.
 Mengakses  dan  memperbarui  informasi akun.
c. Pengumpulan  Data :  Data  dikumpulkan melalui  observasi  langsung,  wawancara,  dan survei yang diisi oleh pengguna setelah mereka menyelesaikan skenario pengujian.
2. Hasil Pengujian
a. Kemudahan Penggunaan :
 Halaman Registrasi dan Login : Mayoritas pengguna  menemukan  halaman  registrasi dan  login  mudah  digunakan,  dengan instruksi  yang  jelas.  Beberapa  pengguna mengusulkan  tambahan  petunjuk  visual untuk  membantu  pengguna  yang  kurang berpengalaman dalam teknologi.
 Observasi : Waktu rata-rata untuk mendaftar adalah 2 menit, dan untuk login adalah 1 menit.
 Umpan  Balik :  90%  pengguna  merasa prosesnya intuitif.
b. Navigasi Produk :
 Menjelajahi  dan  Menambah  Produk  ke Keranjang : Pengguna dapat dengan mudah menemukan produk, melihat detailnya, dan menambahkannya ke keranjang.
 Observasi :  Pengguna  dapat  menambah produk  ke  keranjang  dalam  waktu  kurang dari 1 menit per produk.
 Umpan Balik : 85% pengguna puas dengan navigasi aplikasi.
c. Proses Pembayaran :
 Pembayaran  dengan  Stripe :  Pengguna melaporkan proses pembayaran yang lancar dan aman. Beberapa pengguna menginginkan lebih banyak opsi pembayaran lokal.
 Observasi : Rata-rata waktu untuk menyelesaikan pembayaran adalah 3 menit.
 Umpan  Balik :  80%  pengguna  merasa prosesnya efisien, namun
20%
mengusulkan tambahan
metode pembayaran.
d. Penggunaan Chatbot :
 Interaksi  dengan  Chatbot :  Pengguna dapat  dengan  mudah  berinteraksi  dengan chatbot  untuk  mendapatkan  informasi tentang produk. Beberapa pengguna melaporkan bahwa respons chatbot terkadang terlalu umum.
 Observasi : Rata-rata waktu respons chatbot adalah kurang dari 10 detik.
 Umpan  Balik :  75%  pengguna  merasa chatbot bermanfaat, namun 25% menginginkan jawaban yang lebih spesifik.
e. Akses dan Pembaruan Informasi Akun :
 Manajemen Akun : Pengguna dapat dengan mudah mengakses dan memperbarui  informasi  akun  mereka.
Beberapa pengguna
mengusulkan penambahan fitur pengingat untuk memperbarui informasi secara berkala.
 Observasi : Waktu rata-rata untuk memperbarui  informasi  akun  adalah  2 menit.
 Umpan Balik : 88% pengguna merasa fitur ini mudah digunakan.

## 5. KESIMPULAN DAN SARAN
Kesimpulan dari pengembangan aplikasi Ka’Cake Delivery dengan menggunakan Dart, Flutter, Firebase, dan Stripe adalah penciptaan platform yang memudahkan transaksi di restoran Ka’Cake. Aplikasi ini memberikan pengalaman berbelanja yang nyaman dan efisien dengan antarmuka intuitif dan proses yang efektif. Pengujian pengguna menunjukkan kemudahan penggunaan  dan  pemenuhan  kebutuhan  pengguna, meskipun masih ada ruang untuk peningkatan seperti penambahan petunjuk visual, perluasan opsi pembayaran, dan peningkatan respons chatbot. Untuk pengembangan  selanjutnya,  disarankan  melakukan pengujian black box pada fitur utama seperti sign up, login, penambahan produk ke keranjang, pemesanan, dan chatbot untuk memastikan fungsionalitas berjalan baik.  Dengan  demikian,  aplikasi  ini  dapat  menjadi solusi  andal  bagi  pengguna  dalam  bertransaksi  di restoran Ka’Cake.

## DAFTAR PUSTAKA
[1]  C. T. Foo and S. A. Ishak, “A Mobile Application for Healthcare Self-Monitoring,” Applied Information Technology And Computer Science , vol.  4,  no.  1,  pp.  270–289,  2023,  doi: 10.30880/aitcs.2023.04.01.017.
[2]   matul Ma and W. Wijaya, “PENGEMBANGAN SYSTEM  BERLANGGANAN  APLIKASI  DI USERTIP MENGGUNAKAN STRIPE,” 2024.
[3]  L.  Suryadila,  F.  Okmayura,  F.  Hasanah,  E. Santia,  Y.  R.  Dawita,  and  T.  M.  Saputra, “PEMODELAN
UML UNTUK PERANCANGAN SISTEM PAKAR
MENDETEKSI  KERUSAKAN  PADA  MOBIL MITSUBISHI  COLT  L300  MENGGUNAKAN PENDEKATAN  CERTAINTY  FACTOR,”
2024.
[4]  M. Hendriawan, T. Budiman, V. Yasin, and A. S. Rini,  “PENGEMBANGAN  APLIKASI  E- COMMERCE  DI  PT.  PUTRA  SUMBER ABADI MENGGUNAKAN FLUTTER,” Journal  of  Information  System,  Informatics  and Computing ,  vol.  5,  no.  1, p. 69,  Jun.  2021,  doi: 10.52362/jisicom.v5i1.371.
[5]  S.  Ernawati et  al. ,  “PENERAPAN  MODEL FOUNTAIN UNTUK PENGEMBANGAN APLIKASI TEXT RECOGNITION DAN TEXT TO SPEECH BERBASIS ANDROID
MENGGUNAKAN FLUTTER.”
[6]  M. Y. Putra, D. E. Kurniawan, J. T. Informatika, and N. Batam, “Implementasi Sistem Reminder Jadwal  pada  eLearning  Moodle  Berbasis  API Menggunakan  Framework  Flutter,” JOURNAL OF  APPLIED  COMPUTER  SCIENCE  AND TECHNOLOGY  (JACOST) ,  vol.  4,  no.  1,  pp. 2723–1453, 2023, doi: 10.52158/jacost.490.
[7]  P.  Richard  George,  T.  Radius,  “Penerapan Firebase  Realtime Database  Pada Prototype Aplikasi Pemesanan Makanan Berbasis Android,” Jurnal Teknik Informatika dan Sistem
Informasi , vol. 5, no. 3, Des. 2018, doi:10.28932/jutisi.v4i3.870.
[8]  A.  Izzuddin,  M.  Ramli,  and  M.  Z.  Saringat, “Development  of  Road  Damage  Report Application (Road Repair),” Applied Information Technology And Computer Science , vol. 3, no. 2, pp. 944–960, 2022, doi:
10.30880/aitcs.2022.03.02.057.
[9]  F.  Enggar  Krisnada  and  R.  Tanone,  “Aplikasi Penjualan Tiket Kelas Pelatihan Berbasis Mobile menggunakan Flutter,” Jurnal Teknik
Informatika dan Sistem Informasi , vol. 5, no. 3, Jan. 2020, doi: 10.28932/jutisi.v5i3.1865.
[10]  A.  Bachtiar,  S.  Lestanti,  and  S.  N.  Budiman, “RANCANG
BANGUN
APLIKASI
DIAGNOSIS
KERUSAKAN
MESIN PHOTOCOPY  DENGAN  MENGGUNAKAN METODE  DEMPSTER  SHAFER  DI  SISWA
FOTOCOPY  &  PRINTING  KOTA  BLITAR,” 2024.