← Back to Work

Case Study · Analytics & Operational Control

Asakai Dashboard & DataQC

Client: PT. Mada Wikri Tunggal
Role: Lead Developer
Stack: Laravel 12, Livewire 3, Alpine.js
Impact: 7.5 Hours/Week Saved · 7 Departments

The Situation

Setiap pagi pukul 08.00, jajaran manajemen PT. Mada Wikri Tunggal menggelar Asakai — rapat koordinasi harian bergaya Jepang untuk meninjau performa operasional hari sebelumnya. Tujuh kepala departemen hadir: Produksi, PPIC, QC, Moldshop, Maintenance, HSE, dan GA.

Masalahnya: data untuk rapat itu baru selesai dikumpulkan menjelang siang. Setiap malam dan pagi, masing-masing kepala departemen menghabiskan 1–2 jam mengumpulkan data dari kertas catatan lapangan, memasukkannya ke Excel, memformat tabel, mencetak, dan membawa ke ruang rapat. Ketika akhirnya rapat dimulai, data yang disajikan sudah beberapa jam basi.

Manajemen membuat keputusan operasional berdasarkan laporan verbal dan estimasi — bukan angka yang sesungguhnya.

The Insight

Laporan tidak seharusnya dibuat — laporan seharusnya selalu tersedia. Jika semua data operasional sudah ada di sistem (dan memang sudah ada, tersebar di database masing-masing modul ERP), maka dashboard bisa mengagregasinya secara otomatis, real-time, dan menampilkannya di TV yang terpasang di dinding ruang rapat sebelum jam 08.00 — tanpa satu pun orang harus membuat spreadsheet.

The Architecture

Tantangan teknis utama: mengagregasi data dari 7 departemen secara real-time tanpa membebani database dengan query berat yang dijalankan setiap detik oleh 10+ manager yang menonton dashboard secara bersamaan.

7 Dept Databases
Data operasional tersebar di modul ERP masing-masing departemen (HSE, PPIC, QC, dll).
Laravel Controller
SUM/COUNT/AVG aggregation dengan Carbon untuk kalkulasi tanggal. Smart Cache 5 menit (300s TTL).
Livewire Polling
Server-side reactivity — data diperbarui tanpa page reload. Tidak ada heavy SPA JavaScript.
Command Center TV
Dark grid, high data density, navigasi keyboard. Dirancang terbaca dari jarak 3 meter.

Pola smart caching menjadi kunci: data dashboard tidak di-query ulang ke database setiap ada perubahan, melainkan di-cache selama 5 menit. Livewire hanya memperbarui komponen yang datanya benar-benar berubah — bukan reload halaman penuh.

// Smart caching — query berat hanya dijalankan setiap 5 menit
$metrics = Cache::remember('asakai_metrics_'.$date, 300, function () use ($date) {
    return [
        'production_output' => ProductionLog::whereDate('created_at', $date)->sum('qty_output'),
        'qc_defect_rate'  => QcInspection::whereDate('created_at', $date)->avg('defect_pct'),
        'hse_incidents'   => HseLog::whereDate('created_at', $date)->count(),
        // ... 7 departments aggregated
    ];
});

The Outcome

TIME SAVED
1.5 jam/hari × 5 hari kerja = 7.5 jam/minggu yang sebelumnya dihabiskan untuk membuat laporan — kini nol
RESPONSE TIME
Lead time respons terhadap deviasi operasional berkurang 40% — deviasi kini terdeteksi di rapat pukul 08.00, bukan sore hari
VISIBILITY
7 departemen, satu layar, data yang selalu aktual. Manajemen membuat keputusan berbasis angka nyata, bukan estimasi verbal

"Dashboard ini bukan fitur baru di atas sistem lama. Ini perubahan cara manajemen melihat pabriknya sendiri — dari melihat ke belakang, menjadi melihat sekarang."