作为一位的研发咨询顾问,经常到企业中和研发人员交流,在一些企业中我们发现研发人员在开发产品过程中,很少输出技术文档,如一个软件企业,研发人员得到产品开发的需求后直接编写代码,一个做机械产品的企业,得到需求后直接画结构图纸。如果你要求研发人员写技术文档,如编写总体技术方案或者详细设计文档,要求把他们的设计思路给首先写出来再评审一下,他们往往会跳起来说:写文档会影响效率,我们开发人员要快速地响应市场的需求,要快速地开发出新产品,而且公司领导也要求我们必须在某日开发出新产品,所以我们必须直接进入详细开发阶段,什么总体方案、什么详细设计文档我们公司一概不要求,否则贻误了战机谁来负责!作为公司研发主管,由于一时找不到合适的理由去制止,也默许了这种做法:市场是第一位的,销售人员催得着急,能快速开发出来东西交付给销售人员行,至少不会受到销售人员“交付慢”的指责。

  通过调研我们发现,上述现象不是个别的,是目前中国企业比较普遍的一种现象,认为在研发过程中,让研发人员写一些技术文档,是影响了研发效率,影响了交付给客户的时间,所以研发的目的是快速把样品制作出来和客户确认。

  难道说在研发过程中,让研发人员写文档真的是影响研发效率吗?

  近接触一家运营互联网的企业,公司是上世纪90年代中期创建的,公司创始人酷爱网上游戏,后来发现游戏发烧友在交换帐号、金币时能带来一定的商机,组织一帮人马开发互联网产品,帮助这些游戏发烧友交换帐号、金币,甚至帮助这些网友代练等等,从中收取佣金。

  我们知道,互联网产品的典型特点是要对市场快速反应,网友们反应网站上什么问题,或者说需要一个新的功能,公司要快速反应,甚至一两天内要完成新功能的增加,给网友一个快速交待,否则这些网络游戏发烧友会转到公司的竞争对手哪里去。因此,在这个公司,企业文化中也可以见到这样的字眼:效率、快速。

  到2010年底,公司从创建起初的几十个人发展成几千人,产品研发人员也换了几茬,老的开发人员也陆续离开了公司,公司交易额也从原来的几十万元发展到几十亿。不过,公司的网站在运营过程中出现了一些新问题,因为网友们上网玩游戏时,他们希望在网上交易,是想直接看到交换金币、装备、点卡、代练等类目,但公司目前的网站是按交易方式展示出来的,如寄售、直销、担保等,这对于游戏玩家来说,他们关心的是交换什么类目,至于是何种交换方式并不太关心。显然目前网站的运营方式和网友们的需要是不相同的,网站改版,按照交易类目划分被提上了公司的管理日程。成立项目团队,对网站进行改版成为公司年度的头等大事。

  由于公司创始人所领导的研发团队开发产品项目方式,按照公司现在的研发管理人员的原话:是土八路式的模式,当时开发人员进行网站开发时,没有总体架构设计,没有详细方案的设计,直接编写代码,想到一个交易模式,或者由市场人员反馈网友需要什么,直接更新代码在网站上增加一个东西。现在要按照类目设计网站,研发人员想借用原来的技术模块,但由于没有设计文档,公司保留的只是一行一行的代码,要现在的研发人员一行一行代码来学习,研发人员说,还不如让我们重新开发。

  原来开发的代码不能重用,也意味着,公司的网站从交易方式改为按类目来划分,公司要重新设计架构,重新编写代码。要是一个管理正规的公司,由于有技术文档的支撑,公司的研发人员通过学习技术文档,将很快明白总体设计思路,明白各模块代码的用途,只需要调用这些模块可以了。但在这个公司,基本上是不可能的事情了。

  从以上事例可以看出,由于技术文档的缺乏,给公司的产品升级和改版带了许多困难。针对这家互联网企业,起初开发产品时,由于在开发过程中没有编写技术文档,从研发项目短期来看研发效率提高了,但站在产品管理的角度来看,如果要对产品进行维护和升级,总体的效率是降低了。

  我们发现,一般在管理不太正规的企业中,让研发人员写文档是比较困难的事情,而且公司的管理人员又缺少系统性的研发管理理念,也确实说服不了这些研发人员,因为研发和市场人员都会被认为公司的宝贝,不能得罪他们,怕核心人员流失。所以开发了一代又一代产品,但留下的技术文档少之又少,所以,原来开发产品的工程师离开公司了,产品的升级和维护成了问题;新的学员来了,想学习产品知识,只能靠以老带新,以师带徒来传授,有的师傅会把独门绝技传授给学员,但有的师傅认为,带会徒弟,饿死师傅,所以总是有所保留。不管是哪种类型的师傅来带学员,都会发现学员的成长周期比较长。

  还在一些企业中,我们发现,如果不写文档,开发一个小产品,或者在现有产品上增加一个小的功能,由于团队成员比较少,及时通过会议沟通,问题不大,但一旦开发的产品规模稍大些,问题层出不穷,比如说由于产品开发的需求没有文档,所以研发人员开发产品时只能按照不明确、或者不系统的需求开发,导致开发过程中设计改来改去,测试人员做测试时,由于测试标准不明确,给测试人员是否放行也带来困惑。因此这类企业中,往往只能在现有的产品上进行细微的改进,缺乏开发大产品的管理方式,缺乏核心技术竞争力。

  研发速度是一种重要的竞争武器,但是我们发现一些企业往往是急功近利,他们衡量研发绩效的度量指标出了问题,许多企业衡量开发出样机的时间,而不去衡量产品什么时候收回投资,不去衡量在市场上什么时间赢利。根据PDMA(美国产品开发管理协会)的研究发现:的公司在新产品开发流程中所用的时间比普通公司所用的时间稍微长一些,这可能一方面反映了所开发的项目更具有挑战性,另一方面也反映了希望高质量完成工作的愿望。

  按照的成功研发管理模式,研发过程中要有设计文档输出,特别是大规模的产品,如果没有技术文档输出,甚至是开发不出成功的新产品。一般来说,在研发过程中重要的文档包括产品需求描述、总体技术方案、概要设计文档、详细设计文档、测试方案文档等等。

  当然有的企业中也要求输出这些重要的文档,但让研发人员写文档时,不知道如何写,或者不同的工程师写的文档详细程度不同,针对这个问题,我们的答案是公司要成立管理优化团队,要设计针对性的研发流程,并且要设计出文档模板,指导研发人员编写技术文档。这些文档模板象指导书一样,怎么写,写什么都有了依据,不管研发经验是否丰富,都能按公司要求的格式来写技术文档。

  研发过程中不输出技术文档,是急功近利的表现,是研发眼光短视的具体体现。我们需要的是要输出重要技术文档,在研发过程中不断技术评审的质量控制,一次性把事情做好的模式,才是真正具有研发高效率、产品管理高效率。