高級(jí)系統(tǒng)架構(gòu)師系統(tǒng)架構(gòu)設(shè)計(jì)論文問(wèn)答題每日一練(2019.01.22)

來(lái)源:考試資料網(wǎng)
1.問(wèn)答題

論基于DSSA的軟件架構(gòu)設(shè)計(jì)與應(yīng)用
軟件架構(gòu)設(shè)計(jì)的一個(gè)重要課題是如何解決軟件重用問(wèn)題。特定領(lǐng)域軟件架構(gòu)(Domain Specific Software Architecture,DSSA)是一種有效實(shí)現(xiàn)特定領(lǐng)域軟件重用的手段。按照Tracz的說(shuō)法,DSSA就是一個(gè)特定的問(wèn)題領(lǐng)域中由領(lǐng)域模刑、參考需求、參考架構(gòu)等組成的開(kāi)發(fā)基礎(chǔ)架構(gòu),其目標(biāo)就是支持一個(gè)特定領(lǐng)域中多個(gè)應(yīng)用的生成。DSSA的基本活動(dòng)包括領(lǐng)域分析、領(lǐng)域設(shè)計(jì)和領(lǐng)域?qū)崿F(xiàn)。領(lǐng)域分析的主要目的是獲得領(lǐng)域模型,領(lǐng)域模型描述領(lǐng)域中系統(tǒng)之間共同的需求,即領(lǐng)域需求;領(lǐng)域設(shè)計(jì)的主要目標(biāo)是獲得DSSA,DSSA描述領(lǐng)域模型中表示需求的解決方案:領(lǐng)域?qū)崿F(xiàn)的主要目標(biāo)是依據(jù)領(lǐng)域模型和DSSA開(kāi)發(fā)和組織可重用信息。
請(qǐng)圍繞"基于DSSA的軟件架構(gòu)設(shè)計(jì)與應(yīng)用"論題,依次從以下3個(gè)方面進(jìn)行論述:
①概要敘述你參與管理和開(kāi)發(fā)的軟件項(xiàng)目以及你在其中所承擔(dān)的主要工作。
②就你所熟悉的領(lǐng)域,請(qǐng)給出針對(duì)該特定領(lǐng)域,在基于DSSA的軟件設(shè)計(jì)開(kāi)發(fā)中所涉及的領(lǐng)域模型、參考需求和參考架構(gòu)以及相應(yīng)的支持環(huán)境或設(shè)施。
③具體闡述你參與管理和開(kāi)發(fā)的項(xiàng)目中使用DSSA的情況,包括領(lǐng)域分析、領(lǐng)域設(shè)計(jì)和領(lǐng)域?qū)崿F(xiàn)等活動(dòng)是如何具體實(shí)施的,最終實(shí)際效果如何。

2.問(wèn)答題

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

3.問(wèn)答題

論文:論軟件架構(gòu)的選擇與應(yīng)用
軟件架構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式(idiomatic paradigm)。對(duì)軟件架構(gòu)風(fēng)格的研究和實(shí)踐促進(jìn)了對(duì)設(shè)計(jì)的重用,一些經(jīng)過(guò)實(shí)踐證實(shí)的解決方案也可以可靠地用于解決新的問(wèn)題。架構(gòu)風(fēng)格的不變部分使不同的系統(tǒng)可以共享同
一個(gè)實(shí)現(xiàn)代碼。只要系統(tǒng)是使用常用的、規(guī)范的方法來(lái)組織,就可使別的設(shè)計(jì)者很容易地理解系統(tǒng)的架構(gòu)。例如,如果某人把系統(tǒng)描述為C/S模式,則不必給出設(shè)計(jì)細(xì)節(jié),我們立刻就會(huì)明白系統(tǒng)是如何組織和工作的。請(qǐng)圍繞“軟件架構(gòu)的選擇與應(yīng)用”論題,依次對(duì)以下3個(gè)方面進(jìn)行論述。
(1)概要敘述你參與設(shè)計(jì)和開(kāi)發(fā)的軟件項(xiàng)目以及你所擔(dān)任的主要工作。
(2)詳細(xì)論述你是如何根據(jù)項(xiàng)目的實(shí)際需要設(shè)計(jì)軟件架構(gòu)的,特別是如何選擇多種不同的架構(gòu)來(lái)實(shí)現(xiàn)系統(tǒng)的。
(3)分析你采用的架構(gòu)所帶來(lái)的效果,你的設(shè)計(jì)還存在哪些不足之處。

