临汾山东漯河饰品美体美文
投稿投诉
美文创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品
漯河衢州
兴义眉山
桂林阳泉
玉溪简阳
山东遂宁
永城新余
梧州洛阳
泸州温州
临汾清远
营口常熟
浙江大连
桐乡宜昌

如何绘画状态机来描述业务的变化

7月15日 乔了了投稿
  对于设计过商品、订单、优惠券等复杂功能的PM来说,会发现很难描述清楚功能的本质。因为技术会反复的问,有几种状态啊,怎么转移啊,啥时候转移啊,什么时候截止状态啊,系统根据什么条件判断状态啊
  一、为什么需要使用状态机?
  讲个亲身的例子,去年我设计电商系统的订单模块,就犯过类似的问题。
  一开始参照淘宝的订单系统,将订单设计为待付款、已付款、已发货、已完成,已关闭等5个状态。
  上线后很快就发现有问题。付款之后直接传给仓库那边发货,导致很多订单信息明明有误,但是来不及修改。用户下单
  之后想改地址改商品,而发货信息已经传给网仓了很难修改。
  然后我们不得不新增了一个中间状态已确认,让客服审核无误后,再传给网仓走发货流程。
  再后来我们发现除了主业务下单购物之外,还需要兼顾支线业务退款退货,此时不得不需要引入退款中状态并且增加退款子状态机、退货子状态机。
  以上这些我最开始是用文字描述,然后加上凭感觉画的流程图来表示,服务端RD很难理解,并且无法清楚所有状态以及转移条件,不得不多次反复确认。
  后来去搜索相关的资料,好好研究了一下状态机这个概念,才发现其实用一张图就可以表述清楚以上的一切。
  接下来,我就来讲讲我对状态机的理解和认识,希望对大家有点帮助。
  二、状态机的来源?
  最早是电路设计领域里面的概念,具体来说是一种根据电路信号按照预先设定的状态进行转移,协调相关信号动作并完成特定操作的控制硬件。
  后来软件编程里面继承了这种思想,用来表示有限多个状态以及在这些状态之间转移和动作的模型。简称为FSM(FiniteStateMachine),是常见的软件设计模式之一。
  对于PM来说,借鉴这种思想并融入到自己的产品思维中是很有必要的。据此设计业务实体的功能会更容易阐述本质,并且让技术更容易理解。
  三、状态机是什么?
  从PM的角度可以这样定义,状态机用来表示业务实体的全部状态以及相互间如何转移。
  其中,业务实体是指客观上可以相互区分的事物,比如订单、优惠券、商品、活动
  当然扯远一点,大部分对象都是有状态的概念,只是没必要都画个状态机图。
  3。1状态机的描述方法
  文字是最古老的方式,繁琐并且不容易理解。
  另外表格也可以描述,不够形象,理解较慢。
  我认为图形最佳,仅需一些节点表示状态然后用有向线条连接。
  3。2常见的状态机
  举一些例子让大家对状态机图有个基本的认知。
  (1)灯泡状态机
  小时候第一堂物理课讲解的电灯开关其实就是最简单的状态机。
  (2)订单状态机
  这个网购过的朋友应该都接触过,借鉴自淘宝。
  3。3状态机的要素
  从状态机的内在因果关系可以抽象出3大要素:
  现态:是指当前所处的状态。
  条件:系统按照某一规则或者用户执行某个动作后,,状态会进行迁移。
  次态:条件满足后迁移到的新状态。
  包含1个开始状态和N个终止状态,以及若干个中间状态。当到达终态,状态机停止。
  注意:有些工程师会把条件和动作分成2种要素,感觉不是特别恰当。因为动作本身就是条件的一种。
  四、怎么画状态机?
  我习惯使用Axure,以它来讲解怎么表示,其他工具方法类似。
  4。1要素怎么表示
  状态使用圆角矩形表示。
  条件使用有向线条上的文字表示,比如系统怎么样,或者用户执行xx动作。
  线条的方向表示状态迁移。
  一般情况下从左向右的画图顺序表示了初始终止的方向,所以无需单独表示。复杂情况下可以用实心黑圆点初始状态,用实心黑圆点外包一个圆圈表示终止状态。
  4。2要素如何命名
  状态建议以已动词的结构来命名,比如已付款、已发货。
  条件建议以动作结果的动宾结构或者表达式来命名,以明确状态迁移的具体条件。比如支付失败、下单时间72小时。
  注意命名一般站在用户立场,尽量命名标准化。
  4。3画出状态机
  理解业务实体有多少种状态
  考虑每一个状态因为什么条件而变化
  将状态和状态之间用条件有向连接
  形成状态机图
  和服务端RD讨论并确定
  4。4画图注意点
  不需要的状态尽量去除,让状态机结构最简单。
  明确只有一个初始状态,终止状态可能有多个。
  合理实现各个状态之间的切换。
  方便扩展,状态有可能会增加,有可能会有子状态机。
  注意不要遗漏状态,比如优惠券使用的状态机可能需要使用中
  不要搞混动作和状态的区别,命名本身就不一样。而本质上动作是不稳定的,一旦执行完毕就结束了;而状态是稳定的,只要没有外部条件触发。
  4。5延展一下多维状态机
  刚刚这2个例子是最简单的状态结构。只有一级,只有一维。
  比如退款退货是订单的逆向流程,形成了多个维度的状态机。
  4。6状态机图和流程图的区别
  经常有人把状态机图给错认为是流程图的一种,其实他们本质不一样。
  目的不一样,流程图表示的是流程,状态机图表示的是业务实体的状态变化。
  另外,流程图中的节点一般是动作,而状态机图的节点是状态。
  准确来说,状态机图是UML语言中的一种。
  五、总结
  不是所有的业务实体都有必要产出状态机图,关键的建议产出。
  最后留2个思考,可以一起讨论下:
