Katıldığım tüm projelerde dışarıdan bir danışmandan girdi elde etmiş olduğumuz projelerde ne tür bir Konfigürasyon Yönetimi kullandığımız sorusu soruldu. Bu durumların hiçbirinde danışman Yapılandırma Yönetimini tanımlayamamıştır. Öyleyse nedir?
Katıldığım tüm projelerde dışarıdan bir danışmandan girdi elde etmiş olduğumuz projelerde ne tür bir Konfigürasyon Yönetimi kullandığımız sorusu soruldu. Bu durumların hiçbirinde danışman Yapılandırma Yönetimini tanımlayamamıştır. Öyleyse nedir?
Yanıtlar:
Aşağıdakileri yanıtlamak için hangi Yazılım Yapılandırma Yönetimi (SCM) kullanılır:
Bu da oldukça büyük ve çirkin bir “sürece” dönüşebilir. Süreç sorunları, çoğu geliştiricinin neden SCM'den bahsettiğini göz önüne alır; ardından değişiklikleri denetleyebilmeniz için hepsini bir araya getirin ( Hangi kaynaklara daha iyi ihtiyaç duyduğunu daha iyi görmek için iyi bir yönetici aracı sağladığı için bu, yönetim açısından ideal bir dünyadır .)
Bu, aslında yazılım varlık takibi olan ITIL Yapılandırma Yönetimi'nden, hangi yazılımın nerede çalıştığından (hangi sunucu / iş istasyonu) ve bu yazılımın kurulumunun ne olduğundan farklıdır.
Diğer bir deyişle, danışmanınız muhtemelen o zaman şirket / geliştirme grubunuzun cevabımın üstündeki üç soruyu nasıl cevapladığıdır.
Yapılandırma Yönetimi, kod yazma ile doğrudan ilgili olmayan "diğer her şeyi" kapsar. Böylece sürümleri nasıl yönetirsiniz, hata raporlarını ve özellik önerilerini nasıl yönetirsiniz ve triyaj edersiniz, derlemelerinizi nasıl gerçekleştirirsiniz vb. Ayrıca, kaynak kodunuzun nasıl yönetildiğini de içerir (örneğin, hangi sürüm kontrolünü kullandığınızı, dallanma stratejilerini, birden fazla eşzamanlı "sürümü" vb. Nasıl yönettiğinizi).
Konfigürasyon Yönetimi zamanla çok şey ifade ediyordu. Yöneticiler veya işlemler için doğrudan geliştiricilere göre daha önemli olduğunu düşünüyorum. Sunucuları çalışır durumda tutmaya çalışan bir operasyon görevliniz, makineleri kurma, yapılandırmalarını yönetme ve çalışmaya devam etme konusunda endişelenirsiniz. Bir bilgisayara giriş yapıp yazılımı yüklemeye ve bir makinedeki yapılandırma dosyalarını değiştirmeye başlarsanız, bu yapılandırmayı yönetmezsiniz. Bu makine ölürse ne olur? Birisi o makineye gidip bir yapılandırma dosyasını değiştirir ve her şey çıldırmaya başlarsa ne olur? Tam olarak çalışan makine gibi yapılandırılmış başka bir makine başlatmanız gerekirse ne olur? Bunu yapabilirmisin?
Bir yapılandırma yönetimi stratejisi olmadan yapamazsınız. Bu yüzden önemli. Her şey tekrarlanabilirlikle ilgili. Geliştiriciler tekrarlanabilirliğe insanların yaptığı işlemlerden farklı yaklaşıyor, bu yüzden farklı şeyleri tekrarlamayı önemsiyoruz.
Bunu yapmanıza yardımcı olacak bazı harika açık kaynak araçları vardır: Şef, Capistrano, Cook ve hatta SVN. SVN neden geliştiriciler tarafından kullanılmalı? Makineleri yapılandırmak için kullandığınız yapılandırma dosyalarınızı, komut dosyalarınızı kontrol edin ve sürümlerini takip edin. Kuruluşunuzun bu bölümleri, çalışmasını sağlamak için çok önemlidir. Bunları kaybetmek istemiyorsun.