软件开发中的鱼渔之别

来源:互联网 发布:淘宝卖家联系方式 编辑:程序博客网 时间:2024/04/30 08:38

     软件开发模式几经变化发展到今日,那种单枪匹马孤胆英雄式的软件开发模式已成为人们美好的记忆,取而代之的是大规模团队式的开发;软件厂商对软件开发管理的重视程度远远高于对具体代码的编制;软件厂商对可读性的诉求远远超过程序员对个人编程技巧的炫耀。

  产生上述变化的根本原因在于:伴随着硬件平台的迅速发展和用户需求的不断扩大,
软件产品的功能越来越强、体积越来越大、复杂度越来越高,而且升级也越来越快。以微软Windows2000为例,在40多个月的开发周期里,采用的是每天24小时不间断地开发方式,涉及到的开发与测试人员超过5000人,每月备份的数据量高达88TB,单是为测试产品而编制的代码就超过1000万行。

  因此,无论是从需求分析、系统设计、编码、测试、营销准备在内的软件开发周期来看,还是从软件的复杂性来看,软件开发的管理已在软件开发过程中占据着非常重要的地位。还以微软为例,在微软的项目组通常会有三种主管:项目经理、技术经理和程序经理。尽管他们工作的侧重各有不同,但却有两个共同特点:他们都是项目组中最资深的程序设计师,他们的主要职责是对开发过程的管理而不是编程。

  Standlish Group的调查显示,只有16%的软件开发项目获得成功,53%的项目无功而返,剩余31%的开发项目被取消。软件项目成功与否在很大程度上与软件开发的管理有关。

  过去的十多年间,在PC平台上,我国曾涌现出不少颇具传奇色彩的程序员,他们的名字与他们的软件作品紧密联系在一起。说起某位程序员,人们自然想到他的得意之作;反过来,提及某个软件,人们马上会说出它的作者。人们对这些程序员才华、悟性和勤奋的赞美掩盖了个体作坊式软件开发模式的局限。国内很多软件公司长不大的原因多种多样,但以往作坊式的开发方式不能不说是其中重要的因素。不要说像Windows那样投入数千人进行开发,我们能数出几个投入数百人进行开发的项目呢?同样,我国软件产业起步不晚,但发展规模并不如人们预期的那样大,与开发模式上的局限形成的瓶颈也不无关系。

  事实上,我们不缺从事具体编码的程序员,或者说,我们有足够的后备力量;而我们缺少的是系统分析员这样高层次的软件人才,缺少的是现代软件开发与管理的观念与实践。

  当前,我国软件产业迎来了空前的发展机遇,国务院18号文件与信息产业“十五”发展计划为软件产业创造了前所未有的宏观环境。最近,信息产业部又与微软公司就共同举办软件培训事宜签署了合作协议,由电子信息产品管理司牵头组织、微软中国研究开发中心配合,面向中国软件企业CEO/CIO等,进行具有实践意义和特色的定期专业高级培训。这是政府主管部门在积极地推进我国软件企业与国际先进的软件开发管理接轨之举。

  各方对这种培训的反应十分积极。电子信息产品管理司张琪司长和微软中国研发中心总经理张湘辉博士分别担任了第一天培训的主讲。在第一期培训班报名表上,记者看到了北大方正CEO肖建国、清华同方CEO孙家广、北京新天地总经理张一方、四通利方总工严援朝、北京金山总经理雷军、汉王总裁刘迎建、中软网络CEO程春平等名字。现在又有不少企业报名参加今年10月举办的第二期培训。

  人才、知识产权与软件开发管理是软件企业的财富所在。因而,软件开发管理轻易不会外示。张湘辉博士告诉记者,微软在海外没有做过类似的事情。微软公司认为,教人如何去写软件是件很有意义的事,从总部到中国公司都是很支持这件事的。张博士要求担任讲课任务的部门经理,除了属于商业秘密的数据外,要把微软研发管理的精华讲出来。

  “授人以鱼不如授人以渔”说的是方法的学习比知识的学习更重要,分析与解决问题的能力比解决某个具体问题更为重要。当很多企业把微软作为企业发展的象征性目标时,学习微软做事情的方法可能更为重要。这也是我们常说的“与其临渊羡鱼,不如退而结网”。

  目前,信息化发达国家软件服务业与硬件的市场规模约为1∶1,有的国家还要更高,而我国目前大约为1∶10,软件服务业远远落后于硬件。众所周知,有了硬件平台、网络平台、操作系统平台而缺少了应用,信息化也只是一句空谈。微软之所以拿出看家的东西,也是看中了中国巨大的潜在市场:只有把饼做大,才能双赢。

  作为全球最大的独立软件商,微软的软件开发有它独到的地方,却不是唯一的。正如张博士所说,不同的软件企业在软件开发上不尽相同,微软也没有认为自己的开发方式是最好的。如果其它知名的软件企业也能效仿之,使得中国的软件企业能够兼收并蓄,进而促进中国软件产业的发展,那么,软件企业不单是多赢,而是要赢多。