来源:CSDN http://news.csdn.net/n/20080104/112435.html
无论是开发人员还是Leader,尽管角色不同,但他们都不过是整个开发团队的一部分,他们的目标也都一致:应和需求、完成项目开发。他们也经常在开发过程中遇到
技术
和需求之间产生的矛盾,那么这些矛盾该如何调解、当需求出现描述模糊的时候又该怎样处理呢?为此,记者采访了阿里
软件
研发中心总监叶伟。
叶伟认为技术和需要产生矛盾往往是因为两种情况。一是需求不清晰(如细节未考虑)、或者提出的方案不合理。这种情况下,技术会对需求方的方案做补充和修缮;如果从技术角度想到更好的解决方案,也会提出来。在不影响
商业
价值或用户的体验的前提下,需求方大都会认同,从而解决矛盾。
第二种情况是需求合理清晰,但是从技术实现成本过高或周期过长。这需要站在技术的角度重新考虑各种替代方案。如果替代方案既能满足需求又没有成本周期问题,则矛盾得以调解。比如阿里软件开发的一款
外贸软件
产品
中,有着模糊搜索的要求。直接通过数据库来处理,性能是非常差的;通过搜索引擎,则成本太大;但如果不提供,从需求方来说就是没有达到要求。后来技术团队将多种方案综合,通过适当降低友好度,来实现这个功能的高效性。但有些时候未必能找到合适的替代方案,叶伟认为此时应当从商业价值、性价比等角度来考虑‘变更需求’,而且必须提交给上级经理或者产品会议作决定。
调节技术与需求之间矛盾的方法有很多种,但是原则却是大同小异。阿里软件研发总监叶伟结合自己十多年的带领团队开发经验总结了三个原则:
1,商业驱动。叶伟举例说,一个业务管理邮件收发系统,商业上要求对邮件数量进行统计,但之前和版本中没有这样一个计数器。如果从技术实现的难易度来看,开发人员脑中的第一印象是对保留下来的邮件进行统计。然而,由于用户之前可能删除了部分邮件,统计数目就不可能正确。所以,这个技术方案是不符合商业要求的,所以不可行,尽管它最省时。
2,需求和开发人员之间应当寻求共同的价值点。“这个价值点既不是开发人员的价值点也不是需求人员的价值点,而是用户的价值点。”叶伟说。理解了真正的商业价值,技术人员和需求方也就达成了共识。
3,技术不能逾越商业决策,商业决策引导技术。叶伟带领的阿里软件通常是根据需求做出几种技术方案让需求方选择。例如,阿里软件的最新软件产品AEP(
电子商务平台
)中要提供促销功能,一共想了三种方式:送用户礼包/优惠券、打折、购买返现金。这三种方式的技术实现成本和对用户的效果都不一样的,技术人员作出了概要的分析、比较,让需求方来决定。需求方最后选择了‘购买时返现’,由于另二个方案是互补的,也没有被废弃,列入了下二个版本。所以叶伟说,“即使某种技术方案不被选择,它仍可以作为下一个版本或者产品的方案。”
阿里软件研发中心总监叶伟
实际上,在产品开发过程中也难免会遇到描述模糊的需求,但又必须执行的情况,这种情况怎么处理呢?叶伟表示可以从两个大的方面来解决这个问题。
一是从方法学和流程的角度来处理,归纳为三点:
1敏捷开发方法;
2充分的版本迭代。互联网软件产品的版本周期大都比较短,阿里软件的经验是一般定为一至二个月;每个需求会细分,并按照重要性排定ABC优先级,再参照资源情况归入各版本。
3产品会议。“凡事预则立、不预则废。”在当前版本结束前召开下一版本的产品会议,提前作出产品规划,确定版本功能。
二是从个人执行的角度来处理。通过特征分解(Feature Breakdown)、格式化模板(Formatted Template)、模式化用例(Use Case Pattern)等手段,尽量让需求人员将需求描述得清晰而规范,降低模糊度。叶伟带领的阿里软件还会在开发前专门针对需求中的模糊点、复杂点等问题召开“需求确认会”,开发人员与QA一起补充和明确需求。
“这两个方面只能在开发前使需求更加清晰明确,但不能保证完全消除需求模糊的现象,因为在开发过程中,经常会遇到许多细节方面的问题,”叶伟说,所以如果在开发中遇到问题,他要求开发人员马上去沟通,然后寻找渠道与需求方确认。所以阿里软件对开发人员的沟通能力有较高的要求,‘客户第一、团队合作’是阿里巴巴‘六脉神剑’(价值观)中的前二条。看看今日阿里巴巴在中国IT领域的旗手级位置,我们有理由相信叶伟的经验和感悟同样会给我们更多有益的借鉴。【呐不喊】
叶伟:
现任阿里软件研发中心总监、高级工程师。
2003.01——2005.11 金蝶, 资深架构师,研发中心
2001.01——2002.12 IBM中国,OO Architect, IGS
1997.08——2002.5 金仕达卫宁,首席技术官兼副总裁
教育背景:
1994.09——1997.07 复旦大学 计算机科学硕士
1990.09——1994.07 复旦大学 计算机科学学士
转载自原文链接, 如需删除请联系管理员。
原文链接:阿里软件研发总监叶伟:如何处理技术和需求的矛盾,转载请注明来源!