軟件體系結(jié)構(gòu)作業(yè)_第1頁(yè)
軟件體系結(jié)構(gòu)作業(yè)_第2頁(yè)
軟件體系結(jié)構(gòu)作業(yè)_第3頁(yè)
軟件體系結(jié)構(gòu)作業(yè)_第4頁(yè)
軟件體系結(jié)構(gòu)作業(yè)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件體系結(jié)構(gòu)作業(yè)姓名:蔣妮 學(xué)號(hào):S1124 W174第1章 軟件體系結(jié)構(gòu)概論一、基于構(gòu)件的軟件開(kāi)發(fā)方法能夠有效提高開(kāi)發(fā)效率,簡(jiǎn)述在實(shí)際的項(xiàng)目中有哪些方式獲得構(gòu)件、如何管理以及重用構(gòu)件?1)構(gòu)件獲取有多種不同的途徑: 1. 從現(xiàn)有構(gòu)件中獲得符合要求的構(gòu)件,直接使用或作適應(yīng)性修改,得到可重用的構(gòu)件; 2. 通過(guò)遺留工程,將具有潛在重用價(jià)值的構(gòu)件提取出來(lái),得到可重用的構(gòu)件; 3. 從市場(chǎng)上購(gòu)買(mǎi)現(xiàn)成的商業(yè)構(gòu)件,即COTS(Commercial Off-The-Shell)構(gòu)件; 4. 開(kāi)發(fā)新的符合要求的構(gòu)件。 2)構(gòu)件的管理: 它包括四個(gè)部分: 1.構(gòu)件描述:構(gòu)件模型是對(duì)構(gòu)件本質(zhì)的抽象描述,主要是為

2、構(gòu)件的制作與構(gòu)件的重用提供依據(jù);從管理角度出發(fā),也需要對(duì)構(gòu)件進(jìn)行描述,例如:實(shí)現(xiàn)方式、實(shí)現(xiàn)體、注釋、生產(chǎn)者、生產(chǎn)日期、大小、價(jià)格、版本和關(guān)聯(lián)構(gòu)件等信息,它們與構(gòu)件模型共同組成了對(duì)構(gòu)件的完整描述。 2.構(gòu)件分類(lèi)與構(gòu)件庫(kù)組織: 構(gòu)件分類(lèi)方法包括三類(lèi):關(guān)鍵字分類(lèi)法:基本思想是根據(jù)領(lǐng)域分析的結(jié)果將應(yīng)用領(lǐng)域的概念按照從抽象到具體的順序逐次分解為樹(shù)形或有向無(wú)回路圖結(jié)構(gòu),每個(gè)概念用一個(gè)描述性的關(guān)鍵字表示,不可分解的原子級(jí)關(guān)鍵字包含隸屬于它的某些構(gòu)件??堂娣诸?lèi)法:主要思想來(lái)源于圖書(shū)館學(xué)。定義若干用于刻畫(huà)構(gòu)件特征的面,每個(gè)面又通過(guò)若干概念表述構(gòu)件在面上的特征。如描述構(gòu)件執(zhí)行的功能、被操作的數(shù)據(jù)、應(yīng)用的語(yǔ)境或任意

3、其它特征。超文本組織法:基本思想是所有構(gòu)件必須輔以詳盡的功能或行為說(shuō)明文檔;說(shuō)明中出現(xiàn)的重要概念或構(gòu)件以網(wǎng)狀鏈接方式相互鏈接;3. 商業(yè)化構(gòu)件分類(lèi)。如果把軟件系統(tǒng)看成是構(gòu)件的集合,從構(gòu)件的外部形態(tài)看,構(gòu)成一個(gè)系統(tǒng)的構(gòu)件可分為:獨(dú)立而成熟的構(gòu)件;有限制的構(gòu)件;適應(yīng)性構(gòu)件;裝配的構(gòu)件;可修改的構(gòu)件;4人員及權(quán)限管理。構(gòu)件庫(kù)系統(tǒng)是一個(gè)開(kāi)放的公共構(gòu)件共享機(jī)制,任何使用者都可以通過(guò)網(wǎng)絡(luò)訪問(wèn)構(gòu)件庫(kù)。一般來(lái)講,構(gòu)件庫(kù)系統(tǒng)可包括五類(lèi)用戶,即注冊(cè)用戶、公共用戶、構(gòu)件提交者、一般系統(tǒng)管理員和超級(jí)系統(tǒng)管理員。 3)重用軟件構(gòu)件開(kāi)發(fā)的目的是重用,為了讓構(gòu)件在新的軟件項(xiàng)目中發(fā)揮作用,庫(kù)的使用者必須完成以下工作:檢索與提

