Lompat ke konten utama

Memecah monolit tanpa menghentikan bisnis

Menulis ulang dari nol hampir selalu lebih mahal daripada yang diperkirakan. Ini urutan yang kami pakai.

Dua insinyur menandai batas modul berikutnya pada diagram sistem di papan tulis, dengan ruang operasional tetap bekerja di balik kaca

Permintaan yang paling sering kami terima berbunyi sama: sistemnya sudah tua, tolong ditulis ulang. Yang jarang disebut adalah bahwa sistem tua itu sedang menjalankan seluruh operasional perusahaan, dan penulisan ulang menuntut keduanya berjalan berdampingan selama berbulan-bulan.

Urutan yang kami pakai dimulai dari batas, bukan dari kode. Bagian mana yang bisa berdiri sendiri tanpa menyentuh basis data yang sama? Biasanya jawabannya satu atau dua modul — pelaporan, notifikasi, atau integrasi ke pihak ketiga — dan ketiganya cukup untuk membuktikan bahwa pemecahannya bisa dilakukan tanpa menghentikan apa pun.

Yang tidak kami lakukan adalah memindahkan seluruhnya sekaligus lalu mengumumkan tanggal peluncuran. Tanggal itu selalu meleset, dan yang menanggung akibatnya adalah tim yang harus menjalankan dua sistem sekaligus tanpa rencana kembali.