今天想写写该听谁的这个话题。朋友说有个项目,项目是用户希望用php基于Drupal开发一个商务网站。我问用户是搞技术的吗?他说不是。我又问那他使用php和Drupal是别人给他建议的吗?他说不是,是用户自己上网查的。我说用户提的这个可能有问题,需要梳理一下。朋友说用户提需求让你做,你却告诉人家需求有问题,告诉他错了,用户还会让你做吗?我说用户不是这个行业的,也没有专业人员参与,我觉得用户提的不是需求。朋友有点急,他问我不是需求是什么?我说是解决方案,应该由专业人员提出的,应该我们帮他考虑的。朋友很生气项目最后没有交给我做,我也有了个光说不练的名声。
其实这样的用户我遇到过很多,负责项目的管理,懂些专业知识。他们经常把用什么架构、用什么语言、用什么框架、做的像什么什么网站、做得像什么什么功能作为需求提出来。遇到这样的用户千万要注意,他们直接把需求变成了解决方案,并作为需求提出。很多开发项目组的成员都在这个行业干了十几年,但经常被客户指定界面操作方式、页面布局、开发语言、开发框架、开发组件等等。有没有觉得不太对劲,问问用户为什么提出这些,如果是你会这样设计吗?项目都皆大欢喜的结束了,没有人考虑这些。把自己擅长决定的事情交给了别人,不合适解决方案让我们加更多班、投入更多的精力,被认为技术水平差。当然我们相信有高手,相信一切皆有可能,但项目投入有限、时间有限,总之鞋合适不适合只有脚知道。
还说开始的例子,商务网站规模、服务对象、服务内容、业务模式、运维模式、用户资金等都会影响方案的选择。Drupal功能很强大,要因需求而定,比如考虑维护成本、开发难度,既不要大炮打蚊子,也不要小马拉大车。这些东西要分析用户需求,根据专业知识和开发经验,整体评估并认真论证,提出更加合理的解决方案。我认为作为专业的人员要主动承担自己擅长的工作,基于自身的技术实力,为用户提供最合理的解决方案。
我不是不听用户的,而是挖掘用户真正的需求,验证用户解决方案,完善用户的解决方案。这个是我想坚持的,我提醒自己搞懂用户真正想要的,让自己更专业,提出更合理的解决方案。其实这么做真的很难,拿钱办事的模式下,商务人员关心如何拿下合同,技术人员没有话语权。