Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-MST-014 |
| Deskripsi | Master project atau klaster produksi: membuat klaster dengan satuan terkecil hasil, menentukan barang hasil utama dan biaya produksi terkait, mengubah nama, menonaktifkan, serta memulihkan klaster dari arsip |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User melihat daftar klaster aktif dalam bentuk kartu, dengan tampilan hasil utama atau biaya terkait per kartu.
- User mencari klaster berdasarkan nama.
- User membuat klaster baru dengan nama klaster, satuan terkecil hasil, barang hasil utama, dan daftar biaya produksi beserta akunnya.
- User mengatur hasil utama klaster dengan memilih SKU barang hasil produksi.
- User mengatur biaya produksi terkait dengan menautkan biaya produksi yang belum atau sudah memiliki klaster.
- User mengubah nama klaster.
- User menonaktifkan klaster dan memulihkannya kembali dari arsip.
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Sistem menampilkan seluruh klaster aktif tanpa pagination sebagai kartu dengan nama klaster dan satuan terkecil hasil |
| FR-02 | Setiap kartu dapat beralih antara tampilan Hasil Utama (daftar barang) dan Biaya Terkait (daftar biaya produksi) |
| FR-03 | Sistem menyediakan pencarian nama klaster di sisi tampilan |
| FR-04 | User dengan hak dasar klaster dapat membuat klaster dengan nama klaster dan satuan terkecil hasil |
| FR-05 | Saat membuat klaster, user dapat memilih barang hasil utama (semua SKU barang ikut terpilih) dan menambah biaya produksi dengan nama biaya dan akun |
| FR-06 | User dapat mengatur hasil utama klaster dengan memilih SKU |
| FR-07 | User dapat menautkan biaya produksi ke klaster dan mengubah nama klaster dari modal pengaturan biaya terkait |
| FR-08 | User dapat menonaktifkan klaster; bila klaster adalah klaster default brand, konfigurasi default dikosongkan |
| FR-09 | User dengan hak arsip dapat melihat klaster nonaktif dan memulihkannya secara massal |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat dan mencari daftar klaster |
| UC-02 | Membuat klaster baru |
| UC-03 | Mengatur hasil utama klaster |
| UC-04 | Mengatur biaya produksi terkait dan mengubah nama klaster |
| UC-05 | Menonaktifkan klaster |
| UC-06 | Memulihkan klaster dari arsip |
4. Use Case Scenario
UC-01 : Melihat dan mencari daftar klaster
| Aktor | User akuntansi atau produksi |
| Deskripsi | User melihat klaster yang sedang berjalan beserta hasil utama dan biaya terkaitnya |
| Prekondisi | User sudah login dan memilih brand |
| Alur utama | 1. User membuka menu Master, Akuntansi, Cluster Produksi. 2. Sistem memuat satuan, klaster aktif, biaya produksi terkait, dan SKU hasil utama. 3. Sistem menampilkan kartu klaster. 4. User mengetik nama pada kolom Cari Cluster. 5. Sistem menyaring kartu yang namanya mengandung kata kunci. 6. User beralih tampilan kartu antara Hasil Utama dan Biaya Terkait. |
| Alur negatif | - Jika gagal memuat klaster, daftar kartu kosong. |
| Bisnis rule | - Biaya terkait yang ditampilkan hanya biaya berkategori pengeluaran produksi. - Pencarian nama bersifat peka huruf besar kecil dan dilakukan tanpa memanggil BE. - Satuan yang tidak ditemukan ditampilkan sebagai tanda strip. |
| Postkondisi | Kartu klaster tampil |
| Trigger | User membuka halaman atau mengetik pencarian |
| Kode FR | FR-01 FR-02 FR-03 |
UC-02 : Membuat klaster baru
| Aktor | User dengan hak dasar klaster |
| Deskripsi | User mendaftarkan klaster produksi baru |
| Prekondisi | User punya hak #cluster basic |
| Alur utama | 1. User klik Buat Cluster Baru (atau tombol plus pada keyboard). 2. User mengisi nama klaster dan memilih satuan terkecil hasil. 3. Pada tab Hasil Utama, user memilih barang hasil produksi. 4. Pada tab Biaya Produksi, user menambah nama biaya dan memilih akun. 5. User klik Simpan. 6. Sistem membuat klaster beserta biaya produksinya dan menampilkan "Berhasil Create Cluster". |
| Alur negatif | - Jika informasi klaster kosong, muncul "Data Informasi tidak boleh Kosong!". - Jika simpan gagal, muncul pesan error dari BE. |
| Bisnis rule | - Memilih barang hasil utama otomatis memasukkan semua SKU barang tersebut. - Biaya yang ditambahkan selalu berkategori pengeluaran produksi. - Jenis usaha klaster mengikuti jenis usaha brand. |
| Postkondisi | Klaster baru aktif |
| Trigger | User klik Simpan |
| Kode FR | FR-04 FR-05 |
UC-03 : Mengatur hasil utama klaster
| Aktor | User dengan hak dasar klaster |
| Deskripsi | User menambah SKU barang yang menjadi hasil utama klaster |
| Prekondisi | Klaster aktif tersedia |
| Alur utama | 1. User memilih Atur Hasil Utama Cluster pada menu kartu. 2. Sistem menampilkan modal pemilihan SKU dengan filter jenis barang. 3. User memilih SKU lalu menyimpan. 4. Sistem memperbarui klaster dan menampilkan "Berhasil Update Cluster". |
| Alur negatif | - Jika gagal, muncul pesan error dari BE. |
| Bisnis rule | - SKU terpilih ditambahkan ke daftar hasil utama yang sudah ada. - Nama klaster ikut dikirim saat menyimpan hasil utama. |
| Postkondisi | Hasil utama klaster terbarui |
| Trigger | User menyimpan modal hasil utama |
| Kode FR | FR-06 |
UC-04 : Mengatur biaya produksi terkait dan mengubah nama klaster
| Aktor | User dengan hak dasar klaster |
| Deskripsi | User menautkan biaya produksi ke klaster dan dapat mengganti nama klaster |
| Prekondisi | Klaster aktif tersedia |
| Alur utama | 1. User memilih Atur biaya produksi pada menu kartu. 2. Sistem membuka modal Pengaturan Biaya Terkait. 3. User memilih tampilan biaya produksi tanpa klaster atau biaya produksi yang sudah memiliki klaster. 4. User mencentang biaya lalu klik Simpan. 5. Sistem menautkan setiap biaya terpilih ke klaster. 6. Untuk mengganti nama, user klik ikon edit, mengubah nama, lalu klik centang. 7. Sistem memperbarui nama dan menampilkan "Berhasil Updata Nama Cluster". |
| Alur negatif | - Jika belum memilih jenis tampilan biaya, Simpan tidak diproses. - Jika ubah nama gagal, muncul pesan error dari BE. |
| Bisnis rule | - Menautkan biaya yang sudah memiliki klaster akan memindahkannya ke klaster ini. - Biaya diperbarui satu per satu. |
| Postkondisi | Biaya terkait atau nama klaster terbarui |
| Trigger | User klik Simpan atau centang nama |
| Kode FR | FR-07 |
UC-05 : Menonaktifkan klaster
| Aktor | User dengan hak dasar klaster |
| Deskripsi | User menonaktifkan klaster yang sudah tidak berjalan |
| Prekondisi | Klaster aktif tersedia |
| Alur utama | 1. User memilih Hapus Cluster pada menu kartu. 2. Sistem menonaktifkan klaster dan menghapus kartunya dari daftar. 3. Bila klaster adalah klaster default brand, sistem mengosongkan klaster default pada konfigurasi brand. 4. Sistem menampilkan "Berhasil menonaktifkan cluster!". |
| Alur negatif | - Jika gagal, muncul pesan error dari BE. |
| Bisnis rule | - Hapus Cluster bersifat nonaktif dan klaster dapat dipulihkan dari arsip. - Tidak ada konfirmasi sebelum menonaktifkan. |
| Postkondisi | Klaster nonaktif |
| Trigger | User memilih Hapus Cluster |
| Kode FR | FR-08 |
UC-06 : Memulihkan klaster dari arsip
| Aktor | User dengan hak arsip klaster |
| Deskripsi | User mengaktifkan kembali klaster nonaktif |
| Prekondisi | User punya hak #cluster archive |
| Alur utama | 1. User klik Arsip. 2. Sistem menampilkan klaster nonaktif. 3. User memilih klaster lalu memulihkan. 4. Sistem mengaktifkan klaster terpilih sekaligus dan menampilkan "Berhasil memulihkan Cluster terpilih". |
| Alur negatif | - Jika gagal, muncul pesan error dari BE. |
| Bisnis rule | - Pemulihan dikirim sebagai satu permintaan massal. |
| Postkondisi | Klaster aktif kembali |
| Trigger | User klik pulihkan di halaman arsip |
| Kode FR | FR-09 |
5. Data Flow Diagram
DFD-01
6. Sequence Diagram
SD-01 — UC-01 : Melihat dan mencari daftar klaster
SD-02 — UC-02 : Membuat klaster baru
SD-03 — UC-03 : Mengatur hasil utama klaster
SD-04 — UC-04 : Mengatur biaya produksi terkait dan mengubah nama klaster
SD-05 — UC-05 : Menonaktifkan klaster
SD-06 — UC-06 : Memulihkan klaster dari arsip
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
GET /cluster | existing | - |
POST /cluster | existing | - |
PUT /cluster/:id | existing | - |
DELETE /cluster/:id | existing | - |
POST /cluster/bulk-update | existing | - |
GET /biaya | existing | - |
PUT /biaya/:id | existing | - |
GET /satuan | existing | - |
POST /sku/get-bulk-sku | existing | - |
PUT /brand/config/:id | existing | - |