UML物件導向與設計考試知識點整理

2022-05-20 03:19:27 字數 5374 閱讀 8211

1、 uml中常見的關係的線性表示:

擴充套件關係:、泛化(繼承)關係:、依賴關係:

聚合關係:、組成關係:、

關聯關係:、實現關係:

2、 uml中幾種基本圖及其基本功能作用:

uml的重要內容可以由哪五類圖(共9種圖形)來定義:

答:用例圖:用例圖。

靜態圖:類圖、物件圖

行為圖:狀態圖、活**

互動圖:時序圖、協作圖

實現圖:構件圖、部署圖

1)類圖:類圖是描述類、介面、協作以及它們之間的關係的圖,用來顯示系統中各個類的靜態結構。

類包括:類圖、屬性、方法。

類圖包括:類、介面、協作、關係、約束、注釋以及包。

類的表示包括:名稱、屬性、操作、職責和約束。

類圖的建模過程:確定物件與類、確定類的屬性、確定類的關係。

類圖在uml中的重要作用:1.為開發人員提供這種模仿現實世界的表達方式。

2.讓分析員使用客戶所採用的術語和客戶交流,促使客戶說出所要解決的問題的重要細節。

2)物件圖:物件圖表示在某一時刻一組物件以及他們之間的關係的圖。

uml物件圖的用途

◆捕獲例項和連線、◆在分析和設計階段建立、◆捕獲互動的靜態部分、◆舉例說明資料/物件結構、◆詳細描述瞬態圖、◆由分析人員、設計人員和**實現人員開發

3)用例圖:表述了一組用例、參與者以及它們之間的關係的圖。

用例模型包括:用例圖和用例規則。

用例規則包括:基本流和備選流。

用例圖的組成元素有:參與者,用例,通訊關聯,用例規約

建立用例模型步驟:

1) 根據系統邊界確定參與者

2) 根據每個參與者確定與之相關聯的用例

3) 對每個用例寫出用例規約文件,調整用例模型(優化參與者與參與者之間的關係,用例與用例之間的關係)

用例對於系統開發人員來說的價值:是用來從使用者的觀察角度收集系統需求的一項技術,便於分析員與客戶和使用者交流,使系統更符合使用者的需求

4)順序圖也稱為時序圖,它描敘了系統中物件間通過訊息進行的互動,強調了訊息在時間軸上的先後順序。

順序圖是由物件、生命線、控制焦點和訊息等構成。(訊息表示了物件間的通訊,生命線表示了物件的生存期,控制焦點表示物件正在執行一些活動)

順序圖將互動關係表示為一張二維圖,其中縱向是時間軸,時間沿豎線向下延伸,橫向代表了在協作中各獨立物件的角色。

順序圖中從左到右各物件分別為:執行者角色、控制類、使用者介面、業務層、後台資料庫。

順序圖的作用:順序圖常用來描述用例的實現,它表明了由哪些物件通過訊息相互協作來實現用例的功能。在順序圖中,標識了訊息發生的先後順序。

5)協作圖:描述了系統中物件間通過訊息進行的互動,強調了物件在互動行為中承擔的角色。

協作圖包括物件、鏈(聯結器)、訊息。

(協作圖與順序圖的比較與各自的優缺點下面有)

互動圖(協作圖與順序圖)的特徵:互動圖形主要用於對用例中的控制建模,一般情況下,乙個互動圖形表達單個用例的行為,它表示出該用例中若干個例項物件和物件之間所傳遞的訊息,互動圖形有效的幫助人們觀察和理解系統內部的協作關係和過程行為。

6)狀態圖:描述了乙個物件所處的可能狀態以及狀態之間的轉換,並給出了狀態變化序列的起點和終點。

狀態圖包括:狀態、轉換。

乙個狀態圖表示乙個狀態機,表示從乙個狀態到另乙個狀態的控制流。

引發狀態轉換的事件主要有:呼叫事件、變化事件、時間事件以及訊號事件。

建模步驟:找出適合用模型描述其行為的類、確定物件可能存在的狀態、確定引起狀態轉換的事件、確定轉換進行時物件執行的相應動作、對建模結果進行相應的精化和細化。

作用:能幫助分析員、設計員和開發人員理解系統中物件的行為。(p87)

7)活**:描述從活動到活動的流。

活**包括:動作狀態,活動狀態,動作流、分支與合併、分關與匯合、泳道以及物件流。

8)構件圖:主要用來描述各種軟體構件之間的依賴關係,是描述構件與構件關係的圖。

構件圖包括注釋、約束和包。

