Yavaş Dağıtımın Toplantı Yaratması
- Yazılım tasarımı insan ilişkilerini geliştirmenin bir pratiğidir. Yazılım geliştirmede kullandığımız diğer teknikler de böyledir.
- "Kodu dağıtamayacak kadar toplantı var" şeklindeki bir mühendisin şikâyeti, dağıtım kapasitesinin sınırına bağlı olarak ortaya çıkabilir.
- Chuck Rossi, Facebook’ta bir dağıtıma uygulanabilecek değişiklik sayısının sabit olduğunu gözlemlemiş. Daha fazla değişiklik istiyorsanız, bunun için daha fazla dağıtım yapmanız gerekir.
- Facebook, son 5 yılda dağıtım hızını haftalıktan günlük dağıtıma, ardından günde üç defaya çıkardı; mobil uygulama dağıtım döngüsü de 6 haftadan 4 haftaya, sonra 2 haftaya indi.
- "Dağıtıma göre değişiklik sayısı" esnek olmayan bir metriktir; iyileştirilebilir ama zaman alır. Mevcut eşiğin üstüne çıkarsa değişiklik sayısını düşürmek gerekir.
- Kurumsal yük artışı, olumlu bir geri besleme döngüsünü başlatır: iş yükü azalır → baskı artar → hatalar artar → dağıtıma başına düşen değişiklik azalır → yük artar → iş yükü azalır.
- Daha fazla değişiklik işlemek için dağıtım kapasitenizi artırmanız gerekir. Ya dağıtım döngüsünü kısaltmalı ya da dağıtıma düşen değişiklik sayısını yükseltmelisiniz.
- Yükü azaltma çabası sonuçta toplantılara dönüşebilir. Bu da bir seferde çok fazla kod dağıtma girişimini engeller.
Yazılım Tasarımı: Tidy First?
- Yazılım tasarımı insan ilişkilerini geliştirmenin bir pratiğidir. Yetenekleri geliştirmek bu ilişkileri geliştirmek için bir yol olarak görülebilir.
2 yorum
Bu yorum çok iyi.
Hacker News Yorumları
Dağıtım riskini azaltmak için testleri ve organizasyonel özellikleri geliştirmek önemli ama tek başına tek yaklaşım değil
"Yazılım okuryazarlığı" kavramını açıklamaya çalışıyor
CI hattında test süresi uzayınca, toparlanmaya odaklanmaya karar verdiler
Organizasyonlar dağıtım iyileştirmeye engel olabilir
Büyük değişikliklerden korkulduğunda test artar
CloudFormation’ın neden bu kadar yavaş olduğu konusundaki soru
Mikroservisler dağıtım sıklığını yatayda ölçeklendirmeyi mümkün kılar
Yazılım performansı, yani insan performansı önemlidir
Hızlı dağıtım, olay müdahale toplantılarını tetikler