UML試題大集合要打印_第1頁
UML試題大集合要打印_第2頁
UML試題大集合要打印_第3頁
UML試題大集合要打印_第4頁
UML試題大集合要打印_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《UML面向對象分析與設計》期末考試復習提綱一、教學內容重點:面向對象分析與設計(OOAD):概述、用例模型、領域模型、系統(tǒng)順序圖、操作契約、職責分配(順序圖、類圖)統(tǒng)一建模語言(UML):用例圖、順序圖、類圖表示法;統(tǒng)一過程(UP):概述、迭代、UP階段、UP科目設計模式(DP):包括GRASP和GOF課程重點章節(jié):ch1,2,6,9,10,11,15,16,17,18,25,26二、知識點分值比例(1)OOAD約占50%~60%;(2)UP約占5~10%;(3)DP約占25~30;說明:試卷中,UML有單獨出題,也有融入到OOAD和DP考核中,總計約占40%。三、考試題型(1)判斷題(5小題,5分)(2)選擇題(5小題,10分)(3)簡答題(4小題,20分):四大主題各占1題(4)OOAD應用題(2小題,6問,共計50分):含OOA/OOD(5)設計模式應用題(1小題,2問,15分):含補全代碼/模式定義類圖建模。1UML中的交互圖有兩種,分別是順序圖和協作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點。掌握利用兩種圖進行的設計的方法。答:協作圖可視化地表示了對象之間隨時間發(fā)生的交互,它除了展示對象之間的關聯,還顯示出對象之間的消息傳遞。與順序圖一樣,協作圖也展示對象之間的交互關系。順序圖強調的是交互的時間順序,而協作圖強調的是交互的語境和參與交互的對象的整體組織。順序圖按照時間順序布圖,而協作圖按照空間組織布圖。順序圖可以清晰地表示消息之間的順序和時間關系,但需要較多的水平方向的空間。協作圖在增加對象時比較容易,而且分支也比較少,但如果消息比較多時難以表示消息之間的順序。2什么是高內聚度高內聚度是對一個類中的各個職責之間相關程度和集中程度的度量。一個具有高度相關職責的類并且這個類所能完成的工作量不是特別巨大,那么它就具有高內聚度。包括兩個意思:(1)不要給一個類分派太多的職責,在履行職責時盡量將部分職責分派給有能力完成的其它類去完成。(2)不相關的職責不要分派給同一個類。3UML提供一系列的圖支持面向對象的分析與設計,其中_G__給出系統(tǒng)的靜態(tài)設計視圖;_B_對系統(tǒng)的行為進行組織和建模是非常重要的;_D__和_F_都是描述系統(tǒng)動態(tài)視圖的交互圖,其中_D__描述了以時間順序組織的對象之間的交互活動,_F__強調收發(fā)消息的對象的組織結構.A狀態(tài)圖B用例圖C狀態(tài)圖D順序圖E部署圖F協作圖G類圖4什么是對象間的可見性?答:可見性(Visibility)指的是一個對象能夠“看到”或者引用另一個對象的能力5領域模型是一組表示__A__,在設計工作中廣泛用來啟發(fā)設計軟件對象.A.真實世界的概念類

B.虛擬世界的概念類

C.軟件部件的模型

D.硬件部件的模型6.可以用_____________和____________兩種方法找概念類。答案:概念類類別表、標識名詞短語7統(tǒng)一過程中的四個階段?答:初始階段(Inception)細化階段(Elaboration)構造階段(Construction)提交階段(Transition)統(tǒng)一過程中有哪四個階段,各階段需要完成的主要工作有哪些?答:1)初始階段:編制簡要的愿景文檔、業(yè)務案例、確定范圍、粗略評估成本。2)細化階段:細化愿景文檔、迭代地實現核心構架、解決高風險的問題、定義大多數的需求和范圍、進一步評估成本3)構造階段:迭代地實現系統(tǒng)的其余部分、準備部署4)提交階段:beta測試、部署統(tǒng)一過程中的核心工作流有哪些?答:業(yè)務建模、需求分析、設計、實現、測試。8定義大多數的需求和范圍的工作是在UP中的(11)階段完成的。(11)A初始階段

B細化階段

C構造階段

D提交階段答案:(11)B9下列(12)不在UP的初始階段中完成的(12)A編制簡要的愿景文檔

B粗略評估成本C定義大多數的需求D業(yè)務案例答案:(12)C10.領域模型是一組表示真實世界的(16),不是(17)的模型。答案:(16)概念類

(17)軟件部件11在協作圖中通過(18)表示出消息的時間順序。答案:(18)消息編號12在畫SSD圖時,應該如何對待所涉及的系統(tǒng):A.詳細描述其內部結構及其功能;B.簡單描述其內部結構,但是羅列系統(tǒng)所有的功能C.詳細描述其內部結構,并不列出系統(tǒng)的功能D.不對系統(tǒng)的內部結構與功能進行描述.答案:D13UP的核心思想有哪些?答:短時間盒的迭代式開發(fā)開發(fā)過程中不斷進行調整在早期的迭代中解決高風險和高價值的主要問題不斷與用戶銜接,及時得到反饋意見早期注意構造核心的體系結構早期進入實現和測試,不斷進行質量檢驗使用用例(usecase)可視化建模(用UML)仔細地管理需求控制變更14什么是增量開發(fā)?答:增量開發(fā)包括兩層意思:1)對復雜的用例分多次迭代,一部分一部分地實現2)將所有用例按其優(yōu)先級分別安排在不同的迭代中實現15領域建模的步驟?答案:列出候選的概念類,畫出領域模型圖,必要時加入概念類間的關聯,必要時加入概念類的屬性16什么是用例,用例模型,如何描述用例?答:用例是一個描述性的文檔,用來描述一個參與者使用系統(tǒng)完成某個業(yè)務過程時的事件發(fā)生順序。用例描述的是系統(tǒng)使用過程,它描述了系統(tǒng)的功能需求。用例不描述系統(tǒng)內部如何工作,而是定義系統(tǒng)的責任,說明系統(tǒng)必須做什么。用例模型是需求工作的一個重要的制品。用例一般有Brief,Casual,fullydressed三種類型的描述方式。17標準建模語言UML的重要內容可以由哪五類圖(共9種圖形)來定義?答案:用例圖、靜態(tài)圖(包括類圖、對象圖和包圖)、行為圖、交互圖和實現圖。18簡述統(tǒng)一建模語言(UML):統(tǒng)一建模語言(UML)是一種繪制軟件藍圖的標準語言??梢杂肬ML對軟件密集型系統(tǒng)的制品進行可視化詳述和文檔化。UML是一種定義良好、易于表達、功能強大且普遍適用的可視化建模語言。它融入了軟件工程領域的新思想、新方法和新技術。它的作用域不限于支持面向對象的分析與設計,還支持從需求分析開始的軟件開發(fā)的全過程。UML的作用就是用很多圖從靜態(tài)和動態(tài)方面來全面描述我們將要開發(fā)的系統(tǒng)。19軟件開發(fā)生命期軟件開發(fā)生命期是指軟件產品從考慮其概念開始,到該產品交付使用為止的整個時期。一般包括概念階段,需求階段,設計階段,實現階段,測試階段,安裝階段及交付階段。這些階段可以有重復,執(zhí)行時也可以有迭代。1、下列描述中,哪個不是建模的基本原則()A.要仔細的選擇模型B.每一種模型可以在不同的精度級別上表示所要開發(fā)的系統(tǒng)C.模型要與現實相聯系D.對一個重要的系統(tǒng)用一個模型就可以充分描述2、UML體系包括三個部分:UML基本構造塊,()和UML公共機制A、UML規(guī)則

B、UML命名C、UML模型

D、UML約束3、UML中的事物包括:結構事物,分組事物,注釋事物和()A、實體事物

B、邊界事物C、控制事物

D、動作事物4、()模型的缺點是缺乏靈活性,特別是無法解決軟件需求不明確或不準確的問題A、瀑布模型

B、原型模型C、增量模型

D、螺旋模型5、下面哪個不是UML中的靜態(tài)視圖()A.狀態(tài)圖B.用例圖C.對象圖

D.類圖6()技術是將一個活動圖中的活動狀態(tài)進行分組,每一組表示一個特定的類、人或部門,他們負責完成組內的活動。A、泳道

B、分叉匯合C、分支