投诉 评论 转载

浅谈初中数学核心素养的培养第一,要提高学生的核心素养,关键在教师,教师要努力改进教学方法。课堂是学生学习的地方,也是学生品格形成、生命成长的地方,是学生由自然人向社会人发展的重要场所,落实核心素养的基本……外链有什么用【株洲网站优化】seo外链有什么用?关于外链的文章太多太多,相信每个行业的推广都离不开外链。但是,自从百度的算法一而再再而三的调整,外链似乎已经淡出人们的视野。外链……如何绘画状态机来描述业务的变化对于设计过商品、订单、优惠券等复杂功能的PM来说,会发现很难描述清楚功能的本质。因为技术会反复的问,有几种状态啊,怎么转移啊,啥时候转移啊,什么时候截止状态啊,系统根据什么条件……不知道怎么给视频配音种视频配音方法总视频录制剪辑好了,想进行配音,却发现不知道怎么配,找很多人支招,却被告知我也不知道,怎么办?我估计很多视频自媒体人遇到过这样的情况,也的确是困扰很多视频自媒体人的一个难题,那么……毛竹笋用林高效栽培技术毛竹笋在春天时最为旺盛,在我国部分农村地区有大量种植,毛竹笋幼年时可以用来做食物,其含有非常高的纤维素等营养价值,并且其含有极高的营药用价值,能有效的防治肠癌及甲亢等病,并且还……餐饮最好用的赚钱方法大多数餐饮老板缺不很多人刚开始选择餐饮业,小时候一直听了一句话叫做民以食为天,总觉得只要一开餐馆就一定有人来吃。但后来很多餐馆发现,工作比较好,表面上看,开餐饮很有利可图,其实除了各种杂七……最会口是心非的星座天秤座天秤星座的人优雅,随和,天生爱好和平的他们,平时最不喜欢得罪人,是大家公认的好好先生,而为了维持这一形象,有时说一些口是心非的话便在所难免了。跟天秤座的人在一起,你……仲易说食指长短看你事业的成就食指在五指当中,代表一个人的能力、做事的毅力,因此,从食指的长短,可以看出你在事业上能有多大成就。第一种:长型食指食指比较长的人,为人有才能,尤其是领导才能,个性自……年底前你会有什么意外惊喜想不想知道自己在年底前会有什么样的惊喜呢?想要知道答案的话,快来测试一下吧!【题目】1、如果将来我们英勇的解FJ战士打败日本帝国主义登上钓鱼岛的话,如果在钓鱼岛上立……生肖蛇月运势大揭密好运不断呈上升生肖蛇2014年10月整体运势本月生肖蛇的运势中等偏上,总体的运势逐渐呈上升的趋势,只不过在细节之处会有些烦恼而已,爱情会出现暂时性的不理想状态,而事业只要抓住机会就一定……烤橘子可以用丑橘吗烤橘子是将橘子烤着吃的,它的味道很特别,吃起来很不错,可以起到很不错的功效与作用,适量食用对身体有一定好处,深受人们喜欢。那么烤橘子可以用丑橘吗?下面让我们具体来看看吧!……龟腐皮用什么药好得快为什么会得腐皮病乌龟患上腐皮病后,用红霉素好得快,买不到也可以用金霉素,效果逊色一些。这种疾病一般是由于水质不好引起的,想要治疗的话一定要先干养,每天泡两三次水,情况轻微的话不用上药就好了,情……
对企业忠诚的名言紫叶香第五节朋友圈伤感的句子说说心情尽管天会变人会老但那颗心看准跛脚阳线一招识别滞涨信号条件过去男人挑老婆的六大标准神奇商店专情戒指有趣的试验闲谈莫论人非叔本华自述世界与虚无玄冥二老的师傅是谁武功如何打瘦脸针的前后注意事项二级市场恐慌情绪蔓延创业者该如何应对亲爱的

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找