4、取構(gòu)件、理解與評(píng)價(jià)構(gòu)件、修改構(gòu)件、構(gòu)件組裝。二、軟件體系結(jié)構(gòu)定義眾多,你是如何理解軟件體系結(jié)構(gòu)的?軟件體系結(jié)構(gòu)在軟件系統(tǒng)中有何作用?1)軟件體系結(jié)構(gòu)為軟件系統(tǒng)提供了一個(gè)結(jié)構(gòu)、行為和屬性的高級(jí)抽象,由構(gòu)成系統(tǒng)的元素的描述、這些元素的相互作用、指導(dǎo)元素集成的模式以及這些模式的約束組成。軟件體系結(jié)構(gòu)不僅指定了系統(tǒng)的組織結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu),并且顯示了系統(tǒng)需求和構(gòu)成系統(tǒng)的元素之間的對(duì)應(yīng)關(guān)系,提供了一些設(shè)計(jì)決策的基本原理。2)軟件體系結(jié)構(gòu)在軟件系統(tǒng)中的作用: 1體系結(jié)構(gòu)是風(fēng)險(xiǎn)承擔(dān)者進(jìn)行交流的手段。軟件體系結(jié)構(gòu)代表了系統(tǒng)的公共的高層次的抽象。這樣,系統(tǒng)的大部分有關(guān)人員(即使不是全部)能把它作為建立一個(gè)互相理解的

5、基礎(chǔ),形成統(tǒng)一認(rèn)識(shí),互相交流。 2體系結(jié)構(gòu)是早期設(shè)計(jì)決策的體現(xiàn)。 軟件體系結(jié)構(gòu)明確了對(duì)系統(tǒng)實(shí)現(xiàn)的約束條件;軟件體系結(jié)構(gòu)決定了開(kāi)發(fā)和維護(hù)組織的組織結(jié)構(gòu);軟件體系結(jié)構(gòu)制約著系統(tǒng)的質(zhì)量屬性;通過(guò)研究軟件體系結(jié)構(gòu)可能預(yù)測(cè)軟件的質(zhì)量;軟件體系結(jié)構(gòu)使推理和控制更改更簡(jiǎn)單;軟件體系結(jié)構(gòu)有助于循序漸進(jìn)的原型設(shè)計(jì);軟件體系結(jié)構(gòu)可以作為培訓(xùn)的基礎(chǔ)。3軟件體系結(jié)構(gòu)是可傳遞和可重用的模型。軟件體系結(jié)構(gòu)級(jí)的重用意味著體系結(jié)構(gòu)的決策能在具有相似需求的多個(gè)系統(tǒng)中發(fā)生影響,這比代碼級(jí)的重用要有更大的好處。 第3章 軟件體系結(jié)構(gòu)風(fēng)格一、試分析和比較B/S,二層C/S和三層C/S,指出各自的優(yōu)點(diǎn)和缺點(diǎn)。1.瀏覽器/服務(wù)器(B/S

6、)風(fēng)格就是C/S三層應(yīng)用結(jié)構(gòu)的一種實(shí)現(xiàn)方式,其具體結(jié)構(gòu)為:瀏覽器/Web服務(wù)器/數(shù)據(jù)庫(kù)服務(wù)器。B/S體系結(jié)構(gòu)主要是利用不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種腳本語(yǔ)言,用通用瀏覽器就實(shí)現(xiàn)了原來(lái)需要復(fù)雜的專(zhuān)用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開(kāi)發(fā)成本。從某種程度上來(lái)說(shuō),B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。其優(yōu)點(diǎn)包括:1)基于B/S體系結(jié)構(gòu)的軟件,系統(tǒng)安裝、修改和維護(hù)全在服務(wù)器端解決。用戶在使用系統(tǒng)時(shí),僅僅需要一個(gè)瀏覽器就可運(yùn)行全部的模塊,真正達(dá)到了“零客戶端”的功能,很容易在運(yùn)行時(shí)自動(dòng)升級(jí)。2)B/S體系結(jié)構(gòu)還提供了異種機(jī)、異種網(wǎng)、異種應(yīng)用服務(wù)的聯(lián)機(jī)、聯(lián)網(wǎng)、統(tǒng)一服務(wù)的最現(xiàn)實(shí)的開(kāi)放性基礎(chǔ)。其缺點(diǎn)