D、轉移7下列關于狀態(tài)圖的說法中,正確的是()A.狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進行建模的五種圖之一。B.狀態(tài)圖是活動圖的一個特例,狀態(tài)圖中的多數狀態(tài)是活動狀態(tài)C.活動圖和狀態(tài)圖是對一個對象的生命周期進行建模,描述對象隨時間變化的行為。D.狀態(tài)圖強調對有幾個對象參與的活動過程建模,而活動圖更強調對單個反應型對象建模8對反應型對象建模一般使用()圖A、狀態(tài)圖B、順序圖C、活動圖

D、類圖9類圖應該畫在Rose的哪種()視圖中A、UseCaseView

B、LogicViewC、ComponentView

D、DeploymentView10類通??梢苑譃閷嶓w類,()和邊界類A、父類

B、子類C、控制類

D、祖先類11順序圖由類角色,生命線,激活期和()組成A、關系

B、消息C、用例

D、實體12()是系統(tǒng)中遵從一組接口且提供實現的一個物理部件,通常指開發(fā)和運行時類的物理實現A、部署圖

B、類C、接口

D、組件13關于協作圖的描述,下列哪個不正確()A.協作圖作為一種交互圖,強調的是參加交互的對象的組織;B.協作圖是順序圖的一種特例C.協作圖中有消息流的順序號;D.在ROSE工具中,協作圖可在順序圖的基礎上按“F5”鍵自動生成;14組件圖用于對系統(tǒng)的靜態(tài)實現視圖建模,這種視圖主要支持系統(tǒng)部件的配置管理,通??梢苑譃樗姆N方式來完成,下面哪種不是其中之一()A.對源代碼建模B.對事物建模C.對物理數據庫建模D.對可適應的系統(tǒng)建模15、一個對象和另一個對象之間,通過消息來進行通信。消息通信在面向對象的語言中即()A、方法實現

B、方法嵌套C、方法調用

D、方法定義16、()是可復用的,提供明確接口完成特定功能的程序代碼塊。A、模塊

B、函數C、用例

D、軟件構件17若將活動狀態(tài)比作方法,那么動作狀態(tài)即()A、方法名

B、方法返回值C、方法體中的每一條語句

D、方法的可見性18事件可以分為內部事件和外部事件。按下按鈕和打印機的中斷是()事件A、內部事件

B、外部事件19()是用于把元素組織成組的通用機制A、包

B、類C、接口D、組件20()是一組用于描述類或組件的一個服務的操作A、包

B、節(jié)點C、接口

D、組件21()是被節(jié)點執(zhí)行的事物A、包

B、組件C、接口

D、節(jié)點1、UML中,對象行為是通過交互來實現的,是對象間為完成某一目的而進行的一系列消息交換。消息序列可用兩種類來表示,分別是()A.狀態(tài)圖和順序圖B.活動圖和協作圖C.狀態(tài)圖和活動圖

D.順序圖和協作圖2、用例(Use-case)用來描述系統(tǒng)在事件做出響應時所采取的行動。用例之間是具有相關性的。在一個“訂單輸入子系統(tǒng)”中,創(chuàng)建新訂單和更新訂單都需要檢查用戶賬號是否正確。那么,用例“創(chuàng)建新訂單”、“更新訂單”與用例“檢查用戶賬號”之間是()關系A.包含(include)

B.擴展(extend)C.分類(classification)

D.聚集(aggregation)3、瀑布模型的生存周期是()A.聽取客戶意見→建造/修改→測試/運行B.計劃→聽取客戶意見→設計→編碼→測試→運行/維護C.計劃→需求分析→設計→編碼→測試→運行/維護D.需求分析→計劃→設計→編碼→測試→運行/維護4下列關于狀態(tài)圖的說法中,正確的是()A.狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進行建模的五種圖之一。B.狀態(tài)圖是活動圖的一個特例,狀態(tài)圖中的多數狀態(tài)是活動狀態(tài)C.活動圖和狀態(tài)圖是對一個對象的生命周期進行建模,描述對象隨時間變化的行為。D.狀態(tài)圖強調對有幾個對象參與的活動過程建模,而活動圖更強調對單個反應型對象建模5、()是系統(tǒng)中遵從一組接口且提供實現的一個物理部件,通常指開發(fā)和運行時類的物理實現A、部署圖

B、類C、接口

D、組件6事件(event)表示對一個在時間和空間上占據一定位置的有意義的事情的規(guī)格說明,下面哪個不是事件的類型()A.信號

B調用事件C.源事件

D.時間事件7下面關于正向工程與逆向工程的描述,哪個不正確()A.正向工程是通過到實現語言的映射而把模型轉換為代碼的過程;B.逆向工程是通過從特定實現語言的映射而把代碼轉換為模型的過程;C.正向工程是通過從特定實現語言的映射而把代碼轉換為模型的過程;D.正向工程與逆向工程可以通過rose支持來實現;8、組成UML有三種基本的建筑塊是:(),事物和圖A、關系B、類C、用例

