Ana sayfa/Hizmetler/Legacy Yeniden Mühendislik
Hizmet · Modernizasyon & işletme

Kimsenin dokunmaya cesaret edemediği sistem? Biz dokunuyoruz.

Geliştiricileri artık aranızda olmayan sistemlerde kontrolü geri almak: davranışı çıkarın, sistemi kararlı hâle getirin, belgeleyin — sonra rivayet yerine kanıtla yeniden mühendislik yapın.

Legacy Yeniden MühendislikNeler yapıyoruz
01Sistem arkeolojisi
02Golden-master testleri
03Değişimden önce stabilizasyon
04Bilginin kayda geçirilmesi
Nasıl ilerler
  1. Triyaj
  2. Davranışı sabitleme
  3. Stabilizasyon
  4. Yeniden mühendislik
Neden var

Çalışan sisteme saygı gösterin.

Her legacy sistem aynı nedenle risklidir: artık ne yaptığını tam olarak kimse bilmiyordur. Onu yazanlar ayrılmıştır, dokümantasyon iki kez değiştirilmiş bir sürümü anlatır ve geriye kalan sözlü bilgi iki kişinin aklında ve bir script klasöründe yaşar. Kurum da başını çevirir. Değişiklikler bir sürüm hafta sonunda toplanır, o hafta sonu her yıl biraz daha uzar ve sonunda işi hâlâ yürüten sistem, şirketin korktuğu bir sisteme dönüşür.

Biz tersini yapıyoruz. Sistemi izlenebilir hâle getirin, gerçek trafikten alınan testlerle davranışını sabitleyin ve hiçbir şeyi değiştirmeden önce rivayeti dokümantasyona çevirin. Bu sıra önemlidir: ilk aşamalarda stabilizasyon mimariden daha değerlidir, çünkü haftada iki kez çöken bir sistemde kimse yeniden mühendislik yapamaz. Ortam sakinleştikten ve davranışı kayda geçtikten sonra kanıt size hangi parçaların korunmaya değer sağlam varlıklar, hangilerinin gerçek tehlike olduğunu söyler — ve ardından gelen yeniden mühendislik genellikle sıfırdan yazım değil, bir strangler deseniyle modernizasyon olarak yürür.

Yılların kararlarını içinde taşır ve bulacağınız “hataların” çoğu taşıyıcı niteliktedir — düzenleyicinin kuralıyla örtüşen bir yuvarlama kuralı, bir iş ortağının kararsız uç noktasını telafi eden bir yeniden deneme, kimsenin belgelemediği bir amaçla yeniden kullanılan bir alan. Yeniden mühendislik projeleri kötü ününü bunları silerek kazanır.

Nasıl çalışırız

Dört hamle, bu sırayla.

Sıranın kendisi yöntemdir. Doğrudan yeniden mühendisliğe atlamak, zor bir sistemi olay raporuna dönüştüren şeydir.

01

Sistem arkeolojisi

Statik analiz, çalışma zamanı izleme ve görüşmeler — sistemin ne yaptığını ve aynı ölçüde önemlisi, iş tarafının hangi parçaları gerçekten kullandığını yeniden kurmak. Ölü kod, kullanılmayan toplu işler ve yıllardır kimsenin açmadığı raporlar bulunup işaretlenir, çünkü silinebilen kapsam hiç geçirmek zorunda kalmayacağınız kapsamdır. Çıktı, iş tarafının okuyabileceği bir bağımlılık haritası ve bir risk envanteridir.

02

Golden-master testleri

Canlı ortam trafiğinden ve kaydedilmiş toplu işlerden gerçek girdileri ve çıktıları büyük ölçekte topluyor, sonra bunları sisteme yeniden oynatarak “doğru”nun bugün ne anlama geldiğini belirliyoruz. Sonraki her değişiklik, birinin hafızasına değil bu kayıtlı gerçeğe göre değerlendirilir. Akışlar finansal ya da düzenlemeye tabi olduğunda golden master, tüm programın kabul kanıtı hâline gelir.

