閱讀以下關于軟件架構的敘述,回答問題1、問題2和問題3。
軟件架構是指大型、復雜軟件的系統(tǒng)結構的設計、規(guī)格說明和實施。它以規(guī)范的形式裝配若干結構元素,從而描述出系統(tǒng)的主要功能和性能要求,同時表述其它非功能性需求(如可靠性、可擴展性、可移植性和可用性等)。軟件架構為軟件系統(tǒng)提供了一個結構、行為和屬性的高級抽象模式,可以使用一個公式來表達;軟件架構={構成系統(tǒng)的元素,指導元素集成的形式,關系和約束}。
“4+1”視圖模型用五個視圖組成的模型來描述軟件架構。該模型包含五個主要的視圖:
邏輯視圖(Logical View),描述了設計的對象模型,支持系統(tǒng)的功能需求。
進程視圖(Process View),描述了設計的并發(fā)和同步特征,支持系統(tǒng)的運行特性。
物理視圖(Physical view),描述了軟件到硬件的映射,反映了分布式特性,支持系統(tǒng)的拓撲、安裝和通信需求。
開發(fā)視圖(Development view),描述了在開發(fā)環(huán)境中軟件的靜態(tài)組織結構,支持軟件開發(fā)的內(nèi)部需求。
場景(Scenario),用來說明重要的系統(tǒng)活動,是其它四個視圖在用例(Use Case)驅(qū)動下的綜合。
[問題1](7分)
軟件架構在軟件需求與設計之間架起一座橋梁,也是風險承擔者進行交流的手段,允許不同的風險承擔者找出他們所關心的軟件架構問題。假設采用面向?qū)ο蟮脑O計方法,各個視圖涉及的組件(元素)包括:任務、類、模塊、節(jié)點、步驟等,風險承擔者包括最終用戶、系統(tǒng)設計師、程序員、經(jīng)理、項目管理師等。請在下表中的(1)到(7)處填入恰當?shù)膬?nèi)容(空白處不用填)。
[問題2](10分)
對于大型項目,通常采用迭代的方法來進行架構設計。架構先被原型化、測試、評估分析,然后在一系列的迭代過程中被細化。這種方法能夠使需求細化、成熟化,并能夠被更好地理解。請用400字以內(nèi)文字,簡述軟件架構基于場景驅(qū)動的迭代式設計過程。
[問題3](8分)
開發(fā)視圖是實現(xiàn)軟件詳細設計和編碼的重要藍圖。請用300字以內(nèi)文字,說明開發(fā)視圖需要滿足軟件內(nèi)部的哪些需求以及開發(fā)視圖直接影響到項目管理的哪些方面。