Hata izleme sistemimizde "öncelik" ve "önem derecesi" alanlarımız vardır. Şiddeti "kullanıcıyı nasıl etkiler" ve önceliği "ürünü nasıl etkiler" olarak tanımlıyoruz.
Benim sorum, "kod geliştirme" görevinin önem derecesine ve önceliğe göre nasıl sınıflandırılacağı ile ilgili. İyileştirmenin herhangi bir davranışı değiştirmediğini, ancak bunu "daha iyi bir kod" haline getirdiğini varsayalım. Genel olarak uzun vadeli bir bakım iyileştirmesi bekliyoruz ancak miktarını belirlemek zor.
Öncelik ve ciddiyet için tanımlarımızı kullandığımızda, resme uzun vadeli faydalar öngörmek için biraz zorlamadığınız sürece kod iyileştirmesi her ikisi için de en düşük değerleri alır. Bu nedenle, kod geliştirmenin anlamsız bir görev olduğunu ve asla denenmemesini gerektirir.
Ancak sürekli kod geliştirmek ve refactor için ham olduğuna inanıyorum, çünkü:
- Yazılım geliştirmenin kendisi sürekli bir öğrenme sürecidir ve kodu geliştirmeden daha iyi olamazsınız.
- Bir ekip kodlarından gurur duymalıdır.
- Gelecekteki bakım daha az zaman alacak ve uzun vadede tasarruf önemli olacaktır.
Yoksa bu tür görevlerin asla yaratılmaması gerektiğini mi düşünüyorsunuz ve bu tür iyileştirmeler yalnızca "istek üzerine", "bir hata ile ilişkilendirildiğinde" gerçekleştiriliyor mu? Bir hata ile ilişkilendirilmiş olsa bile, bu bir kod incelemesinde bir tartışma noktası olmayacaktır, örneğin "yapıdaki bu büyük değişikliği neden yaptınız?".