7、包括:1)B/S體系結(jié)構(gòu)缺乏對(duì)動(dòng)態(tài)頁(yè)面的支持能力,沒(méi)有集成有效的數(shù)據(jù)庫(kù)處理功能;B/S體系結(jié)構(gòu)的系統(tǒng)擴(kuò)展能力差,安全性難以控制;2)采用B/S體系結(jié)構(gòu)的應(yīng)用系統(tǒng),在數(shù)據(jù)查詢等響應(yīng)速度上,要遠(yuǎn)遠(yuǎn)地低于C/S體系結(jié)構(gòu);3)B/S體系結(jié)構(gòu)的數(shù)據(jù)提交一般以頁(yè)面為單位,數(shù)據(jù)的動(dòng)態(tài)交互性不強(qiáng),不利于在線事務(wù)處理(OLTP)應(yīng)用。2.C/S軟件體系結(jié)構(gòu)是基于資源不對(duì)等,且為實(shí)現(xiàn)共享而提出來(lái)的,是20世紀(jì)90年代成熟起來(lái)的技術(shù),C/S體系結(jié)構(gòu)定義了工作站如何與服務(wù)器相連,以實(shí)現(xiàn)數(shù)據(jù)和應(yīng)用分布到多個(gè)處理機(jī)上。 C/S體系結(jié)構(gòu)有三個(gè)主要組成部分:數(shù)據(jù)庫(kù)服務(wù)器、客戶應(yīng)用程序和網(wǎng)絡(luò)。其優(yōu)點(diǎn)包括:1)C/S 體系結(jié)構(gòu)具

8、有強(qiáng)大的數(shù)據(jù)操作和事務(wù)處理能力,模型思想簡(jiǎn)單,易于人們理解和接受;2)系統(tǒng)的客戶應(yīng)用程序和服務(wù)器構(gòu)件分別運(yùn)行在不同的計(jì)算機(jī)上,系統(tǒng)中每臺(tái)服務(wù)器都可以適合各構(gòu)件的要求,這對(duì)于硬件和軟件的變化顯示出極大的適應(yīng)性和靈活性,而且易于對(duì)系統(tǒng)進(jìn)行擴(kuò)充和縮??;3)在C/S體系結(jié)構(gòu)中,系統(tǒng)中的功能構(gòu)件充分隔離,客戶應(yīng)用程序的開(kāi)發(fā)集中于數(shù)據(jù)的顯示和分析,而數(shù)據(jù)庫(kù)服務(wù)器的開(kāi)發(fā)則集中于數(shù)據(jù)的管理,不必在每一個(gè)新的應(yīng)用程序中都要對(duì)一個(gè)DBMS進(jìn)行編碼。將大的應(yīng)用處理任務(wù)分布到許多通過(guò)網(wǎng)絡(luò)連接的低成本計(jì)算機(jī)上,以節(jié)約大量費(fèi)用。 其缺點(diǎn)包括:開(kāi)發(fā)成本較高;客戶端程序設(shè)計(jì)復(fù)雜;信息內(nèi)容和形式單一;用戶界面風(fēng)格不一,使用繁雜

