软件需求与问题解决

来源:互联网 发布:smg 淘宝 编辑:程序博客网 时间:2024/04/29 04:55

  (一)
   小满当上项目经理后不久,参与了一个大项目。当时市场签下来的时候,公司里面是欢天喜地的。项目做了一年多。到了交付的时候,用户却很不满意,当初说好的东西,好多都变了卦。
   用户是上帝,最关键的是如果收不到后面的钱,那就算白干了。公司要求项目组加班加点的修改。搞得大家是怨声载道的。做市场的和做开发的相互指责,然后,大家又一起骂客户刻薄。公司里面弥漫着灰心丧气的气氛。
   小满觉得郁闷的很,就跑去跟老鸟聊,看他有什么主意。
   老鸟听了小满的一通抱怨,说:“很正常。以前我们也经常遇到这样的情况。很多案例说明,失败是一开始就注定了的。”

  (二)
   老鸟说:“你们怎么跟客户谈论或确定需求?”
   小满想也不想就说:“他们市场先谈单,估计人家需要做什么。然后,我们这边就派一个技术的人过去了解需求,拿一些对方的表格和笔记回来。好像都差不多。”
   老鸟说:“然后呢?”
   小满说:“我们做好一个需求文档,罗列出开发功能要点。附在合同的后面。大体上就是这样。”
   老鸟说:“看起来没啥问题。好像还很严密。”
   小满说:“你的意思是有问题?”
   老鸟没说话,从旁边拿了一张纸,用铅笔在纸上画了两个圆。问小满:“你说,这是啥?”
   小满说:“两个圆。”
   老鸟摇摇头:“是两个鸡蛋。”
   小满觉得老鸟很无聊,不耐烦的说:“好吧,就算两个鸡蛋。”
   老鸟摇摇头:“不是,这不是鸡蛋。这是两个乒乓球。”
   小满不知老鸟在暗示什么。他在听。
   老鸟说:“我看到的东西,和你看到的东西,不一样。但是,在纸上,画的是同样的两个圈。”
   小满说:“哦。”
   老鸟说:“你们去询问需求,然后做了一个文档。你们头脑里的东西,跟客户要的东西,其实是不一样的。但是,大家都认为这样白纸黑字,基本上是一样的。这里面其实有差异。这种差异,有时影响不大,但有时,是致命的。毕竟文档,不是最终的实物。”
   老鸟说:“客户永远认为,他是把需求给你讲清楚了的。如果你做不到,不是他的责任。而且,你要记住一点,用户只有在见到或使用过实物的时候,他才知道他其实要的是什么东西。”
   小满点头:“最后这句话,我严重同意。可是,要按你的说法,那用户和我们就永远不可能真正存在沟通一样?哪不成了虚无主义了吗?”
   老鸟说:“我说的是这样一种情况:如果你不了解客户的业务,或者真正熟悉它的行业规则的时候。你需要更严谨的方式来询问和确定需求。否则,那些落在纸上的文字和文字之间,埋藏着数也数不完的陷阱。”
   小满说:“那你们一般怎么做?”
   老鸟说:“开始一样,还是会有一个初步的文档。但是在合同签下来后,会有一个相对时间较长的需求的再确认过程,我们会和客户一起来走一个流程。然后,我们会把大家商业的结果,转换成最终的设计,用PPT把它的操作界面和业务流程都模拟出来,让用户有身临其境的感觉。在正式开工以前,给客户汇报。到此为止,我们并不做任何真正的编码工作。”
   小满说:“这样做,还是很花时间,效果如何呢?”
   老鸟说:“相对于搞错了需求,重新开发,这是最合算的了。很多人都不愿意这样做,最后,项目没完,人都跑光了。这种事情,也是不少啊。”
   小满说:“这样看来,我们的需求是比较简单了。如果遇到理解偏差,就会出大问题。”
   老鸟说:“需求阶段过于匆忙,也会出问题。比如说,客户忙,随便给你找一个表格,就跟你说,我要的就是这个。或者有些用户就直接告诉你,他要怎样怎样。”
   小满疑惑了:“客户不都是这样吗?有何问题呢?”
   老鸟说:“客户没有问题。而是去问的人要格外的小心了。他要注意一下客户的立场:客户关注自己要的结果,但是每个人关注的东西不同。比如说领导不关心过程,关注结果;实际做事的人希望不要给他们增加过多的工作任务,越傻瓜越省事越好;部门级的人关心新系统是否剥夺了他们的权力,如果是这样的话,他们一般会给你找各种理由搪塞;而系统管理员,关心技术和安全。总之,每个人都各怀心事。需求是多种多样的。还有一些人,他就象一个设计者一样,跟你说,让你跟着他的思路走。其实,都需要仔细记录,认真掂量。”
   小满说:“如何掂量?”
   老鸟说:“多问自己几个问题。他们的问题来自于哪些方面?真正的问题是什么?是谁的问题?哪些问题是可以简单的,哪些是比较复杂的。”
   老鸟说:“我遇到很多次了,很多人去做需求,以为拿着本子记下来就好了。其实,很多时候,都没那么简单。觉得简单,是因为很多人认为从技术上设计这类的软件,简直是小菜一碟。但是,他没有想到的是,很多问题是不可能光靠软件就能解决的。”
   “有一次,有位客户气急败坏的来找我,他说他要设计一套软件,加强管理。我问他起因。他说他下面店的经理,因为山高皇帝远,经常想方设法隐藏收入。我说:这种管理的软件多的很,不需要单独开发。你需要的不是一套软件,而是一套相应的监督机制。”
   “结果,他就是坚持要做,他觉得要把所有的店控制起来。他不想买现成的。现成的有些特别的功能满足不了。”
   小满插了一句:“客户都希望自己的东西是独一无二的。”
   老鸟说:“你猜后来的结果如何?我们简单做了一个非常简单的设计,报了一个天价。他自己再没吭气了。”
   小满说:“你们损失了一个客户,不觉得可惜吗?”
   老鸟说:“我们经过了仔细的询问和调查。一是他的需求很奇怪,贪大贪全。而且要求的时间比较紧。但是他的价格,我们做不出来。”
   小满说:“他为何不找其他的帮他做呢?”
   老鸟说:“太大的公司,人家没空做你这些。太小的,他又不放心,当然,还有一个重要的原因,也是我们最后打算放弃的真正原因。”
   “他找我们做软件,解决下属公司的问题,并不是他真正的需求。我们有一次讨论的时候,他说高兴了,自己说漏嘴了。他说他正在跟香港某公司谈融资的问题,对方对管理要求很高。”
   “当时,我就想:哦,这是一锤子的买卖。如果要做的话,我们要不吃亏才好。所以,我们就说了一个价格,把他吓跑了。”
   小满笑了。
   老鸟说:“你看,我们白谈了20多天。结果就这样完了。所以,尊重客户,也要尊重自己。不要把客户当傻瓜,也不要让自己做傻瓜。”
   小满说:“你从哪儿学到这一套的?”
   老鸟说:“告诉你,所以的秘密都在这里”
   他递过来一本书。书名叫《你的灯亮着吗?》。
   老鸟说:“这是要学习思考问题的人的必读书,也是项目经理的必读书之一。”
  
  (三)
   小满向老鸟借书。老鸟坚决不肯。小满知道老鸟其他都很慷慨,除了书以外。他自己买了一本,并作了一些摘要。
   小满是这样写的:
   怎么去寻找一个问题的解决方案?
   【1】首先要确定问题从哪儿来?
   【2】然后确定是谁的问题?
   【3】发现真正的问题所在;
   【4】在特定的层面上理解问题,并寻求合理的解决方案;
   【5】有时,人们真的需要去解决他们所认为的问题吗?
   小满还写下了自己对专业的理解:
   什么是真正的专业呢?过去,我一直以为有了专业技术,就算专业了。现在,看来还远远不够。有技术的人,容易犯一个错误,就是把专业当一个万用的榔头,看见什么问题,都想用榔头把它敲下去。但是,很多问题,不是光用榔头就能解决的。
   所以,并不是一开始就把榔头亮出来,而是多问自己几个相关的问题。有时,思考比榔头好用的多。多样化的思考,会让你以简洁有效的方式去思考问题。而不是迷失在快速搞定事情的方向上。
   指责客户是没用的。但是,你可以思考,发现问题的真正所在,用内心的灯去照亮前进中的道路。