4.問(wèn)答題

論文:論軟件體系結(jié)構(gòu)風(fēng)格及其應(yīng)用
軟件體系結(jié)構(gòu)設(shè)計(jì)的一個(gè)核心問(wèn)題是如何有效地使用重復(fù)的體系結(jié)構(gòu)模式,即達(dá)到軟件體系結(jié)構(gòu)級(jí)的軟件重用。軟件體系結(jié)構(gòu)風(fēng)格(Software Architecture Style)是描述軟件系統(tǒng)組織方式的常用模式,在實(shí)踐中已經(jīng)被多次應(yīng)用。按照Shaw和Garlan的說(shuō)法,"一種體系結(jié)構(gòu)風(fēng)格定義了構(gòu)件類型和連接件類型的詞匯表,以及它們?nèi)绾谓M合的約束條件"。體系結(jié)構(gòu)風(fēng)格通常分為數(shù)據(jù)流(Data Flow)風(fēng)格、調(diào)用/返回(Call/Return)風(fēng)格、獨(dú)立構(gòu)件(Independent Components)風(fēng)格、虛擬機(jī)(Virtual Machines)風(fēng)格和倉(cāng)庫(kù)(Repositories)風(fēng)格五大類。在實(shí)際應(yīng)用中,隨著軟件系統(tǒng)規(guī)模的擴(kuò)大和復(fù)雜,一個(gè)系統(tǒng)往往會(huì)同時(shí)使用多類體系結(jié)構(gòu)風(fēng)格,這些風(fēng)格可以交叉組合、彼此重疊。
請(qǐng)圍繞"軟件體系結(jié)構(gòu)風(fēng)格及其應(yīng)用"論題,依次從以下3個(gè)方面進(jìn)行論述:
①概要敘述你參與管理和開(kāi)發(fā)的軟件項(xiàng)目及你在其中所擔(dān)任的主要工作。
②請(qǐng)說(shuō)明以上軟件體系結(jié)構(gòu)風(fēng)格分類中每一類有哪些經(jīng)典的軟件體系結(jié)構(gòu)設(shè)計(jì)風(fēng)格,并就其中至少三類論述其具體的軟件體系結(jié)構(gòu)風(fēng)格的構(gòu)件、連接件類型和組合約束要求等結(jié)構(gòu)特征及其應(yīng)用特點(diǎn)。
③具體闡述你參與管理和開(kāi)發(fā)的項(xiàng)目中在體系結(jié)構(gòu)設(shè)計(jì)時(shí)選擇使用軟件體系結(jié)構(gòu)風(fēng)格的情況,包括選擇的依據(jù)、多個(gè)風(fēng)格組合使用的情況等,以及最終實(shí)際效果。

5.問(wèn)答題

論文:論混合軟件架構(gòu)的設(shè)計(jì)
C/S架構(gòu)將應(yīng)用一分為二,服務(wù)器負(fù)責(zé)數(shù)據(jù)管理,客戶機(jī)完成與用戶的交互任務(wù)。
B/S架構(gòu)是隨著Internet技術(shù)的興起,對(duì)C/S架構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在B/S架構(gòu)下,用戶界面完全通過(guò)WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn)。由于C/S架構(gòu)和B/S架構(gòu)各有其優(yōu)點(diǎn)和缺點(diǎn),可以適用在不同的應(yīng)用場(chǎng)合,在某些場(chǎng)合中,可能把C/S架構(gòu)和B/S架構(gòu)混合進(jìn)行設(shè)計(jì),更能滿足系統(tǒng)的需求,這些需要包括功能上的,也包括性能上的。
請(qǐng)圍繞“混合軟件架構(gòu)的設(shè)計(jì)”論題,依次對(duì)以下3個(gè)方面進(jìn)行論述。
(1)概要敘述你參與設(shè)計(jì)和開(kāi)發(fā)的軟件項(xiàng)目以及你所擔(dān)任的主要工作。
(2)簡(jiǎn)要說(shuō)明C/S架構(gòu)和B/S架構(gòu)的優(yōu)點(diǎn)和缺點(diǎn)。
(3)詳細(xì)說(shuō)明C/S和B/S混合架構(gòu)的實(shí)現(xiàn)方式,在你的系統(tǒng)中具體是如何實(shí)現(xiàn)這種混合架構(gòu)的,這種設(shè)計(jì)有什么優(yōu)點(diǎn)。