本文包括两个主题:
- 在尊重别人需求的同时,如何去理解、完善、提升需求;
- 在整个工作过程中间,如何保证交出来的东西是好的。
整理需求
在尊重别人需求的同时,如何去理解、完善、提升需求:
-
「需求」的定义:
-
需求不仅仅存在于产品经理的工作范畴,大多数职位的工作流程的输入都是需求,输出都是需求的阶段性成果。沟通、整理需求是大多数工作职位的必备职业技能;
多数人会觉得都是中文讲的需求我还能听不懂吗?不就是别人说什么我们就做什么吗?如果事情这么简单,就不会有很多工作中的摩擦、也不会有做完之后说不达标来回扯皮来来回返工的事情了。真正去理解、梳理需求,是一项很重要的工作技能。
-
不同的工作流程中,我们既可能是需求的发起人,也可能是需求的承接者。
-
-
整理需求的步骤(泛化谈,不仅限于某个工作职位)
- 接受、理解需求(总)
- 从 what they want 到 what they need。
- 完善、提升需求(分)
- 砍需求
- 偶然性:去掉需求方要求的但是无益于主要功能、或者使用频次很低的需求;
- 性价比:去掉实现代价高、功能性或最终效果一般的需求;
- 伪需求:去掉实现了也没有什么实际用处的需求。
- 加需求
- 时间维度的延展:时间轴上的延伸;为未来的需求留接口。
- 空间维度的复用与拓展:
- 复用:比如不同产品、不同考试类型、不同节假日的宣传方式;
- 拓展:多考虑公司层面、部门层面的工作版图,工作中要抱有「拼图」的观念;
- 确定需求输出结果的展现形式:
- 讨论、细化输出格式:甚至包括字体、字号、列名、是否要标志位、标志位如何标识、word 还是 excel、颜色、图片格式等等;
- 原则:
- P0 需求发起方真正需要的;
- P0 最方便别人使用的;
- P1 在满足上两条的基础上,选择我方实现成本小的。
- 砍需求
- 框架化需求(总)
- 建立整体的需求框架,并在层级关系上确认各个功能模块及其各自要实现的功能。
- 对各个功能模块进行优先级排位,排位原则是:
- 优先度(重要性和紧急性);
- 实现代价。
- 在初步确定需求后,可以先给需求发起方一个 demo,让需求发起方根据 demo 反馈建议,并根据建议调整需求。
- 接受、理解需求(总)
-
整理需求的经验总结
- 沟通
- 需求交接沟通时,
- 常出现的问题:
- 需求发起人:只有一个大概的想法,未曾想过具体的内容;有太多想法,什么都想要
- 需求承接人:别人说什么就是什么,不问问题;问问题问不到点子上
- 解决方法:追问应用场景,多问 why 和 then what,问到对方也回答不出来的时候,才可能真正问到了点子上
- 常出现的问题:
- 需求变化或需求较为复杂时:
- 常出现的问题:时间浪费在反复沟通、来回返工上;
- 解决方法:不要被细节纠缠,之上而下结构化沟通问题;使用“1,2,3”的要点复述方式,彼此复述对方的观点;描述要准确准确再准确!不留任何可能扯皮的地方。
- 处理工作中的摩擦和情绪问题:
- 常出现的问题:有人挑战既定工作规范;逾期或怠工;
- 解决方法:
- 原则:解决问题最重要,同时照顾别人的情绪
- 方法:
- 如果有人在公开场合挑战既定规则,一定要求给个合理的说法,如果给不到就要根据规则严肃处理,否则正常规范的工作流程会被破坏;私底下,可以考虑个人真实情况酌情处理;
- 工作节点前多温柔问询,并且给点零食吃。
- 需求交接沟通时,
- 工作交接
- 需求与版本更迭时,一定要在统一的地方留存历史记录,清楚描述变更的情况和责任人;
- 工作流程上,向前和向后都多走一小步、多同步基础信息,保证整个工作流程是绝对畅通的。
- 对任何工作都要有预期
- 对工作估时、复杂程度有各个节点的预期,实施过程中有违背关键节点预期的内容,要及时同步给各个相关负责人;
- 对程序结果的预期:对异常数据更敏感;设计测试情况。
- 沟通
保证质量
在整个工作过程中间,保证交出来的东西是好的。严守项目流程与标准,磨刀不误砍柴工!
- 工作流程:
- 以写代码为例,代码流程:
- 步骤:确定需求、设计文档/流程图/ Function 设计、代码、测试;
- 注意:
- 确保上一个流程完美之后,再进行下一个环节;尽量保持环节的独立性,不让前后环节干扰当前的工作;
- 一定要一开始就想清楚各个模块的功能;如果代码环节有变,要优先修改设计文档;
- 在团队协作的每个流程内,要保证大家对整体功能、个人模块的输入和输出保持高度的同步;
- 异常数据常常意味着代码逻辑有问题,不可以贴补丁,一定要找到问题的根源,要从根源上解决问题。如果着急贴上了补丁,要写上备注高亮。
- 泛化其他工作职能:产品经理。
- 以写代码为例,代码流程:
- 工作标准与规范:
- 以写代码为例,代码规范:
- 程序设计文档与代码逐逻辑块、逐行对应;
- team 内的代码规范要保持一致,可以在加入团队的早期,进行严格的规范说明,如有违反就发红包;
- 公共模块的提取,乃至模块化标准化,成为内部库函数;
- 严格控制输入、输出及其数据格式;每个逻辑模块内只处理该模块处理的问题;
- 泛化其他工作职能:UI,比如字体字号、左上紧凑对齐、区域分隔等。
- 以写代码为例,代码规范:
关于「工作成长」的思考
- 初期,个人要先成为一个优秀的工具。掌握一个基本技能,交代给一个任务就能完成这个任务,保证每一个细节都经得起考验。
- 准确地给出别人需要的东西,展现形式要友好;
- 能解释出现的各类问题;
- 尽量提供解决方案。
- 随着经验积累,成为一个能制造优秀工具的人。增加创新性,想到别人想不到的问题,能科学、系统、高效地解决问题,并且能传承经验。
- 最后成为一个管理能制造优秀工具者的人,或者更好的制造优秀工具的人。
网友评论