RationalRose使用

UML

概述

什麼是 UML?

Unified Modeling Language (UML)又稱統一建模語言或標準建 模語言,是始於 1997 年一個 OMG 標準,它是一個支持模型化 和軟件系統開發的圖形化語言,爲軟件開發的全部階段提供模 型化和可視化支持,包括由需求分析到規格,到構造和配置。面 向對象的分析與設計(OOA&D,OOAD)方法的發展在 80 年代末 至 90 年代中出現了一個高潮,UML 是這個高潮的產物。它不 僅統一了 Booch、Rumbaugh 和 Jacobson 的表示方法,並且對 其做了進一步的發展,並最終統一爲大衆所接受的標準建模語 言。
軟件開發的時候,系統設計師/系統架構師給出 UML 設計圖, 程序員未來要根據 UML 設計圖進行編碼/開發。git

可以實現 UML 圖的建模工具備哪些?

  • IBM Rational Rose
  • StarUML
  • MS Visio(比較在行的是流程圖)
    …..

常見的 UML 圖包括哪些?

  • 類圖(Class Diagram):描述類的信息(包括屬性、方法),以及 類和類之間的關係信息。
  • 用例圖(Use Case Diagram):站在系統用戶(系統角色)的角度 分析系統存在哪些功能。
  • 時序圖(Sequence Diagram):描述程序的執行過程,方法的調用 過程,方法的返回值等信息。(程序是一步一步怎麼執行的,怎麼調 用的。)
  • 狀態圖….
  • 活動圖….

關於 UML 中的類圖

什麼是類圖?

描述類的信息,以及類和類之間的關係信息。程序員

畫一個類圖

一般在 Rational Rose 工具的 Logical View 目錄下實現類圖,通常會創 建一些目錄用來組織這些類圖,由於類可能會比較多。架構

image-20210407111349557

1.關閉直接保存,觀察後綴爲mdl:模型驅動語言工具

image-20210407111633674

2.在logical view中建立包編碼

image-20210407111958821

3.在咱們建立的類圖中new 一個Class Diagram設計

image-20210407112137940image-20210407112306142

image-20210407112306142

4.例如咱們能夠根據市場活動來新建一個class對象

image-20210407112416183

點擊類新建一個類,起名寫備註blog

image-20210407112509752

添加名字類型備註繼承

image-20210407112614998

插入屬性:接口

image-20210407112719436 image-20210407112830567

注意:

未改以前id的權限是private,在圖上是一把小鎖。

image-20210407113048989

更改權限爲public 以後,圖上變爲一個小正方形

image-20210407113142208 image-20210407114624674

類和類之間的關係

A.泛化關係(is a:Cat is a Animal->繼承):類和類的繼承,接口和接口的繼承

image-20210407161449128 image-20210407161645503 image-20210407161754458

最終效果:

image-20210407161912662

B.實現關係(like a:Cooker like a FoodMenu->)**

image-20210407162127016

更改接口的展現類型,把原點化爲正方形⬇️

image-20210407162254566 image-20210407162452904

添加方法:

image-20210407162806826

顯示方法的返回值:

image-20210407163022248

最終效果:

image-20210407163338421

多個類能夠實現一個接口或者一個類能夠實現多個接口

C.關聯關係(has a:Programmer has a computer)

關聯是實線箭頭

image-20210407165814075

雙擊箭頭打開一個窗口,在這個窗口中描述程序員和筆記本之間的關係

image-20210407165943281

能夠看兩個類之間的關係,這裏的Role A Detial 是筆記本,Role B Detial 是程序員

image-20210407170159947image-20210407170317559

寫Role,一旦這個關係線上的Role寫好了,那麼代碼之中就不能隨便寫

image-20210407170627715

並且要看好箭頭的方向,箭頭指向誰,由程序員就能夠找到電腦

朋友關係(自身關聯):

首先要畫一個實線箭頭指向自身

image-20210407171807430

設置數量

image-20210407171659229

再設置Role爲friend

這種關係叫作自關聯

image-20210407172645909 image-20210407172757030
夫妻關係(雙向圖):

進行連線的時候能夠設置Navigable這樣能夠變爲雙向的箭頭

