PRD Unocoffee Express - versi 1.0 · siap cetak A4
Unocoffee Express
Product Requirements Document

Sistem Operasional & Keuangan
Unocoffee Express

Pesanan · Produksi · Transfer Antar Rider · Keuangan · Peta Pelanggan

KlienUnocoffee Express - Samarinda
Domain produksiunocoffee.id
Versi dokumen1.0 (draf untuk persetujuan)
Tanggal18 Agustus 2026
StatusMenunggu persetujuan klien
Dokumen ini menjadi dasar kesepakatan lingkup pekerjaan, kriteria penerimaan, dan jadwal. Setelah ditandatangani, setiap perubahan di luar isinya ditangani sebagai permintaan tambahan beserta dampaknya terhadap waktu pengerjaan.

-Daftar Isi

  1. Ringkasan Eksekutif
  2. Latar Belakang & Kondisi Saat Ini
    • 2.1 Cara kerja sekarang
    • 2.2 Masalah yang dirasakan
    • 2.3 Catatan
  3. Tujuan & Ukuran Keberhasilan
  4. Ruang Lingkup
    • 4.1 Termasuk
    • 4.2 Tidak termasuk
    • 4.3 Keputusan klien yang sudah ditetapkan
  5. Pengguna & Peran
  6. Alur Proses Utama
    • 6.1 Pesanan stok
    • 6.2 Transfer antar rider
    • 6.3 Setoran harian
    • 6.4 Berbagi lokasi & pelanggan
  7. Kebutuhan Fungsional
    • 7.1 M1 - Pelanggan & Lokasi
    • 7.2 M2 - Katalog & Konten
    • 7.3 M3 - Pesanan
    • 7.4 M4 - Produksi Harian
    • 7.5 M5 - Transfer Antar Rider
    • 7.6 M6 - Keuangan
    • 7.7 M7 - Pengguna & Hak Akses
  8. Matriks Hak Akses
  9. Kebutuhan Non-Fungsional
  10. Fase & Jadwal
  11. Kriteria Penerimaan (UAT)
  12. Asumsi & Batasan
  13. Lampiran
    • 13.1 Glosarium
    • 13.2 Kamus data ringkas

1.Ringkasan Eksekutif

Unocoffee Express mengoperasikan delapan gerobak kopi keliling di Samarinda. Setiap hari ada empat arus yang harus dikendalikan: pesanan stok dari rider ke dapur produksi, hasil produksi yang dibagi ke tiap gerobak, perpindahan stok antar gerobak ketika satu gerobak kehabisan sementara yang lain berlebih, dan setoran uang yang kembali dari lapangan di penghujung hari.

Saat ini keempat arus itu berjalan lewat percakapan dan catatan lepas. Belum ada sistem yang dipakai harian, sehingga tidak ada satu pun angka yang bisa dipercaya tanpa bertanya ulang: berapa yang diminta rider, berapa yang benar-benar diproduksi, ke mana stok berpindah, dan berapa yang sungguh disetor.

Dokumen ini mendefinisikan sistem yang dibangun dari nol di unocoffee.id, mencakup sisi pelanggan (mencari gerobak terdekat) dan sisi operasional (pesanan, produksi, transfer antar rider, dan keuangan) dengan lima peran: Superadmin, Admin, Produksi, Finance, dan Rider.

Hasil yang diharapkan setelah sistem berjalan

  1. Setiap setoran harian tercatat dengan rincian cash/QRIS dan bukti unggahan, serta melewati proses audit sebelum dianggap sah.
  2. Selisih antara pesanan dan hasil produksi aktual terlihat setiap hari, per gerobak, tanpa rekap manual.
  3. Setiap perpindahan stok antar gerobak punya riwayat yang bisa ditelusuri.
  4. Rekap keuangan harian, mingguan, dan bulanan tersedia kapan saja bagi Finance tanpa perlu meminta data ke siapa pun.
  5. Jam aktif tiap gerobak tercatat otomatis sejak rider menekan tombol berbagi lokasi, dan pada saat yang sama pelanggan bisa menemukan gerobak terdekat.

2.Latar Belakang & Kondisi Saat Ini

2.1 Cara kerja sekarang

KegiatanCara yang berjalan hari iniAkibatnya
Pelanggan mencari gerobakBertanya lewat media sosial atau kebetulan berpapasanGerobak menunggu di titik yang salah; pelanggan tidak tahu yang terdekat
Rider memesan stokPesan pribadi ke tim produksiTidak ada antrean, tidak ada bukti kapan diminta
Persetujuan pesananLisanTidak jelas siapa menyetujui apa
Produksi harianCatatan di buku atau notaJumlah yang benar-benar dibuat tidak pernah dibandingkan dengan yang diminta
Pembagian hasil produksiDiingat atau dicatat lepasSulit menelusuri siapa menerima berapa
Pemindahan stok antar gerobakKesepakatan lisan di jalanTidak ada catatan; saat setoran tidak cocok, sulit ditelusuri
Jam operasi gerobakTidak tercatatTidak diketahui gerobak mana berjualan berapa lama
Setoran harianUang tunai + foto bukti tersebar di percakapanCash dan QRIS bercampur, bukti sulit dicari ulang
Rekap keuanganDirekap manual saat dibutuhkanMemakan waktu, rawan salah hitung

2.2 Masalah yang dirasakan

2.3 Catatan

Sebuah prototipe internal telah dibuat lebih dulu sebagai bahan diskusi arah tampilan dan alur kerja. Prototipe tersebut bukan produk yang dipakai operasional, tidak menyimpan data sungguhan, dan tidak menjadi bagian dari lingkup penyerahan.

