論基于場景的軟件體系結構評估方法
大型復雜軟件系統(tǒng)開發(fā)所關注的問題之一是質量,在軟件系統(tǒng)的早期設計階段,選擇合適的體系結構對系統(tǒng)許多關鍵質量屬性(如可用性、可修改性、性能、安全性、易用性等)起著決定性的影響。不恰當?shù)能浖w系結構將給項目開發(fā)帶來災難。因此,盡早分析和評估一個系統(tǒng)的體系結構非常重要。軟件體系結構分析和評估的目的是為了識別體系結構中潛在的風險,驗證系統(tǒng)的質量需求在設計中是否得到體現(xiàn),預測系統(tǒng)的質量并幫助開發(fā)人員進行設計決策。
軟件體系結構的評估通常是指評估參與者在評估過程中利用特定評估方法對系統(tǒng)質量屬性進行分析與評估?;谡{查問卷或檢查表的評估和基于場景(Scenarios)的評估是目前主要的兩類評估方式。利用場景評估技術進行軟件體系結構評估的主流方法包括SAAM(Scenario-based Architecture Analysis Method)、ATAM(Architecture Tradeoff Analysis Method)和CBAM(Cost Benefit Analysis Method)。SAAM方法最初用于比較不同的體系結構,后來用于指導對體系結構的檢查,使其主要關注潛在的問題,如需求沖突,或僅從某一參與者觀點出發(fā)的不全面的系統(tǒng)設計。ATAM方法在揭示出結構滿足特定質量目標的同時,也能反映出質量目標之間的聯(lián)系,從而權衡多個質量目標。CBAM方法可以看做是ATAM方法的補充,在其評估結果上對軟件體系結構的經(jīng)濟性進行評估。
請圍繞"基于場景的軟件體系結構評估方法"論題,依次從以下3個方面進行論述:
①概要敘述你參與管理和開發(fā)的軟件項目以及你在其中所擔任的主要工作,包括角色、工作內(nèi)容等。
②請從評估目的、評估參與者、評估活動或過程、評估結果等幾個方面對SAAM或ATAM評估方法進行分析。
③結合你參與的實際工作和項目的實際情況,具體闡述你在進行體系結構設計和評估時,采用了什么評估方法,如何具體實施,最終實際效果如何。
論設計模式在軟件開發(fā)中的應用
設計模式描述了在特定場景下解決一般設計問題的類和相互通信的對象。一個設計模式命名、抽象并確定了一個通用設計結構的主要方面,這些設計結構能被用來構造可復用的面向對象設計?,F(xiàn)在,設計模式已經(jīng)廣泛地應用在軟件開發(fā)中。
請圍繞"設計模式在軟件開發(fā)中的應用"論題,依次對以下3個方面進行論述:
①概要敘述你參與分析和開發(fā)的應用項目,以及你所擔任的主要工作。
②簡要介紹設計模式的基本概念及分類,詳細說明在你所參與分析和開發(fā)的應用項目中應用了哪些設計模式、方法,以及選用它們的原因。
③分析并討論使用設計模式的效果,并分析和評價設計模式對軟件開發(fā)的影響。
論多層分布式結構系統(tǒng)的開發(fā)
傳統(tǒng)的應用系統(tǒng)模式是"主機/終端"或"客戶機/服務器"。隨著中間件技術和Web技術的發(fā)展,這些傳統(tǒng)模式已經(jīng)不能適應新的環(huán)境。目前設計大型系統(tǒng)大多采用多層分布式結構,如C/A/S和B/A/S,應根據(jù)系統(tǒng)具體需求和運行環(huán)境的不同選擇合適的結構。
請圍繞"多層分布式機構系統(tǒng)的開發(fā)"論題,依次從以下3個方面進行論述:
①簡要敘述你參與分析設計的多層分布式結構系統(tǒng)及你擔任的主要工作。
②簡要說明多層分布結構分類的依據(jù)及多層分布式結構的特點,并指出你參與分析設計的系統(tǒng)屬于其中的哪種結構,以及選擇這種結構的原因。
③具體論述你在開發(fā)該系統(tǒng)時采用了哪些方法、策略與工具來實現(xiàn)所選的結構。