統一建模語言UML 考試+答案

 

 

 

一、選擇題,每題1分,共計25分。每個括號裏的數字爲該空的題號,從該題號對應的備選答案中選擇最佳的一項,每空限填一個選項。請按如下表格在答題冊上答此題。

1~5

 

 

 

 

 

6~10

 

 

 

 

 

11~15

 

 

 

 

 

16~20

 

 

 

 

 

21~25題

 

 

 

 

 

 

下面關於UML文檔的敘述中正確的是 (1)B

(1)A. UML文檔指導開發人員如何進行面向對象分析

B. UML文檔描述了面向對象分析與設計的結果

C. UML文檔給出了軟件的開發過程和設計流程

D. UML文檔指導開發人員如何進行面向對象設計

 

在面向對象分析與設計中, C(2) 是應用領域中的核心類,一般用於保存系統中的信息以及提供針對這些信息的相關處理行爲;這種類的構造型通常用 B(3) 來表示。

(2)A. 控制類        B. 邊界類        C. 實體類        D. 軟件類

uploading.4e448015.gif轉存失敗重新上傳取消

(3)

 

 

已知3個類A、B和C,其中類A的實例由類B的一個實例和類C的一個或多個實例構成。能夠正確表示類A、B和C之間關係的UML類圖是( 4 )A

(4). 供選擇的答案:

uploading.4e448015.gif轉存失敗重新上傳取消

 

UML的設計視圖包含了類、接口和協作,其中,設計試圖的靜態方面由(5)A(6)C表現;其中的(5)A可以明確表示兩類事物之間存在的整體/部分形式的關聯關係。動態方面由交互圖、(7)D表現。

(5)A. 類圖          B. 狀態圖        C. 活動圖        D. 用例圖

(6)A. 狀態圖        B. 順序圖        C. 對象圖        D. 活動圖

(7)A. 狀態圖和類圖                   B. 類圖和活動圖        

C. 對象圖和狀態圖                 D. 狀態圖和活動圖

 

RUP將一個週期的開發過程劃分爲4個階段,其中  (8)  的提交結果包含了完整的用例和設計模型,以及在適當平臺上集成的軟件產品。

(8) A. 先啓階段      B. 精化階段      C. 構建階段      D. 提交階段

 

在進行面向對象設計時,採用設計模式能夠(9)A (10)B 設計模式定義一個用於創建對象的接口,讓子類決定實例化哪一個子類,它使一個類的實例化延遲到其子類。 D11 模式將對象組合成樹形結構以表示“部分-整體”的層次結構,並使得用戶對單個對象和組合對象的使用具有一致性。

(9)A. 複用相似問題的相同解決方案           B. 改善代碼的平臺可移植性        

C. 改善代碼的可理解性                   D. 增強軟件的易安裝性

  1. A. 觀察者(Observer) B. 工廠方法(Factory Method)

C. 原型(Prototype)    D. 適配器(Adapter)

  1. A. 修飾(Decorator)   B. 橋接(Bridge)   

C. 外觀(Facade)      D. 組合(Composite)

 

 B (12)  是用於把元素組織成組的通用機制。該機制在開發過程中有很多作用,但其中的(13)D不是該機制的好處之一。

(12) A. 類           B.   包         C. 接口               D. 組件

(13) A. 有利於並行開發和提高軟件生產率          

B. 有利於有效的軟件配置管理

C. 有利於提高軟件的模塊獨立性和軟件可理解性                  

D. 有利於提高軟件的可靠性

 

在RSA中,  (14)D  定義了編輯器(Editor)和視圖(View)集合,並針對特定的任務和職能對其提供初始的佈局。但是下述選項中,  (15)  D 不是RSA所提供的一種   (14)D  

  1.  A. 模板(Template)  B. 模型(Model)  C. 模式(Pattern) D. 透視圖(perspective)
  2.  A. Resource          B. Modeling      C.  Debug              D. Refactoring

 

在UML 2.0中,  (16)A  反映類、接口或構件的內部協作,用於表達運行時的體系結構、使用模式及關係,其中所描述的  (17) C 存在於一個結構類的內部端口(port)之間,而  (18)A  存在於外部結構和一個結構類的內部端口之間。

(16)A. composite structure diagram     B. deployment diagram

