論基于場景的軟件體系結(jié)構(gòu)評估方法
大型復(fù)雜軟件系統(tǒng)開發(fā)所關(guān)注的問題之一是質(zhì)量,在軟件系統(tǒng)的早期設(shè)計(jì)階段,選擇合適的體系結(jié)構(gòu)對系統(tǒng)許多關(guān)鍵質(zhì)量屬性(如可用性、可修改性、性能、安全性、易用性等)起著決定性的影響。不恰當(dāng)?shù)能浖w系結(jié)構(gòu)將給項(xiàng)目開發(fā)帶來災(zāi)難。因此,盡早分析和評估一個(gè)系統(tǒng)的體系結(jié)構(gòu)非常重要。軟件體系結(jié)構(gòu)分析和評估的目的是為了識(shí)別體系結(jié)構(gòu)中潛在的風(fēng)險(xiǎn),驗(yàn)證系統(tǒng)的質(zhì)量需求在設(shè)計(jì)中是否得到體現(xiàn),預(yù)測系統(tǒng)的質(zhì)量并幫助開發(fā)人員進(jìn)行設(shè)計(jì)決策。
軟件體系結(jié)構(gòu)的評估通常是指評估參與者在評估過程中利用特定評估方法對系統(tǒng)質(zhì)量屬性進(jìn)行分析與評估?;谡{(diào)查問卷或檢查表的評估和基于場景(Scenarios)的評估是目前主要的兩類評估方式。利用場景評估技術(shù)進(jìn)行軟件體系結(jié)構(gòu)評估的主流方法包括SAAM(Scenario-based Architecture Analysis Method)、ATAM(Architecture Tradeoff Analysis Method)和CBAM(Cost Benefit Analysis Method)。SAAM方法最初用于比較不同的體系結(jié)構(gòu),后來用于指導(dǎo)對體系結(jié)構(gòu)的檢查,使其主要關(guān)注潛在的問題,如需求沖突,或僅從某一參與者觀點(diǎn)出發(fā)的不全面的系統(tǒng)設(shè)計(jì)。ATAM方法在揭示出結(jié)構(gòu)滿足特定質(zhì)量目標(biāo)的同時(shí),也能反映出質(zhì)量目標(biāo)之間的聯(lián)系,從而權(quán)衡多個(gè)質(zhì)量目標(biāo)。CBAM方法可以看做是ATAM方法的補(bǔ)充,在其評估結(jié)果上對軟件體系結(jié)構(gòu)的經(jīng)濟(jì)性進(jìn)行評估。
請圍繞"基于場景的軟件體系結(jié)構(gòu)評估方法"論題,依次從以下3個(gè)方面進(jìn)行論述:
①概要敘述你參與管理和開發(fā)的軟件項(xiàng)目以及你在其中所擔(dān)任的主要工作,包括角色、工作內(nèi)容等。
②請從評估目的、評估參與者、評估活動(dòng)或過程、評估結(jié)果等幾個(gè)方面對SAAM或ATAM評估方法進(jìn)行分析。
③結(jié)合你參與的實(shí)際工作和項(xiàng)目的實(shí)際情況,具體闡述你在進(jìn)行體系結(jié)構(gòu)設(shè)計(jì)和評估時(shí),采用了什么評估方法,如何具體實(shí)施,最終實(shí)際效果如何。