D、實體【用例圖】1.用例圖的節(jié)點包括(ABD)A、用例B、邊界C、關聯D、執(zhí)行者2.用例之間的關系主要有(BCD)A、聚合B、繼承C、擴展D、包含3.在采用用例模型捕獲需求時,需要執(zhí)行如下(ABCD)操作A、描述非功能需求B、用例建模C、識別用例D、識別參與者4.在識別用例時,以下(ABC)問題可以幫助識別用例A、當系統(tǒng)狀態(tài)發(fā)生故障時,是否需要通知參與者B、系統(tǒng)是否存在外部事件,如果存在,是哪個能參與者通知系統(tǒng)這些個部事件C、參與者希望系統(tǒng)為他提供什么樣的功能D、系統(tǒng)運行環(huán)境是什么5.在用例圖中,可以用(D)來表示整個軟件系統(tǒng)或其中一些子系統(tǒng)的邊界,也可以用它表示軟件系統(tǒng)的不同發(fā)布版本的功能范圍A、執(zhí)行者B、關聯關系C、用例D、邊界框6.(B)作為完成用例任務的責任承擔者,協調、控制其他類共同完成用例規(guī)定的功能或行為A、數據對象B、控制類C、實體類D、邊界類7.基于用例圖的需求捕獲的第一步就是確定系統(tǒng)的參與者,在尋找系統(tǒng)參與者時,可以根據以下(ABCD)等問題來確定A、系統(tǒng)同環(huán)境如何進行交互B、由誰安裝系統(tǒng)C、系統(tǒng)為哪些對象提供信息、服務D、系統(tǒng)的使用者是誰8.如果用例B是用例A的某項子功能,并且建模者確切地知道在A所對應的動作序列中何時將調用B,則稱(A)A、用例A擴展用例BB、用例A繼承用例BC、用例A包括用例BD、用例A實現用例B9.如果用例A與用例B相似,但A的動作序列是通過改寫B(tài)的部分或者擴展B的動作而獲得的,則稱(B)A、用例A實現用例BB、用例A繼承用例BC、用例A擴展用例BD、用例A包括用例B10.如果用例A與用例B相似,但A的功能較B多,A的動作序列是通過在B的動作序列中的某些執(zhí)行點上插入附加的動作序列而構成的,則稱(C)A、用例A擴展用例BB、用例A包含用例BC、用例A繼承用例BD、用例A實現用例B11.在UML中,(A)表示使用軟件系統(tǒng)的功能,與軟件系統(tǒng)交換信息的外部實體A、執(zhí)行者B、類C、用例D、用例圖12.在用例圖中,執(zhí)行者之間的關系只有(B)一種A、包含B、繼承C、擴展D、實現【靜態(tài)圖】1.對于類,其屬性的可見性表示對類的外部世界的可見性,它有以下(ABCD)選項A、公開(public)B、包內公開(package)C、保護(protected)D、私有(private)2.在UML中,以下(ABCD)是可以應用于包的構造型A、框架{《Framework》}B、虛包{《Facade》}C、子系統(tǒng){《Subsystem》}D、系統(tǒng){《system》}3.兩個類之間的關聯表示他們之間存在一種不適于繼承的邏輯關系。在關聯關系的表示圖元的兩端,可以表示參與關聯的(ABCD)特性。A、約束B、可見性C、角色名D、多重性4.用例之間的關系主要有(ABC)A、包含B、繼承C、擴展D、聚合5.在構件中圖中,(D)用于顯示構件之間的關聯關系。A、節(jié)點B、包C、構件D、依賴關系6.(D)用于描述相互合作的對象間的交互關系的鏈接關系。A、類圖B、通信圖C、用例圖D、協作圖7.(D)是一種不包含操作的實現部分的特殊類。A、概念類B、分析類C、實現類D、接口8.在類圖中,(C)說明允許候選值范圍,如集合可以設定的大小??梢哉f明可能用于關聯端、組成類中的部分、消息迭代次數和其他目的。A、角色B、多重性C、注釋D、監(jiān)護條件9.泛化使得(A)操作成為可能,即操作的實現是由它們所使用的對象的類,而不是由調用確定的。A、多態(tài)B、多重C、傳參D、傳值10.將下圖中的接口映射為Java代碼,具有(D)形式。A、privateinterfaceService{……}B、protectinterfaceService{….}C、voidinterfaceService{…..}D、publicinterfaceService{……}11.(A)關系是類元的一般描述和具體描述之間的關系,具體描述建立在一般描述的基礎之上,并對其進行了擴展,具體描述與一般描述完全一致所有特性、成員和關系,并且包含補充的信息,它用從子指向父的箭頭表示,指向父的是一個空三角形。A、泛化B、繼承C、組成D、聚集12.(C)使用類圖的一個子集,用于強化某個時間點類實例之間的關系。A、交互圖B、協作圖C、對象圖D狀態(tài)圖13.(A)是用來反映代碼的物理結構。A、構件圖B、用例圖C、類圖D、狀態(tài)機14.類元之間的(A)將一個對象的兩個版本以連續(xù)一方式連接起來,它表示一個對象的值、狀態(tài)和位置的轉換,可以將類元角色在一次相互作用中連接起來。A、流B、依賴C、泛化D、關聯15.(D)是對象與其外界相互關聯的唯一途徑。A、函數調用B、接口C、狀態(tài)轉換D、消息傳遞16.以下對部署圖說法正確的有(BCD)A、部署圖有主要建模元素是構件B、使用部署圖可以顯示運行時系統(tǒng)的結構,同時還傳達構成應用程序的硬件和軟件的配置的部署方式C、從部署圖中,可以了解到軟件與硬件之間物理關系及處理節(jié)點的組件分布情況D、部署圖(deployment,配置圖)是用來顯示系統(tǒng)中軟件和硬件的物理結構17.利用部署圖,可以(ABCD)A、探究系統(tǒng)和生產環(huán)境中的其它系統(tǒng)的依賴關系,這些系統(tǒng)可能是已經存在,或是將要引入的B、探究系統(tǒng)投產的相關問題C、描述一個應用主要的部署結構D、描述一個商業(yè)應用主要的部署結構,描述一個組織的硬件網絡基礎結構【動態(tài)圖】1.活動圖的邊包括(BC)A、數據流B、控制流C、對象流D、消息2.在UML活動圖中,(B)表示一個操作完成后對其后續(xù)操作的觸發(fā)。A、信息流B、控制流C、初始活動D、活動3.在UML活動圖中,(C)表示活動需要輸入的對象或者作為活動的處理結果輸出的對象。A、并發(fā)控制B、決策點C、對象D、活動4.在活動圖中,(C)是從多個源活動匯合到一個????A、活動B、初始節(jié)點和活動終點C、結合D分叉5.(C)是一種特殊形式的狀態(tài)機,用于對計算流程和工作流程建模。A、時間圖B、流程圖C、活動圖D、狀態(tài)圖6.在活動圖中,(D)表示一個具有子結構的純粹計算的執(zhí)行,通常為操作或位于其內的聲明的調用成真實世界程序的執(zhí)行。A、狀態(tài)B、活動C、順序狀態(tài)D、活動狀態(tài)7.對于活動圖,以下說法正確的有(ABD)A、活動圖適用于精確地描述單個用例中的處理流程,也可用來描述多個用例聯合起來形成的處理流程,表達相對復雜的業(yè)務操作或軟件處理過程,有時甚至可以針對類中某個個復雜的操作用活動圖給出實現細節(jié)B、活動圖中包含控制流和信息流,控制流表示一個操作完成后對其后續(xù)操作的觸發(fā),信息流則刻畫操作這間的信息交換C、活動圖的基本建模機制包括節(jié)點、邊及泳道D、活動圖描述實體為完成某項功能面執(zhí)行的操作序列,其中的某些操作或者操作的子序列可以并發(fā)和同步8.在UML活動較中,(A)表示操作之間的信息交換。A、信息流B、控制流C、初始活動D、活動9.UML的(A)表示消息源發(fā)出消息后不必等待消息處理過程的返回,即可繼續(xù)執(zhí)行自己的后續(xù)操作。A、異步消息B、返回消息C、同步消息D、簡單消息10.在UML順序圖中,(A)對消息傳遞的目標對象的銷毀。A、銷毀(destroy)消息B、創(chuàng)建(create)消息C、返回消息D、自消息11.在順序圖中,下圖表示(D)A、