構件包括5個要素:介面宣告、介面實現、構件標準、封裝方法以及部署方法。

構件分為3種型別:配置構件、工作產品構件以及執行構件。

構件圖的基本目的是:使系統人員和開發人員能夠從整體上了解系統的所有物理部件;同時,也使我們知道如何對構件進行打包,以便交付給最終客戶;最後,構件圖顯示了被開發系統所包含的構件之間的依賴關係

(構件和類的比較見下面)

9)部署圖:描述系統中的硬體節點及節點之間如何連線的圖。

部署圖的組成元素包括節點、節點間的鏈結。

部署圖的目的:描述系統投產的相關問題;描述系統與生產環境中的其他系統間的依賴關係,這些系統可能是已經存在,或是將要引入的;描述乙個商業應用主要的部署結構;設計乙個嵌入系統的硬體和軟體結構;描述乙個組織的硬體/網路基礎結構。

(活**與狀態圖的比較見下面)

3、 類圖的表示:

4、 略

5、 物件間的可見性:可見性指的是乙個物件能夠「看到」 或者引用另乙個物件的能力。public + ,private - ,protected #

6、 類的區分:

uml將類分為邊界類、實體類以及控制類。

1)邊界類用於描述外部參與者與系統之間的互動。

邊界類是一種用於對系統外部環境與其內部運作之間的互動進行建模的類。這種互動包括轉換事件,並記錄系統表示方式(例如介面)中的變更。

2)實體類主要是作為資料管理和業務邏輯處理層面上存在的類別。

實體類的主要職責是儲存和管理系統內部的資訊,它也可以有行為,甚至很複雜的行為,但這些行為必須與它所代表的實體物件密切相關。

實體類儲存要放進持久儲存體的資訊。持久儲存體就是資料庫、檔案等可以永久儲存資料的介質。實體類可以通過事件流和互動圖發現。

通常每個實體類在資料庫中有相應的表,實體類中的屬性對應資料庫表中的字段。

實體類是用於對必須儲存的資訊和相關行為建模的類。實體物件(實體類的例項)用於儲存和更新一些現象的有關資訊,例如:事件、人員或者一些現實生活中的物件。

3)控制類用於描述乙個用例所具有的事件流控制行為,控制乙個用例中的事件順序。

1.邊界類,描述外部與系統內部互動的類;2.控制類,控制其他類;3.實體類,儲存資訊和相關行為的類;

7、 物件導向開發系統是一系列物件的集合。

8、 物件導向的三大機制:封裝、繼承、多型。

9、 軟體工作的有效性和可靠性。

10、物件導向之前是面向過程的結構化分析與設計方法,這種方法以功能分析為基礎。

11、物件是客觀實體的抽象表示,是由描述物件屬性的資料和對這些資料進行的操作行為兩部分組成。而類是對具有相同屬性和行為一組物件的抽象描述。因此,它作為一種使用者自定義型別和建立物件的樣板,而按照這種樣板所建立的乙個個具體物件就是類的例項。

通過繼承關係又可形成一種類層關係。

12、 uml中靜態圖有:用例圖、類圖、物件圖、構件圖、部署圖

動態圖有:活**、順序圖、協作圖、狀態圖

簡答題:

1、 簡述物件導向的三大機制:封裝性、繼承性以及多型性。

1) 封裝性。所謂封裝就是把物件的屬性和行為結合成乙個獨立的單位,使外界不能直接訪問或修改這些資料和**,外界只能通過物件提供的介面函式來改變或獲取物件的屬性資料,這就實現了訊息的隱蔽;2)繼承性。如果在乙個已定義的類上,增加一些特殊屬性或操作,可以形成乙個新的類,這個類不僅繼承了前乙個類的全部特徵,而且具有新的特性,因此可看作前乙個類的特例,是對前乙個類的繼承。

前乙個類成為父類,新產生的類叫做子類。通過繼承關係可形成一種類層次結構,叫做繼承結構;3)多型性。在類層次結構的不同類中,可用相同的函式名實現功能不同的函式。

多型即程式中同名的不同方法共存的情況,常見的兩種多型方式為:① 子類對父類方法的覆蓋;② 利用過載在同乙個類中定義多個同名的不同方法。

2、簡述物件導向發展的動因:

為了超越程式複雜性障礙,克服軟體危機,人們提出了物件導向軟體開發方法。物件導向開發方法一改過去傳統的以功能分析為基礎的面向過程的結構化分析與設計方法。物件導向開發方法模擬人們理解和處理客觀世界的方式來分析問題,把系統視為一系列物件的結合,其物件導向設計又將分析的結果對映到某一種物件導向實現工具的結構上,使對映過程有著比較直接的對應關係,使分析者、設計者和程式設計者都可使用相同的概念,從而使物件導向的軟體開發能比較自然地模擬客觀世界的活動,使問題描述空間與解空間在結構上盡可能一致。

