Yapılandırma Yönetimi nedir?


12

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?


4
Dürüst olmak gerekirse, sadece Google bunu, ilk iki sonuç ilgili her şeyi açıklayan ilgili Wikipedia girişleridir.
Jeremy


2
Bu wikipedia sayfasını okudum ve dürüst olmak gerekirse, ben aynı "danışmanlar" tarafından Henry'nin yazdığı düşünüyorum ...
Dean Harding

Ah evet, moda sözcük. Kurumsal günlerimdeki anıları geri getiriyor.
Jason Baker

@Dean Harding Kesinlikle!
Henry

Yanıtlar:


4

Aşağıdakileri yanıtlamak için hangi Yazılım Yapılandırma Yönetimi (SCM) kullanılır:

  • Son ürünümüzü yapmak için hangi kaynak dosyalar kullanıldı?
  • Son ürünümüzü son yaptığımız zamandan ne değişti?
  • Neden değiştirdik?

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.


1
En son geldiğimde svn, Trac ve Hudson kullandığımızı söyledim. Danışmanların yüzündeki bakıştan, bunların hiçbirini duymadığı açıktı. Bu yüzden ona gereksinimler kaydımızın Trac'a nasıl beslendiğini, Trac'nin svn ile nasıl entegre olduğunu, Hudson auto'un her şeyi nasıl oluşturup dağıttığını ve konfigürasyon yönetimini bir proje riski olarak listelediğini gösterdim.
Henry

12

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).


2

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.

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.