什么是UML,全称Unified Modeling Language统一建模语言。平时在我的产品工作中用的比较多的有用例图,状态图,顺序图等,他们作用于不同的场景,通过不同的维度将产品的思路传达给技术,帮助构建严谨的思维模式,从而大大提高了团队之间的沟通效率。
用例图
什么是用例图?
简单地说,就是不同的用户角色在这个系统可以做哪些事情,而不用考虑具体的实现细节。
以我之前所做的项目为例:
具体如何表达?
图中表示了在二手交易平台中,卖家可以发布商品,展示在二手商品列表,买家可以在列表中查找自己中意的商品并购买,最终达成交易。其中,角色为卖家和买家,事情为发布商品和购买商品,角色和所做的事情用箭头进行关联。
状态图
什么是状态图?
状态图就是用来描述一个对象的可能状态以及各个状态之间的转换关系的一种图形。
具体如何表达?
以买家下单购买后,订单的状态变化为例:
图中标注包含:
1. 开始符号和结束符号
2. 对象的各个状态:待付款、待发货、待收货、交易完成、交易关闭
3. 触发状态改变的动作:付款/取消订单、发货、确认收货
如果将这个状态图用一段纯文字来描述,可能会让对方看得一脸懵逼,特别是涉及到逻辑比较复杂的系统,可能要用到上十种状态的情况,使用状态图表达无疑是最明智的选择。
顺序图
什么是顺序图?
我们也叫做时序图,强调两个概念:时间和交互。它是将一条生命线划分成几个时间序列,在每个时间序列里,对象之间通过发送和接收消息的方式来进行动态交互的过程。
同样是以买家和卖家买卖二手商品为例:
具体如何表达?
首先,需要界定自己所要画的时序图的范围。“买家和卖家之间完成线上交易”就是上述例子所要绘制的时序图的交互内容。其次,梳理角色和对象。最后,添加对象之间的交互消息,包括发送的消息和返回的消息。
网友评论