第五条:妥善运用研发团队自身的行业积累
前面提到,要以处子之心去客户那里摸需求,这与本条建议并不抵触。软件开发,如果不注意运用行业积累,大玩“老熊掰棒子”,是很难迅速把握并驾驭客户需求的,更别说写出过硬的好软件了。经验永远是我们的一笔宝贵财富。本文只是想提醒诸位朋友,要注意把握其运用的艺术。如果在前期摸需求的时候,瞒脑子都是你的固有经验,就会有意无意地拒客户需求的特殊性于“门外”,在其他研发阶段,则要大着胆子提炼经验为新项目所用。要将相关行业的成功“打法”,通过软件开发,移植到新的项目中来,以此带给客户软件的价值。
某软件公司接手一个项目后,发现客户在异构数据库间汇集数据颇具挑战性,老系统的解决方案,基于XML文档,借助专门程序完成此项业务,但是效果不甚理想。新的研发团队中,有两位工程师曾在实施另一项目时,专门研究解决过这类问题,经过研究,他们借鉴了这一成功作法,借助数据库技术,直接实现数据汇集。新项目实施后,问题得到妥善解决,客户反响良好。这个例子,恰恰能够说明,行业积累妥善运用的重要性。
第六条:持续的互动与打磨
软件开发到一定阶段,一定要记得,及时与客户见面。通过见面,及时听取客户的意见和建议,了解客户的感觉,厘清客户的真正需求。这既是软件开发的一种具体方法,也是一项重要的工作策略。
限于工期和成本的考虑,软件企业老板,主观上往往不倾向于过多地与客户的接触与互动。软件工程师,对自己辛辛苦苦开发出的软件产品,也有一种“母爱情节”,面对客户正面的评价,心里尚可接受,对负面的评价,则容易滋生抵触情绪。一款软件,从动手,到成熟,无论开发人员多么历害,多么不情愿听到客户指摘,往往也要经历多次的调整,有时候甚至是颠覆性的调整。开始的时候,开发人员大多还能沉得住气,越往后,往往越难保持心态的平衡,所以,许多时候,软件研发人员都容易被负面情绪所包围,这就需要企业管理者和研发团队,能够注意到软件开发人员的心绪变化,建立起有效的疏导机制,使这些负面情绪不至于影响工作。笔者注意到,在微软、Google等软件企业,都设有“咖啡机文化”,中国华为公司还定期召开带有对立性质的会议,允许员工畅谈反对意见、发泄不满情绪,然后再召开团结性会议,统一大家思想,消除对立情绪。这些作法,值得有志于成长为优秀软件公司的朋友们参考和借鉴。
我认识一些端软件开发饭碗的朋友,也乐于与其交流。说实话,他们都是十分聪明、十分敬业的英雄好汉。其中不乏成熟者,一个重要的标志,就是面对客户的批评和指责,他们能够耐住性子,不急于辩解。有时候,即使明知道客户的意见是片面的,他们也乐于洗耳恭听,不轻易打断。他们知道,即使在客户片面的意见里也有金子。打断、辩解,也许金子就没有了。如果实在需要解释,他们会选择放在最后,比如第二天,他们会主动打过电话来。而在这段时间里,他已经多多少少地从客户的意见里,了解到一些新的情况,或者吸取到一些有价值的东西。
即便是璀璨夺目的钻石,都需要精心的打磨。要想打造出惊世骇俗的好软件,更是离不开研发人员与客户的反复玩味与痛苦的打磨。这种打磨,往往是在软件交付客户使用之前,有时是在试用的过程中,也有延续到正式上线使用之后,甚至项目合同期满的。如果不幸真的延续到项目合同期满了,我倒要恭喜你了:新的商机已经在向你招手,可不要嫌麻烦,置之不理噢。
要炼出好的软件,一定还有许多的门道有待揭示,比如,要注意细节的处理,要符合人体工学原理,要融入人文关怀,等等。限于篇幅,这里不便一一阐述。相信有志于此道的朋友们,会和我一道,共同研究、探索的。
好软件是怎样炼成的?
0
相关文章