論文:論軟件體系結(jié)構(gòu)風(fēng)格及其應(yīng)用
軟件體系結(jié)構(gòu)設(shè)計的一個核心問題是如何有效地使用重復(fù)的體系結(jié)構(gòu)模式,即達(dá)到軟件體系結(jié)構(gòu)級的軟件重用。軟件體系結(jié)構(gòu)風(fēng)格(Software Architecture Style)是描述軟件系統(tǒng)組織方式的常用模式,在實踐中已經(jīng)被多次應(yīng)用。按照Shaw和Garlan的說法,"一種體系結(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)格、獨立構(gòu)件(Independent Components)風(fēng)格、虛擬機(Virtual Machines)風(fēng)格和倉庫(Repositories)風(fēng)格五大類。在實際應(yīng)用中,隨著軟件系統(tǒng)規(guī)模的擴大和復(fù)雜,一個系統(tǒng)往往會同時使用多類體系結(jié)構(gòu)風(fēng)格,這些風(fēng)格可以交叉組合、彼此重疊。
請圍繞"軟件體系結(jié)構(gòu)風(fēng)格及其應(yīng)用"論題,依次從以下3個方面進行論述:
①概要敘述你參與管理和開發(fā)的軟件項目及你在其中所擔(dān)任的主要工作。
②請說明以上軟件體系結(jié)構(gòu)風(fēng)格分類中每一類有哪些經(jīng)典的軟件體系結(jié)構(gòu)設(shè)計風(fēng)格,并就其中至少三類論述其具體的軟件體系結(jié)構(gòu)風(fēng)格的構(gòu)件、連接件類型和組合約束要求等結(jié)構(gòu)特征及其應(yīng)用特點。
③具體闡述你參與管理和開發(fā)的項目中在體系結(jié)構(gòu)設(shè)計時選擇使用軟件體系結(jié)構(gòu)風(fēng)格的情況,包括選擇的依據(jù)、多個風(fēng)格組合使用的情況等,以及最終實際效果。
論文:論軟件架構(gòu)的選擇與應(yīng)用
軟件架構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式(idiomatic paradigm)。對軟件架構(gòu)風(fēng)格的研究和實踐促進了對設(shè)計的重用,一些經(jīng)過實踐證實的解決方案也可以可靠地用于解決新的問題。架構(gòu)風(fēng)格的不變部分使不同的系統(tǒng)可以共享同
一個實現(xiàn)代碼。只要系統(tǒng)是使用常用的、規(guī)范的方法來組織,就可使別的設(shè)計者很容易地理解系統(tǒng)的架構(gòu)。例如,如果某人把系統(tǒng)描述為C/S模式,則不必給出設(shè)計細(xì)節(jié),我們立刻就會明白系統(tǒng)是如何組織和工作的。請圍繞“軟件架構(gòu)的選擇與應(yīng)用”論題,依次對以下3個方面進行論述。
(1)概要敘述你參與設(shè)計和開發(fā)的軟件項目以及你所擔(dān)任的主要工作。
(2)詳細(xì)論述你是如何根據(jù)項目的實際需要設(shè)計軟件架構(gòu)的,特別是如何選擇多種不同的架構(gòu)來實現(xiàn)系統(tǒng)的。
(3)分析你采用的架構(gòu)所帶來的效果,你的設(shè)計還存在哪些不足之處。
論文:論混合軟件架構(gòu)的設(shè)計
C/S架構(gòu)將應(yīng)用一分為二,服務(wù)器負(fù)責(zé)數(shù)據(jù)管理,客戶機完成與用戶的交互任務(wù)。
B/S架構(gòu)是隨著Internet技術(shù)的興起,對C/S架構(gòu)的一種變化或者改進的結(jié)構(gòu)。在B/S架構(gòu)下,用戶界面完全通過WWW瀏覽器實現(xiàn),一部分事務(wù)邏輯在前端實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實現(xiàn)。由于C/S架構(gòu)和B/S架構(gòu)各有其優(yōu)點和缺點,可以適用在不同的應(yīng)用場合,在某些場合中,可能把C/S架構(gòu)和B/S架構(gòu)混合進行設(shè)計,更能滿足系統(tǒng)的需求,這些需要包括功能上的,也包括性能上的。
請圍繞“混合軟件架構(gòu)的設(shè)計”論題,依次對以下3個方面進行論述。
(1)概要敘述你參與設(shè)計和開發(fā)的軟件項目以及你所擔(dān)任的主要工作。
(2)簡要說明C/S架構(gòu)和B/S架構(gòu)的優(yōu)點和缺點。
(3)詳細(xì)說明C/S和B/S混合架構(gòu)的實現(xiàn)方式,在你的系統(tǒng)中具體是如何實現(xiàn)這種混合架構(gòu)的,這種設(shè)計有什么優(yōu)點。