3.Tujuan & Ukuran Keberhasilan

#TujuanUkuran keberhasilanCara diukur
T-1Seluruh setoran harian tercatat digital≥ 95% hari-gerobak terisi dalam 30 hari pertamaJumlah setoran terkirim ÷ (jumlah rider aktif × hari operasi)
T-2Setiap setoran punya bukti dan status audit100% setoran berstatus diterima atau dikembalikan dalam 1×24 jamLaporan status setoran
T-3Selisih rencana vs aktual produksi terlihat harianTersedia di rekap tanpa pengolahan manualHalaman Rekap Harian
T-4Perpindahan stok antar gerobak terlacak100% transfer tercatat dan terkonfirmasi penerimaRiwayat transfer
T-5Waktu menyusun rekap harianDari ±60 menit manual menjadi < 2 menitPerbandingan sebelum dan sesudah bersama Finance
T-6Pesanan stok punya jejak waktu100% pesanan memiliki waktu ajuan, ACC, dan penyelesaianRiwayat pesanan
T-7Jam aktif gerobak terekam≥ 90% hari operasi tiap rider memiliki sesi berbagi lokasiRekaman harian rider
T-8Pelanggan dapat menemukan gerobakPeta tersedia ≥ 99% jam operasionalPemantauan ketersediaan

4.Ruang Lingkup

4.1 Termasuk

ModulIsi
M1 - Pelanggan & LokasiHalaman publik (profil, menu, kontak), peta posisi gerobak yang sedang beroperasi beserta petunjuk arah, serta halaman rider untuk menyalakan/mematikan berbagi lokasi dan rekaman harian jam aktifnya.
M2 - Katalog & KontenPengelolaan daftar produk (nama, kategori, satuan, harga, foto) dan konten halaman publik.
M3 - PesananRider mengajukan permintaan stok dari katalog; Admin menyetujui atau menolak; Produksi menerima dan mengerjakan.
M4 - Produksi HarianLaporan total produksi per hari, alokasi ke tiap rider, sisa, dan bukti produksi.
M5 - Transfer Antar RiderPencatatan perpindahan cup dari satu rider ke rider lain, konfirmasi penerima, dan riwayatnya.
M6 - KeuanganSetoran harian per rider (total, cash, QRIS), pengeluaran, unggahan bukti, audit oleh Admin, dan rekap untuk Finance.
M7 - Pengguna & Hak AksesPembuatan akun oleh Superadmin, penetapan peran dan nomor gerobak, penonaktifan akun, serta pembatasan akses per peran.

4.2 Tidak termasuk

Di luar lingkupKeterangan
Pembayaran online / payment gatewayTransaksi tetap tunai dan QRIS milik klien; sistem hanya mencatat nominalnya.
Akuntansi penuh (jurnal, neraca, laba-rugi, pajak)Sistem menyediakan rekap operasional, bukan pembukuan akuntansi.
Penggajian dan komisi riderRekaman jam aktif tersedia, tetapi perhitungan gaji di luar lingkup.
Manajemen stok bahan baku (gula, susu, biji kopi)Fase ini menghitung produk jadi, bukan bahan mentah.
Aplikasi mobile native (Play Store / App Store)Sistem berbasis web yang dioptimalkan untuk layar ponsel.
Pelacakan lokasi di luar sesi berbagiSistem hanya merekam posisi selama rider menyalakan berbagi lokasi.
Pemesanan oleh pelanggan akhir (delivery / online order)Pelanggan hanya melihat lokasi gerobak; pembelian tetap langsung di tempat.

5.Pengguna & Peran

PeranSiapaPerangkatWewenang utama
PelangganMasyarakat umum SamarindaPonsel, tanpa loginMenemukan gerobak terdekat yang sedang beroperasi dan cara menuju ke sana.
RiderPenjaga gerobak (33 rider)Ponsel, di jalanMenyalakan berbagi lokasi, mengajukan pesanan stok, mentransfer cup ke rider lain, dan mengisi setoran setelah kembali.
ProduksiTim dapurPonsel/tablet di lokasi produksiMenerima pesanan yang sudah di-ACC, mengisi hasil aktual, membuat laporan produksi harian beserta alokasinya.
AdminManajer operasional harianLaptop dan ponselMengelola katalog dan konten, ACC/menolak pesanan, mengubah jumlah diminta dan aktual, mengaudit setoran, melihat riwayat transfer dan seluruh rekap. Tidak membuat atau menghapus akun.
SuperadminPemilikLaptop dan ponselSeluruh wewenang Admin, ditambah membuat dan menonaktifkan akun semua peran, menetapkan nomor gerobak, dan mengatur parameter sistem (mis. ambang posisi basi, jam batas pesanan).
FinanceStaf keuanganLaptopMembaca rekap harian dan periode. Tidak dapat mengubah data apa pun.

Prinsip pembatasan: Superadmin satu-satunya pemegang kendali akun dan pengaturan sistem. Admin menjalankan keputusan operasional harian. Finance hanya membaca. Rider hanya melihat datanya sendiri. Produksi tidak melihat data keuangan.

6.Alur Proses Utama

6.1 Alur pesanan stok

RiderAjukan pesanan, default esok hari, paling lambat 23:59
AdminPeriksa & putuskan
ProduksiTerima & kerjakan pesanan
ProduksiInput hasil aktual per produk
SelesaiSelisih rencana vs aktual masuk rekap

Bila ditolak: pesanan kembali ke rider disertai alasan wajib dari Admin.

6.2 Alur transfer antar rider

