作為PM,你要知道的UML的那點(diǎn)事

Grace
5 評(píng)論 8593 瀏覽 56 收藏 14 分鐘
🔗 产品经理的不可取代的价值是能够准确发现和满足用户需求,把需求转化为产品,并协调资源推动产品落地,创造商业价值。

編輯導(dǎo)讀:UML(統(tǒng)一建模語言)是由一系列標(biāo)準(zhǔn)化圖形符號(hào)組成的建模語言,用于描述軟件系統(tǒng)分析、設(shè)計(jì)和實(shí)施中的各種模型,是產(chǎn)品經(jīng)理的必備技能。本文作者對(duì)常用到的UML圖展開分析,與你分享。

一、用例圖

1.1 UML建模語言的初步認(rèn)識(shí)

想必大家在日常的工作中經(jīng)常會(huì)畫業(yè)務(wù)流程圖吧,但是不知道大家有沒有這種疑惑,為什么網(wǎng)上的畫法規(guī)范都不一樣吶?當(dāng)你看到同事的畫法和自己不一樣時(shí),是不是會(huì)突然懷疑是不是自己畫的有問題,身為非科班出來的產(chǎn)品經(jīng)理,經(jīng)常會(huì)有這樣的疑惑。于是網(wǎng)上搜了好多,發(fā)現(xiàn)網(wǎng)上的更是五花八門!因?yàn)橹白约航邮盏降年P(guān)于這一塊的知識(shí)完全是零散的,所以今天專門找了一份不錯(cuò)的書籍看了一下,然后系統(tǒng)的整理一下,分享出來給需要的小伙伴們~

簡(jiǎn)單來說UML(統(tǒng)一建模語言)就是由一系列的標(biāo)準(zhǔn)化的圖形符號(hào)組成的建模語言,用于描述軟件系統(tǒng)分析、設(shè)計(jì)和實(shí)施中的各種模型。當(dāng)然這些模型是為了工作中更好地表達(dá)、交流、最終達(dá)到信息同步,提高工作效率的目的。

UML的建模被分為兩大類—結(jié)構(gòu)圖和行為圖,共13種圖形:

1.2 常用到的UML圖詳解之用例圖

1.2.1 用例圖

1.2.1.1 什么是用例圖

用例圖用于描述若干參與者以及這些參與者與系統(tǒng)提供的用例之間的交互關(guān)系,主要為了描述系統(tǒng)為參與者提供的功能特性;

用例圖=參與者+用例+關(guān)系

1.2.1.2 用例圖的基本元素

參與者:又稱為執(zhí)行者,獨(dú)立于目標(biāo)系統(tǒng)之外的外界系統(tǒng)或者人;一般使用名詞表示,例如售貨員、顧客;

用例:一組動(dòng)作序列的集合和描述,指的是參與者要在目標(biāo)系統(tǒng)中做的事情;一般使用動(dòng)賓短語表示,例如購買物品,付錢;

系統(tǒng)邊界:正在建模的系統(tǒng)邊界,用例放在系統(tǒng)邊界之內(nèi),參與者放在系統(tǒng)邊界之外;一般在系統(tǒng)邊界的左上方或者右上方放置系統(tǒng)的名字;

1.2.1.3 關(guān)系

參與者和用例之間的關(guān)聯(lián)關(guān)系:一個(gè)參與者與一個(gè)或多個(gè)用例存在關(guān)聯(lián)關(guān)系,用——表示;

用例與用例之間的關(guān)系:

擴(kuò)展:可以為一個(gè)用例增加額外的行為(用例),用<—<<extend>>—(此處為帶有箭頭的虛線)表示;

包含:指的是一個(gè)用例包含其中一個(gè)用例,用—<<include>>—>(此處為帶有箭頭的虛線) 表示;

參與者與參與者之間的關(guān)系:

泛化:面向?qū)ο笾械睦^承關(guān)系,用——?表示;

2.1.4 案例分析

例如某商店有普通顧客和VIP顧客,顧客去店里購買商品然后付款,付款時(shí)可以索要發(fā)票。VIP顧客除了正常的購買商品之外,還會(huì)額外收到一份VIP贈(zèng)品。用例圖如下圖所示:

注:當(dāng)參與者時(shí)非人類角色時(shí),可使用<<系統(tǒng)>>表示參與者。