03

Değişimden önce stabilizasyon

Önce çökme döngüleri, kaynak sızıntıları, sessiz iş hataları ve kırılgan devreye almalar giderilir — yangın hâlindeki bir sistemde yeniden mühendislik yapılamaz. Devreye almalar tekrarlanabilir ve provası yapılmış hâle gelir, hiç olmayan yerlere izleme ve uyarı eklenir ve tekrar eden başlıca olay nedenleri mühendislikle ortadan kaldırılır. Tek başına bu faz genellikle ekibin akşamlarını geri verir; programa güvenilirliğini kazandıran da budur.

04

Bilginin kayda geçirilmesi

Mimari dokümanlar, karar kayıtları ve runbook’lar, sonda kimsenin okumadığı bir çıktı olarak değil, öğrendikçe yazılır. Her biri sistemin ne yaptığını, bunu neden o şekilde yaptığını ve neyin ona bağlı olduğunu adlandırır. Amaç, riskin bir daha tek bir kişide toplanmamasıdır — buna biz de dahiliz; her şeyin ilerledikçe yazıya dökülmesinin nedeni budur.

Uygulamada

İş günlük olarak nasıl yürür?

01

Risk envanteri mimari diyagramı geride bırakır.

Ürettiğimiz ilk çıktı bir hedef mimari değildir. Gerçekte nelerin ters gittiğinin sıralı bir envanteridir: hangi alt sistemler olaylara yol açıyor, ne sıklıkla, her biri kesinti ya da elle düzeltme olarak neye mal oluyor ve kurumda kaç kişi bunları anlıyor. Bazı kalemlerin düzeltilmesinin ucuz, korunmasının pahalı olduğu ortaya çıkar — uyarısı olmayan gecelik bir iş, elle yenilenen bir sertifika. Diğerleri yapısaldır ve yeniden mühendislik planına girer. Her iki durumda da iş tarafı, inanmak zorunda olduğu bir resim yerine finanse edebileceği bir iş sırası elde eder.

  • Olay geçmişi, değişiklik geçmişi ve çalışma zamanı izleri ayrı ayrı değil birlikte okunur
  • Bus factor her alt sistem için kaydedilir, çünkü tek bir uzman da diğerleri gibi bir risktir
  • Her kalem bir maliyet ve önerilen bir hamle taşır; böylece envanter finans tarafından önceliklendirilebilir
02

Golden master, sistemi önce anlamak zorunda kalmadan test edilebilir kılar.

Bir sistemin ne yaptığını kaydetmek için onu anlamanız gerekmez. Temsili canlı ortam girdilerini — istekler, mesaj içerikleri, toplu dosyalar — ürettikleri çıktılar ve yan etkilerle birlikte topluyor ve istendiğinde yeniden oynatılabilecek bir set olarak saklıyoruz. O andan itibaren sistemin bir güvenlik ağı olur: kayıtlı bir çıktıyı değiştiren her değişiklik, ay sonunda değil derlemede ortaya çıkar. Kapsam satır sayısına göre değil iş değerine göre büyür; parayı, düzenleyici raporlamayı veya müşteri taahhütlerini taşıyan akışlar önce kapsanır.

  • Canlı ortam ölçeğinde kaydedilmiş girdi ve çıktılar; kişisel veriler saklanmadan önce maskelenir
  • CI içinde yeniden oynatma; davranışı değiştiren bir değişiklik ay sonunu değil derlemeyi düşürür
  • Kapsam iş akışı bazında izlenir; kritik set yeniden mühendislik başlamadan önce tamamlanır
03

Stabilizasyon, gerisinin masrafını çıkaran kısımdır.

