Yazılımın yaşlanması, kimlerin yaratıldığına ya da ilk satın alındığında yazılımın ne kadar güçlü olduğuna bakılmaksızın her türlü yazılımda meydana gelen bir olgudur. Yazılımın yaşlanması, parçalanmanın kendini göstermeye başlamasıyla kodlamanın aşamalı olarak düşmesi, daha yavaş performansa ve çıktıların düşmesine yol açar. Yazılım gençleştirme, yaşlanma hatalarını düzeltmeyi amaçlar, ancak sorunla sınırlı bir düzeltme sunar. Yazılımda yapılan sürekli güncellemeler yaşlanma etkilerini de arttırmakta ve orijinal kodlamalar çarpıtılmaktadır. Çoğu kullanıcı, yaşlanan yazılımı korumaya çalışmak yerine yeni bir yazılım satın almayı daha kolay ve daha az zaman alan bir yöntem olarak bulur.
İlk defa kullanılan yazılım yenidir ve herhangi bir aşağılayıcı kodla tanıştırılmamıştır, ayrıca bilgileri parçalanmamıştır. Bu, programın sorunsuz ve hızlı bir şekilde çalışabileceği anlamına gelir. Yazılımın yaşlanması ilerledikçe, işletim sistemi programa daha az kaynak besleyebilecektir. Daha az kaynak ve aşağılayıcı kodla, yazılım gecikmelere neden olur veya otomatik olarak kapanabilir.
Yükseltmeler, görünüşte iyi olsa da, yaşlanma yazılımı üzerinde yıkıcı etkilere neden olabilir. Yükseltme yeni kod tanıtır. Bu yeni kod, parçalanmış kodun etkilerini veya görünürlüğünü daha da artırabilir. Yükseltme ayrıca programın boyutunu artıran daha fazla kod sunar. Bu, yükseltme eklenmeden önceki ile aynı çıktıyı üretmek için daha fazla kaynağa ihtiyaç duyulması anlamına gelir.
Yazılım yaşlanmasının zararlı etkilerini düzeltmek için yazılım gençleştirme kullanılmıştır. Pek çok yazılım gençleştirme tekniği türü vardır, ancak genel olarak, parçalanmayı kolaylaştırmayı ve yazılımı orijinal kodlamasına geri döndürmeyi amaçlamaktadır. Yazılım gençleştirme sınırlı bir düzeltme sunar, çünkü tüm hataları düzeltemez ve en düşük ila orta yaşlanma belirtilerini gösteren yazılımlarda kullanılır.
Bir yazılım parçası aldıktan yıllar sonra, yazılımın yaşlanmasının etkileri kaçınılmaz hale gelecektir. Programın ne kadar iyi yapıldığına bağlı olduğu için süre belli değildir, ancak 10 yıl genellikle yaşlanmanın etkilerinin programı neredeyse kullanılamaz hale getirdiği zamanın en üst aralığıdır. Yazılım gençleştirme, yazılım bu noktaya ulaştığında bazı hataları düzeltebilir, ancak yaşlanma etkileri programın kullanılmasını zorlaştıracaktır.
Yazılımın yaşlanma etkileri kaçınılmaz olduğunda, çoğu kullanıcı yeni yazılım satın almayı tercih eder. Yeni yazılım, ömrünün sonuna kadar aynı bakım gerektirmeyecek ve eski yazılımdan daha iyi bir çıktı üretebilecek. Daha yeni yazılımlar satın almak, özellikle de işletmeler için, insan kaynağını diğer görevler veya projeler üzerinde çalışmak için serbest bırakır.


