Uyarı: Bu biraz serbest bir form olacak ...
Endişenize bakmanın 2 yolu olduğunu düşünüyorum.
Bunu düşünürseniz, bazı uzay servisleri ve uydular başlangıçta onları başlatan aynı kodu çalıştırıyorlar. Öte yandan, bazıları (çok) uzak olsalar bile güncellenecek şekilde tasarlanmıştır.
Önemli olan çevre. Açıkçası, ortamı değiştirmediğiniz sürece, kodunuz eski haline gelmeyecektir. Bu durumda, kod çürümesi gerçekte mevcut değildir: kodun kendisi (veya üretilen ikili kod) çürümez. Tamamen farklı bir açıdan saldırmaya başlarsanız kırılabilir. Çürümesi değil, çevresine uyum sağlaması değil. Bunu evrimsel bir sorun olarak düşünün.
Ama çevremiz değişiyor. Ve her nasılsa, probleminizin anahtarı da çözümdür. Çevremiz o kadar hızlı değişiyor ki, günümüzde bir yazılım çözümünün zaman içinde gelişmesini beklemiyorduk. Geçtiğimiz yıl güncellenmemiş olan yazılım projelerini göz ardı ediyoruz ve net bir yol haritası üretmeyen ürün ve müşteri desteği hakkında inleyeceğiz. Ve bu iyi sonuç verdiğinde bile - net bir yol haritası, iyi destek, düzenli güncellemeler elde edersiniz ... - artık bir rakibin üstel büyüme ile ortaya çıkma ihtimali her zaman vardır. Çoğu zaman, köklü şirketlerin her zaman baskın olacağını düşünerek hata yaparız, çünkü tam olarak egemen oldukları için. Bununla birlikte, bir sürüdeki baskın unsur yaşlandıkça, süper büyük yazılım / donanım / satıcı ne olursa olsun yaşlanır. Ya da sadece biraz tembel. Ve bir meydan okuyucu içeri girer ve yerleşik baskının 5 veya 10 yıl önce yapmış olabileceğinden daha hızlı bir şekilde geri döner. Ya da baskın sadece iyi bir dayak alacak, piyasada bir bozulma (ekonomik olarak konuşursak, farklı alanlar üzerindeki etkileriyle) görürken zar zor hayatta kalabilir ve sonra işler devam edecek. Belki bu kusurlu görünüyor, ancak kendi içinde organik bir süreç.
Yani, kullanıcı açısından, sorun o kadar büyük değil sanırım. Kod çürümesi, kullanıcının bakış açısından gerçekleşmeyecektir, çünkü bir alternatif (muhtemelen sorunsuz bir geçiş / geçişle ... umarım) kullanacaktır.
Şimdi, kullanıcının bakış açısından bir şey görmediğimizi varsayarsak veya bilinmeyen nedenlerle, hükümetsel gelişim, uzay yolculuğu vb. çok uzun süre yaşamak / hayatta kalmak için inşa edilmek için, referans verdiğiniz metinlere bakmamız gerekir. Ve muhtemelen güvenilir sistemler ve hataya dayanıklı sistem hakkında daha fazla literatür. Yine de daha ileriye gitmek istiyoruz. Sadece hataya dayanıklılık istemiyoruz, evrim sistemleri de istiyoruz.
Evrim ile ilgili sorun, değişiklikleri ve değişikliklerin başarısızlık noktalarını ortaya çıkarmasıdır. Şimdi bunlara ve bunları ele almak için neler yapabileceğimize bakalım.
Bunu yaparken hala altyapı / mimarlık / tasavvur edici metafora güvenebiliriz (sonuçta, hepimiz yazılım mühendisleri, ancak yazılım mühendisliği gibi bir şey yoktur ... şimdilik). Tüp sistemi hala aktifken (bazı aksaklıklarla), Big Ben hala çalışıyorsa (bazı aksaklıklarla) veya Eyfel Kulesi hala ayakta dururken bir neden var. Bunun nedeni, bir altyapının hayati (ya da çok hayati olmayan) unsurlarıyla, yazılımla da yapmamız gereken şeyi yapmaktır: sürekli denetim. Bu varlıklar bu kadar uzun süre dayanacak şekilde tasarlanmamış olmakla birlikte, gerektiğinde sürekli gözetimden ve zamanında iyileştirmelerden ve onarımlardan yararlanmıştır. İsterseniz düzeltmelerinizi çağırın.
Öte yandan, bazı tasarımların sürmesi ve kesintisiz denetimin mümkün olmayacağını bile bilmeden, kesintisiz olarak çalışması amaçlanmıştır. Bu durumda iyi tasarım ve biçimsel modellere yöneliyoruz. Güvenilirlik unsurları (Kullanılabilirlik, Güvenilirlik, Güvenlik, Bütünlük, Sürdürülebilirlik) belirli bir ortam için ölçülebilir. İstatistikler gerisini dinlenme ve gelecek planlamak için yapar. Hangisi şu soruyu getirir: bizim için gerçek anlamda evrimsel olacak sistemler kurmak mümkün mü?