Rider AKirim transfer: produk, jumlah, tujuan
Rider BMenerima pemberitahuan transfer masuk
Rider BKonfirmasi terima atau tolak
Stok berpindahRiwayat tercatat di kedua sisi
Admin & SuperadminMelihat seluruh riwayat transfer

Bila ditolak: stok tidak berpindah, tetapi penolakan tetap tercatat sebagai riwayat.

6.3 Alur setoran harian

Rider kembaliIsi cash, QRIS, pengeluaran, dan unggah bukti
KirimSetoran masuk antrean audit Admin
AdminTerima atau kembalikan dengan catatan
Angka resmiMasuk rekap harian
FinanceMembaca rekap harian / periode

Bila dikembalikan: setoran terbuka lagi untuk rider perbaiki, lalu dikirim ulang.

6.4 Alur berbagi lokasi & pelanggan

RiderTekan “Mulai berbagi lokasi”
Rekaman harianJam mulai dicatat
PetaGerobak tampil, posisi diperbarui berkala
PelangganLihat gerobak terdekat & buka rute
BerhentiJam selesai & durasi tercatat, gerobak hilang dari peta

Pengaman: posisi yang tidak diperbarui melebihi ambang waktu otomatis dianggap tidak aktif.

7.Kebutuhan Fungsional

Setiap kebutuhan diberi nomor agar dapat dirujuk saat uji terima (bab 11). Prioritas: W wajib   S sebaiknya ada   T tambahan bila waktu memungkinkan.

7.1 M1 - Pelanggan & Lokasi

NoKebutuhanPrio
F-PEL-01Halaman publik menampilkan profil usaha, daftar menu beserta foto, dan kontak (WhatsApp, Instagram).W
F-PEL-02Halaman peta menampilkan posisi seluruh gerobak yang sedang berbagi lokasi, ditandai nomor gerobak.W
F-PEL-03Posisi gerobak diperbarui otomatis tanpa pelanggan perlu memuat ulang halaman.W
F-PEL-04Pelanggan dapat mengizinkan deteksi lokasi, lalu daftar gerobak diurutkan dari yang terdekat beserta jaraknya.W
F-PEL-05Setiap gerobak di peta menyediakan tombol petunjuk arah yang membuka aplikasi peta bawaan ponsel pelanggan.W
F-PEL-06Rider berbagi lokasi lewat halaman web di sistem ini - bukan aplikasi terpisah. Halamannya berupa satu baris tombol: Mulai berbagi lokasi dan Berhenti berbagi, disertai penanda status sedang aktif atau tidak. (K-1)W
F-PEL-07Selama berbagi aktif, posisi rider dikirim otomatis secara berkala tanpa perlu menekan tombol lagi.W
F-PEL-08Gerobak tampil kepada pelanggan hanya selama sesi berbagi aktif. Setelah rider menekan Berhenti, gerobaknya hilang dari peta.W
F-PEL-09Posisi yang tidak diperbarui melebihi ambang waktu (baku: 15 menit, dapat diatur Superadmin) dianggap tidak aktif dan disembunyikan dari peta, sebagai pengaman bila rider lupa menekan Berhenti atau ponselnya mati.W
F-PEL-10Sistem membuat rekaman harian tiap rider yang dihitung sejak tombol Mulai berbagi ditekan: tanggal, jam mulai, jam berhenti, dan durasi aktif. Bila dalam satu hari rider menyalakan dan mematikan berbagi beberapa kali, seluruh sesi tercatat dan durasinya dijumlahkan. (K-3)W
F-PEL-11Admin dan Superadmin dapat melihat rekaman harian tersebut per rider dan per tanggal; rider melihat rekaman miliknya sendiri.W
F-PEL-12Saat tidak ada gerobak beroperasi, halaman pelanggan menampilkan pesan yang jelas, bukan peta kosong tanpa keterangan.W
F-PEL-13Halaman publik dan halaman berbagi lokasi dapat dibuka dengan baik pada layar ponsel.W
F-PEL-14Daftar menu pada halaman publik bersumber dari katalog yang dikelola pada M2, bukan ditulis ulang di kode.S

7.2 M2 - Katalog & Konten

NoKebutuhanPrio
F-KAT-01Admin dan Superadmin dapat menambah, mengubah, dan menonaktifkan produk: nama, kode, kategori, satuan, harga, deskripsi, foto.W
F-KAT-02Produk nonaktif tidak muncul di formulir pesanan rider maupun halaman publik, tetapi tetap tampil pada riwayat pesanan lama.W
F-KAT-03Urutan tampil produk dapat diatur.S
F-KAT-04Teks profil usaha dan kontak pada halaman publik dapat diubah dari dalam sistem.S
F-KAT-05Foto produk yang diunggah otomatis disesuaikan ukurannya agar halaman tetap ringan dibuka di ponsel.S

7.3 M3 - Pesanan

