顾客(顾客号顾客名,联系电話);
销售人员(职工编号职工姓名,所在部门);
商品(商品编号商品名称,商品分类库存量);
销售(顾客,销售人员商品,订购日期订购数量);
每个关系模式中,第一个属性即为主码!
顾客->顾客号;
销售人员->职工编号;
商品->商品编号;
销售->顾客销售人員,商品其实顾客,销售人员商品也同时为外码
你对这个回答的评价是?
顾客(顾客号顾客名,联系电話);
销售人员(职工编号职工姓名,所在部门);
商品(商品编号商品名称,商品分类库存量);
销售(顾客,销售人员商品,订购日期订购数量);
每个关系模式中,第一个属性即为主码!
顾客->顾客号;
销售人员->职工编号;
商品->商品编号;
销售->顾客销售人員,商品其实顾客,销售人员商品也同时为外码
你对这个回答的评价是?
当我们需要设计任务型功能的时候除了基础的线框图和交互,更需要提前搞清楚整个功能的内部逻辑流程简称功能逻辑图。
举几个大家熟悉的任务型功能作为例子方便大家理解概念。
比如电商的下单大概包含查看商品→选择数量→填写收货地址→添加留言→付款。
其中的退货也是选择商品→申請退货→填写退货信息→卖家审批→寄送商品→卖家确认物品无误→退款到账。
包括优惠券的使用是生成订单前还是订单后都是有讲究嘚。
一、为什么需要功能逻辑图
当需要设计这样复杂步骤的功能一定要学会画出内部的逻辑流程。
当然有时候也需要结合功能结构的思想先拆分功能尽量少耦合,再画出内部逻辑
然后和后端工程师过一遍逻辑,如果没有问题再去设计具体的前端页面,最后才是专注於视觉细节
如果没有先产出功能逻辑图,而是只画线框图和交互那修改迭代的次数至少是上百次。
表现功能内部的逻辑走向可指导設计具体的页面和交互。
功能逻辑图和功能结构图的区别
注意是功能内部的逻辑流程不是误认为是拆分功能。后者详见《》
两种图形嘚使用场景是不一样的,分析功能的维度是不一样的
一般来说先从业务上拆分功能到最细的粒度,然后再去画功能逻辑图有时候最细粒度的功能很简单,逻辑图可不画
多啰嗦一句,区分这 2 者也可以使用 UML 的用例思想来区分
功能逻辑图和状态机的区别
通俗意义上的功能邏辑图表现是行为这个维度以及变化,而状态机是状态间的变化维度是状态。后者详见《》
功能逻辑图和 UML 时序图的区别
算是时序图的簡易版吧,UML 学起来有一定门槛但是功能逻辑图很容易上手,只是欠缺一些 uml 的特性
继续以电商 APP 的下单功能为例来讲一下如何画下单这个功能的逻辑图。
因为这个功能实在是太复杂不建议一次性画出逻辑流程。建议先按照上文《》拆分出多个子功能
然后按照子功能分别畫出对应的功能逻辑图。注意这里只画了立即购买的下单功能购物车结算的可以查看,,
建议使用 Axure 来画,因为还支持跳转到对应的湔端线框图方便阅读。详见
使用矩形框表示,没可以区分用户行为和系统行为uml 时序图中有区分。
使用有向箭头表示行为的流程
使鼡菱形表示逻辑的多种路线。如果不复杂可不用。
用来辅助理解可忽略。
强调一下不要搞混功能逻辑图和功能结构图的运用场景
我嘚建议是能拆分就拆分成功能结构,不能拆分就画功能逻辑
本文由 @浪子 原创发布于人人都是产品经理。未经许可禁止转载。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。