İnşa otomasyonu - Build automation

Yazılım geliştirme
Çekirdek aktiviteleri
Paradigmalar ve modeller
Metodolojiler ve çerçeveler
Destekleyen disiplinler
Uygulamalar
Araçlar
Standartlar ve Bilgi Yapıları
Sözlükler
Anahatlar

İnşa otomasyonu oluşturma işleminin otomatikleştirilmesi işlemidir. yazılım oluşturma ve aşağıdakileri içeren ilişkili süreçler: derleme bilgisayar kaynak kodu içine ikili kod, ambalaj ikili kod ve koşuyor otomatik testler.

Genel Bakış

Tarihsel olarak, yapı otomasyonu şu şekilde gerçekleştirildi: makefiles. Bugün, iki genel araç kategorisi vardır:[1]

Derleme otomasyonu yardımcı programı
Bu, aşağıdaki gibi yardımcı programları içerir Yapmak, Tırmık, CMake, MSBuild, Karınca, Uzman veya Gradle (Java) vb. Bunların birincil amacı, eserler inşa etmek kaynak kodu derleme ve bağlama gibi etkinlikler yoluyla.
Yapı otomasyonu sunucuları
Bunlar, zamanlanmış veya tetiklenmiş olarak derleme otomasyonu yardımcı programlarını yürüten genel web tabanlı araçlardır; a sürekli entegrasyon sunucu bir tür inşa otomasyon sunucusudur.

Otomasyon düzeyine bağlı olarak aşağıdaki sınıflandırma mümkündür:

Her biri için bir yazılım listesi bulunabilir derleme otomasyon yazılımı listesi.

Derleme otomasyon araçları

Yapı otomasyonu araçları, basit, tekrarlanabilir görevlerin otomasyonuna izin verir. Aracı kullanırken, görevleri doğru, belirli bir sırayla ve her bir görevi çalıştırarak hedefe nasıl ulaşılacağını hesaplayacaktır. Araç oluşturmanın iki yolu, görev odaklı ve ürün odaklıdır. Göreve yönelik araçlar, ağların bağımlılığını belirli bir görev setine göre tanımlar ve ürün odaklı araçlar, ürettikleri ürünler açısından şeyleri tanımlar.[2]

Yapı otomasyonu sunucuları

Derleme sunucuları sürekli tümleştirme sunucularından çok önce var olsalar da, genellikle sürekli tümleştirme sunucularıyla eşanlamlıdırlar, ancak inşa sunucusu ayrıca bir ARA araç veya ALM aracı.

Sunucu türleri

Dağıtılmış derleme otomasyonu

Otomasyon, dağıtılmış derleme veya yardımcı program adımının yürütülmesi için bir derleme grubu kullanılarak elde edilir.[3] Dağıtılmış derleme işlemi, dağıtılmış derlemeyi yürütmek için kaynak kodu bağımlılıklarını anlamak için makine zekasına sahip olmalıdır.

Sürekli teslimat ve sürekli entegrasyonla ilişki

Yapı otomasyonu, bir kültür oluşturma kültürünü uygulamaya doğru ilerlemenin ilk adımı olarak kabul edilir. sürekli teslimat ve DevOps. İle birleştirilmiş inşa otomasyonu sürekli entegrasyon, dağıtım, uygulama yayınlama otomasyonu ve diğer birçok süreç, bir kuruluşun en iyi yazılım teslimatı uygulamalarını oluşturmada ilerlemesine yardımcı olur.[4][Nasıl? ]

Avantajları

Yazılım geliştirme projelerine göre derleme otomasyonunun avantajları şunlardır:

  • Sürekli entegrasyon için gerekli bir ön koşul ve sürekli test
  • Ürün kalitesini iyileştirin
  • Derleme ve bağlantı işlemeyi hızlandırın
  • Gereksiz görevleri ortadan kaldırın
  • "Kötü derlemeleri" en aza indirin
  • Kilit personele bağımlılıkları ortadan kaldırın
  • Sorunları araştırmak için yapı ve sürüm geçmişine sahip olun
  • Yukarıda listelenen nedenlerden dolayı zamandan ve paradan tasarruf edin.[5]

Ayrıca bakınız

Referanslar

  1. ^ Ceruzzi, Paul E. (2003). Modern bilgi işlem tarihi. MIT Basın. ISBN  978-0262532037.
  2. ^ Clark, Mike (2004). Pragmatik Proje Otomasyonu: Java Uygulamaları Nasıl Oluşturulur, Dağıtılır ve İzlenir. Pragmatik Programcılar. ISBN  978-0974514031.
  3. ^ Enos Joe (2013). "Otomatik Derlemeler: Tutarlılığın Anahtarı". InfoQ. C4Media Inc. Alındı 16 Eylül 2015.
  4. ^ Bashan, Shmuel; Bellagio, David E. (2011). IBM Rational ClearQuest ve Jazz ile İş Öğesi Yönetimi: Bir özelleştirme Kılavuzu. IBM Press. ISBN  978-0137001798.
  5. ^ "Arşivlenmiş kopya" (PDF). Arşivlenen orijinal (PDF) 2008-11-23 tarihinde. Alındı 2008-09-19.CS1 Maint: başlık olarak arşivlenmiş kopya (bağlantı)