Bir haftalık yayın döngüsü: bunu nasıl mümkün kılabilirim?


12

Şirketimde (3 yıllık web endüstrisinin başlangıcı), ürün ekibinde "aaaah bu bir kriz yaması şimdi!" (herkes değil mi?)

Bunun, kendi kendine dahil olan mühendislik personelinin verimliliği (ve morali) üzerinde bir etkisi vardır. Yönetim, bu aynı gün taleplerinin sıklığını nasıl azaltacağımızı düşünmek için biraz zaman harcadı ve her hafta bir sürüm yayınlayacağımız çözümü buldu. (Daha önce iki haftada bir yapıyorduk, bu genellikle birkaç gün kadar sürdü.)

13 geliştirici ve 6 yerel / 9 açık deniz testçisi vardır; teori, sadece 4 geliştiricinin (ve tüm test kullanıcılarının), diğer geliştiricilerin birinden gerçekten belirli bir uzmanlık gerektiren bir çalışma gelmediği sürece, çift sayılı sürümlerde çalışacağıdır. Her döngü iki günlük geliştirme çalışması ve iki günlük KG çalışması (artı 1 günlük kapsam / triyaj / ...) içerecektir.

Sorularım:

(a) Herkesin bu serbest bırakma döngüsüyle ilgili deneyimi var mı?

(b) Bu kadar serbest bırakma döngüsünün denendiğini duyan var mı?

(c) (a) veya (b) ise, Dünya'da nasıl çalışır hale getirirsiniz? (Kaçınılması gereken tuzaklar vb. De takdir edilmektedir.)

(d) Bu çaba başarısız olursa zararı nasıl en aza indirebiliriz?


"Kriz işi" ile ne demek istiyorsun?
Büyücü79

Bize, alındıkları gün yama yapmamızı söyleyen talepler. Soruyu bir an için daha net hale getirmek için düzenleme.
Arkaaito

Yanıtlar:


8

Her hafta - hatta daha sık - teslimat yapabilirsiniz. Şu anda genel olarak iki haftada bir yayınlıyoruz, ancak ortaklarımızdan birinden herhangi bir şey gelmeden bir sonraki döngü için beklersek alakasız olacak bir işlevsellik uygulamak işlevsel değildir. Önümüzdeki birkaç ayın bir noktasında standart olarak sürekli teslimata geçmemizi istiyorum (öğeler 'tamamlandığında' pratik olur olmaz serbest bırakılıyor), ancak henüz buna yeterince güvenmiyoruz. Irak.

Kritik olan şey, web sitenizin hem birim testleri hem de uçtan uca kabul testleri / yürütülebilir spesifikasyonlar gibi güçlü otomatik testlerle kapsanmasıdır. Sonuç olarak bu, yapınızın tamamen otomatik olduğu anlamına gelir. Kabul seviyesinde , anahtar kelime yaklaşımı sayesinde hızlı bir şekilde sürdürülebilir bir test paketi oluşturmak için mükemmel olan Robot Framework'ü kullanıyoruz . Görünüş ve his için yerinde test cihazımız bazı cursory kontrolleri yapıyor, ancak Hindistan'da farklı tarayıcılarda daha kapsamlı bir kontrol yapan birkaç adamımız var (sizin için ekran görüntüleri alarak bu tür şeylere yardımcı olan siteler var, örneğin BrowserLab ).

Dağıtımı tam olarak otomatikleştirmiyoruz (son adım manuel müdahale gerektirir, bu bizim için bilinçli bir karardır) - ancak kısa dağıtım döngüleri ile doğru veritabanı bağlantılarının kullanılmasını sağlamak gibi her şeyi otomatikleştiriyoruz. bu tür bir şeyle hata yapmak çok kolay olurdu.

Sürekli teslimat hakkında kontrol etmek isteyebileceğiniz oldukça iyi bir yeni kitap var, onu gözden geçirdim ama henüz ayrıntılı olarak geçmedim. Şimdiye kadar okuduğum şeyler, deneyimlerimizle iyi uyuşuyor: Sürekli Teslimat: Derleme, Test ve Dağıtım Otomasyonu ile Güvenilir Yazılım Sürümleri