NoKebutuhanPrio
F-PSN-01Rider dapat membuat pesanan dengan memilih produk dari katalog dan mengisi jumlah tiap produk.W
F-PSN-02Tanggal kebutuhan otomatis terisi esok hari. Rider dapat memilih pilihan cepat Esok hari atau menentukan tanggal lain; sistem menolak tanggal hari ini maupun tanggal sebelumnya. (K-6)W
F-PSN-03Pesanan dapat memuat catatan opsional untuk produksi.W
F-PSN-04Pengajuan pesanan ditutup pukul 23:59 WITA. Setelah jam tersebut, pesanan untuk keesokan harinya tidak dapat diajukan lagi dan sistem menjelaskan alasannya. (K-3)W
F-PSN-05Sistem memberi nomor pesanan unik dan berurutan per tanggal (format ORD-YYYYMMDD-NNN).W
F-PSN-06Nama dan harga produk disalin ke dalam pesanan saat dibuat, sehingga perubahan katalog di kemudian hari tidak mengubah riwayat.W
F-PSN-07Rider hanya dapat melihat dan mengubah pesanannya sendiri.W
F-PSN-08Rider dapat membatalkan pesanannya selama status masih menunggu ACC.W
F-PSN-09Admin melihat antrean pesanan yang menunggu persetujuan, lengkap dengan nama rider dan nomor gerobak.W
F-PSN-10Admin dapat menyetujui pesanan (opsional disertai catatan) atau menolaknya dengan alasan wajib.W
F-PSN-11Admin dapat mengubah jumlah diminta dan jumlah aktual pada pesanan, termasuk setelah pesanan disetujui. Setiap perubahan menyimpan nilai sebelumnya, pelaku, dan waktunya. (K-7)W
F-PSN-12Pesanan yang disetujui otomatis muncul di daftar kerja Produksi; pesanan yang belum disetujui tidak terlihat oleh Produksi.W
F-PSN-13Produksi dapat menandai pesanan sebagai sedang diproduksi.W
F-PSN-14Produksi dapat mengisi jumlah aktual per produk. Nilai aktual boleh lebih besar, lebih kecil, atau sama dengan permintaan - selisih dicatat apa adanya dan tidak diperlakukan sebagai kesalahan.W
F-PSN-15Sistem menampilkan ringkasan diminta / aktual beserta selisihnya pada daftar pesanan.W
F-PSN-16Setiap perubahan status pesanan menyimpan waktu dan pelakunya (diajukan, disetujui, diterima produksi, selesai).W
F-PSN-17Daftar pesanan dapat disaring berdasarkan status dan rentang tanggal.S
F-PSN-18Rider menerima penanda ketika pesanannya ditolak atau jumlahnya diubah Admin, beserta alasannya.S

7.4 M4 - Produksi Harian

NoKebutuhanPrio
F-PRO-01Produksi dapat membuat laporan produksi harian berisi tanggal dan total unit yang dibuat.W
F-PRO-02Laporan memuat rincian alokasi: rider penerima, produk (opsional bila campuran), dan jumlah.W
F-PRO-03Sisa produksi dihitung otomatis dari total produksi dikurangi seluruh alokasi, tidak diketik manual.W
F-PRO-04Sisa boleh bernilai minus apabila alokasi melebihi produksi hari itu; sistem menampilkannya apa adanya.W
F-PRO-05Produksi dapat mengunggah bukti produksi berupa foto.W
F-PRO-06Admin dan Superadmin dapat melihat seluruh laporan produksi beserta alokasinya; Produksi hanya dapat mengubah laporan yang dibuatnya sendiri.W
F-PRO-07Rider dapat melihat jumlah yang dialokasikan untuknya pada hari berjalan.S
F-PRO-08Laporan produksi dapat disaring per rentang tanggal.S

7.5 M5 - Transfer Antar Rider

NoKebutuhanPrio
F-TRF-01Rider dapat mencatat transfer stok kepada rider lain: produk, jumlah, rider tujuan, dan catatan opsional. (K-5)W
F-TRF-02Rider tujuan melihat transfer masuk dan mengonfirmasi menerima atau menolaknya, sehingga tidak ada pemindahan sepihak.W
F-TRF-03Transfer yang belum dikonfirmasi berstatus menunggu konfirmasi dan dapat dibatalkan oleh pengirim.W
F-TRF-04Setelah dikonfirmasi, transfer tidak dapat diubah atau dihapus. Koreksi dilakukan dengan transfer balik agar riwayat tetap utuh.W
F-TRF-05Sistem menghitung stok berjalan tiap rider: alokasi produksi + transfer masuk yang dikonfirmasi − transfer keluar yang dikonfirmasi.W
F-TRF-06Rider melihat riwayat transfer masuk dan keluar miliknya sendiri.W
F-TRF-07Admin dan Superadmin dapat melihat seluruh riwayat transfer antar rider, dapat disaring per tanggal, per rider pengirim, dan per rider penerima. (K-5)W
F-TRF-08Setiap transfer menyimpan waktu pengiriman, waktu konfirmasi, dan pelaku di kedua sisi.W
F-TRF-09Rekap harian menampilkan ringkasan transfer: total cup yang berpindah dan antar gerobak mana.S
F-TRF-10Transfer yang tidak dikonfirmasi sampai akhir hari ditandai agar Admin dapat menindaklanjuti.S

7.6 M6 - Keuangan

