Hafif değerlendirmenin anahtarı doğru şeyleri doğru zamanda değerlendirmektir. Bunu etkili bir şekilde yapmanın iki yolu var. İle senaryo bazlı değerlendirmede yüksek öncelikli kalite özelliklerine sadece odaklanan değerlendirme sürmek için kalite niteliği senaryoları ve kullanım durumlarını kullanır. İle risk esaslı değerlendirme riskleri belirlemek ve belirlenen riskleri sizin mimari tasarım faaliyetleri kullansın.
Bu iki yaklaşımı (biraz ilgili) inceleyen, önerebileceğim iki kitap var.
Anthony Lattanze tarafından tasarlanan Mimar Yazılım Yoğun Sistemler Mimari Merkezli Tasarım Metodolojisini tanıtıyor ve hafif senaryo tabanlı değerlendirmeleri içeriyor. Lattanze'yi SEI'nin Kalite Özellikleri Çalıştayı'ndan tanıyabilirsiniz ve benzer fikirler söz konusudur.
Yeterli Yazılım Mimarisi: George Fairbanks tarafından Risk Odaklı Bir Yaklaşım , bir yazılım sisteminin mimarisini tasarlamak ve değerlendirmek için risk odaklı bir yaklaşım getiriyor. Önizleme yapmak istiyorsanız web sitesinde bazı ücretsiz bölümler de var . Bu kitaptaki ilkeler hemen uygulanabilir olsa da, yaklaşım belirli bir yöntemle gelmez, bu nedenle diğer alanlardan fikirleri birleştirmeniz gerekir. Risklerin tanımlanması / önceliklendirilmesi için SEI'nin sürekli risk yönetimi yaklaşımını önemle tavsiye ederim .
Bu yaklaşımların arkasındaki temel fikir, sonuna kadar beklemek yerine değerlendirmeyi (ve tasarımı) azaltarak değerlendirmektir. Bu kesinlikle bir beyaz tahta etrafında konuşmaktan biraz daha ağır olsa da, tamamen patlamış bir ATAM kadar pahalıya mal olmaz. Ve rahatsanız, özel ihtiyaçlarınızı karşılamak için kiraz uygulamaları seçebilirsiniz.
Değerlendirmeyi yönlendirmek için hangi yaklaşımı kullanırsanız kullanın, genel fikir aynı olacaktır ...
Başlamadan önce:
- Öncelikli kalite özniteliği senaryoları veya riskleri (sahip olduğunuz tek şey bu ise gayri resmi olabilir)
- Gitme / gitmeme kararı için net tanım (mimarinin "yeterince iyi" olduğunu nasıl biliyorsunuz)
- Mimari açıklamanın en son kesimi (değerlendirmekte olduğunuz eser)
Bir değerlendirme oturumu için oturun:
- Mimar mimariye genel bir bakış sunar
- Bir görünümde gezinin, senaryonun veya riskin nasıl karşılandığını gösterin
- Sorunlar daha sonra giderilmek üzere kaydedilir
- Roller ve genel prosedür, Fagan denetimi için kullanılana (mimar veya yazar, moderatör, kayıt cihazı) benzer.
- Oturum, sisteminizin boyutuna bağlı olarak bir veya iki saat kadar sürebilir.
Oturum bittiğinde:
- Tanımlanan sorunları gözden geçirin ve devam etme / devam etmeme ölçütlerinin karşılanıp karşılanmadığını belirleyin. Genellikle her şeyi halletmek için yaklaşık 3 yorum alır. Karşılanmadıysa, hassaslaştırmaya ve denemeye devam edin (veya mimari riskleri azaltın).
- Bu bir "ya hep ya hiç" değerlendirmesi değildir - mimarinizin farklı bölümleri "geçebilir", diğerleri ise yine de geliştirmeye ihtiyaç duyar.
Senaryo tabanlı yaklaşımın nasıl olabileceğine dair bir fikir vermenize yardımcı olmak için , grad okulunda üzerinde çalıştığım bir capstone projesinden bazı kamu belgeleri var . Dokümantasyon biraz zor, ancak ACDM bağlamında senaryoya dayalı yaklaşımın bazı örneklerinin verilmesine yardımcı olabilir. Biz 5 kişilik bir ekiptik ve yaklaşık 35 KLOC Java / GWT gibi web tabanlı tipik bir uygulama geliştirdik.