怎样和客户一起搞定需求

项目刚刚开始的时期,项目经理做的主要事情是搜集客户需求,这是一个项目经理非常头疼的阶段,合作的磨合刚刚开始,需求问题上的失误又会导致无穷的后患。

  三种客户类型:

  1 的确很专业。能提供基本可用的文档,能给出要求规范,能向你提出有价值疑问和担心。能快速回答你的问题。

  2 以为自己很专业。 给的文档基本没法用。没法提供规范和标准,喜欢指指点点和挑毛病。只会向你提傻逼问题。基本回答不了你的问题。

  3 啥都不懂。 不给文档。能给你几个参考范例(打开数个网站,告诉你我要做成和它们一样的。)只能等着你来问100个问题。。。

  四种合作方式:

  1 创始人直接和你接洽:

  交流结果的协商余地很大,需求不易反复,细节不会被过分追究。更容易统一想法,执行力高,你能对项目和产品产生更大的影响。但往往甲方会过于急进。

  2 项目代表和你接洽:

  这是非常理想的状况了。甲方有一个产品经理或IT经理能作为代表,负责汇总甲方的所有需求和标准和你沟通,他有过与外包方合作的经验,知道危险的环节所在,能承担翻译和桥梁的角色,帮助你阻挡和说服不恰当的需求。能集中地承担责任,也会积极地和你一起规避项目失败的风险。非常lucky!

  3 专业部门和你接洽:

  IT部门或技术部门的某个高级别工程师负责和你沟通,你们会比较有共同语言,甚至惺惺相惜。技术方面的合作会很顺利,但是涉及到产品和需求,他们无法帮你挡住来自市场或内容部门的麻烦。合作开始后,很有可能在技术思路上产生分歧;如果在程序部分耽误了太多时间,而产品端被忽视,你有可能受到其它部门及上层的质疑。

  4 市场部门(内容部门)和你接洽:

  最好你先去烧烧香,准备好最坏打算。专业和思考模式的差异会导致你们关心的问题完全不一样。你首要满足了他们关心的地方后,切记留出不少时间来解决那些他们看不见但实际上非常重要的问题。另外你需要做更多的事,写更多的文档,主动和专业部门联系,力争和决策层有沟通。

  如果你面临了第3和第4种状况,

  请先熟悉一下甲方的组织机构。例如一般 内容型、媒体、渠道、宣传类项目的开发:

  需求 和 市场部门 沟通
  功能 和 内容部门 沟通
  软硬广告位或专题 等 和 销售部门 沟通(如果是改版类,广告位合同可能提前半年签订,一定要和销售协调好)
  技术、系统、安全、统计问题等 和IT、网管、数据统计部门 沟通
  某些问题 需要和 总裁助理、行政 等官僚部门沟通。
  部分特别的内容 需要和 创意、美工、文案部门 沟通
  当以后确定需求的时候,如果发现这些部门的人没有参与,请提前与之沟通。

  第1和第2种状况可跳过上述步骤。

  八步流程:

  第一步:听听客户想要什么。

  以及预计工期和预算(这两件事上一点都不要腼腆,这是关系项目成本最重要的元素)。

  第二步:提问。

  1 项目的目的是什么。(品牌、渠道、流量、广告费、用户数、VC、其它商业模式)

  2 甲方的优势和资源是什么。(钱,内容资源,人力大战,传统行业优势)

  3 尽量提供可视的参照及借鉴对象 。(应用上有没有可解决的。界面上比较喜欢哪个站点的设计。交互上有没有可参考的对象)

  4 其它工程的细节问题。

  比如(工期上的上下限是什么?
  是否会需要与现有系统整合、是否需要数据迁移?是否会需要甲方的工程师合作?
  是否有开发平台的限制?
  是否有代码规范及标准?最终需要哪些开发文档和源码 )

  第三步:取得共识。

  与甲方取得共识非常重要,保证你所理解的那他们所理解是同一个东西。这一步需要你根据掌握的情况列出提纲,画出草图或框架图。有参考对象的,标注上,哪个部分会比较像某某。

  然后请甲方确认, 这个框架是他们想要的。

  第四步:给出工程时间轴。

  到了这一环节,就需要你的项目经理组织所有团队成员坐下来讨论,先划分功能模块,然后讨论每个功能模块的可行性、难度、花费时间、bug发生率、测试耗时。再讨论一头一尾 系统搭建和系统整合的所需时间。

  项目经理对工程耗时和可行性完全心里有数后,画出工程的时间轴。包括并行状况,里程碑节点、测试期、缓冲期等(如何画工程时间轴,甘特图,我以后会专门写一篇)。时间轴要实事求是,并且预留好充分的缓冲期(工程师估时*2*110%)。

