需求描述怎么写

生活小百事通 2024年04月10日 阅读 (91)

编辑导语:产品经理的日常,往往与需求离不开,其中很关键的一步就是描述需求。需求的描述需要一定的技巧,优秀的产品经理不仅可以清晰地描述自己的需求,还能让他人听懂并且知道接下来该如何进行。在本篇文章中,作者为我们分享的是规范产品体系中与需求描述技巧相关的内容。

需求描述怎么写(1)

“小美, 咱们到会议室去开个会,讨论下这个版本的新需求”

开发、测试、美工济济一堂, 产品经理把这个版本的需求概要地「说」了一遍,然后就打开小美设计好的「产品原型」讲了起来。

产品原型是个好东西, 非常直观, 一看就知道到底要做成什么样子, 页面之间的跳转关系也一目了然。

工程师一边听,一边心里琢磨着更细节的内容。数据库表该怎么设计, 表该怎么改,怎么做数据迁移,界面的流程该怎么跳转, 后台需要提供什么样的服务…

大家叽叽喳喳的讨论了一个下午,终于安静了。

看到大家的理解基本一致了, 经理开始做最后的总结陈述: “怎么样? 还有问题吗? 没有问题的话小美按今天讨论的结果,把界面修改一下, 大家估算一下自己的工作量,下班之间报到我这里。”

工程师心想,估算也没啥用, 反正上线日期都确定了。

就这样,越来越多更加细节的深层逻辑仅仅进入了工程师的脑海, 而没有形成文档,存在严重的项目「信息失真」隐患。

IBM Developer 的目的就是将程序员集结在一起,形成一个社区,进而挖掘我们的集体创新能力。换言之,我们有机会分享自己的一些诀窍,并学习到产品研发管理类的高效方法论。

IBM社区的工程师Donald Bell「序列图非常有效」。

对于研发人员,序列图能澄清业务在未来系统中如何体现;对于非研发人员(产品经理、架构师、业务人员),序列图能澄清未来系统中,不同对象间的交互,从而进一步传达清楚整个系统设计方案。

研发人员一般认为序列图仅对他们有意义,然而,深入了解过序列图之后,非研发人员(产品经理、架构师、业务人员)也会发现,序列图显示不同的业务对象如何交互,对于交流当前业务如何进行很有用。

除记录组织的当前事件外,一个业务级的序列图能被当作一个需求文件使用,为实现一个未来系统传递需求。在项目的需求阶段,产品经理能通过提供一个更加正式层次的表达,把用例带入下一层次。

那种情况下,用例常常被细化为一个或者更多的序列图。

序列图除了在设计新系统方面的用途外,它们还能用来记录一个存在系统(称它为“遗产”)的对象现在如何交互。当把这个系统移交给另一个人或组织时,这个文档很有用。

1. 概念

序列图,亦称为循序图,是一种UML行为图。有的人翻译为时序图,实际上是不准确的,sequence这个单词并无”时间”的意思,只有序列,顺序等意思。

根据UML规范中对Sequence Diagram的描述:

A sequence diagram describes an Interaction by focusing on the sequence of Messages that are exchanged, along with their corresponding Occurrence Specifications on the Lifelines.

它描述了消息在生命线上按照约定顺序执行一种交互行为。它可以表示用例的行为顺序,当执行一个用例行为时,序列图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。

需求描述怎么写(2)

2. 构成

序列图是由5种元素构成:对象(Object)、生命线(LifeLine)、激活(Activation)、消息(Message)和“组合片段”。其中前4种是常用且重要的元素,剩余的一种“组合片段”元素不是很常用,但是比较复杂。

我们先介绍前4种元素,再单独介绍“组合片段”元素。

需求描述怎么写(3)

1)对象(Object)

对象位于序列图的顶部,以一个矩形表示,对象的命名方式一般有三种:

  1. 显示“对象名” + “类名”,例如:手机 – 华为手机;
  2. 显示“类名”,不显示“对象”,例如:手机;
  3. 显示“对象名”,不显示“类名”,例如:华为手机。
需求描述怎么写(4)

2)生命线(LifeLine)

生命线是一条垂直的虚线,每个对象底部中心都有。对象与生命线结合在一起就是对象的生命线,其长度取决于交互的时间。

需求描述怎么写(5)

3)激活(Activation)

激活代表时序图中在对象时间线上某段时期执行的操作,以一个很窄的矩形表示:

需求描述怎么写(6)

4)消息(Message)

消息是对象和对象之间,在发生“交互”和“协作”时,用于交换信息的媒介。可以根据是否并发,简单的分为两类:

  1. 同步消息:消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。
  2. 异步消息:消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。
需求描述怎么写(7)

5)组合片段

组合片段用来解决交互执行的条件和方式,它允许在序列图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。组合片段共有13种,名称及含义如下:

需求描述怎么写(8)

抉择(Alt):抉择在任何场合下只发生一个序列。

可以在每个片段中设置一个临界来指示该片段可以运行的条件。else 的临界指示其他任何临界都不为 True 时应运行的片段。如果所有临界都为 False 并且没有 else,则不执行任何片段,Alt片段组合可以理解为if..else if…else条件语句。

我们还拿微信支付的时序图举例,如果7.3向商家汇款的成功或失败流程需要在时序图中体现出来,可以这么使用Alt片段组合。

引用(InteractionUse):表示引用的意思,某部分交互被定义在另一个图中。可将一个规模较大的图划分为若干个规模较小的图,方便图的管理和复用,ref不用要填写参数。

需求描述怎么写(9)

选项(Option):表示当警戒值为真(符合条件)的情况下进行执行处理的意思,opt需要填写参数。

需求描述怎么写(10)