C. use case diagram              D. sequence diagram

  1.  A. Delegate connector       B. Common connector    

 C. Assembly connector       D. Singleton connector

  1.  A. Delegate connector       B. Common connector    

  C. Assembly connector       D. Singleton connector

 

Rational Software Architect 通過(19)A功能來發現模型版本的變動、支持並行開發和探索多種可能的解決方案。

  1.  A. Compare and Merge                    B. Static Analysis  

C. Applying Patterns and Transformation      D. Model publishing

 

解讀下圖中所表示的設計,可以發現該方案不可以 (20B  。  

  1. A. 動態決定由一組對象中某個對象處理該請求

B. 動態指定處理一個請求的對象集合, 並高效率地處理一個請求

C. 使多個對象都有機會處理請求,避免請求的發送者和接收者間的耦合關係

D. 將對象連成一條鏈,並沿着該鏈傳遞請求

uploading.4e448015.gif轉存失敗重新上傳取消

在UML中,約束信息(21)C號表示。

(21) A. [ ]           B.   ( )         C. { }               D. " " 

 

狀態圖可以表現(22)B在生存期的行爲,所經歷的狀態序列,引起狀態轉移的 時間以及因狀態轉移而引起的動作。

(22) A. 一組對象     B.   一個對象        C. 多個執行者          D. 幾個子系統 

 

Round-Trip Engineering夠幫助維持軟件架構的完整性。但 (23)D 不是Round-trip Engineering的好處之一。

(23) A. 發現和評估軟件架構上的改動         B. 傳達被接受的架構改動

C. 在每次迭代中保持模型和代碼的同步   D. 爲相同的接口提供不同的實現

 

下列描述中,(24)D不是建模的基本原則。

(24)A.要仔細的選擇模型,因爲模型關係着系統解決方案的構造;

B.每一種模型可以在不同的精度級別上表示所要開發的系統

C.模型要與現實相聯繫

D.對一個重要的系統用一個模型就可以充分描述

 

UML中有的四種基本關係是:依賴,泛化,關聯和(25 )C

(25)A. 繼承          B. 合作     C.  實現            D.抽象

 

二、判斷正誤,每題1分,共計15分。請按如下表格在答題紙上答此題。

1~5題

 

 

 

 

 

6~10題

 

 

 

 

 

11~15題

 

 

 

 

 

 

1、在活動圖和狀態圖中,有且只有一個終止節點,但可以沒有初始節點,也可以有多個初始節點。F

2、順序圖和協作圖(UML2.0中的通信圖)在語義上是等價的,順序圖用鏈接(link)刻畫對象間的拓撲關係,通信圖則可以描述執行的發生(execution occurrence)或控制焦點(focus of control)。F

3、RSA所支持的查詢圖包括瀏覽圖(Browse Diagram)和主題圖(Topic Diagram),這兩種圖是UML2.0中新增的兩種圖,分別用以獲取和描述系統的結構和行爲。F

4、T在RUP中,先啓階段、精化階段、構建階段和提交階段往往需要多次迭代,但是如果不需要探索系統可行性或項目範圍很容易確定,則先啓階段中可以不進行真正意義的迭代。T

5、模型和圖在概念上是一致的,每一種UML圖都只能用於一個模型中,同樣一個模型也只能夠用一種圖來表示。F

6、UML 中的構件遵從一組接口並提供一組接口的實現,構件往往是一個邏輯模塊而不是物理模塊。F

7、T 在狀態圖中,歷史狀態是基於組合狀態構造的,也就是說如果沒有組合狀態的圖形語法和語義,就無法進一步定義歷史狀態。T

8、T Controlled Unit是可以進行版本控制的模型元素,在ROSE中,模型文件本身被打包存儲爲.mdl文件從而成爲受控單元,Component View則被打包成.sub文件而成爲受控單元。T

9、 UML適用於用例驅動的開發過程,但不適合在體系結構爲中心的開發過程中使用。F

10、T  Use Case Realization明確了分析與設計(analysis and design)活動和需求(requiremeng)活動之間的可追蹤性(traceability)。每一個use case realization中都可以包括若干實現某個用例的類圖、順序圖和通信圖。T

11、T 部署圖(或配置圖)中包含兩種節點(Node),一種是設備節點(Device),另一種是執行環境接點(Execution Environment)。其中設備節點一般是可以嵌套其它節點並具備處理能力的物理計算資源。T

12、在RUP中,用例分析(use case analysis)是精化體系結構(Refine the Architecture)活動中的一個步驟。F

13、泛化關係可以通過”is a part of”短語來判定,而聚合關係(aggregation)可以通過” is a kind of”短語來判定。F

14、在用例建模中,用例強調的是可理解性,而Scenario(場景)強調的是完整性。F

15、T UML結構中的構造塊包括物件、關係和圖三個部分。T

 

 

三、完成下列各題,在答題紙上寫出答案,共計30分。

  1. Philippe Kruchten在《IEEE Software》上發表了題爲《The 4+1 View Model of Architecture》的論文,引起了業界的極大關注,並最終被 RUP 採納,現在已經成爲架構設計的標準。列出5種視圖的名稱並對它們的內容給出解釋(4分)

uploading.4e448015.gif轉存失敗重新上傳取消

 

  1.  UML中包含哪幾種圖?它們的作用是什麼?(4分)

uploading.4e448015.gif轉存失敗重新上傳取消

 

  1.  簡述RUP的6個核心過程工作流和3個支撐工作流。(5分)
  2.  用例規約(Use case specification)是面向對象分析與設計的基礎,舉例說明用例規約大體應包含哪些內容。(5分)

用例名、自然語言描述體、圖例說明、範圍、級別、主執行者、項目相關人員和利益、前置條件、最小保證、成功保證、觸發事件、主成功場景、擴展場景和相關信息等項目

  1. 舉例說明UML的三種擴展機制。(4分)

)構造型(Stereotype):構造型可以爲UML增加新事物

)標記值(tagged value):標記值擴展UML構造塊的特性或標記其他模型元素,爲UML事物增加新特性。

)約束(constraint):用於加入新的規則或修改已經存在的規則

  1. 說明UML中的關聯、泛化、實現、依賴四種關係各自的含義,並區分聚合(Aggregation)和組合(Composition)兩種關係的不同。(4分)

