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