华为的CMM之路

发表于:2008-02-15来源:作者:点击数: 标签:华为cmmCMM
在华为内部对研发投入有一个硬性指标——按照当年销售额的 10% 投入。这个比例已经非常接近欧美非纯软件高科技企业的水准。 实际上,华为技术的 2001 年年报中,华为合同销售额为 255 亿元人民币。而华为在研发投入方面的数字是 30 亿元人民币。 华为的 30 多
 在华为内部对研发投入有一个硬性指标——按照当年销售额的 10% 投入。这个比例已经非常接近欧美非纯软件高科技企业的水准。
    实际上,华为技术的 2001 年年报中,华为合同销售额为 255 亿元人民币。而华为在研发投入方面的数字是 30 亿元人民币。
    华为的 30 多亿研发资金都投到了什么方向?华为技术公司研究管理部副总裁陈青坦言:“基本上都放在了软件方面。”目前,华为很多电信设备产品的价值体现在研发人员为之开发的软件上。在陈青眼中,智能网产品就是这样一个产品。“它没有什么硬件,在现成小型机上开发出来的软件才是核心的价值。”实际上,在华为独步天下的交换机上的所有增值服务是由软件实现的。
    因此,软件对于华为而言,“是非常非常重要的。”陈青说。每年,华为投入到软件上的工作量超过整个研发总部的 80% ;而在研发人员配备上“也差不多是这样的比例”,华为 11000 名研发人员中的 70% 至 80% 是软件人员。
    尽管国内电信行业还不习惯为设备中的硬件部分与软件部分分开买单,使陈青很难准确说出软件产品在公司利润中的贡献率,但据有关市场人士分析,以市场导向著称业内的华为,在软件产品上的收获应该与其投入比例不相上下。
    从这个意义上讲,甚至有人认为,华为才应该是中国最大的软件企业。

    从铁炼成钢

    1999 年年初,华为技术公司研究管理部副总裁陈青与华为总裁任正非签下了一纸“军令状”——“到 2000 年,使我们的软件研发能力有一个质的提高,基本达到 cmm 二三级间的水平。” 2000 年年底这个任务如期完成。但直到 2001 年 12 月,华为技术的印度研究所成为中国第一个获得 cmm4 国际认证的软件研发机构时,陈青的军令状才算画上一个权威性的句号。
    cmm (软件能力成熟度模型, capability maturity model for software )是美国卡内基梅隆大学软件工程研究所( cmu sei )应美国联邦政府的要求,于 1991 年开发出来的一种用于评价软件承包商能力并帮助其改善质量的方法。目前,它是国际上最流行、最实用的软件生产过程标准,以及软件企业成熟度认证标准。 cmm 由低至高共分为 5 个级别:初始级、可重复级、定义级、管理级和优化级。
    华为接触 cmm 是在 1999 年初,为了更好地培植自己的生命线——软件,华为对内部组织结构进行了矩阵式改革。陈青原先所在的中央研发部更名为研究管理部。陈青阐述了部门更名背后的实质:“以前,华为的开发部是按照产品分类的,一个产品有一个开发部。现在,一个研发项目,从研究到市场整个过程都要考虑,就像对待一个投资项目那样,以研究为主,有市场调研、财务,还要考虑生产。以前,部门之间比较独立,现在,部门界限并不明显,而是按照产品来组织 pdt (产品开发小组, product development team )。 pdt 包含所有部门的成员,更强调团队协作。”如今,在华为已不存在研发部门开发完产品后再将产品交到别的部门的现象,而实行全流程式的整合。
    这种华为自发建立的软件管理流程,虽然还不完善,但是在思路上已经开始接近 cmm 的精神了。陈青觉得:“以前我们的软件研发最后能不能够成功,需要依赖运气,或者依赖团队里是不是有一个天才式的开发人员。这样的管理状况经常使华为的生命线变得非常脆弱。要有效地控制华为在软件研发中日益庞大的投入以及逐渐庞杂的资源积累,几乎是非上 cmm 不可了。”
    也许从那个时候开始,在任正非眼中, cmm 变成了把华为的生命线“去除杂质”、“由铁变钢”的炼钢炉。

    为什么是印度

    1999 年 6 月,华为在印度的“硅谷”班加罗尔成立了印度研究所。一些曾被派驻到印度所的华为员工认为,公司在印度设立研究所“有些得不偿失”。他们在印度并没有见到很多高水平的软件工程师,尤其印度所设立之初,由于在当地缺乏名气,华为聘用的印度工程师水平普遍低于国内派驻的员工。后来,华为通过提高待遇,的确招到了一些软件“高手”(据说,华为印度所的待遇仅低于惠普公司)。目前,华为印度所是其最大的海外研究所,有 500 多名员工,其中 1/3 是由国内派过去的。     
    在考量印度所的优势时,华为管理层发现,印度有世界上最好的 cmm 环境。陈青说:“这种环境中国现在逐渐开始成熟,但两年前是没有的。”当初为了了解 cmm ,陈青去了很多书店,想买一些相关的书,但他发现国内书店里有很多软件编程语言方面的书,而软件管理、软件工程方面的书籍可谓凤毛麟角;然而在印度的书店里情况正好相反,软件管理方面的书籍比编程语言的书要多,那儿有各种各样的 cmm 著作。此外,由于其国内市场非常有限,印度的软件企业主要是面向欧美市场做软件外包项目,因此,它们十分重视导入 cmm 。目前,全球一共有 74 个 cmm4 级研发机构、 66 个 5 级研发机构,其中一半以上都在印度。“印度在 cmm 方面很有自己的创意,他们已经把 cmm 做成国家的品牌了。”陈青说。
    印度拥有大量通过 cmm 认证的软件企业,印度软件从业人员对 cmm 的了解程度和接受速度都非常之快。正是由于这些“本地化”优势,华为决定将印度所列为整个企业引入 cmm 的先锋。 2001 年初,印度所的 coo 将年底通过 cmm4 认证写进了自己的年度目标书中,送到了华为位于深圳的研发总部。
    印度所的成功因素,一方面与印度当地的环境有关,而华为自 1988 年成立后经过十几年、开发上千万行代码所积累的软件管理、控制经验也非常重要,这几乎是印度所一开始就挑战 cmm 4 的勇气来源。对照 cmm 二三级中的一些基本软件工程( kpa ),陈青发现,华为的经验与 cmm 的要求有不少重合。
    比如在 cmm2 里有一个重要的 kpa 是需求管理。“我们以前可能并不很清楚这到底是什么,但我们在 5 年前设立了一个总体技术办公室。它负责对所有研发项目的立项进行控制——要不要做这个项目、做成什么样。”总体技术办公室的另外一个职能与 cmm2 中要求的更改控制委员会颇为近似:项目在进行中,如果相关技术、用户需求发生变化,总体技术办公室还要控制项目的变化幅度,令变化不能最终影响到成败,“否则的话,就丧失了根本。”

    复制印度的成功

    华为 cmm 在印度的成功并不是一帆风顺。陈青坦言,他就没想到在推进 cmm3 中的同行评审的 kpa 时,华为的企业文化却遭遇到异质的印度文化。一次,华为印度所的一个项目组在讨论技术方案时,国内去的员工就方案争执不下,场面激烈,大家都在拼命叫,想让自己的意见被别人接受。就在难分难解之际,一位印度经理悄悄地把争吵的一方拉到一边,说:“你不要那么大声,如果你很愤怒,就使劲握着拳头,等平静下来再去讨论。”
    华为的企业文化鼓励员工在评审中尽可能全面地表达出自己的意见,而印度员工则很难适应这种文化。印度员工中的这种平静的氛围,使他们不一定会把自己的意见充分表达出来。有时候,尽管他们已经想得比较全面,但却不一定会提出很多意见。而在同行评审时,尽可能多地听取反面意见显然是必须的。看来华为的企业文化要把“印度本地化的弱点”彻底消除还需要时间。
    而有意思的是,中国员工在中国特有的文化环境中养成的某些“不良”习惯到了印度也没能彻底改掉。 cmm4 要求工程师每天记录开发进度、工作量,并将相关数据填入报表,以便准确统计一个项目所需的工作量。刚开始的时候,陈青口中赞誉有加的印度员工“真把填报表当回儿事,天天下班前都会填。”而中国员工要是一忙,就在一周工作结束后随意填一下。这种长期的文化积淀具有强大的腐蚀力,甚至已经波及到了印度员工身上。时间久了,有的印度员工也就有样学样,开始“糊弄”了。
    不过不管怎样,华为印度所一次通过 cmm4 的成功模式,增添了华为管理层在更多研发机构导入 cmm 的信心。据悉,华为正准备在南京研究所移植印度所的模式。但华为印度所的有些中国员工却怀疑印度模式能否成功复制到中国国内其他的研究所。
    实际上这些曾在印度所有过 cmm 经验的中国员工很有可能会被华为当作 cmm 的播种队派向各地。可是这些印度所的中国员工认为,中国长期以来排斥规范的文化可能会令 cmm 事倍功半。此外,国内软件从业人员普遍缺乏职业作风,往往不服管理,也让“过来人”信心不足。
    但陈青却非常乐观,虽然他也承认,在国内导入 cmm 的方式与印度模式会有很大的不同:“在国内,更多的要强调规范性。有时国内的工程师会过于急进,甚至越过规则,只为达到他的目的。”在很多中国人心目中看起来散漫的印度人,在陈青的眼中成了遵守纪律的模范。不过陈青认为,只要过了需求管理阶段,一旦进入开发阶段,印度模式将给华为国内研发机构带来很多可以共享的经验。华为的印度模式究竟能否复制,还是一个问号。

原文转自:http://www.ltesting.net