Burada biraz arka plan - büyük bir yazılım dışı şirkette dahili yazılım geliştirmeden sorumlu RAD geliştiricilerinden oluşan küçük bir ekibiz (5 kişiden). "Dahili yazılım", MSSQL sunucusunu kullanan bir masaüstü .NET uygulamasından, arka planda çalışan Python komut dosyalarının arka planı olarak çalışan MS Word belgelerine ve şablonlarına - bir teknoloji hayvanat bahçesine - değişir.
Tüm ekip, kullanıcıların gereksinimlerini karşılayabilen, kodlayabilen, test edebilen ve üretime yerleştirebilen çok yönlü uzmanlardan oluşur. Üretimdeki yazılım bir kez başka bir ekip tarafından bakılıyor ancak bir şeyler ters giderse müdahale etmemiz genellikle kolay.
Şimdiye kadar tüm sesler iyi, ama bir sorun var - bir RAD ekibi olarak sık sık yayınlamamız gerekiyor ve bir veya iki uygulamanın yeni sürümlerini yayınlamadan bir gün geçmiyor (veya bir senaryo, güncellenmiş kelime belgesi olabilir) , C ++ konsol uygulaması vb.) Bir geliştirme testi yapıyoruz ve ayrıca son kullanıcıları, yazılımı UAT ortamında çalıştırmalarına izin vererek dahil ediyoruz ...
... ama böcek yine de üretime geçiyor. Kullanıcılar, bu hataların ve ara sıra kararsızlığın, istediklerini gerçekten hızlı bir şekilde elde etmek için ödedikleri fiyat olduğunu anlıyorlar, ancak aynı zamanda bizi düşündürüyor - belki de geliştirmemizi iyileştirebilir veya yeni bir işlev eklerken tanıttığımız hata sayısını azaltır.
İyi şey - ilk etapta gerçekten çok fazla sürecimiz yok, bu yüzden geliştirmeye başlamak kolay olmalı, kötü şey - küçük bir RAD ekibi olarak, uygulamak için gerçekten fazla zamanımız ve kaynağımız yok büyük bir şey, ancak aşağıdaki girişimleri düşünüyoruz ve herhangi bir geri bildirim, ipucu, ipucu ve öneriyi memnuniyetle karşılarız.
Şu anda uygulamaların bazıları geliştirici testinden hemen sonra üretime girerek kullanıcı kabul testini atlıyor. Bu uygulama durdurulmalı ve küçük bir değişiklik bile son kullanıcı tarafından test edilmelidir. Her uygulama, son kullanıcılardan seçilen özel bir beta test kullanıcısına sahip olacaktır. Sadece bir beta-test cihazı yeni sürümü tamamladıktan sonra testten üretim ortamına yükseltilir.
Kod incelemeleri yapmıyoruz - ancak birimiz değişiklik kümesini kontrol etmeden önce kod incelemeleri yapmaya başlayacağız. Ben de bir "sunum gözden geçirme" hakkında düşünüyordum - temelde geliştiricilerden biri diğer oturmak onu yazılım sunum (kopya ikili dosyaları, güncelleme yapılandırma, veritabanına yeni tablo eklemek, vb) yapıyor onu izlemek zorunda - genellikle 5-10 dakikanızı alır, bu yüzden "kullanıma sunma" süresinin çoğunu almaz.
Yeni bir sürümün üretimden çekilebilecek kadar iyi olduğu ve önceki iyi bir sürümle değiştirileceği kanıtlandığında geri alma süresinin en aza indirilmesi. Bir sürüm geri gitmeyi kolaylaştırmak için tüm sürümlerin (ikili olarak) bir geçmişini saklıyoruz - ve hızlı bir şekilde "önceki sürüm ikili dosyalarına sahip yeni çıkan bir ikili dosyaların üzerine yaz" olsa da hala hataya meyilli olan manuel bir işlemdir. ve "geri alma başarısız olursa ve sistemi buggy yerine kullanılamaz hale getirecekse" isteyerek.
Burası fikirlerimiz tükendi ve bunlar hakkında geri bildirim almak istiyoruz ve bazı basit sürüm / geliştirme süreci iyileştirme önerilerini paylaşabilseydiniz - bu harika olurdu.