Haftada iki kez birini nöbetten uyandıran bir sistem, programın ihtiyaç duyduğu dikkati tüketir. Bu yüzden ilk mühendislik işi gösterişsiz ve aciledir: derlemeyi tekrarlanabilir yapmak, devreye almayı bir ritüel olmaktan çıkarıp tek komuta indirmek, hataların bugün sessiz kaldığı yerlere izleme eklemek ve olayların çoğunun ardındaki birkaç nedeni gidermek. Devreye almanın artık bir sürüm hafta sonu gerektirmemesi, kurumun bu sistemle nelerin mümkün olduğuna dair inancını değiştirir ve olay oranı eğilimi, programın üzerinden değerlendirildiği sayı hâline gelir.

  • Tekrarlanabilir derleme ve devreye alma hattı, genellikle konteyner üzerinde, provası yapılmış bir geri alma ile
  • Hataların sessiz kaldığı yerlere izleme, uyarı ve log toplama eklenir — bkz. DevOps & Cloud
  • Başlıca olay nedenleri mühendislikle ortadan kaldırılır ve eğilim düzenli olarak yayımlanır; böylece iyileşme görünür olur
Rollere göre

Masanın her tarafı ne kazanır.

Mühendislik

Önce güvenlik ağı, sonra yeniden düzenleme.

Mühendisleriniz sistemin sahipliğini baştan sona korur. Haritanın ortak olması için arkeolojiyi birlikte yürütürüz, golden-master setini rapor olarak değil çalışan bir araç olarak devrederiz ve ilk stabilizasyon düzeltmelerini birlikte yaparız. Programın hiçbir parçası bizim kalmamıza bağlı değildir.

  • Sizin CI’nızda, sizin depolarınızda çalışan golden-master ve karakterizasyon setleri
  • Çalışma ortamının izin verdiği yerde Docker ile konteynerleştirilmiş, provası yapılmış geri alma içeren tekrarlanabilir derlemeler
  • En kritik akışlara izleme ve yapılandırılmış loglama eklenir
Operasyon

Daha az nöbet çağrısı, kalanlar için de bir runbook.

Sessiz hatalar uyarıya, uyarılar runbook’a dönüşür ve runbook’ların provası, onlarla uyandırılacak kişilerle birlikte yapılır. Amaç bir pano değil; bir sonraki olayın, sistemi bilen tek kişi tarafından değil nöbette kim varsa onun tarafından çözülmesidir.

  • Eskiden ertesi sabah fark edilen hatalar için uyarı
  • Gerçek olaylardan yazılmış, nöbet çizelgenizle provası yapılmış runbook’lar
  • Olay oranı için başlangıç değeri ve eğilim yayımlanır; böylece iyileşme ölçülebilir olur
İş & risk

Yazılı bir karar ve altındaki kanıt.

Triyaj ayrı fiyatlanan bir iştir ve bir dokümanla biter: sistem ne yapıyor, olduğu gibi çalışmaya devam etmesi neye mal oluyor, hangi parçalar varlık hangileri tehlike ve her seçenek neyi gerektirir. Dürüst yanıt bir alt sistemin değiştirilmesi gerektiğiyse, doküman kanıtı ekleyerek bunu söyler.

  • Her kalem için maliyet ve önerilen hamle içeren risk envanteri
  • Yazılı öneri — koruma, yerinde yeniden düzenleme veya dikişten ayırıp değiştirme
  • Bilgi sizin dokümantasyonunuza geçirilir; böylece tek kişiye bağımlılık sona erer
Karşılaştırma

Yeniden mühendislik, sıfırdan başlama içgüdüsüne karşı.