帶時廷的消息B、自消息C、異步消息D、同步消息12.在UML順序圖中,如果一條消息從對象a傳向對象b,那么其(A)是一條從b指向a的虛線有向邊,它表示原消息的處理已經完成處理結果(如果有的話)給返回消息傳回。A返回消息B、自消息C、創(chuàng)建(create)消息D、銷毀(destroy)消息13.(B)用于概述相互合作的對象流的交互關系和鏈接關系。A、用例圖B、通信圖C、協作圖D、類圖14.時間圖中,包含以下(BCD)幾個部分。A、值生命線B、消息標簽和消息端點C、狀態(tài)生命線D、消息15.要狀態(tài)機圖中,(A)表示兩個狀態(tài)之間的關系,源狀態(tài)和目的狀態(tài)。A、轉換B、狀態(tài)C、事件D監(jiān)護條件【綜合】1.在UML的最上一層,視圖被劃分為(ACD)視圖域。A、模型管理B、擴展機制C、動態(tài)行為D、結構分類2.以下屬于UML模型視圖的有(CD)A、行為視圖B、結構視圖C、部署視圖和構件視圖D、用例視圖3.以下對UML視圖說法正確的有(ABCD)A、結構分類描述了系統(tǒng)中的結構成員及其相互關系。類元包括類、用例、構件和節(jié)點。類元為研究系統(tǒng)動態(tài)行為奠定了基礎。類元視圖包括靜態(tài)視圖、用例視圖和實現視圖。B、動態(tài)行為描述了系統(tǒng)隨時間變化的行為。待業(yè)用從靜態(tài)視圖中抽取的瞬間值的變化來描述。動態(tài)行為視圖包括狀態(tài)機視圖、活動視圖和交互視圖C、模型管理說明了模型的分層組織結構。包是模型的基本組織單元。特殊的包還包括模型和子系統(tǒng)。模型管理視圖跨越了其他視圖并根據系統(tǒng)開發(fā)和配置組織這些視圖。D、UML還包括多種具的擴展能力的組件,這些擴展能力有限但很有用。這些組件包括約束、構造型和標記值,它們適用于所有的視圖元素4.(B)是一個類對象所可能經歷的所有歷程的模型圖A、模型管理視圖B、狀態(tài)機視圖C、動態(tài)視圖D、靜態(tài)視圖5.(C)可用于描述用戶接口、設備控制器和其他具有反饋的子系統(tǒng)。它還可用于描述在生命期中跨越多個不同性質階段的被動對象的行為,在每一階段該對象都有自己特殊的行為A、動態(tài)視圖B靜態(tài)視圖C、狀態(tài)機視圖D、模型管理視圖6.(C)是在分析模型的基礎上,添加了設計元素的結構,使得分析模型更加接近系統(tǒng)實現。A、領域模型B、數據模型C、設計模型D、概念模型7.(A)可以用于幫助設計人員在UML模型為模型定義約束信息,創(chuàng)建更為精確的設計模型A、OCLB、表達式C、屬性D、變量8.UML2.0在1.0的基礎上,對如下(ABCD)的建模能力進行了增強A、活動B、交互C、復雜結構D、狀態(tài)機9.在界面設計中,通常屏幕的(D)表示與軟件系統(tǒng)的運行狀態(tài)無關、在任何情況下均沒有變化的文本、圖標(icon)、圖形(graph)、圖象(image)等A、用戶命令元素B、用戶輸入元素C、動態(tài)元素D、靜態(tài)元素10.在界面設計中,通常屏幕的(C)表示在屏幕上預留空位、由用戶在界面操作中填寫或選擇的界面元素,包括可編輯的文本、單選鈕(radio)、多選框(checkbox)、選擇列表(selectlist)等A、靜態(tài)元素B、動態(tài)元素C、用戶輸入元素D、用戶命令元素11.對于一個學校的課程注冊管理系統(tǒng),如果有一條需求為“學生只能查看本人選課計劃;教師只能查看本人所開課程的學生信息;教務管理員可以查看所有信息?!?,該屬于(D)類型的需求A、可配置性需求B、可移植性需求C、功能需求D、安全性12.對于一個學校的課程注冊管理系統(tǒng),如果有一條需求為“目前在校學生1000名,教師100名;以后每年逐步遞增,預計五年且翻番,要示軟件產品不需修改即可適應學校規(guī)模的擴張。”,該屬于(B)類型A、可配置性需求B、可伸縮性需求C、功能需求D、安全性需求13.對于一個學校的課程注冊管理系統(tǒng),如果有一條需求為“本軟件必須通過接口定義文檔規(guī)定的接口API與計費系統(tǒng)、學籍管理系統(tǒng)、教師信息管理系統(tǒng)交互?!痹搶儆冢–)類型。A、可集成性需求B、可伸縮性需求C、可互操作性需求D、安全性需求14.對與OCL,說法正確的是(ABCD)A、使用OCL在模型的方法上定義不變量B、將OCL作為一種查詢語言C、使用OCL對構造型(Stereotypes)定義前置和后置條件D、使用OCL描述類型的前置和后置條件15.UML的(B)是由建模者設計的新的建模元素,但是這個模型元素的設計要建立在UML已定義的模型元素基礎上A、標記值B、構造型C、注釋D、約束16.UML通過圖形化的表示機制從多個側面對系統(tǒng)的分析和設計模型進行刻畫,其中(C)包括構件圖,它描述軟件系統(tǒng)中各組成構件,構件的內部結構以及構件之間的依賴關系A、行為視圖B、結構視圖C、構件視圖D、用例視圖【設計模式】1.以下屬于面向對象的設計原則的有(ABCD)A、最少知識原則B、依賴倒轉原則C、接口隔離原則D、無循環(huán)依賴原則(包圖)2.從模式所提供的解決方案的抽象程度來看,模式可以分為(BCD)A、測試模式B、面向軟件實現的設計模式C、軟件子系統(tǒng)或構件設計模式D、體系結構設計模式3.在設計模式中,(C)的核心是緩存和共享A、外觀模式B、工廠模式C、對象池模式D、單例模式4.在面向對象的設計原則中,()表示軟件實體應當對擴展開放,對修改關閉,即軟件實體應當在不修改的前提下擴展。A、單一責任原則B、開放封閉原則C、完全替換原則D、合成/聚合復用原則5.(A)將整個軟件系統(tǒng)劃分為模型、視圖和控制器三個部分。A、MVCB、分層模式C、管道模式D、架構模式6.在面向對象的設計原則中,(C)表示在一個新的對象里面使用一些已有的對象,便之成為新對象的一部分,新的對象通過向這些對的委派達到復用已有功能的目的。A、完全替換原則B、開放封閉原則C、合成/聚合復用原則D、單一責任原則7.當使用單件(單例)設計模式時,可以獲得如下(ABCD)優(yōu)點。A、對唯一實例提供受控訪問B、縮小名稱空間C、允許對操作和表示進行精化操作D、運行可變數目的類實例數8.設計(C)的目的是,將目標軟件系統(tǒng)中依賴于系統(tǒng)運行環(huán)境的數據存取部分與其他部分相分離。A、外部接口B、外觀模式C、數據持久存儲服務D、系統(tǒng)架構9.在面向對象的的設計原則中,(A)表示高層模塊不應該依賴于低層模塊,都應該依賴于抽象,抽象不應該依賴于細節(jié),細節(jié)應該依賴于抽象。A、依賴倒轉原則B、開放封閉原則C、創(chuàng)建持久存儲服務D、唯一責任原則10.(C)是指以設計復用為目的,采用一種良好定義、正規(guī)的、一致的方式記錄的軟件設計經驗。A.架構B.模型C.設計模式D.設計數據11.在設計模式中,(D)保證每個類只要單個實例。A.工廠模式B.對象池模式C.外觀模式D.單例模式12.當客戶程序與抽象類的實現部分之間存在很大的依賴性時,可以考慮使用(D)A、單例模式B、對象池模式C、工廠模式D、外觀模式13.當需要強調一系列相關產品對象的設計以便進行聯合使用,可以考慮使用(A)。A.工廠模式B.對象池模式C.外觀模式D.單例模式14.(A)將整個軟件系統(tǒng)分為若干層次,最頂層直接面向用戶提供軟件系統(tǒng)的操作界面。其余各層為緊鄰其上的層次提供服務。A.分層模式B.MVCC.架構模式D.管道模式15.在面向對象的原則中,(B)表示使用多個專門的接口比使用單一的總接口要好,一個類對另一個來的依賴性應當是建立在最小的接口上的。A.單一責任原則B.接口隔離原則C.依賴倒轉原則D.合成/聚合復用原則16.在面向對象的設計原則中,(D)表示在包的依賴關系圖中不允許存在環(huán)。A.最少知識原則B.依賴倒轉原則C.接口隔離原則D.無循環(huán)依賴原則17.希望創(chuàng)建一個可復用的類,該類必須能夠與接口不可預訂的類協同工作,可以考慮使用(D)A、單例模式B、對象池模式C、工廠模式D、適配器模式18.在需要構建一個層次結構的子系統(tǒng)時,可以使用門面模式定義子系統(tǒng)中每層的入口點,可以考慮使用(A)。A.外觀模式B.工廠模式C.對象池模式D.單例模式19.當需要在不同時刻指定、排列和執(zhí)行請求是,可以考慮使用(B)。A.單例模式B.命令模式C.工廠模式D.適配器模式20.當某個系統(tǒng)需要多個產品系列中的一個來配置,可以考慮使用(C)A、單例模式B、對象池模式C、工廠模式D、外觀模式【代碼重構】1.在如下(ABC)情況下,可以考慮使用重構A、修改錯誤時B、復審程序代碼時C、添加功能時D、需求分析時2.當一個臨時變量僅僅在使用它的方法中可見,則用一個(B),取代變理會使得代碼更加易讀,這也相當于為信息創(chuàng)建一個單獨的訪問機制A、提升方法重構B、采用查詢替換臨時變量重構C、MoveMethod重構D、ExtractMethod重構【新增】1、在UML中,(B)可以對模型元素進行有效組織,如類,用例,構件,從而構成具有一定意義的單元。A連接B包C構件D節(jié)點2、UML通過圖形化的表示機制從多個側面系統(tǒng)的分析和設計模型進行刻畫,其中(C)包括類圖、對象圖和包圖,他們分別從不同的層表面表示系統(tǒng)的靜態(tài)結構。A構件視圖B行為視圖C結構視圖D用例視圖3、以算法和數據結構為中心,其系統(tǒng)功能有一系列的處理步驟構成,相鄰的處理步驟之間數據流通管道相互連接(C)AMVCB分層模式C流程處理模式D架構模式4、UML通過圖形化的表示機制從多個側面對系統(tǒng)的分析設計模型進行刻畫。其中(C)包括交互圖、狀態(tài)圖與活動圖,他們從不同的側面刻畫系統(tǒng)的動態(tài)行為。A結構視圖B用例視圖C行為視圖D構件視圖5、當需要支持日志修改時,可以考慮使用(A)A命令模式B工廠模式C單例模式D適配器模式6、對于某些類來說,只有一個實例是非常重要的,例如,系統(tǒng)中可以有都種類型的打印機,但是只能有一個打印機假脫機,只應該一個文件系統(tǒng)和一個窗口管理器,為此,可以使用(C)。A對象模式B工廠模式C單例模式D外觀模式7、(B)是在領域模型的基礎上,對系統(tǒng)驚醒進一步的分析獲得的,它有三種非常有效的模型,實體類、控制類和邊界類。A設計模型B分析模型C概念模型DE-R模型8、當一個抽象模型有兩個方面,其中一個方面依賴于另一方面,將這兩者封裝在獨立的對象中以使它們可以各自獨立地改變和復用,可以考慮使用(A)A觀察者模式B命令模式C適配器模式D單例模式9、在需求分析中,實體類(A)A負責保存目標軟件系統(tǒng)中具有持久意義的信息項并向其他類提供信息訪問的操作B作為完成用例任務的責任承擔者,負責協調,控制其他類共同完成用例規(guī)定的功能后行為C負責實現用戶的業(yè)務邏輯D負責目標軟件系統(tǒng)與外部執(zhí)行者之間的交互10、(C)是在不改變代碼外在行為的前提下,對代碼做出修改,以改進程序內部結構。A版本控制B代碼調式C代碼重構D代碼走查11、在UML中(D)表示執(zhí)行者為達成一項相對獨立、完整的業(yè)務目標而要求軟件系統(tǒng)完成的功能。A用例圖B邊C執(zhí)行者D用例12、(C)是子對象或者子類自動共享父對象或者父類數據結構和方法的機制,這是對象或類之間的一種關系。A封裝B抽象C繼承D信息隱藏13、在活動圖中(A)的一個輸出部分有一個監(jiān)護條件,檢查預定者是不是會員,這是一個條件線程,它只有在監(jiān)護條件被滿足時才會激發(fā),如果這個線程沒有被激發(fā),那么隨后相對應的結合的輸入部分被認為已完成。A分叉B轉換C控制D活動14、OCL已經嵌入到UML2.0規(guī)約中,建模人員可以在以下(ABCD)情況下使用OCL。A使用OCL在類上或者在類模型的類型上定義不變量B使用OCL對構造型定義類型不變量C將OCL作為一種查詢語言D使用OCL描述操作和方法的前置和后置條件15、以下(ABCD)屬于活動圖的節(jié)點。A決策點B活動C并發(fā)控制D對象16、在需求分析的業(yè)務流程建模中,可以利用活動圖描述(BCD)A系統(tǒng)對外部呈現的功能B多個用例聯合起來形成的處理流程C對象協同的單個用例中的處理流程D軟件與外部實體共同參與的業(yè)務處理流程17、以下屬于面向對象的開發(fā)方法的有(ABCD)Ajacobson方法BOMT方法CCoad方法DBooch方法18、在UML中,模型的組織元素包括(ACD)幾個主要的層次。A視圖B狀態(tài)C模型D圖19、構件圖的節(jié)點可以是(ABD)A包B類C用例D構件20、在狀態(tài)機圖中,轉換包括以下(ABD)類型A外部自轉換B內部自轉換C模擬轉換D正常轉換21、在一般情況下,可以將面向對象的聚合概念區(qū)分為(ABC)關系。A組合B聚合C關聯D繼承22、在面向對象的設計中,主要建立的模型包括(BCD)。A算法邏輯模型B功能模型C動態(tài)模型D對象模型《UML基礎與Rose建模案例》期末試題合分人:復查人:一、單項選擇題:(本大題共20小題,每題2分,共40分)(說明:將答案寫在試卷后面的答題紙上)分數評卷人UML圖不包括 (D)(A)用例圖 (B)類圖(C)狀態(tài)圖 (D)流程圖下面哪一項不是包圖中的關系(D)(A)<<use>>(B)<<access>> (C)<<trace>> (D)<<stub>>在類圖中,下面哪個符號表示繼承關系(C)(B)(B)(A)(C)(D)在類圖中,“#”表示的可見性是(B)(A)Public (B)Protected (C)Private (D)Package消息的組成不包括(C)(A)接口 (B)活動 (C)發(fā)送者 (D)接收者下面哪個視圖屬于UML語言的交互圖(D)(A)行為圖 (B)狀態(tài)圖 (C)實現圖 (D)順序圖UML語言包含幾大類圖形(B)(A)3 (B)5 (C)7 (D)9RUP中有(C)個核心過程工作流。(A)1 (B)3 (C)6 (D)9類之間的關系不包括(D)(A)依賴關系 (B)泛化關系 (C)實現關系 (D)分解關系在UML中,協作圖的組成不包括(C)(A)對象 (B)消息 (C)發(fā)送者 (D)鏈下面哪個符號代表包圖(A)(B)(B)(A)(C)(D)下列對狀態(tài)圖描述不正確的是(C)(A)狀態(tài)圖通過建立類對象的生命周期模型來描述對象隨時間變化的動態(tài)行為(B)狀態(tài)圖適用于描述狀態(tài)和動作的順序,不僅可以展現一個對象擁有的狀態(tài),還可與說明事件如何隨著時間的推移來影響這些狀態(tài)(C)狀態(tài)圖的主要目的是描述對象創(chuàng)建和撤銷的過程中資源的不同狀態(tài),有利于開發(fā)人員提高開發(fā)效率(D)狀態(tài)圖描述了一個實體基于事件反應的動態(tài)行為,顯示了該實體如何根據當前所處狀態(tài)對不同的事件作出反應在UML的順序圖中,通常由左向右分層排列各個對象,正確的排列方法是(A)(A)執(zhí)行者角色 控制類 用戶接口 業(yè)務層 后臺數據庫(B)執(zhí)行者角色 用戶接口 控制類 業(yè)務層 后臺數據庫(C)執(zhí)行者角色 控制類 用戶接口 后臺數據庫 業(yè)務層(D)執(zhí)行者角色 用戶接口 業(yè)務層 控制類 后臺數據庫多對象是UML哪個視圖中的概念(C)(A)類圖 (B)狀態(tài)圖 (C)協作圖 (D)組件圖構件圖的組成不包括(C)(A)接口 (B)構件 (C)發(fā)送者 (D)依賴關系在UML中,接口有幾種表達方式(A)(A)2 (B)4 (C)6 (D)8部署圖的組成不包括(C)(A)處理器 (B)設備 (C)構件 (D)連接下面哪個UML視圖是描述一個對象的生命周期的(B)(A)類圖 (B)狀態(tài)圖 (C)協作圖 (D)順序順序圖由對象,生命線,控制焦點和(B)組成(A)關系(B)消息 (C)用例(D)實體UML中關聯的多重度是指( B)(A)一個類有多個方法被另一個類調用(B)一個類的實類能夠與另一個類的多個實類相關聯(C)一個類的某個方法被另一個類調用的次數(D)兩個類所具有的相同的方法和屬性二、填空題:(本大題共20個空,每空1分,共20分)(說明:將答案寫在試卷后面的答題紙上)分數評卷人1.面向對象程序的基本特征是:抽象、封裝、繼承和多態(tài)。2.Rose的正向工程以組件為單位,把模型中的一個或多個類圖轉換為java源代碼的過程。逆向工程是把代碼轉換為設計模型。3.用例圖兩個最核心的元素是參與者與用例。4.在類圖中一共包含了以下幾種元素,分別是:類、接口、關系、協作、注釋、約束以及。5.順序圖是由對象、生命線、控制焦點和消息等構成的6.在UML的表示中順序圖將交互關系表示為一張二維圖,其中縱向是時間軸,時間沿豎線向下延伸。橫向代表了在協作中各獨立對象的角色。7.狀態(tài)機圖圖描述從狀態(tài)到狀態(tài)的控制流程,常用來對系統(tǒng)的動態(tài)特征進行建模。8.在UML中,狀態(tài)機由對象的各個狀態(tài)和連接這些狀態(tài)的轉換組成,是展示狀態(tài)與狀態(tài)轉換的圖。三、簡答題:(本大題共4小題,,每題5分,共20分)(說明:將答案寫在試卷后面的答題紙上)分數評卷人1.什么是用例圖?用例圖有什么作用?定義:由參與者(Actor)、用例(UseCase)以及它們之間的關系構成的用于描述系統(tǒng)功能的圖成為用例圖。(2分)作用:用例圖是從軟件需求分析到最終實現的第一步,它顯示了系統(tǒng)的用戶和用戶希望提供的功能,有利于用戶和軟件開發(fā)人員之間的溝通(1分)。用例圖可視化的表達了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點,克服了純文字性說明的不足(1分)。用例方法是完全從外部來定義系統(tǒng)的,它把需求和設計完全分離開來(1分),使用戶不用關心系統(tǒng)內部是如何完成各種功能的。2.簡述面向對象分析方法(OOA)的5個基本步驟1)、識別對象,識別對象包括標識潛在的對象和篩選對象兩步(1分)2)、識別對象的屬性(1分)3)、識別對象的行為(1分)4)、識別對象所屬的類(1分)5)、定義主題詞(1分)3.簡述時序圖的建模步驟建模步驟:設置交互語境(1分)確定對象(1分)分析消息和條件(1分)分析附加約束(1分)對建模結果精化和細化(1分)4.RUP統(tǒng)一過程中的四個階段?初始階段(1分)細化階段(1分)構造階段(1分)提交階段(1分)四、問答題和分析題:(本大題共2小題,共40分)(說明:將答案寫在試卷后面的答題紙上)分數評卷人1.網絡的普及帶給了人們更多的學習途徑,隨之而來的管理遠程網絡教學的“遠程網絡教學系統(tǒng)”誕生了。(16)“遠程網絡教學系統(tǒng)”的功能需求如下:學生登錄網站后,可以瀏覽課件、查找課件、下載課件、觀看教學視頻。教師登錄網站后,可以上傳課件、上傳教學視頻、發(fā)布教學心得、查看教學心得、修改教學心得。系統(tǒng)管理員負責對網站頁面的維護、審核不合法課件和不合法教學信息、批準用戶注冊。1)學生需要登錄“遠程網絡教學系統(tǒng)”后才能正常使用該系統(tǒng)的所有功能。如果忘記密碼,可與通過“找回密碼”功能恢復密碼。請畫出學生參與者的用例圖。6個用例每2個1分(3分),5關系每個1分(5分)2)教師如果忘記密碼,可以通過“找回密碼”功能找回密碼。請畫出教師參與者的用例圖。6個用例每2個1分(3分),5關系每個1分(5分)2.圖書管理系統(tǒng)功能性需求說明如下:(24分)圖書管理系統(tǒng)能夠為一定數量的借閱者提供服務。每個借閱者能夠擁有唯一標識其存在的編號。圖書館向每一個借閱者發(fā)放圖書證,其中包含每一個借閱者的編號和個人信息。提供的服務包括:提供查詢圖書信息、查詢個人信息服務和預定圖書服務等。當借閱者需要借閱圖書、歸還書籍時需要通過圖書管理員進行,即借閱者不直接與系統(tǒng)交互,而是通過圖書管理員充當借閱者的代理和系統(tǒng)交互。系統(tǒng)管理員主要負責系統(tǒng)的管理維護工作,包括對圖書、數目、借閱者的添加、刪除和修改。并且能夠查詢借閱者、圖書和圖書管理員的信息??梢酝ㄟ^圖書的名稱或圖書的ISBN/ISSN號對圖書進行查找?;卮鹣旅鎲栴}:該系統(tǒng)中有哪些參與者?(3分)借閱者圖書管理員系統(tǒng)管理員確定該系統(tǒng)中的類,找出類之間的關系并畫出類圖用戶類、用戶角色類、圖書類、預定類、借閱類、書目類(6分)類圖(5分)畫出語境“借閱者預定圖書”的時序圖(10分)1.一個狀態(tài)圖最多只能由一個初態(tài)和一個終態(tài)。(F)2.協作圖中的消息必須要有消息順序號。(T)3.兩個參與者(actor)之間可以有包含(include)關系、擴展(extend)關系或泛化(generalization)關系,而包含關系和擴展關系是依賴(dependency)關系的版型。(F)4.參與者(actor)和用例(usecase)之間的關系是關聯(association)關系。(T)5.類A和類B之間的關系如圖1所示,則稱類B中的getName()方法是對類A中的getName()方法的重載(overload)。(F)7.一個軟件系統(tǒng),如果只有源代碼,缺乏其他相應的輔助文檔,如缺乏順序圖和類圖,則可以利用Rose進行逆向工程得到順序圖和類圖,但得到的順序圖和類圖會比較簡單。(F)8.CMM描述了五個級別的軟件過程成熟度,即初始級、可重復級、已定義、已管理級、優(yōu)化級。(T)9.UML由用例視圖、物理視圖、組件視圖、進度視圖和配置視圖組成。(F)10.在設計類圖時,可以不用對類圖中的每個關聯進行命名,但如果需要命名的話,最好用一個“動詞”給關聯命名。(T)二、單項選擇題(每題2分,共30分。將正確答案填入下表)1.一個設計得好的OO系統(tǒng)具有(B)A.低內聚、低耦合的特征C.高內聚、高耦合的特征B.高內聚、低耦合的特征D.低內聚、高耦合的特征2.下面()不是UML的基本構成元素。(A)A.控制語言B.基本構造塊C.規(guī)則D.公共機制3.面向對象的特點主要概括為(C)。A.可分解性、可組合性、可分類性B.繼承性、封裝性、多態(tài)性C.抽象性、繼承性、封裝性、多態(tài)性D.封裝性、易維護性、可擴展性、可重用性4.構成對象的兩個主要因素是(A)。A.屬性和服務B.標識和內容C.繼承和多態(tài)D.消息和封裝5.下列關于面向對象方法中描述中錯誤的是(C)。A.使用設計模式有助于在軟件開發(fā)中應用面向對象技術B.選擇面向對象程序設計語言時需要考慮開發(fā)人員對其的熟悉程度C.UML作為一種可視化建模語言需要與RUP開發(fā)過程同時使用D.目前在軟件生命周期的分析、設計、實現和測試中均可以應用面向對象方法6.順序圖主要可以為設計人員提供(A)信息。A.消息發(fā)送的順序B.某個方法的執(zhí)行流程C.類之間關聯關系的多重性D.某個對象在不同狀態(tài)之間的轉移7.類和接口的關系類似于下面哪種類型的關系(D)。A.關聯(association)和聚集(aggregation)B.關聯(association)和組合(composition)C.腳本(scenario)和用例(usecase)D.包(Package)和子系統(tǒng)(subsystem)10.一個銀行業(yè)務系統(tǒng)采用如圖瑣事的配置圖,則錯誤的是(D)A.與GUI有關的類應該部署在BranchClient上B.這個圖表示一個三層的體系結構,不管BranchClient、FinancialAppServer、DatabaseServer是運行在同一臺機器上還是在不同機器上C.為了系統(tǒng)的可伸縮性(scalability),與業(yè)務邏輯有關的對象應該部署在FinancialAppServer上D.為了系統(tǒng)的可伸縮性,與業(yè)務邏輯有關的對象應該部署在BranchClient上11.關于用例與類的對比中(D)是錯誤的。A都屬于模型結構元素B都存在繼承關系C類描述系統(tǒng)的部分靜態(tài)視圖,用例描述系統(tǒng)動態(tài)的行為視圖D類描述的是系統(tǒng)的內部構成,用例也可以描述系統(tǒng)的內部構成12.Innovation公司正在為Rose開發(fā)插入件,使得Rose可以把OOA、OOD模型以各種圖形格式導出,如JPEG格式、BMP格式、GIF格式等。在導出時,會根據不同的算法來生成相應的圖形文件,這些算法很復雜。為了描述這些算法,在下面這些圖中,那個是最適合的?(A)(注:活動圖可以用來描述細節(jié))A.活動圖B.狀態(tài)圖C.類圖D.用例圖13.計算機(Computer)由中央處理器、內存、軟盤、硬盤、顯示器、鍵盤、鼠標等組成。那么Computer類和其他類(CPU、RAM、FloppyDrive、HardDisk、Monitor、Keyboard、Mouse)之間的關系是:(D)A.泛化關系(Generalization)C.包含關系(Inclusion)B.實現關系(Realization)D.聚集關系(Aggregation)14.在狀態(tài)圖中不能表示下面那些概念?(D)A.動作(action)B.事件(event)C.轉移(transition)D.類(class)15.在數據庫設計的階段開始考慮具體的數據庫管理系統(tǒng)(DBMS)的特性。(C)A.需求分析B.概念設計C.邏輯設計D物理設計三、簡單題(共36分,每題6分)1.“要迭代開發(fā)、真是有道理。我決定在我們的項目組實施迭代開發(fā),第一迭代先做需求,第二個迭代做分析,第三個迭代做設計??”——這段話有什么問題?(6分)答:這種每次只設計和實現系統(tǒng)的一部分,逐步完成的方法叫迭代開發(fā),每次設計和實現一個的一個階段叫做一個迭代。RUP具有很多長處:提高了團隊生產力,在迭代的開發(fā)過程、需求管理、基于組件的體系結構、可視化軟件建模、驗證軟件質量及控制軟件變更等方面,針對所有關鍵的開發(fā)活動為每個開發(fā)成員提供了必要的準則、模板和工具指導,并確保全體成員共享相同的知識基礎。它建立了簡潔和清晰的過程結構,為開發(fā)過程提供較大的通用性。UML中關聯的多重度是指()一個類有多個方法被另一個類調用一個類的實類能夠與另一個類的多個實類相關聯一個類的某個方法被另一個類調用的次數兩個類所具有的相同的方法和屬性答案:B已知三個類A.B和C.其中類A由類B的一個實類和類C的1個或多個實類構成.請畫出能夠正確表示類A,B和C之間關系的UML類圖.答案:3在某個信息系統(tǒng)中,存在如下的業(yè)務陳述:①一個客戶提交0個或多個訂單;②一個訂單由一個且僅由一個客戶提交。系統(tǒng)中存在兩個類:“客戶”類和“訂單”類。對應每個“訂單”類的實例,存在___(46)___“客戶”類的實例;對應每個“客戶”類的實例,存在___(47)___個“訂單”類的實例。