接下來將會(huì)為大家講解另外一個(gè)常用的UML行為圖——活動(dòng)圖。

二、活動(dòng)圖

2.1 什么是活動(dòng)圖

活動(dòng)圖描述了一個(gè)連續(xù)的活動(dòng)流,指的是業(yè)務(wù)的活動(dòng)變化;

活動(dòng)圖=活動(dòng)+活動(dòng)節(jié)點(diǎn)+關(guān)系

2.2 活動(dòng)圖的基本元素

活動(dòng):由一個(gè)或多個(gè)動(dòng)作組成的行為,使用圓邊矩形表示,使用動(dòng)賓短語描述;

對(duì)象:移動(dòng)的數(shù)據(jù),使用矩形框表示,框內(nèi)標(biāo)明數(shù)據(jù)的名稱,名稱文字下需要加下劃線;

泳道:用外觀像泳道的垂直線將活動(dòng)分組,在每組的上方表明活動(dòng)的參與者,一般為名詞,為活動(dòng)圖的主語,例如顧客,售貨員;

注意:我們?cè)谄綍r(shí)的工作中經(jīng)常會(huì)畫泳道圖,但泳道圖并不是一種UML圖,它只是一種可以表現(xiàn)不同角色不同階段工作流程的工具;

控制節(jié)點(diǎn):

開始:有且只有一個(gè)

結(jié)束:有一個(gè)到多個(gè),分為兩種情況:一種表示整個(gè)活動(dòng)的終點(diǎn),另外一種表示一個(gè)路徑的終止(而不是整個(gè)活動(dòng)的終止)

判斷:根據(jù)不同的條件進(jìn)行接下來不同的操作

匯合:當(dāng)多條路徑同時(shí)指向一個(gè)活動(dòng)時(shí),使用匯合節(jié)點(diǎn);只要有一條路徑先到達(dá),就可以繼續(xù)接下來的活動(dòng);注意:匯合符號(hào)和判斷符號(hào)的表示圖形是一樣的;

分叉:一個(gè)活動(dòng)在該點(diǎn)同時(shí)并發(fā)產(chǎn)生多個(gè)活動(dòng)分支

結(jié)合:當(dāng)并發(fā)活動(dòng)需要都達(dá)到該點(diǎn)時(shí)才能繼續(xù)接下來的活動(dòng)

注:分叉符號(hào)和結(jié)合的圖形時(shí)一樣的

2.3 關(guān)系

活動(dòng)流:表示活動(dòng)之間的輸入輸出關(guān)系,一個(gè)活動(dòng)的輸出結(jié)果作為另外一個(gè)活動(dòng)的輸入元素,使用

——>表示;

對(duì)象流:表示活動(dòng)中數(shù)據(jù)的輸入輸出,使用—-> (此處為帶有箭頭的虛線)表示;

注:閱讀和作圖的順序從左上到右下,警戒條件及取值卸載方括號(hào)里面;

2.4 案例分析

例如一個(gè)客戶 去商場(chǎng)購買物品,前提條件是商城的商品滿足用戶的購物需求且客戶在需要發(fā)票的前提下整個(gè)活動(dòng)的活動(dòng)圖如下

接下來將會(huì)為大家講解另外一個(gè)常用的UML行為圖——狀態(tài)機(jī)圖

三、狀態(tài)機(jī)圖

3.1 什么是狀態(tài)機(jī)圖

狀態(tài)機(jī)圖的定義:用于描述一個(gè)對(duì)象在某一流轉(zhuǎn)過程中的狀態(tài)變化;

狀態(tài)圖=狀態(tài)+遷移

3.2 狀態(tài)機(jī)圖的基本元素

狀態(tài):表示某一對(duì)象在某一時(shí)刻中的狀態(tài),使用形容詞或者副次來表示,例如”未上架”,”已購買”

控制節(jié)點(diǎn):

匯合狀態(tài):將多個(gè)警戒條件局部化,使用○表示;

3.3 關(guān)系

遷移:某個(gè)對(duì)象從一個(gè)狀態(tài)到另外一個(gè)狀態(tài)的變化過程,用——> 來表示;

警戒條件:只有滿足某個(gè)條件時(shí),狀態(tài)才會(huì)發(fā)生改變,使用[條件觸發(fā)文字說明]來表示,其中條件觸發(fā)文字說明一般為主謂賓結(jié)構(gòu);