Başlangıçta ne biliyorsunuz
İlk değerin teslimi
Belgelenmemiş kurallar
Risk profili
Mevcut ekip
Bütçe kesilirse
Veri geçişi
Başarısız olursa sonuç
01Sıfırdan yazmak
Başlangıçta ne biliyorsunuzBirinin hatırladığı gereksinimler
İlk değerin teslimiCanlıya geçişte
Belgelenmemiş kurallarMüşteriler tarafından bulunur
Risk profiliTek bir tarihte toplanır
Mevcut ekipKenara alınır, sonra geçiş istenir
Bütçe kesilirseYarım kalmış bir yenisi
Veri geçişiTek hafta sonu
Başarısız olursa sonuçİki sistem, ikisi de sahipsiz
02Legacy yeniden mühendislik
Başlangıçta ne biliyorsunuzSistemin kanıtlanabilir davranışı
İlk değerin teslimiErkenden, olaylar azaldıkça
Belgelenmemiş kurallarDeğişiklikten önce testlere geçirilir
Risk profiliKüçük, geri alınabilir adımlara yayılır
Mevcut ekipProgramın içinde, harita elinde
Bütçe kesilirseKararlı, belgelenmiş bir sistem
Veri geçişiÇift yazım ve mutabakat
Başarısız olursa sonuçDaha yavaş bir plan, yine de başladığınız yerin ilerisi
Bir çalışma nasıl yürür

Dört faz, her kapıda kanıt.

01

Triyaj

Ne bozuluyor, ne sıklıkla ve neye mal oluyor — geri kalan her şeyi sıraya koyan risk envanteri. Kodu, olay geçmişini ve değişiklik kaydını okur, çalışan sistemi izler ve geride kalan herkesle görüşürüz. Triyaj ayrı fiyatlanan bir iştir ve yazılı bir kararla biter; böylece ucu açık bir arkeoloji kazısı satın almazsınız.

02

Davranışı sabitleme

Önemli akışlar üzerinde, gerçek trafikten alınıp CI’da yeniden oynatılan golden-master ve karakterizasyon testleri. Kişisel veriler kayıt anında maskelenir. Bu, sonraki her değişikliği geri alınabilir kılan güvenlik ağı ve sistemin bugün gerçekte ne vaat ettiğini size söyleyen çıktıdır.

03

Stabilizasyon

Devreye almalar tekrarlanabilir hâle getirilir, hataların sessiz kaldığı yerlere izleme eklenir ve başlıca olay nedenleri mühendislikle ortadan kaldırılır. Amaç, devreye almaların artık bir sürüm hafta sonu gerektirmemesidir ve olay eğilimi programın herkese açık karnesi olur. Ortam sakinleşene kadar yapısal hiçbir şey değiştirilmez.

04

Yeniden mühendislik

Testler koruma bariyeri olarak: kodun sağlam bir varlık olduğu yerde yerinde yeniden düzenleme, tehlike olduğu yerde dikişlerden ayırma — kanıt hangisini destekliyorsa. Ayırma işi, gölge çalıştırma ve provası yapılmış geri almalarla, Yazılım Modernizasyonu ile aynı disiplinde yürür.

Ne alırsınız

Elinizde ne kalır.

  • Sistem ortamının risk envanteri ve bağımlılık haritası
  • Kritik akışlar üzerinde golden-master test seti
  • Tekrarlanabilir derleme & devreye alma hattı
  • Mimari dokümantasyon ve karar kayıtları
  • Olay oranı başlangıç değeri ve eğilimiyle kararlı bir sistem
Genellikle şunlarla çalışır
Java.NETCOBOL adjacencyOracleSQL ServerKafkaDockerGitLab CIGrafanaOpenTelemetry
Uygunluk

Bu ne zaman doğru tercih.

Doğru tercih

Legacy yeniden mühendisliği; sistem işin anlamlı bir bölümünü hâlâ yürütüyorsa, onu kuranlar ayrılmışsa ve kurum onun etrafından dolaşmaya başlamışsa — değişiklikleri toplu hâle getiriyor, bir modülden kaçınıyor, otomatik olana kimse güvenmediği için elle düzeltme adımını sürdürüyorsa — seçin. Riskin bir iki kişide toplandığı, devreye almaların başlı başına birer operasyona dönüştüğü ve bir düzenleyicinin, bir denetçinin ya da bir satın alma adayının mevcut dokümantasyonun yanıtlayamayacağı soruları sormak üzere olduğu ortamlara uyar. Ayrıca her geçişten önceki doğru ilk adımdır: hiç kimse ne yaptığını bilmeden bir sistemi buluta taşımamalıdır.