供選擇的答案:

(1)A.0個B.1個C.1個或多個D.0個或多個

(2)A.0個B.1個C.1個或多個D.0個或多個 答案:1.2.4、UML中的交互圖有兩種,分別是順序圖和協作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點。掌握利用兩種圖進行的設計的方法。答:協作圖可視化地表示了對象之間隨時間發(fā)生的交互,它除了展示對象之間的關聯,還顯示出對象之間的消息傳遞。與順序圖一樣,協作圖也展示對象之間的交互關系。順序圖強調的是交互的時間順序,而協作圖強調的是交互的語境和參與交互的對象的整體組織。順序圖按照時間順序布圖,而協作圖按照空間組織布圖。順序圖可以清晰地表示消息之間的順序和時間關系,但需要較多的水平方向的空間。協作圖在增加對象時比較容易,而且分支也比較少,但如果消息比較多時難以表示消息之間的順序。7、UML提供一系列的圖支持面向對象的分析與設計,其中_G__給出系統(tǒng)的靜態(tài)設計視圖;_B_對系統(tǒng)的行為進行組織和建模是非常重要的;_D__和_F_都是描述系統(tǒng)動態(tài)視圖的交互圖,其中_D__描述了以時間順序組織的對象之間的交互活動,_F__強調收發(fā)消息的對象的組織結構.A狀態(tài)圖B用例圖C狀態(tài)圖D序列圖E部署圖F協作圖G類圖9、UML是有四種關系,他們分別是:依賴,關聯,泛化和實現,還有一種聚集是一種特殊類型的關聯,請標出圖示是哪種關系:(1)---------------()key:依賴0..10..*(2)employeremployee()key:關聯(3)()key:聚集(4)()key:泛化—————————()key:實現圖為銷售實例,請為概念類添加聯系。a,b,c,d?解:a:1b:1..*c:1d:1..*12、這是個usecase,其中有兩個打電話的個案:使用電話卡和對方付款。Actort是電話用戶,畫出其usecasediagram。解:如圖:16.UML提供了一系列的圖支持面向對象的分析與設計,其中____(1)___給出系統(tǒng)的靜態(tài)設計視圖;___(2)____對系統(tǒng)的行為進行組織和建模是非常重要的;____(3)___和____(4)___都是描述系統(tǒng)動態(tài)視圖的交互圖,其中___(3)___描述了以時間順序組織的對象之間的交互活動,___(4)____強調收發(fā)消息的對象的組織結構。A、狀態(tài)圖B、用例圖C、序列圖D、部署圖E、協作圖F、類圖答案:(1)F(2)B(3)C(4)E17.在UML提供的圖中,___(1)___用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互;__(2)___用于按時間順序描述對象間的交互。(1)A、用例圖B、類圖C、對象圖D、部署圖(2)A、網絡圖B、狀態(tài)圖C、協作圖D、序列圖答案:(1)A(2)D18.可以用_____________和____________兩種方法找概念類。答案:概念類類別表、標識名詞短語19.關于GRASP模式設計的。(中午提到的,這里就不寫了)20.找出下面場景中的概念類:(1).顧客帶著購買的商品或服務來到POS收款臺(2).收款員啟動一次銷售(3).收款員輸入商品標識(4).系統(tǒng)記錄商品,并且顯示該商品說明,價格,并計算總金額。按一組計價規(guī)則計算單價。答案:顧客、POS收款臺、收款員、銷售、商品標識、商品、商品說明21.畫出下面場景的SSD圖1.收款員啟動一次銷售(makeNewSale())2.收款員輸入商品標識(enterItem(itemID,quantity))3.銷售結束,系統(tǒng)計算并顯示總金額(endSale())4.顧客付款,系統(tǒng)處理支付。(makePayment(amount))答案如下:備注:1和2差不多,選其中一道就行了。同時還可以出一些畫交互圖的,這里不講了。22.統(tǒng)一過程中的四個階段?答:初始階段(Inception)細化階段(Elaboration)構造階段(Construction)提交階段(Transition)22.什么是設計過程中的Open-Close原則23.識別概念類的策略?識別概念類的策略1:使用概念類類別表識別概念類的策略2:標識名詞短語24.GRASP(分配職責中通用原則的模式)及各解決了什么問題?(5個)信息專家(InformationExpert模式名:信息專家(或專家)解決的問題:分配職責給對象的基本原則是什么創(chuàng)建者(Creator)模式名:創(chuàng)建者解決的問題:誰負責創(chuàng)建某個類的新的實例低耦合(LowCoupling)模式名:低耦合解決的問題:如何支持低依賴關系和增加重用?高內聚(HighCohesion)模式名:高內聚解決的問題:如何將復雜性保持在可控制的范圍內?控制器(Controller)模式名:控制器解決的問題:誰來負責處理一個輸入系統(tǒng)事件?27.設計模式的概念

參考答案:富有經驗的面向對象專家(或其它軟件開發(fā)人員)設計的作為通用原則和慣用法的解決方案 ,用于指導軟件設計。如果將它們按問題和解決方案描述的結構形式編篡,然后起一個名字。這就是設計模式。30、需求分類主要需求FURPS的內容?主要需求:功能、可用性、可靠性、性能、可維護性31、讀懂交互圖,并結合其他條件將設計轉化為代碼。35、適配器,策略,組合,單例子,工廠方法,抽象工廠等模式的理解和應用。模式名:單例模式(Singleton)問題:如何使一個類嚴格地只有一個實例?解決方案:定義一個靜態(tài)的返回單例(Singleton)的類方法。模式名:策略模式(Strategy)問題:如何設計一種方案可以適應算法或規(guī)則的頻繁變更?解決方案:定義一系列的算法,把他們一個個封裝起來,并且使他們可以互相替換,具體的說就是為每個算法/政策/策略分別定義一個具有公共接口的類。模式名:組成模式(Composite)問題:希望按處理原子對象的方式來處理由原子對象結合而成的組合對象解決方案:組成對象和原子對象實現相同的接口。模式名:觀察者模式(Composite)問題:如何維護對象之間的一致性?解決方案:當一個對象的狀態(tài)發(fā)生變化時,所有依賴于它的對象都得到通知并被自動更新。模式名:適配器模式(Adapter)問題:如何解決不兼容的接口的問題,或者說如何提供一個穩(wěn)定的接口給具有不同接口的相似組件?解決方案:通過一個中間的適配器對象使一個組件的原有接口轉變成另一個接口。38.在UML提供的圖中,(1)用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互;(2)用于按時間順序描述對象間交互。(1)A.用例圖 B.類圖 C.對象圖 D.部署圖(2)A.網絡圖 B.狀態(tài)圖 C.協作圖 D.序列圖答案:(1)A (2)D39.UML提供了4種結構圖用于對系統(tǒng)的靜態(tài)方面進行可視化、詳述、構造和文檔化。其中___(3)___是面向對象系統(tǒng)規(guī)模中最常用的圖,用于說明系統(tǒng)的靜態(tài)設計視圖;當需要說明系統(tǒng)的靜態(tài)實現視圖時,應該選擇___(4)___;當需要說明體系結構的靜態(tài)實施視圖時,應該選擇___(5)___。(3)A.構件圖B.類圖C.對象圖D.部署圖(4)A.構件圖B.協作圖C.狀態(tài)圖D.部署圖(5)A.協作圖B.對象圖C.活動圖D.部署圖答案:(3)B (4)A (5)D41.定義大多數的需求和范圍的工作是在UP中的(11)階段完成的。(11)A初始階段 B細化階段 C構造階段 D提交階段答案:(11)B42.下列(12)不在UP的初始階段中完成的(12)A編制簡要的愿景文檔 B粗略評估成本 C定義大多數的需求 D業(yè)務案例答案:(12)C44.領域模型是一組表示真實世界的(16),不是(17)的模型。答案:(16)概念類 (17)軟件部件45.在協作圖中通過(18)表示出消息的時間順序。答案:(18)消息編號46.在面向對象的方法學中,對象可看成是屬性及對于這些屬性的專用服務的封裝體。封裝是一種(19)技術,封裝的目的是使對象的(20)分離。(19)A組裝 B產品化 C固化 D信息隱藏(20)A定義和實現 B設計和測試 C設計和實現 D分析和定義答案:(19)D (20)A47.類是一組具有相同屬性的和相同服務的對象的抽象描述,類中的每個對象都是這個類的一個(21)。類之間共享屬性與服務的機制稱為(22)。一個對象通過發(fā)送(23)來請求另一個對象為其服務。(21)A例證 B用例 C實例 D例外(22)A多態(tài)性 B動態(tài)綁定 C靜態(tài)綁定 D繼承(23)A調用語句 B消息 C命令 D口令答案:(21)C (22)D (23)B48.什么是usecase?在usecase中,什么是場景(scenario),什么是活動者(actor)?P47P11249.什么是SSD圖?什么是領域模型?P118,p12850.領域模型又稱為()A.業(yè)務流程模型 B.用例模型 C.概念模型 D.設計模型答案:C51.在畫SSD圖時,應該如何對待所涉及的系統(tǒng):A.詳細描述其內部結構及其功能;B.簡單描述其內部結構,但是羅列系統(tǒng)所有的功能C.詳細描述其內部結構,并不列出系統(tǒng)的功能D.不對系統(tǒng)的內部結構與功能進行描述.答案:D52.下面那一種模式是不屬于GRASP模式的A.多態(tài)(Polymorphism);B行為對象(purefabrication)C.中間者(Indirection)D.GoF答案:D54.在UML提供的圖中,__(1)_用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互,(2)用于按時間順序描述對象間的交互。(1) A用例圖 B類圖 C對象圖 D部署圖(2)A網絡圖 B狀態(tài)圖 C協作圖 D序列圖答案:(1)A(2)D60、統(tǒng)一過程中有哪四個階段,各階段需要完成的主要工作有哪些?答:1)初始階段:編制簡要的愿景文檔、業(yè)務案例、確定范圍、粗略評估成本。]2)細化階段:細化愿景文檔、迭代地實現核心構架、解決高風險的問題、定義大多數的需求和范圍、進一步評估成本3)構造階段:迭代地實現系統(tǒng)的其余部分、準備部署4)提交階段:beta測試、部署61、統(tǒng)一過程中的核心工作流有哪些?答:業(yè)務建模、需求分析、設計、實現、測試。67.什么是用況,用況模型,如何描述用況?答:用況是一個描述性的文檔,用來描述一個參與者使用系統(tǒng)完成某個業(yè)務過程時的事件發(fā)生順序。用況描述的是系統(tǒng)使用過程,它描述了系統(tǒng)的功能需求。用況不描述系統(tǒng)內部如何工作,而是定義系統(tǒng)的責任,說明系統(tǒng)必須做什么。用況模型是需求工作的一個重要的制品。用況一般有Brief,Casual,fullydressed三種類型的描述方式。68.標準建模語言UML的重要內容可以由哪五類圖(共9種圖形)來定義?答案:用例圖、靜態(tài)圖(包括類圖、對象圖和包圖)、行為圖、交互圖和實現圖。72.協作圖和順序圖的區(qū)別?協作圖和順序圖都表示出了對象間的交互作用,但是它們側重點不同。順序圖清楚地表示了交互作用中的時間順序,但沒有明確表示對象間的關系。協作圖清楚地表示了對象間的關系,但時間順序必須從順序號獲得。順序圖常常用于表示方案,而協作圖用于過程的詳細設計。根據系統(tǒng)操作規(guī)約,畫出順序圖和協作圖,然后根據順序圖和協作圖再配合其他信息編寫出類代碼。73.什么是用況模型?答:用況模型是需求工作的一個重要的制品。用況是一個描述性的文檔,用來描述一個參與者使用系統(tǒng)完成某個業(yè)務過程時的事件發(fā)生順序。用況描述的是系統(tǒng)使用過程,它描述了系統(tǒng)的功能需求。用況不描述系統(tǒng)內部如何工作,而是定義系統(tǒng)的責任,說明系統(tǒng)必須做什么。用況圖用來描述用況及用況之間的關系,是用UML來表示的。74。說說愿景文檔(Vision)的主要內容答:問題說明,主要的高層目標(High-LevelGoals)和風險承擔者需解決的問題。簡要描述的功能需求,反映系統(tǒng)的特征。除功能需求外的其他需求。86、簡述操作契約將系統(tǒng)看成一個提供有公共接口的黑盒,公共接口用來處理輸入的系統(tǒng)事件,發(fā)現系統(tǒng)事件定義系統(tǒng)操作,操作契約描述在一個系統(tǒng)操作執(zhí)行后,領域模型中對象狀態(tài)的變化。