第五步:需求做减法。

  大部分情况下,时间轴表现的状况都会超出客户的预期。如果客户对工期没有要求,也要提醒客户考虑 项目可行性风险、市场等候成本、市场或战略变化导致的浪费。

  韩磊有一篇《大褂还是内裤》的blog很形象地描述过这个问题。

  所以要和甲方一起尽量对需求做减法。把整体需求拆成2~3期,落实只开发最基础和最必要的一期需求。

  这时签订正式开发协议。不要忘了计算 需求文档和产品方案 的费用。

  第六步:撰写详细的需求文档。

  《框架图》下载西乔的模版。可视化表现产品的框架、布局、细节、部分交互。
  《流程图》》下载西乔的模版。理出产品的逻辑关系。
  《功能需求文档》》下载西乔的模版。 罗列 功能、应用、交互上细节,分离基础件,作为开发分工和系统及数据构造的 基础文档。

  第七步:商讨需求文档

  尽量召集甲方所有相关部门的负责人 一起召开这次会议,商讨需求文档。

  在阅读到你的需求文档之前,可能甲方的大部分人都对产品没有可视和具象的理解。也从未关注到细节和逻辑关系。所以需要产品经理从全局角度和逻辑线索讲解文档。

  更可能发生的状况是,没有人坚持看完或仔细看过你写的文档。

  所以这次会议是一场耐心和体力的考研。

  文档作者需要 分别向各个部门指出他们需要关注和拍板的地方,听取他们的建议,将任何变动要求都分类记录。

  安抚情绪。解答困惑。控制需求变动。

  第八步:定稿需求文档

  分职能(部门)类建立表格文档。将会议协商中所有 分歧性意见和变动意见 都逐条写下。抄送所有相关负责人。并要求他们纠正分歧和确认变动。

  所有会议中可能被提出但是未出现在此邮件文档中的 意见,不会列入需求文档中。当然允许可以书面反馈补充。

  根据确认过的反馈回复,修改需求文档。直到需求文档定稿。

  协商讨论和文档修改可能经过2~3轮。所以需要项目经理提前提醒客户注意,搜集需求和文档定稿的 时间线里程碑。如果这个阶段耗时过久,会严重延误整个项目进度。要求客户尽量集中地谨慎地提出建议和修改。

  三种武器:

  需求问卷:无论是面对专业还是不专业的客户,交流中都有很多没考虑到的遗漏点,这些他们看不到的点往往是最关键的点,也有可能是被客户故意规避掉的点。

  此时撰写一份需求问卷非常有效。

  问卷里提出重要的全局性的问题,需要客户逐条书面回答。

  某些问题可以提供多个选项答案,及补充区域。
  某些问题 需要确凿的态度,Yes或NO。
  不要提出需要客户写一大段表述性文字的问题。

  需求问卷精简扼要,有针对性,重要,不要浪费客户的时间,不要把写字的工作量丢给客户。

  书面确认:

  书面确认 一方面包括 :所有讨论结果、建议 和变更 都要有书面文字备查。电话和开会上说说的这些口头表达都没有效应。这一点一开始你就要声明,甚至有必要写在合同里。

  另一方面包括:你要尽量提供书面的可视化的东西 来让甲方确认。

  甲方很难完备或是提供适合工程使用的文档。所以千万不要在项目初期的需求文档上省懒。

  邮件抄送:

  邮件抄送一种明确职责的方法。对方可能不看你的邮件,但代表你告之过。

  尽可能地抄送重要邮件给战略层,可以能避免一些重大问题的出现。

  结语:

  到此看起来,搜集和确定需求真是一件耗时耗力的工程。

  其实在理想的工程项目时间分配中,1/3的时间用于确定所有需求和开发文档。 1/2的时间用于测试,解决bug,安全测试、压力测试等。真正用于开发的只应该占1/6。

  当然web项目的开发肯定达不到这个理想状况。但是也由此可见需求阶段的重要性和工作量。这一阶段省一分力或有一分遗漏,到了项目后期可能需要十分力来弥补。

转载于:https://www.cnblogs.com/skyangell/archive/2011/07/10/1523414.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/263371.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符串后面去0、补0

去掉0 str.replaceAll("0$", "") 补0至n位 String.format("%-ns",swjgPrefix ).replace( ,0) 前面的话不要“-”号 0可以换成任意字符转载于:https://www.cnblogs.com/IceBlueBrother/p/11208433.html

疑问:C#中的委托

我这几天一直在看C#的书,知道了委托是怎么回事,但我一直不能理解这个委托是用在什么地方,有什么好处,请高手指点。 转载于:https://www.cnblogs.com/yjlft/archive/2006/04/03/365443.html

火狐、IE浏览器实现Extjs的grid表格的复制、粘贴

2019独角兽企业重金招聘Python工程师标准>>> 从后台获取参数,一次填入ext:grid网状表格,发现表格内的数据不能复制粘贴,只能read...,火狐和IE 11都不能复制。 火狐解决方案 局部定义表格复制、粘贴的样式&a…

LeetCode—279. 完全平方数

279. 完全平方数 题目描述: 给你一个整数 n ,返回和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全…

Form表单的主要Content-Type

在Spa单页面横行的时代,前后端交互基本都是Json交互(也有通过FormData的,比如上传文件)。而在之前的Jsp,Php前后不分家的时候,前后交互好大一部分都是通过Form表单来完成的。From标签个属性叫 enctype&…

百慕大三角和中国娱乐界

