Yazılım mimarisi ve sistemleri için uzun tasarım aşamaları, mühendislik ekipleri uygulama ve sistem geliştirmeye başlamadan önce gerekli bir adım ve bazen bir kurumsal ön koşuldu. Mimarlar, üst düzey gereksinimleri gözden geçirecek, kurumsal standartları dikkate alacak ve yazılım geliştirme sürecinde kullanılacak platformlar, tasarım kalıpları ve bileşenler üzerinde bir mimari çizecektir.
Bazı kuruluşlar, yeni teknolojiler veya yazılım bileşenleri gerekliyse mimari planlamayı bir adım daha ileri götürür. kurdular mimari inceleme panoları karar vermede şeffaflık sağlamak, mimari riskleri vurgulamak, bütçeleri uyumlu hale getirmek ve sürdürülebilir kalkınma uygulamalarını etkileyen diğer hususları incelemek. Diğerleri, mimari inceleme kurullarının etkinliğine meydan okuyor çünkü özerkliği engellerler, geliştirme akışını bozarlar ve aşırı dokümantasyona yol açabilirler.
Çevik geliştirme ekipleri, kuralcı bir planı takip etmek yerine değişime yanıt vermek için özerklik ve yetkilendirme arar; bu anahtar değerlerden biridir Çevik Yazılım Geliştirme Manifestosu. Ancak teknoloji liderleri, teknik borcu azaltırken verimlilik, kalite ve güvenilirlik için yeniden kullanılabilir platformlar, geliştirme standartları ve sürdürülebilir işletim modelleri arar.
Denge şu yollarla sağlanabilir sürekli mimari ilkeleri. Sürekli Mimari Manifestosu, “mimarinin esas olarak özellikler uygulanmadan önce yapıldığı eski bir şelale yaklaşımından sürekli bir piste geçişi” desteklemektedir. İlkeler, “sadece proje çözümleri değil, uzun vadeli ürünler” tasarlamayı ve “mimariyi uygulayarak doğrulamayı” içerir. İlkeleri, bulut mimarileri geliştiren, devops en iyi uygulamalarından yararlanan ve kavram ve kavram kanıtlarını kullanan ekipler için uygundur. çevik sivri uçlar Çözümlerini doğrulamak için.
Yazılım mimarı Pierre Pureur’a ulaştım. Sürekli Mimari, manifesto ve uygulamalar hakkında görüşlerini almak için. “Sürekli Mimari yaklaşımı, çevik, geliştiriciler ve bulut çağında sürdürülebilir yazılım mimarileri oluşturmak ve sürdürmek için kanıtlanmış bir yol sunuyor. Kalite öznitelik gereksinimlerine odaklanmak, mimari kararları yönlendirmek, teknik borcunuzu bilmek ve geri bildirim döngülerini uygulamak dahil olmak üzere temel faaliyetlerin önemini vurguluyor.”
Geliştirme ve test ortamı oluşturmayı otomatikleştirin
Sürekli mimariyle başlamak için ilk yer, geliştirme ve test ortamlarını hızlandırmak için kod olarak altyapıyı (IaC) otomatikleştirmek gibi temel geliştirici uygulamalar olabilir. Otomasyon, mimarlar tarafından aranan standart konfigürasyonlarda ve kalıplarda kilitlenmeye yardımcı olur ve geliştirme ekiplerinin ihtiyaç duyduğu çevikliği sağlar.
Quali’de ürün yönetimi başkan yardımcısı Amir Rozenberg, “Uygulamaları sunan kuruluşlar, sürekli yazılım dağıtım boru hatlarını güçlendirmek için güvenilir, hazır, uyumlu ortamlara bağımlıdır ve bunlara kolay erişime sahip olmalıdır.”
Rozenberg, mimarların bulut altyapısı planları oluşturmak için devops ekipleriyle ortak olmasını öneriyor. “Devops ekipleri, uzun bekleme sürelerini ortadan kaldıran, geliştirme ekipleri, ürün yöneticileri, test kullanıcıları ve ön satışlar gibi iş bileşenleri için uygun bulut altyapısını sağlamak için ortam planlarını self servis bir şekilde modellemelidir.”
Buildkite’ın kurucusu ve eş CEO’su Tim Lucas da aynı fikirde. “Hem teknik hem de kültürel olarak sürekli bir mimari, geliştirme ekibinin ve işletmenin bağlılığını gerektirir” diyor. Önerdiği temel ilkelerden biri “geliştirici deneyimine odaklanan ve bundan sorumlu olan özel bir rol oluşturmak”tır. Geliştirme ekiplerinin kodlarını geliştirmek ve test etmek için gereken ortamlara ve dağıtım ardışık düzenlerine kendi kendilerine hizmet etmelerini kolaylaştırarak geliştirici deneyimini ele alabilirsiniz. .
Üretim mimarilerini tanımlarken müşteri ve kullanıcı ihtiyaçlarını göz önünde bulundurun
Devops ekipleri otomasyon aracılığıyla üretkenlik ararken, ürün yöneticileri, veri bilimcileri ve uyumluluk görevlileri dahil olmak üzere iş liderleri de üretim ortamlarında mimari çeviklik arar. Bu genellikle, kullanıcı talebi nedeniyle üretim ortamlarının ölçeğinin büyütülmesi ve küçültülmesi anlamına gelir. Bazen bu, uyumluluk gereksinimlerine göre birden çok ortamın yeniden başlatılması anlamına gelir.
Lucas, üretim ortamları için önemli bir tasarım ilkesi ekliyor ve “bir şeyin sürekli olması için kesintilerin azaltılması gerektiği için arızayı azaltmaya yatırım yapmayı” öneriyor.
Veri bilimcileri için entegrasyon ve dağıtımlar genellikle yazılım geliştirme ekipleri için yaygın olandan farklı gereksinimlere sahiptir. KNIME’nin kurucu ortağı ve CEO’su Michael Berthold, “Entegrasyon sırasında oluşturulan veri bilimi üretim süreci, veri bilimi ekibinin oluşturduğundan farklıdır ve üretimde izleme, otomatik güncelleme ve yeniden dağıtımla sonuçlanabilir” diyor.
Kullanım ve altyapı izleme, ortamların ölçeklenmesini ve küçültülmesini tetikleyebilir, ancak modelops izleme ayrıca bir yapılandırma değişikliğini veya yeniden konuşlandırmayı tetikleyebilir. Berthold, veri bilimi ve makine öğrenimi ardışık düzenleri için, “Dağıtım döngüsü, üretimdeki veri bilimi sürecini kontrol eden izleme süreci tarafından otomatik olarak tetiklenebilir ve yalnızca ciddi bir değişiklik tüm sürecin yeniden başlatılmasını zorunlu kılar” diyor.
Mimarlık gelecekteki olasılıklara odaklanmalı
İş liderleri genellikle yakın vadeli fırsatlara odaklanır ve devops ekipleri modüler ve genişletilebilir yazılım bileşenleri geliştirmek için ellerinden gelenin en iyisini yapar. Sürekli bir mimariyi desteklemek için en iyi uygulamalardan bazıları şunlardır:
- Bulutta yerel ve sunucusuz mimarilerle geliştirme
- Dağıtım işlem hatlarını standartlaştırma
- Sürekli test uygulamalarını desteklemek
- Mikro hizmetler oluşturma ve API yaşam döngüsünü destekleme
- Platformların basitleştirdiği ve özelleştirilmiş çözümlerden kaçınmaya yardımcı olduğu düşük kodlu çözümlerden yararlanma
Axway’de Başkan Yardımcısı ve Baş İnovasyon ve Teknoloji Sorumlusu Vince Padua, açık mimarilere odaklanıyor ve “B-to-B entegrasyonu ve işbirliği, API’lerin ve bulutun arkasında inşa edilen dijital dönüşümünü hızlandıracak. Bulutta yerel ve API öncelikli yaklaşımlar her şeye açık bir mimariye olgunlaştığından, ortaklıklar ve işbirliği yoluyla inovasyona giden zaman ve maliyet önemli ölçüde azaldı.”
Birçok işletme artık müşteri deneyimleri, entegrasyonlar ve dijitalleştirilmiş iş akışları için özel yazılımlara yatırım yapıyor ve yatırımlarını geleceğe hazır hale getirmek için en iyi uygulamaları göz önünde bulundurmak zorunda. Padua, “Kurumsal yüzey alanı API merkezli olduğundan, sektörler ve dikeyler arasında teklifleri ve tedarik zincirlerini ayrıştırarak ve yeniden birleştirerek daha fazla inovasyonun kilidi açılır. Seyahat, lojistik, depolama, üretim, borç verme, sigorta ve butik perakende için B-to-B tekliflerinde önemli yatırımlar ve başlangıç büyüme fırsatları var.”
Sürekli mimariyi uygulamak, işletmenin bugün ihtiyaçları ile geliştirici ekiplerin üretken olmak için ihtiyaç duyduğu şeyleri dengelemeyi ve aynı zamanda organizasyonun gelecekteki değişiklikleri, uzantıları ve yeni gereksinimleri nasıl destekleyebileceğine dair bir vizyona sahip olmayı gerektirir. Gerçekleştirmenin bir kısmı, bugünün uygulaması üzerinde çalışan ekibin muhtemelen zamanla değişeceğidir, bu nedenle mimarlar öğrenmesi kolay, yeni ekip üyelerinin korkmadan kod değişiklikleri yapmasına izin veren ve değişiklikleri doğrulamak için yeterli test kapsamına sahip yapı taşı çözümleri ararlar. . Sürekli mimari, yeniden kullanılabilir kalıplarla geliştirme ihtiyacını kabul eder, ancak iş ihtiyaçlarının ne kadar hızlı değiştiği ve teknolojilerin ne kadar hızlı geliştiği göz önüne alındığında mükemmel bir plan oluşturmanın gerçekçi olmadığını kabul eder.
Telif Hakkı © 2022 IDG Communications, Inc.
Kaynak : https://www.infoworld.com/article/3662290/3-ways-devops-can-support-continuous-architecture.html#tk.rss_all