Mimari Teknikler
Yinelemeli ve Artımlı Yaklaşım
Aday çözümler üretmeye yardımcı olan beş ana adımdan oluşan yinelemeli ve artımlı bir yaklaşımdır. Bu aday çözüm, bu adımlar tekrarlanarak daha da geliştirilebilir ve sonunda uygulamamıza en uygun mimari tasarımı yaratabilir. Sürecin sonunda mimarimizi inceleyip tüm ilgili taraflara iletebiliriz.
Bu sadece olası bir yaklaşımdır. Mimarinizi tanımlayan, gözden geçiren ve ileten daha birçok resmi yaklaşım vardır.
Mimari Hedefi Belirleyin
Mimari ve tasarım sürecini oluşturan mimari hedefi belirleyin. Kusursuz ve tanımlanmış hedefler mimariye vurgu yapar, tasarımdaki doğru sorunları çözer ve mevcut aşamanın ne zaman tamamlandığını ve bir sonraki aşamaya geçmeye hazır olduğunu belirlemeye yardımcı olur.
Bu adım aşağıdaki etkinlikleri içerir -
- Başlangıçta mimari hedeflerinizi belirleyin.
- Mimarimizin tüketicisini tanımlayın.
- Kısıtlamaları belirleyin.
Mimari faaliyet örnekleri arasında, bir Web uygulaması için sipariş işleme kullanıcı arayüzünde geri bildirim almak için bir prototip oluşturmak, bir müşteri sipariş izleme uygulaması oluşturmak ve bir güvenlik incelemesi gerçekleştirmek için bir uygulama için kimlik doğrulama ve yetkilendirme mimarisi tasarlamak yer alır.
Başlıca Senaryolar
Bu adım, en önemli olan tasarıma vurgu yapar. Bir senaryo, bir kullanıcının sistemle etkileşiminin kapsamlı ve kapsayıcı bir açıklamasıdır.
Temel senaryolar, uygulamanızın başarısı için en önemli senaryolar olarak kabul edilen senaryolardır. Mimari hakkında karar vermeye yardımcı olur. Amaç, kullanıcı, işletme ve sistem hedefleri arasında bir denge sağlamaktır. Örneğin, kullanıcı kimlik doğrulaması önemli bir senaryodur çünkü bunlar, bir kalite özniteliğinin (güvenlik) önemli işlevsellikle (bir kullanıcının sisteminize nasıl giriş yaptığı) kesişimidir.
Uygulamaya Genel Bakış
Mimariyi gerçek dünyadaki kısıtlamalara ve kararlara bağlayarak daha dokunulabilir hale getiren bir uygulamaya genel bakış oluşturun. Aşağıdaki faaliyetlerden oluşur -
Uygulama Türünü Tanımlayın
Uygulama türünün bir mobil uygulama, zengin bir istemci, zengin bir internet uygulaması, bir hizmet, bir web uygulaması veya bu türlerin bir kombinasyonu olup olmadığını belirleyin.
Dağıtım Kısıtlamalarını Belirleyin
Uygun bir dağıtım topolojisi seçin ve uygulama ile hedef altyapı arasındaki çakışmaları çözün.
Önemli Mimari Tasarım Stillerini Belirleyin
Bölümlemeyi iyileştirmek için istemci / sunucu, katmanlı, ileti yolu, etki alanına dayalı tasarım vb. Gibi önemli mimari tasarım stillerini tanımlayın ve sık sık tekrar eden sorunlara çözümler sunarak tasarımın yeniden kullanımını teşvik edin. Uygulamalar genellikle bir stil kombinasyonu kullanır.
İlgili Teknolojileri Belirleyin
Geliştirmekte olduğumuz uygulama türünü, uygulama dağıtım topolojisi için tercih ettiğimiz seçenekleri ve mimari stilleri göz önünde bulundurarak ilgili teknolojileri belirleyin. Teknolojilerin seçimi ayrıca organizasyon politikaları, altyapı sınırlamaları, kaynak becerileri vb. Tarafından yönlendirilecektir.
Önemli Sorunlar veya Önemli Sıcak Noktalar
Bir uygulama tasarlanırken hataların en sık yapıldığı bölgeler sıcak noktalar. Kalite özelliklerine ve kesişen endişelere dayalı olarak temel sorunları belirleyin. Olası sorunlar arasında yeni teknolojilerin ortaya çıkışı ve kritik iş gereksinimleri yer alır.
Kalite öznitelikleri, mimarinizin çalışma zamanı davranışını, sistem tasarımını ve kullanıcı deneyimini etkileyen genel özellikleridir. Kesişen endişeler, tasarımımızın tüm katmanlar, bileşenler ve katmanlar için geçerli olabilecek özellikleridir.
Bunlar aynı zamanda yüksek etkili tasarım hatalarının en sık yapıldığı alanlardır. Kesişen endişelere örnek olarak kimlik doğrulama ve yetkilendirme, iletişim, yapılandırma yönetimi, istisna yönetimi ve doğrulama vb. Verilebilir.
Aday Çözümler
Temel etkin noktaları tanımladıktan sonra, ilk temel mimariyi veya ilk üst düzey tasarımı oluşturun ve ardından aday mimari oluşturmak için ayrıntıları doldurmaya başlayın.
Aday mimari, uygulama türünü, dağıtım mimarisini, mimari stili, teknoloji seçeneklerini, kalite özelliklerini ve kesişen konuları içerir. Aday mimari bir gelişme ise, yeni aday mimarilerin yaratılabileceği ve test edilebileceği temel olabilir.
Döngüyü yinelemeli olarak takip etmeden ve tasarımı geliştirmeden önce, aday çözüm tasarımını önceden tanımlanmış olan temel senaryolara ve gereksinimlere göre doğrulayın.
Tasarımın belirli alanlarını keşfetmek veya yeni konseptleri doğrulamak için mimari sivri uçları kullanabiliriz. Mimari sivri uçlar, belirli bir tasarım yolunun uygulanabilirliğini belirleyen, riski azaltan ve farklı yaklaşımların uygulanabilirliğini hızla belirleyen bir tasarım prototipidir. Mimari ani artışları önemli senaryolara ve sıcak noktalara karşı test edin.
Mimari İnceleme
Hataların maliyetini düşürmek ve mimari sorunları olabildiğince erken bulmak ve düzeltmek için mimari inceleme en önemli görevdir. Proje maliyetlerini ve proje başarısızlık olasılığını azaltmanın sağlam ve uygun maliyetli bir yoludur.
Mimariyi, önemli proje kilometre taşlarında ve diğer önemli mimari değişikliklere yanıt olarak sık sık gözden geçirin.
Bir mimari incelemenin temel amacı, mimariyi doğru bir şekilde doğrulayan temel ve aday mimarilerin fizibilitesini belirlemektir.
Fonksiyonel gereksinimleri ve kalite özelliklerini önerilen teknik çözüme bağlar. Ayrıca sorunları belirlemeye ve iyileştirme alanlarını tanımaya yardımcı olur
Senaryo tabanlı değerlendirmeler, iş açısından en önemli olan ve mimari üzerinde en büyük etkiye sahip olan senaryolara odaklanan bir mimari tasarımın gözden geçirilmesi için baskın bir yöntemdir.
Yazılım Mimarisi Analiz Yöntemi (SAAM)
Başlangıçta değiştirilebilirliği değerlendirmek için tasarlanmıştır, ancak daha sonra kalite niteliklerine göre mimariyi gözden geçirmek için genişletilmiştir.
Mimari Ödünleşim Analiz Yöntemi (ATAM)
Mimari kararları kalite nitelikleri gerekliliklerine ve belirli kalite hedeflerini ne kadar iyi karşıladıklarına göre gözden geçiren SAAM'ın parlak ve geliştirilmiş bir versiyonudur.
Aktif Tasarım İncelemesi (ADR)
Genel bir inceleme yapmak yerine, bir defada mimarinin bir dizi sorununa veya ayrı bölümlerine daha fazla odaklanan tamamlanmamış veya devam eden mimariler için en uygunudur.
Ara Tasarımların Aktif İncelemeleri (ARID)
Devam eden mimariyi incelemenin ADR yönünü, bir dizi soruna odaklanarak ve kalite özelliklerine odaklanan senaryo tabanlı incelemenin ATAM ve SAAM yaklaşımını birleştirir.
Maliyet Fayda Analizi Yöntemi (CBAM)
Mimari kararların maliyetlerini, faydalarını ve zamanlama sonuçlarını analiz etmeye odaklanır.
Mimari Seviye Değiştirilebilirlik Analizi (ALMA)
İş bilgi sistemleri (BIS) için mimarinin değiştirilebilirliğini tahmin eder.
Aile Mimarisi Değerlendirme Yöntemi (FAAM)
Birlikte çalışabilirlik ve genişletilebilirlik için bilgi sistemi ailesi mimarilerini tahmin eder.
Mimari Tasarımın İletişimi
Mimari tasarımı tamamladıktan sonra, tasarımı geliştirme ekibi, sistem yöneticileri, operatörler, işletme sahipleri ve diğer ilgili tarafları içeren diğer paydaşlara iletmeliyiz.
Mimariyi başkalarına tanımlamak için aşağıdaki iyi bilinen birkaç yöntem vardır: -
4 + 1 Model
Bu yaklaşım, tüm mimarinin beş görünümünü kullanır. Bunların arasında dört görüş (logical view, process view, physical view, ve development view) mimariyi farklı yaklaşımlardan tanımlar. Beşinci görünüm, yazılım için senaryoları ve kullanım durumlarını gösterir. Paydaşların, özellikle kendilerini ilgilendiren mimarinin özelliklerini görmelerine olanak tanır.
Mimari Açıklama Dili (ADL)
Bu yaklaşım, sistem uygulamasından önce yazılım mimarisini tanımlamak için kullanılır. Aşağıdaki endişeleri giderir - davranış, protokol ve bağlayıcı.
ADL'nin temel avantajı, tasarımı resmi olarak kullanmaya başlamadan önce mimariyi bütünlük, tutarlılık, belirsizlik ve performans açısından analiz edebilmemizdir.
Çevik Modelleme
Bu yaklaşım, "içerik temsilden daha önemlidir" kavramını izler. Oluşturulan modellerin basit ve anlaşılması kolay, yeterince doğru, ayrıntılı ve tutarlı olmasını sağlar.
Çevik model, belirli müşterileri hedefler ve o müşterinin çalışma çabalarını yerine getirir. Belgenin basitliği, yapının modellenmesine paydaşların aktif katılımını sağlar.
IEEE 1471
IEEE 1471, resmi olarak ANSI / IEEE 1471-2000, "Yazılım Yoğun Sistemlerin Mimari Tanımlaması için Önerilen Uygulama" olarak bilinen bir standardın kısa adıdır. IEEE 1471, özellikle bağlama, görüşlere ve bakış açılarına özel bir anlam vererek bir mimari tanımlamanın içeriğini geliştirir.
Birleşik Modelleme Dili (UML)
Bu yaklaşım, bir sistem modelinin üç görünümünü temsil eder. functional requirements view (kullanım durumları dahil, kullanıcının bakış açısından sistemin işlevsel gereksinimleri); the static structural view(sınıf diyagramları dahil nesneler, nitelikler, ilişkiler ve işlemler); vedynamic behavior view (nesneler arasında işbirliği ve sıra, etkinlik ve durum diyagramları dahil olmak üzere nesnelerin iç durumundaki değişiklikler).