產(chǎn)品經(jīng)理必學(xué)UML(三):活動(dòng)圖
活動(dòng)圖是什么?活動(dòng)圖由什么元素組成?活動(dòng)圖是如何展示系統(tǒng)運(yùn)作的?
我們經(jīng)常需要用到流程圖,在UML里,活動(dòng)圖看起來和流程圖相似,但是與流程圖確實(shí)又有一些區(qū)別,主要體現(xiàn)在以下幾個(gè)方面:
- 流程圖著重描述處理過程,主要控制結(jié)構(gòu)是順序、分支和循環(huán),各個(gè)處理過程過程中有嚴(yán)格的順序和時(shí)間關(guān)系;活動(dòng)圖著重表現(xiàn)系統(tǒng)行為,描述對(duì)象活動(dòng)的順序關(guān)系所遵循的原則。
- 活動(dòng)圖能夠表示并發(fā)活動(dòng)的情形,而流程圖不行。
- 活動(dòng)圖面向?qū)ο?,流程圖面向過程。
一、概念
活動(dòng)指:某件事情正在進(jìn)行的狀態(tài),既可以是現(xiàn)實(shí)生活中某一項(xiàng)工作,也可以是軟件系統(tǒng)中某個(gè)類對(duì)象的一個(gè)操作。
活動(dòng)圖是UML中描述系統(tǒng)動(dòng)態(tài)行為的圖之一,用于展現(xiàn)參與行為的類的活動(dòng)或動(dòng)作。
二、組成元素
1. 開始和結(jié)束
在活動(dòng)圖當(dāng)中,活動(dòng)圖的開始由一個(gè)實(shí)心球表示,結(jié)束由一個(gè)半實(shí)心球表示。
2. 活動(dòng)和動(dòng)作流
活動(dòng)指執(zhí)行特定動(dòng)作,并在該動(dòng)作完成之后向另一個(gè)狀態(tài)轉(zhuǎn)化,通常圓角方框表示。通常將表達(dá)的動(dòng)作寫在方框內(nèi)。
動(dòng)作流連接活動(dòng),通常用實(shí)線箭頭表示。
3. 分支判斷
分支判斷描述了一個(gè)觸發(fā)事件在不同的觸發(fā)條件下引起多個(gè)不同的轉(zhuǎn)移,通常用菱形表示。
以簡(jiǎn)易登錄(僅輸入密碼)為例:
4. 對(duì)象和對(duì)象流
簡(jiǎn)單來說,對(duì)象就是活動(dòng)所輸出或者輸入的,一般是名詞,比如:在顧客在購(gòu)買東西時(shí)會(huì)進(jìn)入商品購(gòu)買工作流,其中賬單便是報(bào)價(jià)活動(dòng)輸出的對(duì)象,同時(shí)也是付款活動(dòng)輸入的對(duì)象,通常用矩形表示。
對(duì)象流連接對(duì)象和動(dòng)作,通常用虛線箭頭表示。
5. 分叉和匯合
在UML中,可以使用分叉將路徑分成兩個(gè)或多個(gè)并發(fā)流,然后使用結(jié)合,同步這些并流。分叉和匯合通常都用同步條表示,同步條是一條粗的水平線。
以需求的可行性分析為例:
6. 泳道
有時(shí)候負(fù)責(zé)活動(dòng)的不只一個(gè)業(yè)務(wù)組織,這個(gè)時(shí)候?yàn)榱烁宄乇硎靖鱾€(gè)組織所負(fù)責(zé)的活動(dòng)部分,以及整體活動(dòng)流程,我們需要泳道活動(dòng)圖。在泳道活動(dòng)圖中,每一個(gè)活動(dòng)都只能明確的屬于一個(gè)泳道。
以考試活動(dòng)為例:
三、練習(xí)
仍然以聽歌系統(tǒng)為例:
- 用戶登錄之后有搜索聽歌和推薦聽歌兩種方式,此時(shí)需要系統(tǒng)生成推薦列表。
- 在選擇歌曲之后,有播放、切換、收藏三種模式,其中收藏需要系統(tǒng)將其添加到“我的列表”中。
- 無論是搜索還是推薦都會(huì)輸出歌曲對(duì)象,而歌曲對(duì)象又是選擇歌曲的輸入對(duì)象。
四、相關(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é)議。
- 目前還沒評(píng)論,等你發(fā)揮!