3.4 案例分析

例如商場(chǎng)中商品從進(jìn)貨到售出的狀態(tài)變化如下圖所示:

接下來將會(huì)為大家講解另外一個(gè)常用的UML行為圖——順序圖

四、順序圖

4.1 什么是順序圖

順序圖,簡(jiǎn)單來說是為描述完成某一事件,不同的參與者之間進(jìn)行交互的先后順序;

順序圖=生命線+消息

4.2 順序圖的基本元素

生命線:表示系統(tǒng)的參與者以及系統(tǒng)運(yùn)行中的對(duì)象;對(duì)于參與者,使用用例中的參與者為生命線命名;對(duì)于系統(tǒng)中的對(duì)象,使用相應(yīng)設(shè)計(jì)類的匿名對(duì)象為生命線命名;

矩形框內(nèi)以匿名對(duì)象的方式標(biāo)明該生命線的名稱,并加上下劃線;

激活框:表示對(duì)象處于執(zhí)行狀態(tài)交互框和組合片斷:用于循環(huán)和分支結(jié)構(gòu);

交互框:表示圖中的一塊區(qū)域或者片段,用一個(gè)四邊形表示,常見的操作符:loop(循環(huán)) 、alt (alternative,分支條件) 、opt (optional,可選分支);

組合片斷:包含圖中的某個(gè)部分,用四邊形表示,左上角是內(nèi)涵描述性文字的折角方框;

4.3 關(guān)系

消息:是對(duì)象發(fā)出的消息,用以生命線之間的通信;

同步消息:對(duì)象發(fā)出消息之后必須接收到返回的信息才可以繼續(xù)接下來的操作,用——?來表示;消息的書寫格式為?? 消息名(參數(shù):參數(shù)類型):返回值;一般用動(dòng)賓短語表示;

返回消息:表示發(fā)出消息之后消息的返回值,用<—-(此處為帶有箭頭的虛線) 表示;一般用名詞表示;

自我調(diào)節(jié)消息:表示對(duì)象自己給自己發(fā)出的消息,用帶有箭頭的指向自己的實(shí)線表示;一般用動(dòng)賓 短語表示;

4.4 案例分析

例如顧客去商店購買商品的順序圖如下圖所示:

好啦,關(guān)于UML的分享就到此結(jié)束啦,作為一個(gè)PM日常主要用到的四種類型的UML圖——用例圖(用于描述參與者和系統(tǒng)功能關(guān)系的建模語言)、活動(dòng)圖(用以描述參與者完成任務(wù)的完整活動(dòng)流程的建模語言)、狀態(tài)機(jī)圖(用以描述某個(gè)目標(biāo)在完整的流程中狀態(tài)變化的建模語言)、順序圖(用以描述在完成任務(wù)的流程中參與者之間交互順序的建模語言)。此波分享到此結(jié)束,希望能幫助有需要的小伙伴們~

 

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

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

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

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

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. WPS 可以畫,會(huì)員版

    回復(fù)
  2. 這用xmind也可以畫

    回復(fù)
    1. 說錯(cuò),Visio

      回復(fù)
    2. drawio用完你會(huì)覺得visio就是渣,而且drawio還是免費(fèi)開源的

      來自北京 回復(fù)
    3. drawio畫時(shí)序圖太難了 這些軟件我都用過,說不出那些好壞

      來自廣西 回復(fù)
专题
14737人已学习12篇文章
在协同办公场景越来越丰富的背景下,协同办公产品起到了关键性的作用。本专题的文章分享了协同办公产品的设计思路。
专题
43467人已学习21篇文章
优惠券的知识点非常丰富,而且随着运营方式的增多, 不同运营目标所使用的优惠券也是不一样的。
专题
11712人已学习12篇文章
任何理论都有它的局限性和前提条件,没有一种方法论是永远有效的。品牌方法论一直处在变化阶段,它随着时代发展的变化而变化。本专题的文章分享了品牌方法论。
专题
39854人已学习11篇文章
你说你会SEO/SEM,我信!但是肯定做的不够好,不服看看别人的。
专题
11423人已学习12篇文章
从二维到三维空间的过渡,其交互范式也会随之从2D GUI时代转换到3D UI时代。本专题的文章分享了XR空间交互指南。
专题
14044人已学习12篇文章
本专题的文章主要以跨境电商为例,对其OMS系统进行分析。