UML建模在产品经理工作中的应用
UML为什么能在产品工作中应用?能解决产品经理工作上的哪些痛点?
一、先看图例
是否在工作中见过这些图呢?
是否在偏技术型的文档中见过这些图?
1)这是一张“用户——角色——权限”关联关系图,表达了“表”与“表”之间的关系;属于类图。
2)这是一张拼团产品中“用户——团——权益”的对应关系图,以及每个业务概念的属性字段与操作;同样属于类图。
3)这是一张表达相对独立的功能间的关系图,表达了一个功能模块的输入与输出,及与另一个功能模块间的供需关系;属于构件图。
4)这是一张表达服务器、数据库、使用网络地域范围的部署图。
5)这是一张以“员工申请立项,三个领导审批”事件为主的流程图。
6)这是上图中“审批单”的状态变化图,学名:状态机图。表达了审批单在不同用户的操作下的触发的状态变化。
7)这是一张用户在注册账户过程中“用户——前端界面——后端系统——数据库”之间的交互及信息传递图,学名顺序图,主要用来表达复杂的交互、系统与系统之间的交互。
8)这是一张表达了某系统范围内三种角色各自可操作的用例,以及角色与角色之间的继承关系,属于用例图。
① 关联关系
a)用直线相连接,代表两个类之间有关联关系,当不确定具体关系时,均先用直线链接;直线两端的数字代表对应的数量关系,如下:
代表1个G可以0~3个M,如一个拼团除了团长可以有0~3个团员。
b)导航关系
代表由A可以导航到B,通俗讲是由A可以找到B,如:在拼团名单中可以找到参与用户。
② 聚合关系,即弱包含关系
代表一个部门可以由多个员工组成,如果部门没了,员工可继续存在。
③ 组合关系,即强包含关系
代表一个部门可以由多个员工组成,如果部门没了,员工也就没了。
④ 泛化关系
代表A泛化为B,A具备B的特点,也有自己的特有特点,如香蕉泛化为水果。
⑤ 依赖关系
代表A依赖于B,对于某件事,A需要B的协助才能完成。
3)类图建模的步骤
- 识别类,先记下类的名称;
- 识别出类的主要属性、操作;
- 描绘出类之间的关系;
- 对各类进行分析、抽象、整理。
这个图是网上找的,箭头使用不是很规范。切记要使用类图语法中的箭头。
2. 构件图
1)什么是构件?
2)语法
① 一个构件符号如下。服务接口像一个手一个拳头,可联系记忆为:伸手要服务,出拳打人服务。
③ 示例如下:
3. 部署图
产品经理一般需要搞清楚:
- 服务器部署在哪里?数据库放在哪里?
- 是互联网还是局域网?
4. 活动图(流程图)
活动图比较常用,不做太多讲述,但在画图时一定要规范,如每个活动用“主动宾”的表达方式,当采用泳道图,有角色泳道时,可以省略“主语”。
1)语法
2)绘制步骤
- 明确该流程要表达怎么样的业务目的?
- 该流程有什么角色?
- 画出正常情况下的流程,是流程的主干,一般是线性的流程。
- 明确主干流程中的角色与活动。
- 逐步增加分支流程,将关键的流程分支画出,部分异常流程可简单画出并用文字说明。
- 适当控制活动粒度。
- 优化流程。
5. 状态机图
状态机图是从某个事物的状态是如何变化的角度来展示流程。在触发行为描述时也要严格采用“主动宾”的表达方式。
1)语法
- 开始状态。
- 结束状态。
- 状态框:一个圆角矩形框代表一个状态,框内文字为状态名称。
- 转换:状态与状态之间的箭头叫做转换,箭头上的文字说明发生了什么事情导致状态发生了变化。
2)步骤
- 状态机图与流程图的目的相似,只不过是以某一事物为主,所以开始时先画流程图,根据流程图画状态机图;
- 明确参与的角色;
- 明确该事物有什么状态;
- 明确状态在什么角色的什么动作下触发变化。
6. 顺序图
1)基本语法
顺序图的读法是:从上到下,从左到右。如下案列:
此图为我们在ATM取款机取款时的人机交互。
2)复杂语法
- loop:为循环语法,如果满足循环条件,则重复执行本框里的内容。
- alt:条件语法,相当于if……else……语法,即满足哪个条件就执行这个条件下的动作。
- opt:可选语法,如果满足可选条件,就执行框中的内容,否则跳过不执行。
如下案例:还是我们在ATM取款机取款时的人机交互,只是更为复杂些。表述了只要输入密码就检查密码合法性,当输错超过三次时吞卡。密码正确时直接给与顾客菜单。
3)步骤
- 针对某一条流程中分析各角色的交互方式时;
- 先分析有哪些角色参与这个流程;
- 分析各角色在这个流程中的职责,各角色的专业特色;
- 将流程分解为角色与角色之间的交互,想清楚各角色之间的“接口”是怎样的;
- 用顺序图按照时间顺序将“交互”动作组织起来;
- 适当控制好粒度,不断优化和重组。有太复杂分支机构的流程不适用。
4)备注
一般产品经理可以不用画复杂语法的内容,只需要画出关键重点交互即可,如下:
7. 用例图
用例图主要用来回答两个问题——这个系统的用户角色有哪些?每个角色能干什么?
1)基本语法
角色、用例、系统范围、关联关系。
2)复杂语法
角色的继承、用例的继承、用例的include、用例的extend。
3)步骤
- 明确系统范围;
- 有什么角色,角色与角色之间关系;
- 有什么用例,角色与用例之间关系,用例的子用例及扩展。
本文作者 @七牛
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!