對象圖對象圖展示了一組對象及它們間的關系。用對象圖說明類圖中所反應的事物實例的數據結構和靜態(tài)快照。對象圖表達了系統(tǒng)的靜態(tài)設計視圖或靜態(tài)過程視圖,除了現實和原型的方面的因素外,它與類圖作用是相同的。

用況圖用況圖展現了一組用況、參與者以及它們間的關系??梢杂糜脹r圖描述系統(tǒng)的靜態(tài)使用情況。在對系統(tǒng)行為組織和建模方面,用況圖的是相當重要的。

交互圖交互圖展現了按一定的目的進行的一種交互,它由在一個上下文中的一組對象及它們間交互的信息組成。交互圖也可用于描述一個用況的行為。順序圖和協作圖都是交互圖,順序圖和協作圖可以相互轉換。

順序圖展現了一組對象和由這組對象收發(fā)的消息,用于按時間順序對控制流建模。用順序圖說明系統(tǒng)的動態(tài)視圖。

協作圖展現了一組對象,這組對象間的連接以及這組對象收發(fā)的消息。它強調收發(fā)消息的對象的結構組織,按組織結構對控制流建模。

狀態(tài)圖展示了一個特定對象的所有可能狀態(tài)以及由于各種事件的發(fā)生而引起的狀態(tài)間的轉移。一個狀態(tài)圖描述了一個狀態(tài)機,用狀態(tài)圖說明系統(tǒng)的動態(tài)視圖。它對于接口、類或協作的行為建模尤為重要,可用它描述用況實例的生命周期。