Özetle yüksek disiplinli bir ekibe, yüksek düzeyde otomasyona ve en önemlisi otomasyona son derece yüksek derecede güvendiğinize ihtiyacınız var. Bana göre, sizin durumunuzda haftalık döngülere geçmek bir hata olabilir - kriz yamaları diğer konularda ipucu veriyor ve bunları ortadan kaldırmak için çalışmalısınız. Tempoyu atmak, durumu daha da kötüleştirebilir ...


7

Sürekli "kriz sürümü" kipindeyseniz, bir adım geri dönüp kodunuzu ve sürecinizi yeniden değerlendirmenin daha ihtiyatlı olacağını söyleyebilirim. Açıkçası, orada tekrarlanmaya devam eden bir tür başarısızlık var.

Bunu gerçek bir üretim ölçeğinde yapmak tamamen mümkün olmasa da, muhtemelen en az bir kıdemli üyeye ve geliştiricilerin ve testçilerin diğer bazı alt kümelerinin bu değerlendirmeye adanmış olması faydalı olacaktır.

"Her seferinde 4'lük bir yaklaşım" benim için kesin bir kazanan gibi görünmüyor. Bu, sürekli bağlam değiştirme anlamına gelir, bu da çok daha az verimlilik anlamına gelir.

Unutmayın, sürekli değişiklik yapmak için acele ediyorsanız, bu değişikliklerde hata yapma ve bunu yaparken başka bir şey kırma olasılığınız daha yüksektir.


@ Wonko'nun harika cevabına kendi yorumlarımı ekleyebilirsem ... Şirketimiz OP'ye benzer şeyler yapmak için birkaç yıl geçirdi. 6 ya da geliştiriciden 16'ya çıktık. Yaklaşık 2 yıl önce Çevik olmaya karar verdik. Çevik bir deneyim ile bir Bay Dev kiraladık, 2 hafta yinelemeleri değiştirdik, sürekli entegrasyon uyguladık, vb ... Hala bir ders kitabı dükkanından çok uzaktayız ve zaman zaman engebeli bir durumdayız, ancak içeriği gerçekten kestik büyük bir kazanç.
DevSolo


1

Yönetim bu "kriz işlerinin" sıklığını nasıl azaltacağımızı düşünmek için biraz zaman harcadı ve her hafta serbest bırakacağımız bir çözüm buldu.

Görünüşe göre yönetiminiz dünya şampiyonu ... neden takım ruhunuza yatırım yapmıyorsunuz? Göreceksiniz sorunları kendileri tarafından hayal kırıklığına uğratacak.

(a) + (b) IMHO, takımınızın büyüklüğüne göre en fazla iki hafta olmalıdır. Bir hafta bir adam gösterileri veya çok küçük takımlar (2 veya 3 gibi) için çalışacaktır.

(c) + (d) Ancak ekibinizin veya projenizin büyüklüğüne bakılmaksızın, yaptığım ilk şeylerden biri, oluşturma ve dağıtımı otomatikleştirmektir. Bir projenin ilk günlerinde bunu yaparak haftalar olmasa da günlerce tasarruf ediyorum.

Dağıtımlarınız tek bir tıklama ile yapılmalıdır. Kaynaktan evrelemeye, sonra evrelemeden üretime. Bunu mümkün kılmak için birçok araç var. Gönderen karınca / Nant gibi süper ağır şeyler Otomatik Yapı Studio .

Yedeklemeler, bildirimler, raporlama, ... dahil olmak üzere dosya dağıtımlarından veritabanı yükseltmesine kadar her şey otomatikleştirilebilir.


Burada ne önerdiğinizden tam olarak emin değilim - sorun yönetiminin ele alması gereken takım ruhu eksikliği olduğunu mu söylüyorsunuz? Yoksa bu işin nasıl yapılacağını anlamaya çalışarak (ve başarı beklentileri konusunda gergin) takım ruhu eksikliğini gösterdiğimi mi söylüyorsun?
Arkaaito

Birkaç metin satırında anlatıldığında durumunuz hakkında objektif bir fikir veremem. Ancak takım ruhu eksikliğinin genellikle sizinki gibi organizasyondaki birçok sorunun temel nedeni olduğunu gözlemledim. Bu sorun ne olursa olsun size hitap etmenizi öneririm, dağıtım işlemini otomatik hale
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.