內容概要
1. 敘述基於UML的物件導向分析設計過程
2. UML物件導向中包括哪些圖及每件圖的作用
一、敘述基於UML的物件導向分析設計過程
1.識別系統的用例和角色
首先對項目進行需求調研,依據項目的商務程序圖和資料流程圖以及項目中涉及的各級操作人員,通過分析,識別出系統中的所有用例和角色;接著分析系統中各角色和用例間的聯絡,再使用UML建模工具畫出系統的使用案例圖,同時,勾畫系統的概念層模型,藉助UML建模工具描述概念層類圖和活動圖表。
2.進行系統分析,並抽象出類
系統分析的任務是找出系統中所有需求並加以描述,同時建立特定領域模型。建立領域模型有助於開發人員考察用例,從中抽取出類,並描述類之間的關係。
3.設計系統和系統中的類及其行為
設計階段由結構設計和詳細設計組成。①結構設計是高層設計,其任務是定義包(子系統),包括包間的依賴關係和主要通訊機制。包有利於描述系統的邏輯組成部分以及各部分之間的依賴關係。②詳細設計就是要細化包的內容,清晰描述所有的類,同時使用UML的動態模型描述在特定環境下這些類的執行個體的行為。
二、UML物件導向中包括哪些圖及每件圖的作用
UML中包括九種圖:使用案例圖、類圖、對象圖、狀態圖、時序圖、共同作業圖表、活動圖表、元件圖表、配置圖。
[1] 使用案例圖(UseCaseDiagram)
它是UML中最簡單也是最複雜的一種圖。使用案例圖表示了角色和用例以及它們之間的關係。使用案例圖描述了系統提供的一個功能單元。使用案例圖的主要目的是協助Team Dev以一種可視化的方式理解系統的功能需求,包括基於基本流程的"角色"(actors,也就是與系統互動的其他實體)關係,以及系統內用例之間的關係。
[2]類圖(ClassDiagram)
類圖表示不同的實體(人、事物和資料)如何彼此相關;換句話說,它顯示了系統的靜態結構。
[3] 對象圖
UML物件導向中對象圖是類圖的執行個體,描述了對象以及對象間的關係,幾乎使用與類圖完全相同的標識。它們的不同點在於對象圖顯示類的多個對象執行個體,而不是執行個體的類。一個對象圖是類圖的一個執行個體。由於對象存在生命週期,因此對象圖只能在系統某一時間段存在。
[4] 狀態圖
描述一個實體基於事件反應的動態行為,顯示了該實體如何根據當前所處的狀態對不同的時間做出反應的。通常建立一個UML狀態圖是為了以下的研究目的:研究類、角色、子系統、或組件的複雜行為。有人可能會爭論說每個類都有狀態,但不是每個類都應該有一個狀態圖。只對”感興趣的”狀態的類(也就是說,在系統活動期間具有三個或更多潛在狀態的類)才進行狀態圖描述。
[5] 時序圖
又稱順序圖,描述了對象之間動態互動關係,著重體現對象間訊息傳遞的時間順序。順序圖由一組對象構成,每個對象分別帶有一條豎線,稱作對象的生命線,它代表時間軸,時間沿豎線向下延伸。時序圖顯示了流程中不同對象之間的調用關係,同時還可以很詳細地顯示對不同對象的不同調用。時序圖有兩個維度:垂直維度以發生的時間順序顯示訊息/調用的序列;水平維度顯示訊息被發送到的對象執行個體。
[6] 共同作業圖表
UML物件導向中共同作業圖表用於顯示組件及其互動關係的空間組織圖,它並不側重於互動的順序。共同作業圖表顯示了互動中各個對象之間的組織互動關係以及對象彼此之間的連結。共同作業圖表強調發送和接受訊息的對象的結構組織的互動作用圖。共同作業圖表用途:通過描繪對象之間訊息的移動情況來反映具體的方案。顯示對象及其互動關係的空間組織圖,而非互動的順序。
[7]活動圖表(ActivityDiagram)
UML物件導向中UML活動圖表記錄了單個操作或方法的邏輯,單個使用者案例,或者單個商務程序的邏輯。描述系統中各種活動的執行順序,通常用於描述一個操作中所要進行的各項活動的執行流程。同時,它也常被用來描述一個用例的處理流程,或者某種互動流程。活動圖表由一些活動組成,圖中同時包括了對這些活動的說明。當一個活動執行完畢之後,控制將沿著控制轉移箭頭轉向下一個活動。活動圖表中還可以方便地描述控制轉移的條件以及並存執行等要求。
[8]元件圖表(ComponentDiagram)
元件圖表是用來反映代碼的物理結構。從元件圖表中,可以瞭解各軟體組件(如原始碼檔案或動態連結程式庫)之間的編譯器和運行時依賴關係。使用元件圖表可以將系統劃分為內聚組件並顯示代碼自身的結構。元件圖表的主要目的是顯示系統組件間的結構關係。
[9]配置圖
UML物件導向中配置圖描述系統中硬體和軟體的物理配置情況和系統體繫結構。在配置圖中,用結點表示實際的物理裝置,如電腦和各種外部裝置等,並根據它們之間的串連關係,將相應的結點串連起來,並說明其串連方式。在結點裡面,說明分配給該結點上啟動並執行可執行構件或對象,從而說明哪些軟體單元被分配在哪些結點上運行。