活動圖活動圖是一種特殊的狀態(tài)圖,描述需要做的活動、執(zhí)行這些活動的順序(多為并行的)以及工作流(完成工作所需要的步驟)。它對于系統(tǒng)的功能建模特別重要,強調對象間的控制流程。

高層活動圖用于表示需要完成的一些任務,即用于分析用況,理解涉及多個用況的工作流、多線程及并行,顯示相互聯系的行為整體,還可用于對企業(yè)過程建模,對系統(tǒng)的功能建模。低層活動圖用于表示類的方法。但活動圖不適用于描述動作與對象間的關系,顯示對象間的合作以及顯示對象在生命周期內的運轉情況。

構件圖構件圖展現了一組構件之間的組織和依賴,用于對原代碼、可執(zhí)行的發(fā)布、物理數據庫和可調整的系統(tǒng)建模。

部署圖部署圖展現了對運行時處理節(jié)點以及其中構件的配署。它描述系統(tǒng)硬件的物理拓撲結構(包括網絡布局和構件在網絡上的位置),以及在此結構上執(zhí)行的軟件(即運行時軟構件在節(jié)點中的分布情況)。用部署圖說明系統(tǒng)結構的靜態(tài)部署視圖,即說明分布、交付和安裝的物理系統(tǒng)。順序圖1UML中哋交互圖有兩種,分別是順序圖和拹作圖,請分析一下兩者之間的主要差別和各自的優(yōu)缺點。掌握利用兩種圖進行的設計的方法。

答:協作圖可視化地表示了對象之間隨時間發(fā)生的交互,它除了展示對象之間的關聯,還顯示出對象之間的消息傳遞。與順序圖一樣,協作圖也展示對象之間的交互關系。順序圖強調的是交互的時間順序,而協作圖強調的是交互的語境和參與交互的對象的整體組織。順序圖按照時間順序布圖,而協作圖按照空間組織布圖。

溫馨提示

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

評論

0/150

提交評論