NoKebutuhanPrio
F-KEU-01Rider mengisi setoran akhir hari berisi total, cash, dan QRIS. Total dihitung otomatis dari cash + QRIS agar rincian dan total tidak pernah berbeda.W
F-KEU-02Tidak ada batas waktu pengiriman setoran - rider mengisinya setelah kembali, kapan pun itu, termasuk melewati tengah malam untuk tanggal jualan sebelumnya. (K-3)W
F-KEU-03Rider mengisi total pengeluaran hari itu beserta keterangan.W
F-KEU-04Rider dapat mengunggah lebih dari satu bukti, masing-masing ditandai sebagai bukti pemasukan atau pengeluaran, dengan nominal dan keterangan opsional. Format yang diterima: foto (JPG/PNG/WebP) dan PDF.W
F-KEU-05Nilai minus diizinkan pada pemasukan maupun pengeluaran untuk keperluan koreksi atau selisih kas.W
F-KEU-06Satu rider hanya memiliki satu setoran per tanggal jualan; pengisian ulang tanggal yang sama membuka data yang sudah ada untuk disunting.W
F-KEU-07Setoran dapat disimpan sebagai draf lebih dulu, lalu dikirim ke Admin bila sudah lengkap.W
F-KEU-08Setoran yang sudah dikirim terkunci dari perubahan oleh rider sampai Admin selesai mengaudit.W
F-KEU-09Admin dapat menerima setoran (opsional dengan catatan) atau mengembalikannya dengan catatan wajib. Setoran yang dikembalikan dapat disunting dan dikirim ulang oleh rider.W
F-KEU-10Setoran menyimpan jejak audit: siapa yang mengaudit, kapan, dan catatannya.W
F-KEU-11Hanya setoran berstatus diterima yang dihitung sebagai angka resmi pada rekap; setoran yang masih menunggu audit ditampilkan terpisah beserta nilainya.W
F-KEU-12Halaman rekap menampilkan total pemasukan (terpisah cash dan QRIS), total pengeluaran, dan setoran bersih untuk rentang tanggal yang dipilih.W
F-KEU-13Rekap menampilkan rincian per rider: jumlah hari, jam aktif, cash, QRIS, total, pengeluaran, bersih, dan jumlah setoran yang masih menunggu audit.W
F-KEU-14Rekap menyediakan pilihan cepat rentang waktu: hari ini, kemarin, minggu ini, bulan ini, serta rentang khusus.W
F-KEU-15Rekap menampilkan ringkasan produksi, perbandingan pesanan diminta vs aktual, dan ringkasan transfer pada rentang yang sama.W
F-KEU-16Finance dapat membuka rekap tetapi tidak dapat mengubah, menyetujui, atau menghapus data apa pun.W
F-KEU-17Dasbor Admin menampilkan daftar rider yang hari itu sudah berjualan (punya sesi berbagi lokasi) tetapi belum mengirim setoran.S
F-KEU-18Rekap dapat diunduh sebagai berkas (CSV/Excel) untuk keperluan pembukuan klien.S

7.7 M7 - Pengguna & Hak Akses

NoKebutuhanPrio
F-USR-01Setiap pengguna masuk dengan email dan kata sandi.W
F-USR-02Setiap akun memiliki tepat satu peran: Superadmin, Admin, Produksi, Finance, atau Rider.W
F-USR-03Hanya Superadmin yang dapat membuat akun, untuk seluruh peran termasuk Admin dan Rider. Tidak ada pendaftaran mandiri. (K-2)W
F-USR-04Nomor gerobak ditetapkan Superadmin pada akun rider dan hanya dapat diubah Superadmin. Nomor ini tampil pada pesanan, alokasi produksi, transfer, peta pelanggan, dan rekap. (K-2)W
F-USR-05Superadmin dapat mengubah data pengguna, mengganti peran, mengatur ulang kata sandi, dan menonaktifkan akun.W
F-USR-06Admin dapat melihat daftar pengguna sebagai rujukan, tetapi tidak dapat membuat, mengubah peran, maupun menonaktifkan akun.W
F-USR-07Akun nonaktif tidak bisa masuk, tetapi seluruh riwayat pesanan, transfer, setoran, dan rekaman hariannya tetap tersimpan.W
F-USR-08Superadmin dapat mengatur parameter sistem: ambang waktu posisi basi dan jam batas pengajuan pesanan.S
F-USR-09Pembatasan akses ditegakkan di sisi server, bukan sekadar menyembunyikan menu - membuka alamat halaman secara langsung tetap ditolak bila peran tidak berhak.W
F-USR-10Pengguna dapat mengganti kata sandinya sendiri.W
F-USR-11Seluruh antarmuka internal berbahasa Indonesia dan memakai zona waktu WITA.W

8.Matriks Hak Akses

Kemampuan SuperadminAdminProduksi FinanceRiderPelanggan
Melihat halaman publik & peta
Buat / nonaktifkan akun-----
Tetapkan nomor gerobak & peran-----
Atur parameter sistem-----
Lihat daftar penggunabaca saja----
Kelola katalog produk & konten----
Nyalakan/matikan berbagi lokasi----✓ miliknya-
Lihat rekaman harian jam aktifsemua ridersemua rider-ringkasanmiliknya-
Buat pesanan (batas 23:59)-----
Lihat pesanansemuasemuayang sudah di-ACC-miliknya-
ACC / tolak pesanan----
Ubah jumlah diminta & aktualaktual saja---
Terima pesanan & kerjakan-----
Buat laporan produksi & alokasi-----
Kirim transfer cup-----
Konfirmasi transfer masuk----✓ tujuan-
Lihat riwayat transfersemuasemua-ringkasanmiliknya-
Isi setoran harian----✓ miliknya-
Audit setoran----
Lihat rekap keuangan-baca saja--

9.Kebutuhan Non-Fungsional