9、,不利于推廣使用;軟件移植困難;軟件維護(hù)和升級(jí)困難;新技術(shù)不能輕易應(yīng)用。3.三層C/S體系結(jié)構(gòu)可以將整個(gè)應(yīng)用邏輯駐留在增加的應(yīng)用服務(wù)器上,客戶機(jī)上只有表示層,從而被稱為瘦客戶機(jī)結(jié)構(gòu)。將應(yīng)用功能分為表示層、功能層和數(shù)據(jù)層。表示層是應(yīng)用的用戶接口部分,擔(dān)負(fù)著用戶與應(yīng)用間的對(duì)話功能;功能層相當(dāng)于應(yīng)用的本體,它用于將具體的業(yè)務(wù)處理邏輯編入程序;數(shù)據(jù)層就是數(shù)據(jù)庫(kù)管理系統(tǒng),負(fù)責(zé)管理對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的讀寫(xiě)。其優(yōu)點(diǎn)包括:1)允許合理地劃分三層結(jié)構(gòu)的功能,使之在邏輯上保持相對(duì)獨(dú)立性,能提高系統(tǒng)和軟件的可維護(hù)性和可擴(kuò)展性;2)允許更靈活有效地選用相應(yīng)的平臺(tái)和硬件系統(tǒng),使之在處理負(fù)荷能力上與處理特性上分別適應(yīng)于結(jié)構(gòu)清晰

10、的三層;并且這些平臺(tái)和各個(gè)組成部分可以具有良好的可升級(jí)性和開(kāi)放性;3)應(yīng)用的各層可以并行開(kāi)發(fā),可以選擇各自最適合的開(kāi)發(fā)語(yǔ)言;4)利用功能層有效地隔離開(kāi)表示層與數(shù)據(jù)層,未授權(quán)的用戶難以繞過(guò)功能層而利用數(shù)據(jù)庫(kù)工具或黑客手段去非法地訪問(wèn)數(shù)據(jù)層,為嚴(yán)格的安全管理奠定了堅(jiān)實(shí)的基礎(chǔ)。其缺點(diǎn)包括:1)三層C/S結(jié)構(gòu)各層間的通信效率若不高,即使分配給各層的硬件能力很強(qiáng),其作為整體來(lái)說(shuō)也達(dá)不到所要求的性能。2)設(shè)計(jì)時(shí)必須慎重考慮三層間的通信方法、通信頻度及數(shù)據(jù)量。這和提高各層的獨(dú)立性一樣是三層C/S結(jié)構(gòu)的關(guān)鍵問(wèn)題。第4章 軟件體系結(jié)構(gòu)描述一、體系結(jié)構(gòu)描述有哪些方法?有哪些標(biāo)準(zhǔn)和規(guī)范?1.體系結(jié)構(gòu)的描述有以下幾種

11、方法: 1)圖形表達(dá)工具這是一種最簡(jiǎn)單易懂且使用廣泛的方法是采用矩形框和有向線段組合而成的圖形表達(dá)工具。矩形框代表抽象構(gòu)件,框內(nèi)標(biāo)注的文字為抽象構(gòu)件的名稱,有向線段代表輔助各構(gòu)件進(jìn)行通信、控制或關(guān)聯(lián)的連接件。目前這種圖形表達(dá)工具在軟件設(shè)計(jì)中占據(jù)主導(dǎo)地位。盡管由于在術(shù)語(yǔ)和表達(dá)意義上存在著一些不規(guī)范和不精確。 2)模塊內(nèi)連接語(yǔ)言 采用將一種或幾種傳統(tǒng)程序設(shè)計(jì)語(yǔ)言的模塊連接起來(lái)的模塊內(nèi)連接語(yǔ)言(Module Interconnection Language MIL)。由于程序設(shè)計(jì)語(yǔ)言和模塊內(nèi)連接語(yǔ)言具有嚴(yán)格的語(yǔ)義基礎(chǔ),因此它們能支持對(duì)較大的軟件單元進(jìn)行描述,諸如定義/使用和扇入/扇出等操作。例如,A