循环(Loop):表示循环执行的意思,当条件为真的时候执行循环。也可以写成loop(n)来表示循环n次,与java或者C#等中的for循环比较相似,loop需填写参数。

需求描述怎么写(11)

中断(Break):表示中断处理,跳转的意思,类似java代码中break语句,break需填写参数。

需求描述怎么写(12)

3. 窍门

1)工具

工欲善其事,必先利其器。推荐使用微软旗下的 Visio。

2)步骤

划清边界,识别交互语境:所谓划清边界是是指要确定好绘制序列图的范围。在微信支付例子中省略列商家打开微信、输入收款金额等交互消息,这些不是我们需要体现的,我们主要体现的是用户的扫码支付流程。

所谓识别交互语境就是要知道自己绘制时序图的前提和背景,在微信支付的例子中用户登录了微信、开通了支付功能是前提,背景是用户需要扫描付款买东西。

梳理时序图中的角色和对象都有哪些:微信支付的例子中角色只有一个,即用户。对象有华为手机:手机、微信、商家。

对象之间有哪些交互消息:对象之间交互的消息详见以上序列图。

3)技巧

从初始消息开始画,依次画出随后消息,并给每个消息分配序号,方便理解;

角色和对象用名词,消息用动词;

角色放在序列图的开始位置,对象重要程度或使用频率从左到右排列。这就要根据时间的流程考虑了,是一个比较主观的事情;

需求描述怎么写(13)

控制焦点两端要以消息元素封顶,控制焦点不要超过消息元素。

产品经理的前进道路,不应该是一场孤独求索的旅行 。沿途那些美好的风景,有趣的人文,我愿意沉淀下来,分享与同行的你,或者是在路上的他。

精彩内容尽在问答鸭,如果您觉得这篇内容不错,别忘了分享给好友哦!

相关文章

  • 淘宝卖家如何发布宝贝的手机详情描述?.

    淘宝卖家如何发布宝贝的手机详情描述?

    1、卖家发布宝贝时,先进入卖家中心;2、在左侧这里找到“宝贝管理”,再点“发布宝贝”;3、进入“发布宝贝”的页面。

    2022-10-17 阅读 (190)
  • 没有男人的女人如何解决性需求.

    没有男人的女人如何解决性需求

    可是自从丈夫去世,她已经三年没有和任何人约会或发生关系了。有时她也会感到寂寞,身体上也有些需求。但这个年纪开始约会不容易,许多人带有目的性,她不想再有任何勉强。最近儿子就一直鼓励她多交些朋友,所以她很高兴加入这个女性小组。故事到这,其他几个人都在认真聆听。我表示非常理解她的感受,因为我过去两年多的守寡生活也是如此。张曼说她也会有寂寞的时候,尤其是女儿不在身边时。赵敏默默点头,似乎在回想自己的故事。

    2024-05-04 阅读 (98)
  • 如何向开发人员提设计需求.

    如何向开发人员提设计需求

    1、向开发人员提设计需求,这个是常用的事,但是收的东西不满意也是常用的事,是技术开发人员的原因,还是自己表达的不清晰,要如何向开发人员提设计需求?

    2022-08-11 阅读 (86)
  • 引致需求和联合需求的区别

    一、生产者对生产要素的引致需求和联合需求 (2)引致需求的概念反映了生产要素市场和产品市场之间的联系。1、生产者对生产要素的需求是一种引致需求或派生需求。(1)在生产要素市场上,需求者是生产者或厂商、生产者对劳动、土地等生产要素的需求是从消费者对最终消费品的需求中间接派生出来的。这种对生产要素的需求称为引致需求或派生需求。如消费者买面包,生产者买面粉等。

    2024-05-31 阅读 (84)
  • 西氏内科学所阐述的患者需求包括.

    西氏内科学所阐述的患者需求包括

    《西氏内科学》以其论述严谨、系统,尤其是对病理、生理等科学原理的深刻阐述而深受国内外医务工作者欢迎,确可帮助读者建立更加丰满的内科知识体系,被誉为“标准内科学参考书”。《西氏内科学》以其论述严谨、系统,尤其是对病理、生理等科学原理的深刻阐述而深受国内外医务工作者欢迎,确可帮助读者建立更加丰满的内科知识体系,被誉为“标准的内科学参考书”。

    2024-12-23 阅读 (72)
  • VISA-GPIB描述性属性.

    VISA-GPIB描述性属性

    1、属性名称:name描述:指定visa-gpib对象的描述性名称。2、属性名称:rsrcname描述:指明visa工具的资源名称。

    2023-03-23 阅读 (72)
  • 如何把消费者的潜在需求转化为现实需求.

    如何把消费者的潜在需求转化为现实需求

    1、现实需求指的是消费者目前具有相对明确的消费意识和足够为此支付的行为,潜在需求使得则是未来即将出现的的消费需求;2、影响消费者购买动机的因素包括商品本身的附加值、消费者的经济状况、健康因素或者社会风气从众心理等3、其次,把自身面向的潜在消费者按照不同的标准划分为不同的客群,如地区、年龄、性别、性格、兴趣、行为等。

    2023-09-08 阅读 (57)
  • 如何满足客户需求.

    如何满足客户需求

    1、在以往的店面中,我们可以看到只有有需求的人群,才去找产品,而不是推销员上门讲解后成交的。现在不管是线下还是线上,产品样样齐全,也是优惠天天有,活动天天换,针对不是的人群,设定不同的关卡与特色服务。

    2022-07-13 阅读 (54)
  • 确定需求优先级常用的方法.

    确定需求优先级常用的方法

    需求优先级的定义要基于当时的环境和实际情况,是否有足够的理论支持和数据支撑,是否分析清楚需求满足后的结果等问题,都是界定一个需求是否确定为清晰明确的需求时综合考虑的。

    2023-11-26 阅读 (47)