NoAspekKetentuan
N-01PerangkatSeluruh layar internal harus dapat dipakai penuh dari ponsel; tabel berubah menjadi kartu pada layar sempit.
N-02Kondisi lapanganFormulir setoran dapat disimpan sebagai draf agar pekerjaan tidak hilang bila koneksi terputus di tengah pengisian.
N-03Hemat daya & kuotaPengiriman posisi selama sesi berbagi dijadwalkan berkala, bukan terus-menerus.
N-04KinerjaHalaman utama terbuka < 3 detik pada koneksi seluler 4G; peta memuat posisi < 2 detik.
N-05KetersediaanTarget 99% pada jam operasional (08.00–23.59 WITA).
N-06Keamanan aksesKata sandi disimpan terenkripsi satu arah; sesi berakhir otomatis setelah tidak aktif; seluruh akses lewat HTTPS.
N-07Pembatasan peranDitegakkan di sisi server pada setiap halaman dan setiap aksi (lihat F-USR-09).
N-08Jejak auditPerubahan status pesanan, perubahan jumlah oleh Admin, konfirmasi transfer, dan audit setoran menyimpan pelaku serta waktunya. Data yang sudah diterima tidak dapat diubah diam-diam.
N-09Cadangan dataBasis data dicadangkan otomatis setiap hari dengan penyimpanan 30 hari terakhir; berkas bukti ikut tercadangkan.
N-10Penyimpanan buktiMaksimal 5 MB per berkas, disimpan minimal 24 bulan.
N-11Bahasa & formatAntarmuka bahasa Indonesia, mata uang Rupiah, tanggal d MMM yyyy, zona waktu WITA (UTC+8).
N-12Privasi lokasiPosisi rider hanya direkam selama sesi berbagi aktif. Halaman publik tidak menampilkan nama lengkap, nomor telepon, atau email rider - hanya nomor gerobak dan nama panggilan.
N-13PerambanMendukung Chrome, Safari, Edge, dan Firefox versi dua tahun terakhir.

10.Fase & Jadwal

Estimasi dihitung sejak PRD disetujui. Satu minggu = 5 hari kerja.

FaseIsiKeluaranEstimasi
F1 - Fondasi & PesananAkun oleh Superadmin, peran, nomor gerobak, hak akses (M7); katalog produk (M2); alur pesanan termasuk batas 23:59 dan penyuntingan jumlah oleh Admin (M3).Sistem dapat dipakai memesan stok dan menyetujuinya.3 minggu
F2 - Produksi, Transfer & KeuanganLaporan produksi harian dan alokasi (M4); transfer antar rider beserta riwayatnya (M5); setoran harian, bukti, audit, dan rekap (M6).Seluruh alur stok dan uang berjalan digital.4 minggu
F3 - Lokasi & PelangganHalaman berbagi lokasi rider dan rekaman harian jam aktif; halaman publik dan peta gerobak (M1).Pelanggan menemukan gerobak terdekat; jam aktif tercatat.2 minggu
F4 - Uji terima, pelatihan & peluncuranUji terima bersama klien, perbaikan temuan, penerapan ke unocoffee.id, pelatihan tiap peran, pendampingan minggu pertama.Sistem resmi dipakai harian.2 minggu
Total11 minggu

Titik pemeriksaan bersama klien: akhir F1, F2, dan F3 - masing-masing dengan demo dan kesempatan revisi. Perubahan lingkup di luar dokumen ini dicatat sebagai permintaan tambahan beserta dampaknya terhadap jadwal.

11.Kriteria Penerimaan (UAT)

Sistem dinyatakan diterima bila seluruh skenario berikut lulus saat diuji bersama klien.

U-01 · Pesanan disetujui dan dikerjakan - F-PSN-01, 05, 09, 10, 12, 13, 14, 15

  • Diberikan rider yang sudah masuk dan katalog berisi produk aktif,
  • Ketika rider membuat pesanan 20 Green Tea + 15 Americano,
  • Maka pesanan mendapat nomor ORD-<tanggal>-NNN dan berstatus menunggu ACC;
  • Dan ketika Admin menekan ACC, pesanan muncul di daftar kerja Produksi;
  • Dan ketika Produksi mengisi aktual 20 dan 18 lalu menandai selesai,
  • Maka daftar menampilkan 35 / 38 dengan selisih +3 tanpa pesan kesalahan.

U-02 · Tanggal kebutuhan otomatis esok hari - F-PSN-02

  • Ketika rider membuka formulir pesanan,
  • Maka tanggal kebutuhan sudah terisi esok hari tanpa perlu diubah;
  • Ketika rider memilih tanggal hari ini atau tanggal yang sudah lewat,
  • Maka sistem menolak dan menjelaskan bahwa tanggal minimal adalah esok hari;
  • Ketika rider memilih tanggal lusa, maka pesanan diterima.

U-03 · Batas pengajuan pesanan 23:59 - F-PSN-04

  • Diberikan waktu sistem menunjukkan pukul 23:58 WITA,
  • Ketika rider mengirim pesanan, maka pesanan diterima;
  • Ketika waktu sudah lewat pukul 23:59 dan rider mencoba mengirim pesanan untuk keesokan harinya,
  • Maka sistem menolak dengan penjelasan bahwa pengajuan hari itu sudah ditutup.

U-04 · Admin mengubah jumlah diminta dan aktual - F-PSN-11, N-08

  • Diberikan pesanan berisi 20 cup yang sudah disetujui,
  • Ketika Admin mengubah jumlah diminta menjadi 25 dan jumlah aktual menjadi 24,
  • Maka kedua angka tersimpan, ringkasan pada daftar ikut berubah,
  • Dan riwayat perubahan mencatat nilai lama, nilai baru, nama Admin, serta waktunya.

U-05 · Pesanan ditolak - F-PSN-10, 18

  • Diberikan pesanan berstatus menunggu ACC,
  • Ketika Admin menolak tanpa mengisi alasan, maka sistem menahan aksi dan meminta alasan;
  • Ketika alasan diisi dan dikirim, maka status menjadi ditolak dan rider dapat membaca alasannya.

