Pengembangan sistem stok beberapa cabang perlu menjawab barang tersedia di mana dan untuk siapa. Total perusahaan bisa terlihat cukup, tetapi seluruh unit mungkin berada di lokasi yang berbeda atau sudah dipesan pelanggan lain. Jika satu angka dipakai untuk stok fisik, stok yang bisa dijual dan barang dalam perjalanan, tim akan kesulitan menjelaskan selisih saat penyerahan.
Bayangkan bisnis fiktif penyewaan perlengkapan kamera dengan dua cabang. Satu unit akan dipindahkan, sementara petugas di cabang asal sedang menerima pesanan baru. Contoh ini digunakan untuk merancang perilaku sistem, bukan menyatakan hasil pelanggan. Aplikasi harus menjaga agar barang yang sama tidak dijanjikan kepada dua pihak hanya karena kedua petugas melihat tampilan lama.
Tetapkan arti setiap jumlah
Definisikan stok fisik, reservasi aktif, unit rusak dan barang dalam perjalanan sesuai jenis usaha. Jumlah yang tersedia untuk transaksi harus dihitung dari aturan yang disepakati. Produk dengan nomor seri mungkin memerlukan identitas unit, sedangkan barang yang dapat dipertukarkan memakai jumlah per jenis. Jangan memaksakan satu model jika proses membutuhkan pelacakan yang berbeda.
Setiap lokasi membutuhkan identitas yang stabil, termasuk gudang sementara jika benar-benar dipakai. Perubahan nama cabang tidak boleh membuat riwayat berpindah ke lokasi lain. Tentukan juga siapa yang berhak melihat seluruh saldo dan siapa yang hanya boleh mencatat pergerakan di cabangnya. Pemeriksaan akses harus berlaku pada ekspor dan permintaan langsung, bukan hanya menu.
Pisahkan reservasi dan pemindahan fisik
Reservasi menyatakan komitmen untuk suatu pesanan, bukan bukti barang sudah keluar. Definisikan kapan reservasi dibuat, kedaluwarsa, diperpanjang dan dilepas. Dua permintaan serentak untuk unit terakhir memerlukan keputusan konsisten di server. Tampilan ketersediaan membantu pengguna, tetapi konfirmasi akhir tidak boleh bergantung pada angka yang dilihat beberapa menit sebelumnya.
Transfer antar cabang memiliki pengiriman dan penerimaan yang dapat berbeda jumlah. Cabang tujuan perlu mengonfirmasi yang benar-benar diterima. Selisih tetap terlihat sampai ditangani, tanpa menulis ulang pernyataan awal secara diam-diam. Jika transfer dibatalkan setelah barang keluar, buat alur pengembalian atau penyelesaian yang sesuai keadaan fisik, bukan sekadar membalik dua angka.
Catat koreksi sebagai peristiwa yang dapat dijelaskan
Penghitungan fisik dapat menemukan barang kurang atau lebih. Koreksi perlu terhubung ke lokasi, barang, alasan dan pelaksana. Simpan keadaan sebelum serta dampak koreksi agar tim dapat merekonstruksi saldo. Hak melakukan penyesuaian dapat berbeda dari hak memindahkan barang, terutama bila koreksi memerlukan persetujuan pihak lain menurut proses bisnis.
Pengulangan operasi setelah koneksi terputus tidak boleh menggandakan pergerakan. Gunakan identitas transaksi yang tetap dan periksa hasil sebelumnya. Bila sebuah koreksi ternyata salah, tentukan cara membetulkannya dengan memperhatikan transaksi berikutnya. Mengembalikan saldo lama secara langsung dapat menghapus penjualan atau penerimaan sah yang terjadi setelah koreksi pertama.
Uji perjalanan satu unit sampai laporan
Dengan data uji, reservasi unit terakhir dari dua perangkat, pindahkan barang dan konfirmasikan penerimaan sebagian. Putuskan koneksi setelah server menerima salah satu operasi, kemudian ulangi permintaan. Cocokkan riwayat pergerakan, saldo tiap cabang, reservasi dan laporan. Sertakan koreksi penghitungan serta pembatalan agar hasilnya tidak hanya benar pada transaksi normal.
Brainbaby Labs dapat membantu mengembangkan portal stok, aplikasi petugas dan integrasi pesanan. Siapkan jenis barang, aturan reservasi dan contoh transfer dengan selisih. Informasi tersebut membantu menyepakati model yang bisa diuji terhadap pekerjaan fisik, sehingga angka pada dasbor mempunyai arti operasional yang dapat dipahami oleh setiap cabang.