產(chǎn)品經(jīng)理必學(xué)UML(三):活動圖

0 評論 21298 瀏覽 187 收藏 5 分鐘

活動圖是什么?活動圖由什么元素組成?活動圖是如何展示系統(tǒng)運(yùn)作的?

我們經(jīng)常需要用到流程圖,在UML里,活動圖看起來和流程圖相似,但是與流程圖確實又有一些區(qū)別,主要體現(xiàn)在以下幾個方面:

  • 流程圖著重描述處理過程,主要控制結(jié)構(gòu)是順序、分支和循環(huán),各個處理過程過程中有嚴(yán)格的順序和時間關(guān)系;活動圖著重表現(xiàn)系統(tǒng)行為,描述對象活動的順序關(guān)系所遵循的原則。
  • 活動圖能夠表示并發(fā)活動的情形,而流程圖不行。
  • 活動圖面向?qū)ο?,流程圖面向過程。

一、概念

活動指:某件事情正在進(jìn)行的狀態(tài),既可以是現(xiàn)實生活中某一項工作,也可以是軟件系統(tǒng)中某個類對象的一個操作。

活動圖是UML中描述系統(tǒng)動態(tài)行為的圖之一,用于展現(xiàn)參與行為的類的活動或動作。

二、組成元素

1. 開始和結(jié)束

在活動圖當(dāng)中,活動圖的開始由一個實心球表示,結(jié)束由一個半實心球表示。

2. 活動和動作流

活動指執(zhí)行特定動作,并在該動作完成之后向另一個狀態(tài)轉(zhuǎn)化,通常圓角方框表示。通常將表達(dá)的動作寫在方框內(nèi)。

動作流連接活動,通常用實線箭頭表示。

3. 分支判斷

分支判斷描述了一個觸發(fā)事件在不同的觸發(fā)條件下引起多個不同的轉(zhuǎn)移,通常用菱形表示。

以簡易登錄(僅輸入密碼)為例:

4. 對象和對象流

簡單來說,對象就是活動所輸出或者輸入的,一般是名詞,比如:在顧客在購買東西時會進(jìn)入商品購買工作流,其中賬單便是報價活動輸出的對象,同時也是付款活動輸入的對象,通常用矩形表示。

對象流連接對象和動作,通常用虛線箭頭表示。

5. 分叉和匯合

在UML中,可以使用分叉將路徑分成兩個或多個并發(fā)流,然后使用結(jié)合,同步這些并流。分叉和匯合通常都用同步條表示,同步條是一條粗的水平線。

以需求的可行性分析為例:

6. 泳道

有時候負(fù)責(zé)活動的不只一個業(yè)務(wù)組織,這個時候為了更清楚地表示各個組織所負(fù)責(zé)的活動部分,以及整體活動流程,我們需要泳道活動圖。在泳道活動圖中,每一個活動都只能明確的屬于一個泳道。

以考試活動為例:

三、練習(xí)

仍然以聽歌系統(tǒng)為例:

  • 用戶登錄之后有搜索聽歌和推薦聽歌兩種方式,此時需要系統(tǒng)生成推薦列表。
  • 在選擇歌曲之后,有播放、切換、收藏三種模式,其中收藏需要系統(tǒng)將其添加到“我的列表”中。
  • 無論是搜索還是推薦都會輸出歌曲對象,而歌曲對象又是選擇歌曲的輸入對象。

四、相關(guān)鏈接

《產(chǎn)品經(jīng)理必學(xué)UML:類圖》

《產(chǎn)品經(jīng)理必學(xué)UML(二):用例圖》

 

本文由 @AugTalk 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!