当我们接到一个需求点时,应遵循的需求分析步骤有哪些?
首先,要根据需求设计功能,就要做到理解需求的来龙去脉。为此,需要搞清楚以下问题:
1.为什么会产生这个需求?
当需求方向你阐述完某个需求后,向她询问:提这个需求的目的是什么?即为什么会产生这个需求?这个问题帮你完全理解需求,帮你辨别需求的真伪。
2.什么场景下会使用这个需求?
即搞清楚什么人在什么情况下会用到此功能。只有明白了这个,才知道如何更好地设计功能来满足需要。
3.是否有可能衍生出新的场景?
为了避免设计的功能因扩展性不足,后期推翻重来,在一开始,就应该做尽可能全面的考虑。通过需求方的场景,扩展思考,是否存在衍生的场景。思考的过程,也是帮助你抓住和理解需求本质的过程。
4.技术层面如何看待这个需求?
接到需求,并充分理解了需求后,跟架构师或技术负责人花几分钟时间讨论一下,听听他从技术上对需求的考虑。通过此过程,你们基本会对需求点及实现方式达成共识,在后期正式开发时,阻碍会小得多。
5.是否可纳入backlog?
确认需求为真实需求后,将其纳入到backlog中,并大致描述需求逻辑,方便项目组成员对待开发工作心里有数。(应注意backlog是已明确并经过去伪存真的需求,是指导项目组掌控项目的工具,而不是产品经理的备忘录。同时粒度不宜过细,否则非常不利于维护和沟通使用。
6.开启版本迭代,细化需求
当要开启一个版本的规划时,我们从backlog中挑出高优先级的若干个需求,并细化需求、制定迭代计划。
细化某个需求点时,需要做的事情如下:
A.版本功能列表说明
在版本功能列表中交代清楚需求在此次版本中的优先级(高:必须做;中:进度紧张时,可不做)、类型(新增:此前没有,需重新开发的功能;修改:功能已有,需做调整的功能;删除:不再需要,删除的功能)、描述(交代逻辑)、详情(链接到对应的页面):
B.业务流程说明
若需求点story较大,有涉及业务的流转,则需首先梳理业务流程。流程的梳理不仅帮助项目组成员理解需求,也是帮助自己梳理思路。
C.设计页面和交互
流程清楚以后,就可以着手设计原型了。此时,如下几点要素是必不可少的考虑因素:
1》页面的名称是什么?
设计一个页面相当于创造了一个从来没有的新东西,为了与其他东西进行区分,总要给他一个标识。故,每做一个页面,应先给它命名,且这个名称是独一无二的。既然是名字,那么名词或动名词是最合适的,但贵在语义表达准确,即让阅读者看到页面名称,就能八九不离十的了解到这个页面是用来做什么的?
2》页面由哪些功能组成?
系统功能由一个个页面承载。每个页面分担完成功能中的若干个功能点,因此一个网页就是由一个个的功能点组成的。当设计一个页面的时候,就要构思好,这个页面应包含的功能点应该有哪些?如“写文章”这个页面,大致应有:文字编辑、图片插入、文章发布、文章归类等几个功能点。
3》完成功能需要哪些操作?
完成每个功能点,用户需要在系统上进行若干步操作。因此在设计一个功能的时候,应交代清楚用户使用这个功能,需进行哪几步操作?如完成“文字编辑”这个功能点,需要先点击操作“写文章”,再完成“书写”,完成“插入图片”,最后“保存”。
4》执行某个操作的条件是什么?
系统上的每个操作,需要满足某些条件才可触发。否则,系统功能无法形成体系,处于紊乱的状态。如“当文章内容发生变化时”,才可做“保存”的操作。
特别应注意的一点是,不要听到一个需求,内心就有一种莫名的冲动,觉得要马上实现此需求。静下来慢慢规划,想清楚,才是最重要的。