關聯表示兩個類之間存在某種語義上的聯繫。

泛化關係描述了一般事物和該事物中的特殊種類之間的關係。

實現關係是用來規定接口與實現接口的類或組件之間的關係。

兩個元素X、Y,如果修改元素X的定義可能會引起另一個元素Y的定義的修改,則稱元素Y依賴於元素X。

 

組合和聚集都表示實例之間的整體/部分關係。組是聚集的一種形式。

聚集是概念性的,只是區分整體與部分。

組裝具有很強的歸屬關係,而且整體與部分的對象生存週期是一致的。

 

7. 在識別類、類的職責以及類的關係的過程中,實踐中存在兩種觀點:一種方法是通過篩選名詞動詞等方式來進行,另一種是通過觀察由用例事件流獲得的順序圖來進行。你同意哪一種做法,爲什麼?(4分)

各有優缺點:第一種方法適合開發有一定開發經驗的領域;第二種方法適合陌生的領域,缺乏相關係統的開發經驗

 

四、綜合應用題(30分)

1. 閱讀下列說明和圖,完成問題1至問題4,並在答題紙上自行列表寫出答案。

【說明】

在線會議審稿系統(Online Reviewing System, ORS)主要處理會議前期的投稿和審稿事務,其功能描述如下:

(1)用戶在初始使用系統時,必須在系統中註冊(register)成爲作者或審稿人。

(2)作者登錄(login)後提交稿件和瀏覽稿件審閱結果。提交稿件必須在規定提交時間範圍內,其過程爲先輸入標題和摘要,選擇稿件所屬主題類型,選擇稿件所在位置(存儲位置)。上述幾步若未完成,則重複;若完成,則上傳稿件至數據庫中,系統發送通知。

(3)審稿人登錄後可設置興趣領域,審閱稿件給出意見,以及羅列錄用和(或)拒絕的稿件。

(4)會議委員會主席是一個特殊的審稿人,可以瀏覽提交的稿件、給審稿人分配稿件、羅列錄用和(或)拒絕的稿件,以及關閉審稿過程。其中關閉審稿過程須包括羅列錄用和(或)拒絕的稿件。

