这是一篇2011年的旧文。当时在铁路行业公司的研发部门做经理一职,希望为部门所有员工设立一个愿景和努力提升自我的方向。最近在学习质量管理学的过程中,对这三个原则又有了一些新的体会,在此整理并重新发布这篇文章。
研发部门是从事IT行业企业的重要部门之一。从产品角度讲,公司的产品是研发工程师智力水平和工作效率的综合体现;从公司资源和人力资源角度讲,公司的成本很大一部分用于支持研发部门开展工作和支付研发工程师的薪酬,而尤以后者为甚。那么在这么一个高智力水平的环境中,我们如何提高自身的业务水平,满足市场、客户和公司对软硬件产品质量的需求,是制定研发部门发展原则的出发点。也是希望通过坚持这些原则,达到提升研发部门员工活性化(Empowerment)的目标。
全面质量管理是提升企业综合实力的管理模式,旨在改造企业生产、销售、财务、研发和管理等多个环节。现在国际上三大质量奖(日本戴明奖、美国马尔科姆·波多里奇国家质量奖和欧洲质量奖)的获奖企业大都从此受益。其提出了八项管理原则,这里就不一一列举了,就研发部门来说,以下三个原则既脱胎于全面质量管理理论,又考虑了研发部门的特点,值得我们在日常工作中践行这些原则。
永远把用户的需求放在第一位
英国第二大贷款银行-全国建屋互助会的CEO,Philip Williamson先生曾经这样阐释“站在客户的角度看问题”-“如果你认为你比客户懂得多,你的处境就危险了,你必须聆听客户的要求,规则一:客户永远是对的。规则二:如果你认为客户错了,请重新读一遍规则一。因为在聆听客户需求上的表现我们曾获得了英国金融服务业的最佳”。在我推荐给研发人员的《高效程序员的45个习惯》一书中,作者也阐明了要“倾听用户的声音”的观点,认为“没有愚蠢的用户,只有愚蠢、自大的开发人员”。
在过去工作的5年中,我也时常听到有些员工(其实也包括我)认为“铁路用户学历不高,认识有限,很多问题不是他们想象的那样”等等言论。但情况真的是这样么?显然不是,为什么我们会有这种想法,因为我们没有真正站到客户的角度思考问题,还是以一个开发者的角度思考问题,犯了主观主义的错误。我们从来没有相信“客户永远是对的”这个准则,所以总在用户的需求方面打了折扣,完全以自我为中心进行开发。潜意识中,如果恰好用户的需求和我们的愿望达成一致,那么这就是我们可以实现的需求,否则,就会以各种各样的借口把责任推脱到客户身上,而不是把需求实现在产品中。
在实际的研发过程中,我也承认用户有些需求或者说要求不仅内容多,且常常变化,使得我们疲于应付,对项目产生厌倦感。我想这不能说明用户就是错的,而说明两方面的问题。一方面,我们没有真正理解用户所处的业务领域,没有真正理解用户想要什么;另一方面,我们的技术和效率还有待提高,不能适应用户日益增长的对项目的应用欲望。大家可能都知道“苹果”教主乔布斯,为什么他能把濒临破产的Apple带到市值超过中石油的全球第二大公司?就是因为Apple理解用户真正需要什么,也有能力做出如iPhone,iPad这种堪称艺术品的玩意儿。所以说,要把“永远把用户的需求放在第一位”这个准则作为我们深入目标领域,研发产品的工作中首要考虑的问题和始终坚持的原则。
在这里我还想提到的一点是,做事情勿要矫枉过正。有些同事对这一原则坚持的倒很好,用户说一,绝对不说二,说东,从来不想西。这里缺了什么?独立思考!可能有的同事说这段要我们独立思考,岂不违背了“永远把用户的需求放在第一位”的原则?我认为简单的对立这两个方面是不合理的。任何事物都有其发展规律,这一原则的坚持,不应该作为深入学习业务知识的障碍和疏于学习的借口。我们既反对自以为是,自作主张的开发,也反对只作为代码实现器,从项目中丝毫没有吸收业务经验的开发。在工作中学,在和用户的交流中学,我相信这两个方面在一个优秀的开发人员身上可以结合的很好。
质量是企业的立命之本
前些天集成中心的郑经理在例会上提了一个观点,让我很受启发,现在和大家分享一下。他说,如果把一个产品或者项目的研发分成十份,目前我们的研发部门只做了前面的两份或三份,后面大量的现场试验,长期试验的工作都没有完成,所以看似通过评审的产品或项目,到用户手上要很长时间才能稳定。这样既造成了资金回笼的延迟,对公司形象也有影响。俗话说,虚心使人进步,我作为研发部门的一员,是非常接受这种批评的。为什么?因为“质量是企业的立命之本”。我们不能想当然的认为生产工艺可以弥补设计上的缺陷,更何况这是在硬件方面,在软件方面,质量问题就实实在在是悬在研发人员头上的达摩克利斯之剑。
究竟什么是质量?ISO9000:2005《质量管理体系 基础和术语》对质量的定义是,“一组固有特性满足要求的程度”。质量反映为“满足要求的程度”,满足要求的程度才反映为质量的好坏。满足要求的程度不同,就产生了“质量”差、好和优秀的差别。实际上质量就是是否满足用户的需求,这些需求包括功能性需求和非功能性需求。郑经理说的两到三份实际上就是“满足”了试验室环境的要求,而其它几份就是“满足”真实环境的要求。程度上的不同,就体现为了质量上的不同,我们的研发人员头脑中的质量停留在产品的初级质量阶段,而没有到高级质量阶段。
质量是企业的立命之本。就是说对质量的追求是无止境的,对质量的要求更是如何强调都不过分。没有质量就没有合格的产品,就必然在激烈的市场竞争中处于劣势,即使和客户关系再好,选择质优价廉的产品总是经济学的一条铁律。一个经典的例子就是某年郑州局由于我们竞争对手的产品质量问题,导致了重大的铁路安全事故。在紧接着的产品采购中,我们就以同类产品进行了取代,从而成功进入郑州局的市场。从软件设计的角度来说,往往细节体现着质量,细节决定着成败。周鸿祎说过,乔布斯非常关注细节,他会趴在电脑上一个像素一个像素地看那些按钮的设计。他曾经跟员工说,要把图标做到让我想用舌头去舔一下的程度。这种产品的质量之高,我看用优秀难以形容,简直就是“伟大的产品”,而接下来就是:伟大的产品会造就伟大的公司。
这个原则容易成为一句空谈,这里需要谈些理论上的支持。质量管理不仅是从CEO到普通员工脑袋里的一根弦,还是可以实操的工作规程。根据统计学原理和变异理论,质量保证不是一个完全靠主观就能实现的。简单说,光想着保证质量,不代表就不会出错,这里也可以参见墨菲定律。但质量管理强调实现产品质量的可控状态,然后通过改进实现质量的飞跃,并进入到更高一级的循环之中。著名管理大师朱兰博士的质量管理思路可以概括为三部曲,指在质量管理活动中,频繁地应用着三个这样的管理过程,即质量计划、质量控制和质量改进。“朱兰三部曲”的核心和我们熟知的PDCA循环,都是这个意思。
创新是研发部门的使命。
“使命”这个名词很有一种庄重的感觉,它代表了一种责任。研发部门不同于生产部门,更不同于销售部门。我们要通过自己的聪明才智,从无到有的设计、生产、组织构造一种全新的产品或项目(当然可能有一定程度的继承,但绝对不是简单的复制)。这就要求我们每个研发部门的员工,始终把创新作为自己的使命,激发出自己的潜力,在不断的创新中实现作为一个开发者的自我价值。在衡量创新性上一个比较重要的指标就是专利数。我给大家一组2009年的数据:在“计算机系统类”公司中专利排名第三位的是苹果公司294项;排名第二位的是甲骨文公司338项;排名第一位的是微软公司,达到惊人的2918项。尽管微软的海量专利并不能代表其创新性就强于苹果,但这些专利充分说明了世界领先的高科技公司有多么旺盛的创新欲望和多么强大的创新能力,这是推动公司发展的最根本的动力。
可能有的同事认为我们的工作离创新较远,也不能为创新而创新。我想这是对创新的误解。创新不光是申请专利,发表学术文章,也是实实在在的在项目中应用新的技术,的的确确的提高项目或产品的质量。还是举一个现实的例子,如果没有创新,我们的信息化项目可能还停留在纯JSP页面混杂代码的阶段,而不会采用更先进和稳定的MVC三层架构模式;正是有了创新的想法,我们的信息化项目在引入了以Flex和ExtJs为代表的显示层技术后,让用户体验完全提升一个到一个新的层次(作者注:计算机技术发展迅速,这里提到的是2011年的情况)。我认为有了这些创新,不论在个人的技术水平还是部门的研发水平方面都会有一个实在的提升。技术积累讲究厚积而薄发,持续不断的坚持创新,我们也会申请越来越多的专利,为公司的发展提供源源不断的动力。
我们只有真正的把用户的需求放在第一位,才能不断的改进产品的缺陷,提升产品的性能,提高产品的质量;而切实提高产品质量的途径只有持之以恒的创新,源源不断的引入新的技术,消化、吸收和融合到特定的产品或项目中。这其中有学习和试验的阵痛,但这必将是暂时的。从长远说,满足用户的需求,必须靠提高产品的质量,而提高产品的质量,必然是通过创新来实现的。坚持这三个原则,我们的开发(研发)工作就会充满了责任感和新鲜感,从而生产出优秀乃至伟大的产品。