Dashboard Service (Customer) — Scorecard Kajian
DB-11 · SV-11 — 0 tabel SQL — store NoSQL (MongoDB), target arsitektur. Diagram: Helicopter View · Detail SV-11/DB-11.
Fitur: 12 fitur F01–F12 (My Transaction … Export SOA) — lihat Detail SV-11
Scorecard Service (maks 16)
Section titled “Scorecard Service (maks 16)”| Kode | Kriteria | Skor | Bukti / Alasan |
|---|---|---|---|
| J1 | Independent Deployability | 1 | Kode Dashboard terisolasi di folder sendiri, tapi kopling erat ke skema DB-01/DB-03 (JOIN langsung) + duplikasi WSDL dengan SV-06 (F11) — perubahan skema domain lain bisa memecahkan dashboard tanpa peringatan. |
| J2 | Independent Scalability | 2 | Bukti incident nyata (kategori “Incident” §10.3): Dashboard = halaman default pasca-login, profil beban (spike proporsional ke jumlah login, loop live-call SAP) jelas berbeda dari domain transaksional lain. |
| J3 | Fault Isolation (blast radius) | 1 | Dashboard read-only seharusnya terisolasi, TAPI dipaksa render tiap habis login (redirect default) dan menimbulkan beban SAP XI nyata — ada risiko resource contention bersama yang bisa memperlambat alur lain pasca-login. |
| J4 | Team Ownership (Conway) | 1 | Ditanya langsung ke user — tidak ada testimoni tim terpisah yang menangani domain ini secara khusus. |
| J5 | Technology Divergence | 2 | Pengecualian sadar — target NoSQL didukung insiden nyata (beban SAP XI engine), bukan cuma rencana di atas kertas, meski implementasinya belum ada. |
| J6 | Bounded Context (DDD) | 2 | Menjawab Q14 — 12 fitur teridentifikasi jelas. 2 fitur yang tadinya dikira masuk (Repurchase, GetBannerList/GetMassCommunicationList) terbukti bukan bagian domain ini (F6/F7). |
| J7 | Compliance / Security Isolation | 1 | Tidak ada bukti isolasi compliance/security spesifik, pola sama mayoritas kandidat lain. |
| J8 | Independent Lifecycle Data | 1 | DB-11 belum eksis, independensi siklus hidup data cuma bisa dinilai untuk target, bukan kondisi berjalan saat ini. |
| TOTAL | 11 / 16 |
Hard Blocker: HB1 = Tidak · HB2 = Tidak · HB3 = Tidak Keputusan: ✅ SPLIT
Scorecard Database (maks 14)
Section titled “Scorecard Database (maks 14)”| Kode | Kriteria | Skor | Bukti / Alasan |
|---|---|---|---|
| DB1 | Independensi Transaksi | 2 | Tidak ada write dari Dashboard, tidak ada kebutuhan ACID. |
| DB2 | Independensi Foreign Key | 2 | Tidak ada tabel sendiri, tidak ada FK. |
| DB3 | Kohesi Aggregate | 1 | Aggregate target (materialized view) masih aspirasional — belum ada implementasi nyata untuk dinilai kohesif atau tidak. |
| DB4 | Single Writer | 1 | DB-11 belum eksis sebagai store nyata, jadi single writer belum bisa dinilai. Tapi juga tidak ada multi-writer aktif, karena memang belum ada store untuk ditulis. |
| DB5 | Master Data / Sync | 2 | Data Dashboard (kalau nanti ada) tidak dipakai sebagai reference oleh domain lain. |
| DB6 | Independensi Reporting | 0 | Semua 5 SP dashboard JOIN langsung tabel mentah tblT_Booking_*/tblT_Sales_Order (SV-03) + MARA/tblM_Material_Image (SV-01), tanpa read-model. Ini incident produksi nyata — membebani SAP XI engine tiap login. |
| DB7 | Stabilitas Skema (co-change) | 2 | Tidak ada skema sendiri untuk co-change (belum ada apa-apa untuk berubah). |
| TOTAL | 10 / 14 |
Hard Blocker: DHB1 = Tidak · DHB2 = Tidak — DB6=0 tidak masuk kriteria DHB, tidak memicu veto otomatis, cuma menurunkan TOTAL. Keputusan: ✅ PISAH DATA (mepet ambang bawah 9)
Temuan tambahan (sesi validasi 2026-07-28)
Section titled “Temuan tambahan (sesi validasi 2026-07-28)”- 🔴
DB-11(NoSQL) 100% belum diimplementasikan — 0 referensi MongoDB di seluruh kode. - 🔴 DB6=0 — skor “0” pertama di seluruh kajian, mencerminkan kondisi kode saat ini (JOIN mentah lintas domain + live WSDL loop).
- Kondisi ini incident produksi nyata menurut user, bukan risiko teoritis — beban SAP XI engine muncul tiap dashboard dibuka (default page pasca-login).
Rekomendasi Akhir
Section titled “Rekomendasi Akhir”FULL MICROSERVICE (DB sendiri) — SPLIT (service) + PISAH DATA (database), tidak berbalik kelas. TAPI implementasi materialized read-model/NoSQL harus jadi prioritas tinggi operasional — bukan cuma preferensi arsitektur — karena kondisi saat ini membebani SAP XI engine setiap kali user login.