U-06 · Batas akses pesanan - F-PSN-07, 12, F-USR-09

  • Diberikan dua rider berbeda masing-masing memiliki pesanan,
  • Ketika rider A membuka alamat halaman pesanan milik rider B secara langsung,
  • Maka sistem menolak akses;
  • Dan Produksi tidak melihat pesanan yang belum disetujui Admin.

U-07 · Transfer cup antar rider - F-TRF-01, 02, 03, 05, 06, 08

  • Diberikan rider A memiliki stok berjalan 40 cup dan rider B memiliki 5 cup,
  • Ketika rider A mengirim transfer 10 cup ke rider B,
  • Maka transfer berstatus menunggu konfirmasi dan stok belum berpindah;
  • Dan ketika rider B mengonfirmasi menerima,
  • Maka stok berjalan rider A menjadi 30 dan rider B menjadi 15,
  • Dan waktu kirim, waktu konfirmasi, serta nama kedua pihak tercatat;
  • Dan ketika rider B menolak transfer lain, maka stok tidak berpindah dan penolakan tetap tercatat.

U-08 · Riwayat transfer untuk Admin & Superadmin - F-TRF-04, 07

  • Ketika Admin atau Superadmin membuka riwayat transfer,
  • Maka seluruh transfer tampil beserta pengirim, penerima, produk, jumlah, status, dan waktunya,
  • Dan dapat disaring per tanggal serta per rider;
  • Ketika mencoba mengubah transfer yang sudah dikonfirmasi, maka sistem tidak menyediakan cara untuk itu.

U-09 · Berbagi lokasi & rekaman harian - F-PEL-06, 07, 08, 10, 11

  • Diberikan rider membuka halaman berbagi lokasi dalam keadaan tidak aktif,
  • Ketika ia menekan Mulai berbagi lokasi,
  • Maka status berubah menjadi aktif, jam mulai tercatat, dan gerobaknya muncul di peta pelanggan;
  • Dan ketika ia menekan Berhenti berbagi,
  • Maka jam selesai dan durasi tercatat pada rekaman hari itu, dan gerobaknya hilang dari peta;
  • Dan ketika ia menyalakan lalu mematikan lagi pada hari yang sama,
  • Maka kedua sesi tercatat terpisah dan total durasinya dijumlahkan.

U-10 · Pengaman posisi basi - F-PEL-09

  • Diberikan rider sedang berbagi lokasi lalu ponselnya mati tanpa menekan Berhenti,
  • Ketika posisi tidak diperbarui lebih dari ambang waktu yang ditetapkan,
  • Maka gerobaknya tidak lagi tampil di peta pelanggan.

U-11 · Setoran harian dengan bukti, tanpa batas waktu - F-KEU-01, 02, 03, 04, 07

  • Diberikan rider baru kembali pukul 01.30 dini hari,
  • Ketika ia mengisi setoran untuk tanggal jualan kemarin dengan cash Rp 420.000 dan QRIS Rp 180.000,
  • Maka sistem menerimanya tanpa menolak karena lewat tengah malam, dan total pemasukan otomatis menunjukkan Rp 600.000;
  • Dan ketika ia melampirkan foto nota pengeluaran dan tangkapan layar QRIS lalu mengirim,
  • Maka setoran berstatus menunggu audit dan kedua bukti tersimpan serta dapat dibuka Admin.

U-12 · Satu setoran per tanggal jualan - F-KEU-06

  • Diberikan rider sudah memiliki setoran untuk tanggal 18 Agustus,
  • Ketika ia mencoba membuat setoran baru untuk tanggal yang sama,
  • Maka sistem mengarahkannya menyunting setoran yang sudah ada, bukan membuat data ganda.

U-13 · Audit dan penguncian - F-KEU-08, 09, 10, 11

  • Diberikan setoran berstatus menunggu audit,
  • Ketika rider mencoba menyuntingnya, maka sistem menolak;
  • Ketika Admin mengembalikannya disertai catatan, maka rider dapat menyunting dan mengirim ulang;
  • Ketika Admin menerimanya, maka nilainya masuk rekap resmi dan nama serta waktu auditor tercatat.

U-14 · Nilai minus untuk koreksi - F-KEU-05, F-PRO-04, F-PSN-14

  • Ketika rider mengisi koreksi pemasukan bernilai minus, maka setoran tetap tersimpan;
  • Ketika Produksi mengalokasikan lebih banyak daripada yang diproduksi, maka sisa tampil minus tanpa diperlakukan sebagai kesalahan.

U-15 · Rekap keuangan - F-KEU-11, 12, 13, 14, 15

  • Diberikan dalam satu hari terdapat dua setoran diterima dan satu menunggu audit,
  • Ketika Admin, Superadmin, atau Finance membuka Rekap Harian untuk tanggal itu,
  • Maka total pemasukan hanya menjumlahkan dua setoran yang diterima, sedangkan setoran yang menunggu audit ditampilkan terpisah beserta nilainya;
  • Dan rincian per rider menampilkan jam aktif, di samping ringkasan produksi, perbandingan diminta vs aktual, dan ringkasan transfer.

U-16 · Belum setor padahal sudah berjualan - F-KEU-17

  • Diberikan seorang rider memiliki sesi berbagi lokasi hari ini tetapi belum mengirim setoran,
  • Ketika Admin membuka dasbor,
  • Maka rider tersebut muncul pada daftar “belum setor” beserta jam aktifnya.

U-17 · Finance hanya membaca - F-KEU-16, F-USR-09

  • Diberikan pengguna dengan peran Finance,
  • Ketika ia masuk, maka hanya menu rekap yang tersedia;
  • Ketika ia membuka alamat halaman setoran, pesanan, transfer, katalog, atau pengguna secara langsung, maka seluruhnya ditolak.

