成人免费看黄网站无遮挡,caowo999,se94se欧美综合色,a级精品九九九大片免费看,欧美首页,波多野结衣一二三级,日韩亚洲欧美综合

《軟件體系結構》期末復習題

時(shí)間:2021-06-13 14:14:09 試題 我要投稿

《軟件體系結構》期末復習題

  篇一:《軟件體系結構》期末復習題

  《軟件體系結構》期末復習題

  簡(jiǎn)答題:

  1、軟件體系結構建模的種類(lèi)有:

  結構模型、框架模型、動(dòng)態(tài)模型、過(guò)程模型、功能模型。

  2、“4+1”視圖模型從5個(gè)不同的視角包括:

  邏輯視圖、進(jìn)程視圖、物理視圖、開(kāi)發(fā)視圖和場(chǎng)景視圖來(lái)描述軟件體系結構。

  3、構件:是具有某種功能的可重用的軟件模板單元,表示了系統中主要的計算元素和數據存儲。連接件:表示構件之間的交互。

  配置:表示構件和連接件的拓撲邏輯和約束。

  端口:表示構件和外部環(huán)境的交互點(diǎn)。

  角色:定義了該連接交互的參與者。

  4、畫(huà)出“4+1”視圖模型圖,分析各部分的原理和功能。

  5、軟件體系結構風(fēng)格:

  是描述某一特定應用領(lǐng)域中系統組織方式的慣用模式。

  6、軟件體系結構

 。⊿oftware Architecture)

  軟件體系結構以組件和組件交互的方式定義系統,說(shuō)明需求與成品系統之間的對應關(guān)系,描述系統級別的可伸縮性、能力、吞吐量、一致性和兼容性等屬性。 軟件體系結構由組件、連接件和屬性組成。

  7、分層系統的優(yōu)點(diǎn)有:

  1)支持基于抽象程度遞增的系統設計,使設計者可以把一個(gè)復雜系統按遞增的步驟進(jìn)行分解;

  2)支持功能增強,因為每一層至多和相鄰的上下層交互,因此功能的改變最多影響相鄰的上下層;

  3)支持重用。只要提供的服務(wù)接口定義不變,同一層的不同實(shí)現可以交換使用。這樣,就可以定義一組標準的接口,而允許各種不同的實(shí)現方法。

  8、分層系統的缺點(diǎn)有:

  1)并不是每個(gè)系統都可以很容易地劃分為分層的模式,甚至即使一個(gè)系統的邏輯結構是層次化的,出于對系統性能的考慮,系統設計師不得不把一些低級或高級的功能綜合起來(lái);

  2)很難找到一個(gè)合適的、正確的層次抽象方法。

  9、 B/S體系結構的優(yōu)點(diǎn)有什么?

  答:1)基于B/S體系結構的軟件,系統安裝、修改和維護全在服務(wù)器端解決。用戶(hù)在使用系統時(shí),僅僅需要一個(gè)瀏覽器就可運行全部的模塊,真正達到了“零客戶(hù)端”的功能,很容易在運行時(shí)自動(dòng)升級。

  2)B/S體系結構還提供了異種機、異種網(wǎng)、異種應用服務(wù)的聯(lián)機、聯(lián)網(wǎng)、統一服務(wù)的最現實(shí)的開(kāi)放性基礎。

  10、B/S體系結構的缺點(diǎn)有什么?

  答:1)B/S體系結構缺乏對動(dòng)態(tài)頁(yè)面的支持能力,沒(méi)有集成有效的數據庫處理功能。

  2)B/S體系結構的系統擴展能力差,安全性難以控制。

  3)采用B/S體系結構的應用系統,在數據查詢(xún)等響應速度上,要遠遠地低于C/S體系結構。

  4)B/S體系結構的數據提交一般以頁(yè)面為單位,數據的動(dòng)態(tài)交互性不強,不利于在線(xiàn)事務(wù)處理(OLTP)應用。

  11、DSSA

  答案:DSSA就是在一個(gè)特定應用領(lǐng)域中為一組應用提供組織結構參考的標準軟件體系結構

  11、軟件體系結構的動(dòng)態(tài)性主要分為:

  交互式動(dòng)態(tài)性、結構化動(dòng)態(tài)性、體系結構動(dòng)態(tài)性等三類(lèi)。

  12、請畫(huà)出基于構件的動(dòng)態(tài)系統結構模型畫(huà)。

  13、軟件產(chǎn)品線(xiàn)

  產(chǎn)品線(xiàn)是一個(gè)產(chǎn)品集合,這些產(chǎn)品共享一個(gè)公共的、可管理的特征集,這個(gè)特征集能滿(mǎn)足選定的市場(chǎng)或任務(wù)領(lǐng)域的特定需求。這些系統遵循一個(gè)預描述的方式,在公共的核心資源(core assets)基礎上開(kāi)發(fā)的

  14、SOA

  即service-oriented architecture,面向服務(wù)架構。它是一個(gè)組件模型,它

  將應用程序的不同功能單元(稱(chēng)為服務(wù))通過(guò)這些服務(wù)之間定義良好的接

  口和契約聯(lián)系起來(lái)。接口是采用中立的方式進(jìn)行定義的,它應該獨立于

  實(shí)現服務(wù)的硬件平臺、操作系統和編程語(yǔ)言。這使得構建在各種這樣的

  系統中的服務(wù)可以以一種統一和通用的方式進(jìn)行交互。

  14、RIA

  15、中間件

  15、設計模式

  答:一些設計面向對象的軟件開(kāi)發(fā)的經(jīng)驗總結,就是系統的命名、解釋、和評價(jià)某一個(gè)重要的面向對象的可重現的面向對象的設計方案。

  15、軟件體系結構測試和傳統軟件測試區別

  16、UML中的交互圖有兩種,分別是順序圖和協(xié)作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點(diǎn)。掌握利用兩種圖進(jìn)行的設計的方法。

  答:順序圖可視化地表示了對象之間隨時(shí)間發(fā)生的交互,它除了展示對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。與順序圖一樣,協(xié)作圖也展示對象之間的交互關(guān)系。順序圖強調的是交互的時(shí)間順序,而協(xié)作圖強調的是交互的語(yǔ)境和參與交互的對象的整體組織。順序圖按照時(shí)間順序布圖,而協(xié)作圖按照空間組織布圖。順序圖可以清晰地表示消息之間的順序和時(shí)間關(guān)系,但需要較多的水平方向的空間。協(xié)作圖在增加對象時(shí)比較容易,而且分支也比較少,但如果消息比較多時(shí)難以表示消息之間的順序。

  17. 管道過(guò)濾器風(fēng)格結構特點(diǎn)

 。1)使得軟構件具有良好的隱蔽性和高內聚、低耦合的特點(diǎn);

 。2)允許設計者將整個(gè)系統的輸入/輸出行為看成是多個(gè)過(guò)濾器的行為的簡(jiǎn)單合成;(3)支持軟件重用。

 。4)系統維護和增強系統性能簡(jiǎn)單。

 。5)允許對一些如吞吐量、死鎖等屬性的分析;

 。6)支持并行執行。

  但是,這樣的系統也存在著(zhù)若干不利因素。

 。1)通常導致進(jìn)程成為批處理的結構。這是因為雖然過(guò)濾器可增量式地處理數據,但它們是獨立的,所以設計者必須將每個(gè)過(guò)濾器看成一個(gè)完整的從輸入到輸出的轉換。

 。2)不適合處理交互的應用。當需要增量地顯示改變時(shí),這個(gè)問(wèn)題尤為嚴重。

 。3)因為在數據傳輸上沒(méi)有通用的標準,每個(gè)過(guò)濾器都增加了解析和合成數據的工作,這樣就導致了系統性能下降,并增加了編寫(xiě)過(guò)濾器的復雜性。

  18. 什么是設計模式?它與風(fēng)格、框架有什么區別與聯(lián)系?

  設計模式是對通用設計問(wèn)題的重復解決方案。

  軟件體系結構風(fēng)格是描述某一特定應用領(lǐng)域中系統組織方式的慣用模式。

  軟件框架是整個(gè)或部分系統的可重用設計

  模式比框架更加抽象

  框架是模式的特例化

  設計模式被實(shí)現成為框架后,可以極大的減輕從設計到實(shí)現的鴻溝

  利用了模式的框架比沒(méi)有利用模式的框架更容易理解、更能被設計與實(shí)現重用

  通常成熟的框架包含了多種設計模式

  一個(gè)框架不僅可以具體實(shí)現一個(gè)模式,還可以具體的實(shí)現多個(gè)模式

  設計模式與風(fēng)格兩者為近義詞,通常情況下可以互相通用

  風(fēng)格主要是指大的,宏觀(guān)的設計。模式既可宏觀(guān),又可微觀(guān)。

  19. 軟件體系結構測試的內容與準則是什么?

  內容:構件端口行為與連接件約束是否一致、兼容,單元間的消息是否一致、可達,相關(guān)端口是否可連接,體系結構風(fēng)格是否可滿(mǎn)足。

  準則:測試覆蓋所有的構件及各個(gè)構件的接口。各個(gè)連接件的接口、構件之間的直接連接、構件之間的間接連接。

  20、請簡(jiǎn)述MVC,介紹各自的作用和用途。

  答案:MVC是三個(gè)單詞的縮寫(xiě),分別為:模型(Model),視圖(View)和控制

  Controller)。MVC模式的目的就是實(shí)現Web系統的職能分工。

  Model是應用對象,所有的操作都在這里實(shí)現,它若需要取得視圖中的對象或更新視圖,需通過(guò)控制器來(lái)進(jìn)行處理。

  View是模型在屏幕上的表示,模型在進(jìn)行操作后,其結果是通過(guò)視圖顯示的。

  Controller用于管理用戶(hù)與視圖發(fā)生的交互,定義用戶(hù)界面對用戶(hù)輸入的響應方式。一旦用戶(hù)需要對模型進(jìn)行處理,不能直接執行模型,而必須通過(guò)控制器間接實(shí)現的。

  選擇題

  1、設計模式一般用來(lái)解決什么樣的問(wèn)題( A )

  A.同一問(wèn)題的不同表相 B不同問(wèn)題的同一表相

  C.不同問(wèn)題的不同表相 D.以上都不是

  2、下列屬于面向對象基本原則的是( C )

  A.繼承 B.封裝C.里氏代換 D都不是

  3、Open-Close原則的含義是一個(gè)軟件實(shí)體( A )

  A.應當對擴展開(kāi)放,對修改關(guān)閉.

  B.應當對修改開(kāi)放,對擴展關(guān)閉

  C.應當對繼承開(kāi)放,對修改關(guān)閉

  D.以上都不對

  5、要依賴(lài)于抽象,不要依賴(lài)于具體。即針對接口編程,不要針對實(shí)現編程,是( D )的表述

  A.開(kāi)-閉原則

  B.接口隔離原則

  C.里氏代換原則

  D.依賴(lài)倒轉原則

  7、設計模式的兩大主題是( D )

  A.系統的維護與開(kāi)發(fā) B 對象組合與類(lèi)的繼承

  C.系統架構與系統開(kāi)發(fā) D.系統復用與系統擴展

  9、下列模式中,屬于行為模式的是( B )

  A.工廠(chǎng)模式 B觀(guān)察者 C適配器D 以上都是

  10、常用的軟件體系結構評估的方法不包括( C )。

  A體系結構權衡分析法B.軟件體系結構分析法

  C系統體系結構分析法D.中間設計的積極評審

  11、不屬于軟件體系結構的核心模型的最基本的元素是 ( D )

  A 構件 B 連接件C 配置 D 角色

  12、選項中部屬于“4+1”試圖模型的是:( C )

  A 邏輯視圖 B 物理視圖 C 連接視圖 D 開(kāi)發(fā)視圖

  13、下列說(shuō)法錯誤的一項的是( D )

  A:邏輯視圖主要支持系統的功能需求,即系統提供給最終用戶(hù)的服務(wù)

  B:開(kāi)發(fā)視圖也稱(chēng)模塊視圖,主要側重于軟件模塊的組織和管理

  C:進(jìn)程視圖側重與系統的運行特性,主要關(guān)注一些功能性需求,例如系統的性能和可用性。

  D:物理視圖主要考慮如何吧軟件映射到硬件上,它不需要要考慮到系統性能、規模、可靠性等。

  14、在三層C/S體系結構中,_________是最重要的構件。( A )

  A 中間件 B 末尾件

  C 功能層 D 數據層

  15、C/S系統中,服務(wù)器的以下任務(wù)中哪一個(gè)是錯的?( A )

  A 數據庫一致性要求

  B 數據庫訪(fǎng)問(wèn)并發(fā)性控制

  C 數據庫前端的客戶(hù)應用程序的全局數據完整性規則

  D 數據庫的備份與恢復

  16、 與C/S體系結構相比,B/S體系結構也有許多不足之處一下說(shuō)法正確的是( A )

  A B/S體系結構缺乏對動(dòng)態(tài)頁(yè)面的支持能力,沒(méi)有集成有效的數據庫處理能力

  B B/S體系結構的系統擴展能力差,但是安全性比較容易控制

  C 采用B/S架構構的應用系統,在數據查詢(xún)等響應速度上,要遠遠的高于C/S體系結構

  D B/S體系結構的數據提交一般以頁(yè)面為單位,數據的動(dòng)態(tài)交互性不強,利于在線(xiàn)事務(wù)處理(Online Transaction Processing,OLTP)應用。

  17、以下關(guān)于軟件體系結構描述方法說(shuō)法錯誤的是(B)

  A圖形表達工具在軟件設計中占據主導地位。

  B由于軟件設計語(yǔ)言和模塊內連接語(yǔ)言具有嚴格的語(yǔ)義基礎,因此它們能支持較小的`軟件單元進(jìn)行描述。

  C基于軟構件的系統描述語(yǔ)言將軟件系統描述成一種是由許多以特定形式相互作用的特殊軟件實(shí)體構造組成的組織或系統。

  D軟件體系結構描述語(yǔ)言是參照傳統程序設計語(yǔ)言的設計語(yǔ)言的設計和開(kāi)發(fā)經(jīng)驗,重新設計、開(kāi)發(fā)和使用針對軟件體系結構描述語(yǔ)言。

  18、下列選項中關(guān)于A(yíng)DL與其他語(yǔ)言的比較說(shuō)法中錯誤的是( B )

  ADL與需求語(yǔ)言的區別在于后者描述的問(wèn)題空哦關(guān)鍵,而前者則扎根于解空間中

  ADL與建模語(yǔ)言的區別在于后者對部分的關(guān)注要大于對整體的關(guān)注

  ADL與傳統的程序設計語(yǔ)言的構成元素由許多相同和相似之處,有各自有著(zhù)很大的不同

  ADL集中在構件的表示上。

  19、對動(dòng)態(tài)軟件體系結構的形式化描述通?梢圆捎玫姆椒?( D )

  A、圖形化方法B、代數進(jìn)程方法 C、邏輯方法D、以上皆是

  20、以下哪些特征不屬于動(dòng)態(tài)體系結構特征( D ) ?

  A 可構造性動(dòng)態(tài)特征

  B 適應性動(dòng)態(tài)特征

  C 智能性動(dòng)態(tài)特征

  D 安全性動(dòng)態(tài)特征

  21、通常,一個(gè)Web服務(wù)可以分為4個(gè)邏輯層,分別為數據層(Data Layer)、數據訪(fǎng)問(wèn)層(Data Access Layer)、 業(yè)務(wù)層(Business Layer)和監聽(tīng)者(Listener)。離客戶(hù)端最近的是監聽(tīng)者,離客戶(hù)最遠的是______:( A )

  A 數據層(Data Layer)

  B 數據訪(fǎng)問(wèn)層(Data Access Layer)

  C 業(yè)務(wù)層(Business Layer)

  D 監聽(tīng)者(Listener)

  篇二:軟件體系結構期末范圍綜合

  1. 軟件體系結構定義:

  軟件體系結構為軟件系統提供了一個(gè)結構、行為和屬性的高級抽象,由構成系統的元素的描述、這些元素的相互作用、指導元素集成的模式以及這些模式的約束組成。

  2. 核心研究?jì)热荩?/p>

 。1)體系結構風(fēng)格:描述特定系統組織方式的慣用范例,強調組織模式和慣用范例。

 。2)設計模式:軟件問(wèn)題高效和成熟的設計模板,模板包含了固有問(wèn)題的解決方案。

 。3)應用框架:整個(gè)或部分系統的可重用設計,表現為一組抽象構件的集合以及構件實(shí) 例間交互的方法。

  3.軟件危機表現形式:軟件成本日益增長(cháng)、開(kāi)發(fā)進(jìn)度難以控制、軟件質(zhì)量差、軟件維護困難

  4.·構件:具有一定功能,能獨立工作或能同其他構件裝配起來(lái)協(xié)調工作的程序體。

  ·軟件重用:兩次或多次不同的軟件開(kāi)發(fā)過(guò)程中重復使用相同或相近軟件元素的過(guò)程!嫾c軟件重用的關(guān)聯(lián)關(guān)系:語(yǔ)義完整,語(yǔ)法正確和有可重用價(jià)值的單位軟 件,是軟件重用過(guò)程中可以明辨識別的系統。

  5. 軟件體系結構模型的分類(lèi)(5種):

 。1)結構模型:這是一個(gè)最直觀(guān)、最普遍的建模方法。這種方法以體系結構的構件、連接件和其他概念來(lái)刻畫(huà)結構,并力圖通過(guò)結構來(lái)反映系統的重要語(yǔ)義內容,包括系統配置、約束、隱含的假設條件、風(fēng)格、性質(zhì)研究結構模型的核心是體系結構描述語(yǔ)言。

 。2)框架模型:框架模型與結構模型類(lèi)似,但它不太側重描述結構的細節而更側重于整體的結構。

 。3)動(dòng)態(tài)模型:動(dòng)態(tài)模型是對結構或框架模型的補充,研究系統的“大顆!钡男袨。例如,描述系統的重新配置或演化。動(dòng)態(tài)可以指系統總體結構的配置、建立或拆除通信通道或計算的過(guò)程。

 。4)過(guò)程模型:過(guò)程模型研究構造系統的步驟和過(guò)程。結構是遵循某些過(guò)程腳本的結果。

 。5)功能模型:功能模型認為體系結構是由一組功能構件按層次組成,下層向上層提供服務(wù)。功能模型可以看作是一種特殊的框架模型。

  6. “4+1視圖模型”

  最終用戶(hù):功能需求編程人員:軟獎管理

  系統集成人員:性能 系統工程人員:系統

  可擴充性、吞吐量等拓撲、安裝、通信等

  ·邏輯視圖:主要支持系統的功能需求,即系統提供給最終用戶(hù)的服務(wù)。在邏輯視圖中,系統分解成一系列的功能抽象,這些抽象主要來(lái)自問(wèn)題領(lǐng)域。這種分解不但可以用來(lái)進(jìn)行功能分析,而且可用作標識在整個(gè)系統的各個(gè)不同部分的通用機制和設計元素。

  ·開(kāi)發(fā)視圖:也稱(chēng)模塊視圖,主要側重于軟件模塊的組織和管理。開(kāi)發(fā)視圖要考慮軟件內部的需求,如軟件開(kāi)發(fā)的容易性、軟件的重用和軟件的通用性,要充分考慮由于具體開(kāi)發(fā)工具的不同而帶來(lái)的局限性。開(kāi)發(fā)視圖通過(guò)系統輸入輸出關(guān)系的模型圖和子系統圖來(lái)描述。 ·進(jìn)程視圖:側重于系統的運行特性,主要關(guān)注一些非功能性的需求。進(jìn)程視圖強調并發(fā)性、分布性、系統集成性和容錯能力,以及從邏輯視圖中的主要抽象如何適合進(jìn)程結構。它也定

  義邏輯視圖中的各個(gè)類(lèi)的操作具體是在哪一個(gè)線(xiàn)程中被執行的。進(jìn)程視圖可以描述成多層抽象,每個(gè)級別分別關(guān)注不同的方面。在最高層抽象中,進(jìn)程結構可以看作是構成一個(gè)執行單元的一組任務(wù)。它可看成一系列獨立的,通過(guò)邏輯網(wǎng)絡(luò )相互通信的程序。它們是分布的,通過(guò)總線(xiàn)或局域網(wǎng)、廣域網(wǎng)等硬件資源連接起來(lái)。

  · 物理視圖主要考慮如何把軟件映射到硬件上,它通常要考慮到系統性能、規模、可靠性等。解決系統拓撲結構、系統安裝、通訊等問(wèn)題。

  · 場(chǎng)景可以看作是那些重要系統活動(dòng)的抽象,它使四個(gè)視圖有機聯(lián)系起來(lái),從某種意義上說(shuō)場(chǎng)景是最重要的需求抽象。在開(kāi)發(fā)體系結構時(shí),它可以幫助設計者找到體系結構的構件和它們之間的作用關(guān)系。同時(shí),也可以用場(chǎng)景來(lái)分析一個(gè)特定的視圖,或描述不同視圖構件間是如何相互作用的。

  本地呼叫場(chǎng)景的一個(gè)原型:

  7.軟件體系結構核心模型的組成元素(5種)的含義,彼此關(guān)系(構件、連接件、配置) (1)構件:計算或存儲數據單元,包含多種屬性,如接口、類(lèi)型、

  語(yǔ)義、約束、演化和非功能屬性等。

 。2)連接件:建立構件間的交互以及支配這些交互規則的體系結構

  構造模塊。

 。3)體系結構配置:描述體系結構的構件和連接件的連接圖。 用于確定構件是否正確連接、接口是否匹配、連接件構成的通信是 否正確,并說(shuō)明實(shí)現要求行為的組合語(yǔ)義。 (4)端口(5)角色 8. 軟件過(guò)程:需求分析→建立體系結構→設計→實(shí)現→測試

  10. 軟件體系結構風(fēng)格11. 體系結構風(fēng)格的四要素:(1)提供一個(gè)詞匯表;(2 語(yǔ)義解釋原則;(412.通用體系結構的分類(lèi):

  經(jīng)典的體系結構風(fēng)格: (1)數據流風(fēng)格:批處理序列;管道和過(guò)濾器。

 。2)調用/返回風(fēng)格:主程序/子程序;面向對象風(fēng)格;層次結構。

 。3)獨立構件風(fēng)格:進(jìn)程通訊;事件系統

 。4)虛擬機風(fēng)格:解釋器;基于規則的系統。

 。5)倉庫風(fēng)格:數據庫系統;超文本系統;黑板系統

  ·管道和過(guò)濾器模式:構件:過(guò)濾器,接收數據輸入,進(jìn)行轉化后輸出

  ·過(guò)濾器是獨立的實(shí)體,相互之間沒(méi)有狀態(tài)的依賴(lài)

  ·對一個(gè)過(guò)濾器而言,它上游和下游的過(guò)濾器是透明的

  交互由管道提供,管道負責連接一個(gè)過(guò)濾器的輸出和另一個(gè)過(guò)濾器的輸入

  ·管道過(guò)濾器通用的結構有:

 。1)管線(xiàn):也稱(chēng)為流水線(xiàn),即限制系統的拓撲結構只能是過(guò)濾器的線(xiàn)性結構;

  如:批處理系統、Unix Shell、編譯器

 。2)有界管道:限制了在管道中能容納或傳輸的數據量;

 。3)類(lèi)型定義管道:也稱(chēng)類(lèi)型管道,即要求明確定義在兩個(gè)過(guò)濾器間傳輸的數據類(lèi)型。 優(yōu)點(diǎn):

 。1)系統的總體輸入輸出是每個(gè)過(guò)濾器的簡(jiǎn)單組合,易于理解;

 。2)支持重用;

 。3)易于維護和修改;

 。4)系統的一些特性容易分析,比如吞吐量、死鎖;

 。5)支持并發(fā)。

  缺點(diǎn):

 。1)經(jīng)常退化為批處理系統;

 。2)交互能力差,管道之間同步困難。

  ·數據抽象和面向對象組織模式:

  構件:對象,或者說(shuō)是抽象數據類(lèi)型的實(shí)例。

 。1)對象是一種被稱(chēng)作管理者的構件,負責保持資源的完整性。

 。2)對象通過(guò)函數和過(guò)程的調用來(lái)交互的。

  面向對象模型(1)封裝(2)繼承(3)多態(tài)性

  這種模式的兩個(gè)重要方面:

 。1)對象維護自身表示的完整性;(2)這種表示對其他對象是隱藏的。

  優(yōu)點(diǎn):(1)隱藏內部實(shí)現,容易修改;(2)問(wèn)題分解;(3)重用;

  缺點(diǎn):(1)對一個(gè)對象身份的依賴(lài)性(顯示調用,即調用一個(gè)方法必須以:對象名. 方法名的方式進(jìn)行調用)(2)繼承往往使得設計變得復雜,引入的多層對象結構使得維護困難。 ·基于事件的隱式調用模式:

  構件:模塊,模塊既可以是過(guò)程,又可以是事件的集合。

 。1)過(guò)程可以用通用的方式調用,也可以在系統事件中注冊一些過(guò)程,當發(fā)生這些事件時(shí),過(guò)程被調用。

  特點(diǎn):事件的觸發(fā)者并不知道哪些構件會(huì )被這些事件影響。

  優(yōu)點(diǎn):(1)問(wèn)題分解;將計算和交互相互分離,使得對象更加獨立

 。2)系統演化和重用;通過(guò)事件注冊,新的構件可以輕易的被引入系統

  缺點(diǎn):(1)構件不能控制系統進(jìn)行的計算;當一個(gè)組件發(fā)布事件的時(shí)候,它無(wú)法假設其他組件會(huì )對該事件作出響應(2)對事件觸發(fā)的方法調用的次序無(wú)法控制(3)數據交換大數據量的數據交互往往沒(méi)法由事件攜帶,從而帶來(lái)性能問(wèn)題(4)可能會(huì )對正確性的保證帶來(lái)困難 ·分層模式

  優(yōu)點(diǎn):(1)支持逐層抽象的方式進(jìn)行設計,從而可以將一個(gè)復雜系統的設計劃分為多個(gè)相對簡(jiǎn)單的層次;(2)容易修改,每層的改變至多影響上下兩層;(3)支持重用,只要保持接口不變,每層的具體實(shí)現的替換式透明的。(4)支持可移植性。

  缺點(diǎn):(1)性能上的額外支出(2)并非每個(gè)系統都可以進(jìn)行分層設計(3)跨層使用可能會(huì )損壞整個(gè)模型

  · 倉庫系統及知識庫模式

  構件:

 。1)中央數據結構構件:代表系統當前狀態(tài);(2)一些相對獨立的構件的集合:這些構件對中央數據存儲進(jìn)行操作。當要交換或共享大量的數據時(shí),倉庫模式是最常用的解決方案。 數據交換方式:(1)共享的數據放在中心數據庫中,所有構件可以通過(guò)訪(fǎng)問(wèn)數據庫進(jìn)行

  交互;(2)每個(gè)構件維護自己的數據庫,通過(guò)顯示的傳遞數據與其他構件進(jìn)行交互。

  當要交換或共享大量的數據時(shí),倉庫模式是最常用的解決方案。

  若中央數據結構的當前狀態(tài)觸發(fā)系統相應的進(jìn)程執行,則倉庫是黑板系統。

  黑板系統由三部分組成:知識源、黑板數據結構、控制

  黑板模式特點(diǎn):沒(méi)有直接的算法可解、具有不確定性、黑板是一種特別的倉庫,主要用于需要對凌亂的信息進(jìn)行處理的領(lǐng)域,其控制策略必須是機會(huì )主義的。

  13. C2模式:通過(guò)連接件綁定在一起的按照一組規則運作的并行構件網(wǎng)絡(luò )。

  C2模式中的系統組織規則如下:

 。1)系統中的構件和連接件都有一個(gè)頂部和一個(gè)底部;

 。2)構件的頂部應連接到某連接件的底部,構件的底部則應連接到某連接件的頂部,而構件與構件之間的直接連接是不允許的;

 。3)一個(gè)連接件可以和任意數目的其它構件和連接件連接;

 。4)當兩個(gè)連接件進(jìn)行直接連接時(shí),必須由其中一個(gè)的底部到另一個(gè)的頂部。

  C2模式的特點(diǎn):

 。1)系統中的構件可實(shí)現應用需求,并能將任意復雜度的功能封裝在一起;

 。2)所有構件之間的通訊是通過(guò)以連接件為中介的異步消息交換機制來(lái)實(shí)現的;

 。3)構件相對獨立,構件之間依賴(lài)性較少。系統中不存在某些構件將在同一地址空間內執行,或某些構件共享特定控制線(xiàn)程之類(lèi)的相關(guān)性假設。

  14. C/S風(fēng)格:

  基本概念:C/S軟件體系結構是基于資源不對等,且為實(shí)現共享而提出來(lái)的,C/S體系結構定義了工作站如何與服務(wù)器相連,以實(shí)現數據和應用分布到多個(gè)處理機上。

  主要組成部分:數據庫服務(wù)器、客戶(hù)應用程序和網(wǎng)絡(luò )。

  C/S風(fēng)格—優(yōu)點(diǎn): (1)具有強大的數據操作和事務(wù)處理能力,模型思想簡(jiǎn)單,易于人們理解和接受。(2)系統的客戶(hù)應用程序和服務(wù)器構件分別運行在不同的計算機上,系統中每臺服務(wù)器都可以適合各構件的要求,這對于硬件和軟件的變化顯示出極大的適應性和靈活性,而且易于對系統進(jìn)行擴充和縮小。(3) 將大的應用處理任務(wù)分布到許多通過(guò)網(wǎng)絡(luò )連接的低成本計算機上,以節約大量費用。

  C/S風(fēng)格—缺點(diǎn): 開(kāi)發(fā)成本較高、客戶(hù)端程序設計復雜、信息內容和形式單一、用戶(hù)界面風(fēng)格不一,使用繁雜,不利于推廣使用、軟件移植困難、軟件維護和升級困難、新技術(shù)不能輕易應用

  三層C/S風(fēng)格—優(yōu)點(diǎn):(1)提高系統和軟件的可維護性和可擴展性(2)具有良好的可升級性和開(kāi)放性(3)并行開(kāi)發(fā)(4)有效地隔離開(kāi)表示層與數據層(5)為嚴格的安全管理奠定了堅實(shí)的基礎

  三層C/S風(fēng)格—注意點(diǎn):

  1.各層間的通信效率若不高,即使

  分配給各層的硬件能力很強,其作為

  整體來(lái)說(shuō)也達不到所要求的性能。

  2. 各層間的通信效率若不高,即使分配給各層的硬件能力很強,其作為整體來(lái)說(shuō)也達不到所要求的性能。

  B/S風(fēng)格—基本概念:瀏覽器/服務(wù)器(B/S)風(fēng)格就是上述三層應用結構的一種實(shí)現方式,其具體結構為:瀏覽器/Web服務(wù)器/數據庫服務(wù)器。

  B/S風(fēng)格—優(yōu)點(diǎn):基于B/S體系結構的軟件,系統安裝、修改和維護全在服務(wù)器端解決。提供了異種機、異種網(wǎng)、異種應用服務(wù)的聯(lián)機、聯(lián)網(wǎng)、統一服務(wù)的最現實(shí)的開(kāi)放性基礎。B/S風(fēng)格—缺點(diǎn):1.缺乏對動(dòng)態(tài)頁(yè)面的支持能力,沒(méi)有集成有效的數據庫處理功能。2. 系

  統擴展能力差,安全性難以控制。3. 在數據查詢(xún)等響應速度上,要遠遠地低于C/S體系結構。4.不利于在線(xiàn)事務(wù)處理(OLTP)應用。

  15. DSSA的定義:DSSA就是專(zhuān)用于一類(lèi)特定類(lèi)型的任務(wù)(領(lǐng)域)的、在整個(gè)領(lǐng)域中能有效地使用的、為成功構造應用系統限定了標準的組合結構的軟件構件的集合

  16. DSSA的基本活動(dòng):領(lǐng)域分析、領(lǐng)域設計、領(lǐng)域實(shí)現。

  17. DSSA與軟件風(fēng)格的比較:(1)DSSA以問(wèn)題域為出發(fā)點(diǎn),體系結構風(fēng)格以解決域為出發(fā)點(diǎn)。(2)DSSA只對某一個(gè)領(lǐng)域進(jìn)行設計專(zhuān)家知識的提取、存儲和組織,但可以同時(shí)使用多種體系結構風(fēng)格;而在某個(gè)體系結構風(fēng)格中進(jìn)行體系結構設計專(zhuān)家知識的組織時(shí),可以將提取的公共結構和設計方法擴展到多個(gè)應用領(lǐng)域。

  18. 軟件體系結構和軟件體系結構描述的區別:軟件體系結構是附屬于系統之中。只要存在系統,體系結構就存在;軟件體系結構描述是將體系結構可視化的手段和產(chǎn)物

  19. 體系結構描述方式:圖形表達方式、UML、模塊接口語(yǔ)言MIL、ADL

  ·圖形表達工具 優(yōu)點(diǎn):直觀(guān)形象、簡(jiǎn)單易用 缺點(diǎn):由于其術(shù)語(yǔ)和表達語(yǔ)義上存在著(zhù)一些不規范和不精確,從而使得以矩形為基礎的傳統圖形表達方法在不同系統和不同文檔之間存在著(zhù)許多不一致甚至矛盾。

  ·模塊接口語(yǔ)言MIL 缺點(diǎn):這些語(yǔ)言處理和描述的軟件設計開(kāi)發(fā)層次過(guò)于依賴(lài)程序設計語(yǔ)言,限制了它們處理和描述比程序設計語(yǔ)言元素更為抽象的高層次軟件構架元素的能力。

  20. 體系結構描述語(yǔ)言ADL定義:ADL是在底層語(yǔ)義模型的支持下,為軟件系統的概念體系結構建模提供了具體語(yǔ)法和概念框架。

  21. 軟件體系結構的分析評估:就是通過(guò)成本相對較低的活動(dòng)來(lái)分析結構中可能存在的風(fēng)險,發(fā)現軟件體系結構中影響系統質(zhì)量的關(guān)鍵因素,并提出相應的改進(jìn)措施,在此基礎上檢驗軟件的性能需求是否得到滿(mǎn)足。

  22. 系統的質(zhì)量屬性的分類(lèi):性能、可靠性、可用性、安全性、可修改性、功能性、可變性、 集成性、互操作性

  23.基于場(chǎng)景的評估方式:ATAM、SAAM

  SAAM法是把一個(gè)物體最豐要的屬性列舉出來(lái),再用檢查表法把各個(gè)項目加以變化,并將其加以重新組合,然后再找出其中可以實(shí)行而且也有效果的項目。

  優(yōu)點(diǎn):SAAM方法在改良事物性質(zhì)的方面具有極大的功效。SAAM方法是第1個(gè)被廣泛接受的體系結構分析評價(jià)方法。它適用于可修改性、可拓展性以及功能覆蓋等質(zhì)量屬性。

  缺陷:沒(méi)有提供體系結構質(zhì)量屬性的清晰的度量。評估過(guò)程依賴(lài)專(zhuān)家經(jīng)驗等,只適合對體系結構的粗糙評價(jià)

  步驟:1.形成場(chǎng)景2.描述體系結構3.對場(chǎng)景進(jìn)行分類(lèi)和確定優(yōu)先級4.對間接場(chǎng)景進(jìn)行單個(gè)評估5.評估場(chǎng)景和相互作用6.形成總體評估7.SAAM評估日程安排

  ATAM 是評價(jià)軟件構架的一種綜合全面的方法,它考慮了可修改性、可靠性和安全性等多種質(zhì)量屬性。

  優(yōu)點(diǎn): 有助于質(zhì)量目標的具體化和排序;ATAM方法是被驗證有效和廣泛使用的一種方法,可以針對實(shí)用性、可靠性和可修改性這些質(zhì)量屬性,在系統開(kāi)發(fā)之前對其進(jìn)行分析和評價(jià)。 缺點(diǎn):它對質(zhì)量屬性并沒(méi)有進(jìn)行深入分析,缺少定量的數據來(lái)支持分析的結果。

  步驟:

  1. 描述ATAM方法2.描述商業(yè)動(dòng)機3.描述體系結構4.確定體系結構的方法5.生成質(zhì)量屬性

  效用樹(shù)6.分析體系結構方法7.討論和分級場(chǎng)景8.分析體系結

  構方法9.描述評估結果

  2. 內外有別模型

  篇三:《軟件體系結構》課程設計

  《軟件體系結構》課程設計

  設計題目: 實(shí)驗室設備管理系統

  姓 名: 李欣 張丹 唐蔚霖 學(xué) 號: k0308413(07+13+17) 同組組長(cháng): 李欣同組其他成員:張丹 唐蔚霖

  實(shí)驗指導教師:李超

  實(shí)驗地點(diǎn): 9B505

  完成日期: 2011-6-10

  湖北民族學(xué)院信息工程學(xué)院

  目錄

  一、概述(目的、任務(wù)、開(kāi)發(fā)環(huán)境、參考資料)

  二、采用的主要方法與技術(shù)

  三、需求分析

  四、設計

  五、實(shí)現過(guò)程與步驟

  六、遇到的困難與獲得的主要成果

  七、測試與運行記錄

  八、完成結果分析與總結

  九、附錄(軟件配置、個(gè)人完成的程序模塊和文檔清單)

  一、概述(目的、任務(wù)、開(kāi)發(fā)環(huán)境、參考資料)

  21世紀以來(lái),人類(lèi)經(jīng)濟高速發(fā)展,人們發(fā)生了日新月異的變化。隨著(zhù)時(shí)代的發(fā)展,教育越來(lái)越需要實(shí)驗,讓學(xué)生從實(shí)驗中得到更多,更扎實(shí)的知識。因此學(xué)校也需要對實(shí)驗室的實(shí)驗設備進(jìn)行更多的投入,而投入之后就帶來(lái)了管理方面的問(wèn)題。我們做的這個(gè)系統主要是對設備的購買(mǎi)、維修、報廢等方面進(jìn)行了一定的管理,可以讓設備進(jìn)行有序、有效的管理,為管理人員節約一些因為管理混亂而浪費的時(shí)間。不過(guò)系統的功能還不夠完善,性能也還不夠穩定,有待于以后不斷的進(jìn)行完善。

  實(shí)現的功能如下:

 。1) 對于已徹底損壞的做報廢處理,同時(shí)詳細記錄有關(guān)信息。

 。2) 對于由嚴重問(wèn)題(故障)的要及時(shí)修理,并記錄修理日期、設備名、

  編號、修理廠(chǎng)家、修理費用、責任人等。

 。3) 對于急需修改但又缺少的設備,需以“申請表”的形式送交上級領(lǐng)導

  請求批準購買(mǎi)。新設備購入后要立即進(jìn)行設備登記(包括類(lèi)別、設備名、編號、型號、規格、單價(jià)、數量、購置日期、生產(chǎn)廠(chǎng)家、保質(zhì)期和經(jīng)辦人等信息),同時(shí)更新申請表的內容。

 。4) 隨時(shí)對現有設備及其修理、報廢情況進(jìn)行統計、查詢(xún),要求能夠按類(lèi)

  別和時(shí)間段等查詢(xún)。

  參考文獻:譚浩強主編.Visual Basic程序設計(二)教程.清華大學(xué)出版社

  柳青等編. Visual Basic 程序設計教程.高等教育出版社 范立南. SQL Server2000 實(shí)用教程.北京:清華大學(xué)出版社 孫燕等編.Visual Basic 程序設計.高等教育出版社 薩師煊 王珊編.數據庫系統概論.北京:高等教育出版社 楊志強.Visual Basic 程序設計教程.北京:高等教育出版社.

  二、采用的主要方法與技術(shù)

  軟件工程是一門(mén)從技術(shù)和組織管理兩個(gè)角度研究如何用系統化、規范化和數量化等工程原理與方法去進(jìn)行軟件開(kāi)發(fā)和維護的學(xué)科。軟件工程學(xué)研究的范圍非常的廣泛,包括技術(shù)方法、工具、和管理等許多方面。軟件生命周期的各個(gè)階段可分為:

  問(wèn)題定義:確定系統的基本功能

  可行性研究:確定系統是否能夠實(shí)現及是否值得實(shí)現

  需求分析:確定系統必須完成的各種功能

  總體設計:確定如何實(shí)現軟件

  詳細設計:詳細設計實(shí)現系統

  編碼和單元測試:寫(xiě)出正確的容易理解和維護的程序模塊

  綜合測試:通過(guò)各種類(lèi)型的測試及調試使軟件達到預訂的要求 軟件維護:通過(guò)各種必要的維護活動(dòng)使系統持久的滿(mǎn)足用戶(hù)需要 采用軟件工程的技術(shù)開(kāi)發(fā)本系統,通過(guò)以上八個(gè)階段組成的軟件生存期。

  它是指從提出開(kāi)發(fā)要求開(kāi)始直到該軟件報廢為止的整個(gè)時(shí)期。分階段進(jìn)行,就把規模龐大、結構復雜和管理復雜的軟件變得很容易控制和管理。

  本系統主要利用Visual Basic作為前端的應用開(kāi)發(fā)工具,利用ACCESS作為后臺的數據庫,利用Windows XP作為系統平臺。

  Windows xp以其友好的圖形界面、易學(xué)易用的操作方法、強大的多任務(wù)功能、健全的內在管理以及先進(jìn)的程序設計方法為廣大數據庫軟件開(kāi)發(fā)人員嗦熟悉。對它的操作環(huán)境熟悉,使得我們在其開(kāi)發(fā)數據庫應用程序更加方便、可靠。

  三、需求分析 (該過(guò)程參考西方和本國制定的軟件需求規范說(shuō)明書(shū)相關(guān)標準)

  管理員可以對實(shí)驗室設備信息進(jìn)行查詢(xún)及相關(guān)實(shí)驗室設備的使用情況查看。管理員可以根據本人用戶(hù)名及密碼登錄系統。在信息系統中,后臺數據庫存儲的地位相當重要,數據庫的設計不但對數據的操作速度有影響,還直接關(guān)系到軟件系統的質(zhì)量和生存周期,本系統數據庫中包括教師資料數據表、借用設備表、儀器表、用戶(hù)登錄表。系統首先必須維護實(shí)驗室中詳細資料的數據表,程序能對該表進(jìn)行寫(xiě)入和讀出數據的操作。相應的,該表還有記錄讀者的借用情況,系統通過(guò)該表判斷讀者是否滿(mǎn)足借用條件。系統還要管理員信息表,記錄管理員的資料,檢驗管理員的登錄,管理員的權限等。

  1、目的

  1)便于用戶(hù)、分析人員和軟件設計人員進(jìn)行理解和交流

  2)希望系統的外部項均支持目標軟件系統的確認。根據需求規格說(shuō)明書(shū)中確立的可測試標準進(jìn)行測試,并得到確認。

  3)控制系統進(jìn)化過(guò)程

  2、軟件產(chǎn)品的作用范圍

  學(xué)校、科研機構、大型實(shí)驗室

  3、功能需求

  1)設備預訂:實(shí)現實(shí)驗人員在系統平臺上查詢(xún)庫內實(shí)驗設備的狀態(tài)及其在某一時(shí)段的使用狀態(tài),若無(wú)損壞且未被預訂使用,則用戶(hù)可以預訂使用。

  2)設備管理:實(shí)現現在倉庫中的每樣設備信息的登記和新設備的入庫登記,舊設備的報修、報廢處理、以及設備狀態(tài)的更改。

  3)設備的借出:按照教師所需設備給予借出,并在數據庫中更改這些設備的使用狀態(tài)

  4)設備的歸還:按照教師所還設備而進(jìn)行入庫登記,并在數據庫中更改這些設備的使用狀態(tài)。

  5)設備報修:實(shí)驗人員在實(shí)驗過(guò)程中如果發(fā)現設備損壞,通過(guò)此系統報告給管理員,同時(shí)修改數據庫中的設備狀態(tài)。

  4、數據庫需求

  用戶(hù)的需求具體體現在各種信息的提供、保存、更新和查詢(xún),要求數據庫結構能夠充分滿(mǎn)足各種信息的輸出和輸入。收集基本數據、數據結構以及數據處理的流程,組成一份詳細的數據字典。

  四、設計(該過(guò)程參考西方和本國制定的軟件設計規范說(shuō)明書(shū)相關(guān)標準)

  1、總體設計

  原理:總體設計的基本目的就是回答“概括的說(shuō),系統應該如何實(shí)現?”這個(gè)問(wèn)題。因此,總體設計又稱(chēng)為概要設計或初步設計。通過(guò)這個(gè)階段的工作將計劃分出組成系統的物理元素-----程序、文件、數據庫、人工過(guò)程和文檔等等,但是每個(gè)物理元素仍然處于黑盒子級,這些黑盒子里的具體內容將在以后仔細設計?傮w設計階段的另一項重要任務(wù)是設計軟件的結構,也就是要確定系統中每個(gè)程序是由哪些模塊組成的,以及這些模塊相互之間的關(guān)系。

  總體設計工程通常有兩個(gè)主要階段組成:系統設計,確定系統的具體實(shí)現方案;結構設計確定軟件機構,也就是要確定系統中每個(gè)程序擁有哪些模塊組成,以及這些模塊之間的關(guān)系。在詳細設計之前進(jìn)行總體設計可以站在全局的高度上,花較少的成本,從中選出最佳的方案和最合理的軟件結構,從而用較低的成本開(kāi)發(fā)出高質(zhì)量的軟件系統。

  2、詳細設計

  數據庫的概念設計:根據對數據流圖和數據字典的分析,確定該應用中的實(shí)體、屬性、和實(shí)體之間的聯(lián)系,并畫(huà)出系統總體E-R圖。概念設計可以分為三部進(jìn)行:首先設計局部E-R模式,然后把各局部E-R模式綜合成一個(gè)全局模式,最后對全局ER模式進(jìn)行優(yōu)化,得到最終的模式,即概念模式。

  局部E-R模式設計:實(shí)體和屬性的定義。ER模型的“聯(lián)系”用于刻畫(huà)實(shí)體之間的關(guān)聯(lián)。一種完整的方式是對局部結構中任意兩個(gè)實(shí)體類(lèi)型,依據需求分析的結果,考察局部結構中任意兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系。若有聯(lián)系,進(jìn)一步確定是1:N,M:N,還是1:1等。還要考察一個(gè)實(shí)體類(lèi)型內部是否存在聯(lián)系,兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系,多個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系,等等。

  利用ER方法進(jìn)行數據庫的概念設計,可以分三個(gè)步驟進(jìn)行:首先設計局部ER模式,然后把各局部ER模式綜合成一個(gè)全局模式,最后把全局ER模式進(jìn)行優(yōu)化,得到最終的模式。所有局部ER模式設計好了之后,接下來(lái)就是把它們綜合成單一的全局概念結構。全局概念結構不僅要支持所有局部ER模式,而且必須合理地表示一個(gè)完整、一致的數據庫概念結構。

  1)局部ER模式的合并

  合并的原則是:首先進(jìn)行兩兩合并;先合并那些現實(shí)世界中有

【《軟件體系結構》期末復習題】相關(guān)文章:

語(yǔ)文期末復習題06-12

期末復習題參考06-18

藥理期末復習題06-18

詞語(yǔ)期末復習題03-09

小學(xué)英語(yǔ)期末復習題06-17

期末數學(xué)復習題精選06-17

語(yǔ)文上冊期末復習題06-17

軟件技術(shù)基礎模擬復習題06-14

小學(xué)語(yǔ)文期末復習題目精選06-19