`
ruilin215
  • 浏览: 1110948 次
  • 性别: Icon_minigender_2
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

【探索需求对话3】沟通,了解什么是自己、是客户真正想要的东西

阅读更多

探索需求对话<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

潘加宇 熊妍妍 / 翻译整理

本文刊登在2004年6月《程序员》杂志上,版权所有,未经许可,禁止任何形式的转载,违者必究!

2004319日,温伯格先生应邀在UMLChina通过远程音频与开发人员做了一次有关“探索需求”的交流,很多开发人员都受益颇多。为此,我们翻译整理了这次交流实录,从中我们可以体会到大师的思想。

沟通,了解什么是自己、是客户真正想要的东西

有时候开发人员和客户之间彼此就像外国人一样(玩笑)。

嗯,这不是开玩笑,有时候很好玩,但有时候却带来了很大的困难。特别是现在,我有一些客户在中国、印度、或别的国家开发软件。有很多理解方面的问题,需要特别注意,在处理这类问题的时候。但我觉得问题不大,因为我们可能先使用谅解备忘录,然后来了解彼此的意图。我们彼此都是外国人。你们当中很多人可能对我说的有些不理解,或对我书中的内容有些不理解,那是因为我们彼此有着不同的文化。但就算同样是美国人,有时候也有很多人很难理解我,或者我很难理解他们。

所以我经常想,开发人员和客户彼此是外国人,需要一个沟通机器。你们有些人做过两块硬件之间的转换工作,技术上相当难。但在两个人之间,那要难得多,当我们假设这比较容易的时候,就更难了。需要时间,需要备忘录列表,需要耐心,需要压力。所以我希望你们能经常假设,开发人员和客户在技术上是外国人,甚至在开发人员之间也是如此。

我的经验是,原型提交以后,客户才真正知道他想要的是什么,那太迟了……

你这样问是因为你有经验,这个原因也是我刚才讲过的,就是,在我们得到一个东西之前,永远不会知道自己真正想要的是什么。一般认为原型有所帮助,而这样也不用投入大量的时间和金钱来构建一个系统。关于原型,最常见的错误是原型过于精细了。然后在客户得到真实体验之前已经付出太多,太迟了,因为时间过去了,钱也花完了。如果真的是那样,表示你们对原型做得太多了。对原型投入太多非常不正常,但这里也有个很好的检验方法。你们每时每刻都在开发原型吗?检查你们的项目,然后说:“如果我们花费了那么多,如果我们不把这个原型交给客户,那我们现在演示给他们看。”然后他们说:“噢,不,那根本不是我们想要的。”你能负担得起把它扔开从头来过吗?但那不是真正的原型。你负担不起,因为它不是原型。

在工作量方面,需求在整个软件开发过程中占多大比例?

我认为这由你开发的软件种类来决定。我有个学生在美国开了一家公司,在系统之间的程序转换方面非常在行。一般客户的需求就是把一个新的程序植入一个新的机器或系统中,只要程序运转正常,和原来在旧的系统一样就可以了。所以说,这是一个非常简单的需求过程,在整个开发过程中所占的比例几乎为零。

而另一情况则是,很多系统是你以前没有做过的,就像我们建造的空间轨迹网络。如果我们真正地、正确地去检查和追索相关事情,可能8090%的工作量会用在列出什么是真正的需求上。

我想,在我们国家最大的错误是为很多我们很少使用的东西建造系统。例如,如果你建造一个系统,你花10%的工作量来做需求收集。系统构造出来之后,发现没有人需要它。就像我们经常所听到的:如果你做对了,你会把它做好的。

怎样成为一个好的需求工程师?需要哪些能力?

我想说,最重要的能力是,你需要有耐心以及理解其他人的能力。很多人未必知道你所知道的事物。很多技术人员得到的是列出需求的工作,他们认为自己不知道怎样才能完成。例如,询问客户或跟客户见面,得到一些问题的答案,接着他们开始设计系统,然后意识到还没有得到所有需要的答案。在我的职业生涯中,我见过很多工程师,不会回到客户那里再次询问和澄清问题,因为他们害怕再问一次。如果你怕生,就不能成为一个好的需求工程师。必须学会健谈,也要有一些技巧。例如,我们讲的诸多问题之一就是,把需求作好,《探索需求》一书中谈的就是这个主题。例如这样的问题:“好,你说你的时间到了,我也很满意我准备的问题,但常常会出现这种情况,问题不是我要问的,或者我意识到自己还不清楚。如果有更多的问题,我回来找你可以吗?”如果你这样问,人们一般都会说好,然后你就可以很大方地回来问问题了。

另一个你将学会要问的问题是:“那么,我已经问了你好多问题了,还有其他什么你要问我的吗?”你们看,不是所有的需求工作都是问问题,然后听答案。你要打破这种思维,说需求过程就是你跟客户坐在一起,你问问题,他们回答。需求过程是获取信息的过程,一些信息在你这里,一些在客户那里,一些客户没有,还有一些客户有着错误的信息。他们可能问你问题,然后你也可能问他们问题。甚至你可能就是去看他们正在做什么,例如,用他们现在的系统。他们想要处理的工作,现在是怎么完成的?其他人又是怎样完成类似工作的?关于他们所做的,人们通常讲不清楚。如果你自己试试看,给别人讲述一项你所做的复杂工作,你就会知道。很正常。所以你需要理解别人,接受他们的工作方式,还有作为“人”怎样为他们工作。

我的一个客户曾经问过我这样一个问题:“我可以通过向客户提出一些有价值的问题来获取他们的软件需求信息吗?” 好吧,你可以跟你客户说:“抱歉,我发现我提不出什么有价值的问题,因此也很难获取人们的软件需求信息。所以,当你不了解我为什么问你这些问题,或者不了解我的问题的含义的时候,我希望你能帮助我,告诉我应该向你了解哪些相关方面的信息。我希望你能向我提问。希望你能让我了解一些相关信息。我在这方面并不是很在行,这对于我来讲也是一件非常艰巨的任务。”我在这方面了解的东西很少,我并没有我期望的那样好。即使我在这一行干了有50个年头了,我仍然怯于提问。因此,你也必须要接受你并不是很完美的现实,然后告诉人们,你希望和他们共同来解决问题,而不是你单枪匹马上阵。

分享到:
评论

相关推荐

    售前培训01-沟通拜访与需求挖掘

    通过细致的客户对话沟通模式介绍,文档教授了如何通过有效的沟通建立信任,如何使用积极的听和问技巧来挖掘客户的真实需求。 在需求挖掘与调研部分,文档详细介绍了如何收集和分析客户信息,包括客户的基本信息、...

    如何高效能沟通营造无往不利的事业《关键对话》ppt读书笔记模板.rar

    注意观察,保证安全,控制想法,了解动机,如何高效能沟通营造无往不利的事业?《关键对话》ppt读书笔记模板。

    《软件需求》书 软件需求:是什么和为什么

    13.1 为什么要设定需求的优先级 110 13.2 不同角色的人处理优先级 111 13.3 设定优先级的规模 111 13.4 基于价值、费用和风险的优先级设定 112 第14章 需求质量验证 116 14.1 需求评审 117 14.1.1 审查过程 ...

    软件需求(pdf文档)

    13.1 为什么要设定需求的优先级 110 13.2 不同角色的人处理优先级 111 13.3 设定优先级的规模 111 13.4 基于价值、费用和风险的优先级设定 112 第14章 需求质量验证 116 14.1 需求评审 117 14.1.1 审查过程 118 ...

    客户经理与贷款客户的沟通话术大全分享.pdf

    客户经理与贷款客户的沟通话术大全分享.pdf

    Rasa 3.X 智能对话机器人案例开发硬核实战高手之路 (7大项目Expert版本) 课程简介.docx

    星空对话机器人在7大Rasa 3.X内核架构及源码解密系统课程的基础上推出了“Rasa智能对话机器人应用开发硬核实战高手之路”,帮助大家掌握Rasa硬核应用程序开发能力。 课程由7大部分构成: 1,Rasa 3.X Interactive ...

    软件需求全过程实践pdf

    13.1 为什么要设定需求的优先级 110 13.2 不同角色的人处理优先级 111 13.3 设定优先级的规模 111 13.4 基于价值、费用和风险的优先级设定 112 第14章 需求质量验证 116 14.1 需求评审 117 14.1.1 审查过程 ...

    与人沟通的对话模板

    与人交流的对话模板,我们说出的每句话都是哪中类型的语句,带有什么情绪的话,比如描述现状,比如提供解决办法,宅男必看,让你面对美女,不会没话说

    对话式主题班会课探索

    对话式主题班会课探索

    如何进行需求分析详解

    系统的分析人员说:“我们想与你谈谈你的需求。”客户的第一反应便是:“我已经将我的要求都告诉你们前任了,现在我要的就是给我编一个系统”。而实际上,需求并未编写成文档,因此新的分析人员不得不从头做起。所以...

    智能对话机器人的语料对话语料一问一答.txt文件

    机器人对话语料一问一答,智能对话系统语料库,下载即可用,包含一千多句,大学生完成作业用,智能机器人对话语料,聊天语料, 内容部分: 有人在吗 我总是很乐意聊天 你想让我告诉你我是谁 我更擅长回答问题 我会...

    chatglm3多轮对话训练数据

    chatglm3多轮对话训练数据,包含原始数据、处理代码、train.json、dev.json和test.json 训练存放位置为:finetune_demo/data/JDMulConversations/train.json,同时需要修改lora配置: data_config: train_file: ...

    人工智能-项目实践-意图识别-基于PaddleNLP的对话意图识别.zip

    在对话过程中要准确理解对方所想表达的意思,这是具有很大挑战性的任务。 意图识别的准确性能在很大程度上影响着搜索的准确性和对话系统的智能性,在本赛题中我们需要选手对中文对话进行意图识别。 2.数据集介绍 ...

    沟通之与员工对话.pptx

    沟通之与员工对话.pptx

    3D小人沟通交流合作PPT素材.rar

    3D小人沟通交流合作PPT素材,40张JPG格式图片。关键词:握手 说话对话谈话 商务洽谈 沟通力 签订合同协议。

    需求开发与需求管理

    所以如果只有一些零碎的对话、资料或邮件,你就以为自己已经掌握了需求,那是自欺欺人。 1.2 需求的重要性 Frederick Brooks在他1987年经典文章“No Silver Bullet”中阐述了需求的重要性: 开发软件系统最困难的...

    《关键对话如何高效能沟通(Crucial Conversations)》读书笔记.pdf

    《关键对话如何高效能沟通(Crucial Conversations)》读书笔记.pdf《关键对话如何高效能沟通(Crucial Conversations)》读书笔记.pdf《关键对话如何高效能沟通(Crucial Conversations)》读书笔记.pdf《关键对话如何高...

    软件架构师应该知道的97件事-读书心得分享

    1. 客户需求重于个人简历 为客户考虑,针对业务做好一个项目,得到客户的认可、推荐。要比你告诉别人你会多少技术更有说服力。 2.简化根本复杂性,消除偶发复杂性 简单复杂性是指与生俱来,无法避免的困难。偶发...

    需求分析期末复习思考题(1-8章).docx

    重要性:如果只有一堆邮件、贴条、会谈过几次或一些零碎的对话,就确信已明白用户的需求,那是难以做到的。 案例二:某软件开发小组所开发的一套工具缺少某一特定的功能 重要性:这说明那怕需求明确无误并构思准确,...

Global site tag (gtag.js) - Google Analytics