系統採用面向對象的方法開發,使用UML進行建模。在建模用例圖時,常用的方式是先識別參與者,然後確定參與者如何使用系統來確定用例,每個用例可以構造一個活動圖。參與者名稱、用例和活動名稱分別參見表1、表2和表3。系統的部分用例圖和提交稿件的活動圖分別如圖1和圖2所示。

表1 參與者列表

名稱

說明

名稱

說明

User

用戶

Author

作者

Reviewer

審稿人

PCChair

委員會主席

表2 用例名稱列表

名稱

說明

名稱

說明

login

登錄系統

Register

註冊

submit paper

提交稿件

Browse review results

瀏覽稿件審閱結果

close reviewing process

關閉審稿過程

assign paper to reviewer

分配稿件給審稿人

set preferences

設定興趣領域

enter review

審閱稿件給出意見

list accepted/rejected papers

羅列錄用和/或拒絕的稿件

browse submitted papers

瀏覽提交的稿件

表3 活動名稱列表

名稱

說明

名稱

說明

select paper location

選擇稿件位置

upload paper

上傳稿件

select subject group

選擇主題類型

send notification

發送通知

enter title and abstract

輸入標題和摘要

 

 

 

uploading.4e448015.gif轉存失敗重新上傳取消

圖1 ORS的用例圖

 

uploading.4e448015.gif轉存失敗重新上傳取消

圖2 提交稿件過程的活動圖

 

【問題1】(4分)

根據【說明】中的描述,使用表1中的英文名稱,給出圖1中A1~A4所對應的參與者。

【問題2】(3分)

根據【說明】中的描述,使用表2中的英文名稱,給出圖1中U1~U3所對應的用例。

【問題3】(4分)

根據【說明】中的描述,給出圖1中(1)和(2)所對應的關係及其含義。

【問題4】(4分)

根據【說明】中的描述,使用表2和表3中的英文名稱,給出圖2中Action1~Action4對應的活動。

 

2. 閱讀下列說明和圖,回答問題1至問題3,將解答填入答題紙的對應欄內。

【說明】

某圖書管理系統的主要功能如下:

(1) 圖書管理系統的資源目錄中記錄着所有可供讀者借閱的資源,每項資源都有一個唯一的索引號。系統需登記每項資源的名稱、出版時間和資源狀態(可借閱或已借出)。

(2) 資源可以分爲兩類:圖書和唱片。對於圖書,系統還需要登記作者和頁數;對於唱片,還需登記演唱者和介質類型(CD或者磁帶)。

(3) 讀者信息保存在圖書管理系統的讀者信息數據庫中,記錄的信息包括:讀者的識別碼和讀者姓名。系統爲每個讀者創建了一個借書記錄文件,用來保存讀者所藉資源的相關信息。

現採用面向對象方法開發該圖書管理系統。識別類是面向對象分析的第一步。比較常用的識別類的方法是尋找問題描述中的名詞,再根據相關規則從這些名詞中刪除不可能成爲類的名詞,最終得到構成該系統的類。表1給出了說明中出現的所有名詞。

表1

圖書管理系統

資源目錄

讀者

資源

索引號

系統

名稱

出版時間

資源狀態

圖書

唱片

作者

頁數

演唱者

介質類型

CD

磁帶

讀者信息

讀者信息數據庫

識別碼

姓名

借書記錄文件

信息

 

 

通過對錶1中的名詞進行分析,最終得到了圖1所示的UML類圖(類的說明如表2所示)。

 

uploading.4e448015.gif轉存失敗重新上傳取消

 

表2

類名

說明

LibrarySystem

圖書管理系統

BorrowerDB

保存讀者信息的數據庫

CatalogItem

資源目錄中保存的每項資源

Borrower

讀者

BorrowerItems

爲每個讀者創建的借書記錄文件

 

問題 1(3分)

表2所給出的類並不完整,根據說明和表1,將圖1中的(a)-(c)處補充完整。

問題 2(6分)

根據【說明】中的描述,給出圖1中的類catalogItem以及(b)、(c)處所對應的類的關鍵屬性(使用表1中給出的詞彙),其中,CatalogItem有4個關鍵屬性;(b)、(c)處對應的類各有兩個關鍵屬性。

問題 3(6分)

識別關聯的多重度是面向對象建模過程中的一個重要步驟。根據說明中給出的描述,完成圖1中的(1)-(6)。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章