因此,採用物件導向方法可以更有效地開發大型軟體系統。物件導向方法的封裝、繼承、多型等機制不僅支援軟體復用,而且使軟體維護工作可靠有效,可實現軟體系統的柔性製造,更好地克服軟體危機。因此,它成為成熟的廣為採用的軟體開發方法。

3、 分析順序圖和協作圖之間的差別和優缺點:

順序圖視覺化地表示了物件之間隨時間發生的互動,它除了展示物件之間的關聯,還顯示出物件之間的訊息傳遞。與順序圖一樣,協作圖也展示物件之間的互動關係。順序圖強調的是互動的時間順序,而協作圖強調的是互動的語境和參與互動的物件的整體組織。

順序圖按照時間順序布圖,而協作圖按照空間組織布圖。

順序圖可以清晰地表示訊息之間的順序和時間關係,但需要較多的水平方向的空間。

協作圖在增加物件時比較容易,而且分支也比較少,但如果訊息比較多時難以表示訊息之間的順序。

填空、選擇:

1、2略

3、在用例圖中用例與角色是關聯角色。

4、順序圖中有生命線。

5、整體與區域性的關係用聚集(聚合)表達的。

6、uml圖中,關聯角色的構造型有5種

7、略8、uml中4大關係:依賴、泛化、實現和關聯。

9、uml構造塊中的事物和關係各包含哪些內容?

uml的事物包含:動作事物、結構事物、分組事物、注釋事物

動作事物包含:互動、狀態機

結構事物包含:類、介面、用例、協作、節點、構件、活動類

分組事物包含:包

注釋事物包含:註解

10、活**中的泳道技術的作用:通過泳道不僅體現了整個活動控制流,還體現出了每個活動的實施者。

11、狀態圖描述從狀態到狀態的控制流程,常用來對系統的動態特稱進行建模。

12、uml中類可分為3大類:實體類、控制類和邊界類。

13、uml體系分為3大部分:uml基本構造塊、uml規則和uml公共機制。

1. 比較活**與狀態圖:

1) 活**和狀態圖描述的重點不同:活**描述的是從活動到活動的控制流,而狀態圖表述的是物件的狀態及狀態之間的轉移。

2) 活**和狀態圖使用的場合不同:對於以下幾種情況可以使用活**:分析用例、理解涉及多個用例的工作流、處理多執行緒應用:

對於下面的情況要使用狀態圖:顯示乙個物件在其生命週期內的行為。

2. 構件和類的比較:從構件的定義來看,構件和類十分相似,如都有名稱,都可以實現一組介面,都可以參與依賴,泛化和關聯關係,都可以被巢狀,都可以有例項,都可以參與互動,但它們之間也存著以下明顯區別:

1)類是對實體的抽象,而構件是對存在於計算機中的物理部件的抽象。也就是說構件是可以部署的,而類不能部署。2)構件是屬於軟體模組,而非邏輯模組,與類相比,它們處於不同的抽象級別,甚至可以說,構件就是由一組類通過協作完成的;3)類可以直接擁有操作和屬性,而構件僅擁有可以通過其介面訪問的操作。

物件導向程式設計知識點

程式的結構 程式的組成 預處理 函式 語句 程式執行過程 main起 止 使用者識別符號的命名規則 運算子的優先規則 表示式的書寫與計算 a a b,a b a b c d d a b c 數學表示式 計算機表示式 不同型別之間的賦值 條件表示式 奇 偶數的判斷 常量的表示 十進位制 八進位制 十六...

UML與物件導向方法學

2007 2008學年第2學期 專業班級 姓名學號 開課系室 考試日期 一 填空題 每空1分,共27分 1 uml中關係包括4種,分別是 和2和用於對物件導向系統的物理方面建模進行描述的2種圖形。3是描述在某一時刻,系統中一組物件以及它們之間關係的圖形。4 部署圖中的節點可以分為2種型別和 5 物件...

C物件導向程式設計知識點匯集

第一章 c 入門 1 namespace關鍵字 namespace即命名空間,是定義命名空間的關鍵字,命名空間包含類,是類的組織方式。namespace 命名空間名 2 using關鍵字 using關鍵字用於匯入命名空間 using命名空間名 3 class關鍵字 class即類,是定義類的關鍵字。...