12、da語(yǔ)言采用use實(shí)現(xiàn)包的重用,Pascal語(yǔ)言采用過(guò)程(函數(shù))模塊的交互等。3)基于軟構(gòu)件的系統(tǒng)描述語(yǔ)言 基于軟構(gòu)件的系統(tǒng)描述語(yǔ)言將軟件系統(tǒng)描述成一種是由許多以特定形式相互作用的特殊軟件實(shí)體構(gòu)造組成的組織或系統(tǒng)。例如,一種多變配置語(yǔ)言(Proteus Configuration Language,PCL)就可以用來(lái)在一個(gè)較高的抽象層次上對(duì)系統(tǒng)的體系結(jié)構(gòu)建模,Darwin最初用作設(shè)計(jì)和構(gòu)造復(fù)雜分布式系統(tǒng)的配置說(shuō)明語(yǔ)言,因具有動(dòng)態(tài)特性,也可用來(lái)描述動(dòng)態(tài)體系結(jié)構(gòu)。這種表達(dá)和描述方式雖然也是較好的一種以構(gòu)件為單位的軟件系統(tǒng)描述方法,但是他們所面向和針對(duì)的系統(tǒng)元素仍然是一些層次較低的以程序設(shè)計(jì)為基礎(chǔ)的

13、通信協(xié)作軟件實(shí)體單元,而且這些語(yǔ)言所描述和表達(dá)的系統(tǒng)一般而言都是面向特定應(yīng)用的特殊系統(tǒng),這些特性使得基于軟構(gòu)件的系統(tǒng)描述仍然不是十分適合軟件體系結(jié)構(gòu)的描述和表達(dá)。 4)軟件體系結(jié)構(gòu)描述語(yǔ)言 軟件體系結(jié)構(gòu)的第四種描述和表達(dá)方法是參照傳統(tǒng)程序設(shè)計(jì)語(yǔ)言的設(shè)計(jì)和開(kāi)發(fā)經(jīng)驗(yàn),重新設(shè)計(jì)、開(kāi)發(fā)和使用針對(duì)軟件體系結(jié)構(gòu)特點(diǎn)的專(zhuān)門(mén)的軟件體系結(jié)構(gòu)描述語(yǔ)言(Architecture Description Language ADL)。由于ADL是在吸收了傳統(tǒng)程序設(shè)計(jì)中的語(yǔ)義嚴(yán)格精確的特點(diǎn)基礎(chǔ)上,針對(duì)軟件體系結(jié)構(gòu)的整體性和抽象性特點(diǎn),定義和確定適合于軟件體系結(jié)構(gòu)表達(dá)與描述的有關(guān)抽象元素,因此,ADL是當(dāng)前軟件開(kāi)發(fā)和設(shè)計(jì)方

14、法學(xué)中一種發(fā)展很快的軟件體系結(jié)構(gòu)描述方法,目前,已經(jīng)有幾十種常見(jiàn)的ADL。 2.體系結(jié)構(gòu)有這些標(biāo)準(zhǔn)和規(guī)范: 1)IEEE P1471 IEEE P1471于2000年9月21日通過(guò)IEEE-SA標(biāo)準(zhǔn)委員會(huì)評(píng)審。IEEE P1471適用于軟件密集的系統(tǒng),其目標(biāo)在于:便于體系結(jié)構(gòu)的表達(dá)與交流,并通過(guò)體系結(jié)構(gòu)要素及其實(shí)踐標(biāo)準(zhǔn)化,奠定質(zhì)量與成本的基礎(chǔ)。IEEE P1471詳細(xì)介紹了一套體系結(jié)構(gòu)描述的概念框架,并給出建立框架的思路。但如何描述以及具體的描述技術(shù)等方面缺乏更進(jìn)一步的指導(dǎo)。 IEEE P1471還討論了體系結(jié)構(gòu)描述實(shí)踐,在應(yīng)用體系結(jié)構(gòu)描述的推薦標(biāo)準(zhǔn)時(shí),應(yīng)遵循如下幾個(gè)具體的要求:體系結(jié)構(gòu)的存檔要求;能識(shí)別人員及其關(guān)系;體系結(jié)構(gòu)視點(diǎn)的選擇(視點(diǎn)的具體規(guī)格說(shuō)明);體系結(jié)構(gòu)視點(diǎn);體系結(jié)構(gòu)視點(diǎn)之間的一致性;體系結(jié)構(gòu)原理。 2)Rational Rational起草了可重用的軟件資產(chǎn)規(guī)格說(shuō)明,專(zhuān)門(mén)討論了體系結(jié)構(gòu)描述的規(guī)格說(shuō)明,提出了一套易于重用的體系結(jié)構(gòu)描述規(guī)范。該建議草

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論