Başka yere bakın

Sistem küçük ve iyi anlaşılmışsa, ekip de yalnızca teknoloji yığınını modernize etmek istiyorsa bu yanlış hizmettir — o, sıradan mühendislik işidir. İş yetkinliğinin kendisi geçerliliğini yitirmişse ve asıl soru onun yerine ne geleceğiyse yine yanlıştır; bu soru Ürün Keşfi kapsamına girer. Kurumun sistemi hatırlayan hiç kimseyi ayıramadığı ve katılmadığı yazılı bir kararı kabul etmediği yerlerde de zorlanır: yöntem, tartışmaları kanıtın bitirmesine izin verilmesine dayanır.

SSS

Sık sorulan sorular

Bu normal durumdur ve yöntem bunu varsayar. Dokümantasyon sistemin kendisidir ve onu nasıl okuyacağımızı biliyoruz — statik analiz, çalışma zamanı izleri, veritabanı erişim desenleri, değişiklik geçmişi ve gerçek trafik altında kaydedilmiş davranış. İstediğimiz şey, sistemi bugün kullananlara erişim; çünkü hangi davranışın amaçlanmış, hangisinin yalnızca katlanılmış olduğunu onlar söyleyebilir.
Kanıt karar verir. Karakterizasyondan sonra hangi parçaların sağlam varlık olduğunu — çirkin ama doğru çalışan ve nadiren değişen kod — hangilerinin olay üreten ya da her yol haritası maddesini tıkayan gerçek tehlike olduğunu biliriz. Yanıt genellikle “alan alan, ikisi de” olur: kodun hak ettiği yerde yerinde yeniden düzenleme, hak etmediği yerde ayırıp değiştirme; aynı alt sistemde asla ikisi birden değil.
Evet — bankacılık, kamu ve endüstriyel ortamlar bunu sıklıkla gerektirir ve araçlarımız sizin çevrenizin içinde çalışır. Kayıt ve yeniden oynatma sizin altyapınızda koşar, hiçbir şey saklanmadan önce kişisel veriler maskelenir ve kaynak kodun binadan çıkamadığı yerde o da çıkmaz. Bu kısıtı çalışmanın ortasında keşfetmek yerine triyaj başlamadan önce mutabık kalırız.
O zaman bu kararı, arkasındaki kanıtla — olay kaydı, bağlaşım analizi, çalışır tutmanın maliyeti — ve onu tek seferlik bir geçiş olmadan değiştiren bir strangler planıyla birlikte yazılı olarak alırsınız.
Triyaj ayrı fiyatlanır ve çıktısı, bizimle devam etseniz de etmeseniz de size teslim edilir. Sonrası, bulgularından yola çıkılarak aralarında durabileceğiniz fazlar hâlinde kapsamlandırılır; böylece ucu açık bir arkeoloji kazısı satın almazsınız. İlk finanse edilen faz genellikle stabilizasyondur.
Arkeoloji salt okunurdur ve karakterizasyon, davranışı değiştirmeden trafiği kaydeder. İlk değişiklikler stabilizasyon düzeltmeleridir; bunlar da diğer her şeyle aynı golden-master yeniden oynatmasından geçer ve mutabık kalınan zaman aralıklarında devreye alınır. Programın kendi başarı ölçüsü, sürdüğü sürece olayların azalmasıdır; dolayısıyla aksama, tam da gözlediğimiz başarısızlık biçimidir.

Ne inşa ettiğinizi anlatın.

Bugün elinizde ne olduğunu ve neye ihtiyacınız olduğunu anlatın. Bir mühendis okur; nasıl yaklaşacağımızı ve size uyan modeli yazılı olarak iletir.

✓ Satış sunumu yok✓ AI-native bir mühendisten yanıt✓ Yazılı geri dönüş