U-18 · Produksi harian dan alokasi - F-PRO-01, 02, 03, 05, 06, 07

  • Ketika Produksi mencatat 240 unit dengan alokasi 70 + 75 + 80 ke tiga rider dan melampirkan foto,
  • Maka sistem menghitung sisa 15 secara otomatis dan menampilkan alokasi per rider;
  • Dan rider yang bersangkutan melihat jumlah alokasi untuk dirinya pada hari itu.

U-19 · Superadmin vs Admin - F-USR-03, 04, 05, 06, 07

  • Diberikan hanya Superadmin yang dapat membuat akun,
  • Ketika Superadmin membuat akun rider baru dengan nomor gerobak 5,
  • Maka rider tersebut dapat masuk, dan nomor 5 tampil pada pesanan, transfer, peta, dan rekapnya;
  • Ketika Admin membuka menu pengguna, maka ia hanya dapat melihat daftarnya tanpa tombol tambah, ubah peran, atau nonaktifkan;
  • Ketika rider mencoba mengubah nomor gerobaknya sendiri, maka tidak tersedia pilihan untuk itu;
  • Ketika Superadmin menonaktifkan akun tersebut, maka rider tidak bisa masuk sementara seluruh riwayatnya tetap ada.

U-20 · Peta pelanggan - F-PEL-02, 03, 04, 05, 12

  • Diberikan dua rider sedang berbagi lokasi,
  • Ketika pelanggan membuka halaman peta, maka dua gerobak tampil beserta nomornya dan daftar diperbarui otomatis;
  • Ketika pelanggan mengizinkan deteksi lokasi, maka daftar terurut dari yang terdekat beserta jaraknya;
  • Ketika tidak ada gerobak aktif, maka tampil pesan yang jelas.

U-21 · Tampilan ponsel - N-01

  • Ketika setiap layar utama dibuka pada ponsel berukuran 360–430 px,
  • Maka seluruh isi terbaca tanpa menggeser layar ke samping dan seluruh tombol aksi dapat dijangkau.

12.Asumsi & Batasan

12.1 Asumsi

NoAsumsi
A-1Klien menyediakan daftar produk beserta harga dan foto pada awal pengerjaan.
A-2Setiap rider memiliki ponsel dengan paket data, mengizinkan akses lokasi pada peramban, dan bersedia menekan tombol berbagi lokasi saat mulai berjualan.
A-3Sistem dimulai dengan data bersih. Tidak ada data operasional lama yang perlu dipindahkan.
A-4Satu orang dari pihak klien ditunjuk sebagai penanggung jawab keputusan dan uji terima.
A-5Domain unocoffee.id dan server disediakan klien beserta akses pengelolaannya.
A-6Rekaman jam aktif dipakai sebagai catatan operasional, bukan dasar perhitungan gaji pada fase ini.

12.2 Batasan

13.Lampiran

13.1 Glosarium

IstilahArti
PesananPermintaan stok produk dari rider kepada dapur produksi.
ACCPersetujuan Admin atas pesanan; syarat sebelum Produksi mengerjakan.
AktualJumlah yang benar-benar diproduksi, dibandingkan jumlah yang diminta.
AlokasiPembagian hasil produksi ke masing-masing rider.
SisaHasil produksi yang belum dialokasikan = total produksi − seluruh alokasi.
TransferPerpindahan stok cup dari satu rider ke rider lain, sah setelah dikonfirmasi penerima.
Stok berjalanPerkiraan stok yang dipegang rider = alokasi + transfer masuk − transfer keluar.
Sesi berbagi lokasiRentang waktu sejak rider menekan Mulai berbagi sampai Berhenti berbagi.
Rekaman harianKumpulan sesi berbagi lokasi seorang rider dalam satu tanggal beserta total durasinya.
Setoran harianLaporan uang akhir hari dari rider: pemasukan (cash + QRIS) dan pengeluaran.
AuditPemeriksaan Admin atas setoran; hasilnya diterima atau dikembalikan.
Angka resmiNilai yang sudah diaudit dan diterima; hanya ini yang masuk rekap.
RekapRingkasan angka untuk rentang tanggal tertentu.

13.2 Kamus data ringkas

DataIsi utama
PenggunaNama, email, kata sandi, peran, telepon, nomor gerobak (ditetapkan Superadmin), status aktif.
ProdukKode, nama, kategori, satuan, harga, deskripsi, foto, status aktif, urutan.
PesananNomor, rider, status, tanggal kebutuhan, catatan, penyetuju + waktu, penerima produksi + waktu, waktu selesai.
Rincian pesananProduk, salinan nama & harga, jumlah diminta, jumlah aktual, catatan.
Riwayat perubahan jumlahRincian pesanan, nilai lama, nilai baru, pelaku, waktu.
Sesi lokasiRider, tanggal, waktu mulai, waktu berhenti, durasi, cara berakhir (ditekan rider / otomatis).
Posisi gerobakRider, koordinat terakhir, waktu pembaruan, sesi terkait.
Laporan produksiTanggal, pembuat, total produksi, total alokasi, sisa, catatan, bukti.
Alokasi produksiLaporan, rider, produk (opsional), jumlah.
TransferPengirim, penerima, produk, jumlah, status, catatan, waktu kirim, waktu konfirmasi.
Setoran harianRider, tanggal jualan, cash, QRIS, total, pengeluaran, catatan, status, waktu kirim, auditor + waktu + catatan audit.
Bukti setoranSetoran, jenis (pemasukan/pengeluaran), nominal, keterangan, berkas.