image-20210407190911209 image-20210407191314542

husband和wife是角色名稱

D.聚合關係

聚合關係描述的是總體與部分的關係,聚合關係是比較特殊的關聯關係,好比:一個教室當中有多個學生,教室和學生之間的關係就是總體

和部分的關係在聚合關係中,總體的生命週期不會決定部分的生命週期,例如:教室沒了,學生還在,或者說學生走了,教室還在。

去掉對勾

image-20210407192652520

勾選這個選項

ClassRoom勾選Aggregate選擇數目1

image-20210407192939935

Student那邊選擇數量爲0..n

image-20210407193125946

多個學生設置Student的Role爲students

image-20210407193230739 image-20210407193538542

E.組合關係

組合關係能夠看爲是一種特殊的聚合關係,總體的生命週期決定部分的生命週期,部分是依附在總體上面的,部分離開了總體是沒法"存活"的。例如:人和四肢的關係。

依賴關係

實體箭頭線鏈接好兩我的和四肢,而後分別設置好人的數量爲1,肢體的數量爲0..4,而後保存以後再次打開,把Navigable這個對勾去掉,而後勾選Aggregate選項

image-20210407194208184

效果以下:

image-20210407194240393

而後再次打開選項卡,把By value值選上,這個By value表示組合關係,效果以下:

image-20210407194344468

image-20210407194414670

image-20210407194658049

F.依賴關係

依賴關係是全部關係中最弱的一種,這種關係一般體如今類和局部變量之間的關係。

image-20210407200047198

這裏的Clue隨着Test的建立而建立,隨着Test的消亡而消亡。

用例圖use case diagram

什麼是用例圖

站在系統用戶(系統角色)的角度分析系統存在哪些功能? 實現用例圖的時候,須要先進行系統角色的抽取。
在 Rational Rose 工具當中通常會在 Use Case View 當中實現用例圖。

image-20210407201043171

畫一個用例圖

1.右鍵新建一個package

image-20210407201312912

2.new一個角色

image-20210407201351968

3.新建use case diagram

image-20210407201539614

4.長按能夠將其拖動到畫布上

image-20210407201812901

能夠給他指定功能

image-20210407201744198

image-20210407202031633

時序圖 sequence diagram

什麼是時序圖?

時序圖當中描述了方法的調用過程,程序的執行流程,以及方法執行 結束的返回值狀況。

怎麼實現時序圖呢?

時序圖一般會在 Rational Rose 的 Logical View 中實現。
用例圖當中的一個用例會對應時序圖當中的一個時序圖。時序圖描述 的是一個功能具體是怎麼實現的,流程是什麼?

1.建立一個package時序圖,時序圖要對應用例圖,用例圖當中的用例對應一個時序。

image-20210407202815192

須要一一對應起來image-20210407203329010

2.建立一個dao package

image-20210407203444324

新建四個層,每一個層都須要一個模型

image-20210407203718654 image-20210407205421074

進行連線

image-20210407205518675

起名

image-20210407205641089

肯定以後就能夠new出來。

而後回到控制層的類圖裏面查看方法,多了一個

image-20210407205833214

傳入參數,寫上返回值,而後勾選展現返回值

image-20210407210047288 image-20210407210102784

image-20210407210838145

右鍵將這個方法new出來

image-20210407211056062

而後發現控制器層裏面生成了一個方法,將這個方法寫上註釋

image-20210407211234956

image-20210407211313589

並設置參數類型與上面一致起來

設置業務層的接口

image-20210407211545513

將剛纔建立好的service接口拖拽到咱們的圖中來,進行鏈接命名,而後把這個方法new出來

image-20210407212250805

在業務層進行編輯

image-20210407212519836

在領域模型上建立

image-20210407212646573

在dao層上建立接口image-20210407212822697

同上面同樣,調用生成方法,返回而後編輯方法

image-20210407214536191

小人:動做的發起人

矩形/小圓圈:對象

實線箭頭:調用

虛線箭頭:返回
柱狀:對象的生命週期,柱狀不能斷,在同一個流程當中不能斷。

回折線:當前類的方法執行過程當中調用本身當前類中

相關文章
相關標籤/搜索