20 yıllık bir poliçe sistemini işi durdurmadan buluta taşımak.
Teklif ekranlarını tek sayfaya indiren yeni bir acente portalı ve arkadaki eski ana sistemi ürün ürün, planlı kesinti olmadan buluta taşıyan bir göç kurgusu. Demo, ikisinin yan yana nasıl çalıştığını gösteriyor.
Bu bir konsept demodur. X Sigorta kurgusal bir şirkettir; ekranlardaki tüm veriler örnektir. Benzer bir ürünü sizin süreçleriniz ve verilerinizle birlikte kurabiliriz.
Problem
Köklü bir sigortacıda satılan her poliçe, çoğu zaman yirmi yıldır üzerine yama eklenen tek bir ana sistemden geçer.
Yükü her gün ilk hissedenler acentelerdir. Bu senaryoda X Sigorta 2.300 acenteyle çalışıyor; bir kasko teklifi dokuz ekrandan geçiyor ve ortalama 12 dakika sürüyor. Her yeni sürüm için sistem hafta sonu kapatılıyor, bu yüzden değişiklikler seyrek ve büyük paketler hâlinde çıkıyor.
Asıl risk görünmeyen taraftadır. Prim hesaplarından istisnalara kadar iş kurallarının çoğu yalnızca kodda yazılıdır ve onları bilen uzmanlar birer birer emekliye ayrılır. Sistemi olduğu gibi bırakmak da, tek seferde yenisine geçmek de göze alınamaz.
Eskiyi kapatmadan, yenisini etrafına kurarız.
Böyle bir projeye bir sistem arkeolojisiyle başlarız. Sigortacının uzmanlarıyla birlikte yirmi yıllık kodu okur; prim hesaplarını, istisnaları ve onay adımlarını tek tek çıkarırız. Her kural yazılı bir tanıma ve onu doğrulayan bir teste dönüşür; böylece bilgi kişilere bağlı kalmaz.
Göçü strangler-fig deseniyle kurgularız. Yeni platform eski sistemin önüne bir cephe olarak yerleşir; taşınan ürünler yeni altyapıda çalışırken diğerlerinin istekleri arkada eski sisteme gitmeye devam eder. İlk yenilenen şey acentenin gördüğü ekrandır. Bu senaryo için hazırladığımız örnek planda göç dört fazda, yaklaşık 14 ayda tamamlanıyor.
Acentenin gördüğü tek ekran ve onu ayakta tutan üç parça.
Tek ekranda teklif
Araç bilgisi, teminatlar, paket ve prim aynı sayfada. Acente bir seçeneği değiştirdiğinde fiyat anında güncellenir; dokuz ekranlık akış tek bir forma iner.
Olay tabanlı köprü
Eski ve yeni sistem, Kafka üzerinden akan olaylarla senkron kalır. Göç süresince iki taraf da aynı poliçeyi aynı anda, aynı şekilde görür.
Kesintisiz sürüm
Blue-green dağıtımda yeni sürüm canlı ortamın yanında hazırlanır, trafik tek adımda ona yönlenir. Geri dönmek de tek adım.
İş kuralları kataloğu
Koddan çıkarılan her kural okunabilir bir katalogda durur ve otomatik regresyon testleriyle korunur. Bir kural değiştiğinde neyin etkilendiği canlıya çıkmadan görülür.
Değişen yalnızca ekranlar olmaz.
İş kuralları
Yalnızca kodda ve emekliye ayrılan uzmanların hafızasında.
Okunabilir bir katalogda, otomatik testlerle korunuyor.
Sürüm
Hafta sonu kesintisiyle, seyrek ve büyük paketler hâlinde.
Blue-green dağıtımla mesai içinde; geri dönüş tek adım.
Altyapı
Yirmi yıllık ana sistem ve SQL Server.
Azure’da .NET 8, Kafka ve PostgreSQL.
Acente hızlanmalı, altyapı hafiflemeli.
Hedefler bu senaryo için belirlediğimiz örnek ölçütlerdir; gerçek sonuçlar projeye göre değişir.
Tasarım ilkesi
İyi bir göçü acente yalnızca daha hızlı bir teklif ekranı olarak fark etmeli. Arkada hangi ürünün hangi sistemde çalıştığını bilmesine hiç gerek kalmamalı.
Teknoloji ve önerilen ekip
Teknoloji
- .NET 8
- C#
- Azure
- Kafka
- React
- TypeScript
- SQL Server → PostgreSQL
Önerilen ekip
- 2çözüm mimarı
- 2ürün tasarımcısı
- 6yazılım mühendisi
- 2DevOps mühendisi