百慕大三角神秘莫测玄机重重哥伦布在他的航海日志中记载曾经见到"拥有钢铁幕墙的巨型船只"而这些船只却来自当代的美国航运巨子一架波音747在该海域坠毁躲在洗手间的6岁小女孩是唯一的幸存者但是在两个小时之后被营救出来时她已经变成了白发苍苍的老奶奶有多少船只和…

perl子例程

2019独角兽企业重金招聘Python工程师标准>>> sub 子例程名($$)指定两个标量的参数 ($)指定一个数组 按引用调用 符号引用 typeglob 类似于UNIX文件系统中的软链接 星号(*)适用于任意类型的变量,包括标量,数组,散列,文件…

基于并查集的kruskal算法

#include <iostream> //并查集的kruskal算法using namespace std;const int max_ve1005,max_ed15005;int n,m,i; //n,m分别记录顶点数和边数struct node{int par,ans;}vertex[max_ve]; //顶点struct Edge {int u,v,weigh;}edge[max_ed]; //边int…

LeetCode—282. 给表达式添加运算符(困难)

282. 给表达式添加运算符&#xff08;困难&#xff09; 题目描述&#xff1a; 给定一个仅包含数字 0-9 的字符串 num 和一个目标值整数 target &#xff0c;在 num 的数字之间添加 二元 运算符&#xff08;不是一元&#xff09;、- 或 * &#xff0c;返回 所有 能够得到 targe…

小程序 生成条形码barcode.js

1、下载barcode.js&#xff0c;新建一个文件wxbarcode.js用于计算条形码的宽高&#xff0c;以自适应不同手机屏显示 var barcode require(./barcode); function convert_length(length) {return Math.round(wx.getSystemInfoSync().windowWidth * length / 750); }function ba…

FormView在什么情况下自动生成模板项?

刚才在鼓捣GridView与FormView&#xff0c;记得前一段时间在做时&#xff0c;点击gridview中的一项会在formview中显示详细的数据&#xff0c;而在 formview中只有编写了ItemTemplate等模板才会显示&#xff0c;我清楚的记得上次我并没有手工去编写itemTemplate模板&#xff0c…

支持向量机的优缺点

原文&#xff1a;http://blog.sina.com.cn/s/blog_6d979ba00100oel2.htmlSVM有如下主要几个特点&#xff1a;(1)非线性映射是SVM方法的理论基础,SVM利用内积核函数代替向高维空间的非线性映射&#xff1b;(2)对特征空间划分的最优超平面是SVM的目标,最大化分类边际的思想是SVM方…

udp包大小选折及原因(mtu)

以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的.这个1500字节被称为链路层的MTU(最大传输单元).但这并不是指链路层的长度被限制在1500字节,其实这这个MTU指的是链路层的数据区.并不包括链路层的首部和尾部的18个字节.所以,事实上,这个1500字…

Java遍历Map的几种方式

方法一&#xff1a;使用lambda表达式 Map<Integer, Integer> temp new HashMap<>(); temp.put(1,1); temp.put(2,1); temp.put(3,1); temp.forEach((k, v) -> System.out.println(v));其中&#xff0c;k是键&#xff0c;v是值 运行结果&#xff1a; 方法二&…

2019牛客暑期多校训练营(第一场) - B - Integration - 数学

https://ac.nowcoder.com/acm/contest/881/Bhttps://www.cnblogs.com/zaq19970105/p/11210030.html 试图改写多项式&#xff1a; \[\frac{1}{\prod_{i1}^{n}a_i^2x^2}\] 这个多项式用待定系数法设为&#xff1a; \[\frac{1}{\prod_{i1}^{n}a_i^2x^2}\sum_{i1}^{n}\frac{c_i}{a_…

ListBox的一个郁闷小问题!

ListBox的一个郁闷小问题&#xff01;浪费了我一个多小时&#xff01;极度郁闷。。。。。。生成的代码为这样的&#xff1a; <select name"Inc_Client_AccessManage1:ListBox1" size"5" multiple"multiple" id"Inc_Client_AccessManage1…

GNU/CPIO 学习小结

CPIO 是一种binary file archiver&#xff0c; 同时也定义了一种文件格式(file format). CPIO software utility 被作为tape archiver&#xff0c;它最初是作为PWB/UNIX(Programmers Workbech&#xff1a;1976&#xff0c; 在UNIX最开始在Bell Lab出现的时候&#xff0c;UNIX主…

Java使用数组作为Map的key

先说结论&#xff1a;Map使用数组作为key&#xff0c;存放的是其地址 我们用如下代码进行测试&#xff1a; 我们的本意是 将[‘a’,‘b’,‘c’]的字符数组存放入map且对应的value为1查询map中是否包含key为[‘a’,‘b’,‘c’]的键值对将[‘a’,‘b’,‘c’]的字符数组对应的…

[Jobdu] 题目1337:寻找最长合法括号序列

题目描述&#xff1a;给你一个长度为N的&#xff0c;由’(‘和’)’组成的括号序列&#xff0c;你能找出这个序列中最长的合法括号子序列么&#xff1f;合法括号序列的含义便是&#xff0c;在这个序列中&#xff0c;所有的左括号都有唯一的右括号匹配&#xff1b;所有的右括号都…