阅读:1645回复:8
介绍印度软件开发的文摘(大家有何感想?)
介绍印度软件开发的文摘
-------------------------------------------------------------------------------- 王小石 于 12/25/2001 10:14:33 AM 加贴在 项目管理 ←返回版面: 大多数象我这样对软件有浓厚兴趣的人,毕业后义无反顾地走进了企业,开始了程序员 的生涯。那时,我们迷恋“大全”、“秘籍”一类的书籍,心中只有代码。当我看到一行行枯燥的 代码变成了能够打电话的设备,变成了屏幕上漂亮的表格,变成了动听的音乐,成就感油然而生。 我觉得自己也是一个出色的程序员了。 在用户的机房中苦熬三昼夜解决软件的bug,也成了一种可以夸耀的资历。五年前 的某一天, 我把曾经让我兴奋自豪的大量代码和少得可怜的文档移交之后,来到了华为。这里有更 多的年轻人,我如鱼得水,可以充分发挥自己的想象力。 依然是代码,依然是匆匆地在纸上记下稍纵即逝的灵感(我们把它称作文档),依 然是无休止地和bug作斗争。当有一天,一个新来的同事拿着署着我的大名的文档,小心翼翼地来 问我时,我发现自己好象有点不认识它了。我心里有点沮丧,再看看代码,发现文档上记录的一些 灵感已面目全非。我当时不知道那位新来的同事感受如何,但我从那时起,好象意识到什么。现在 来看,那时的很多事情都是事倍功半。 去年年底,公司派我到印度从事项目开发,学习印度的软件开发管理方法。一种久 违的冲动在心底升起。印度,我已去过两次,虽说是走马观花,但是,印象还是比较深刻。我在访 问过程中和印度的工程师交流过,他们言谈中透着自信。他们给我讲解正在做的软件的测试环境, 给我看他们写的单元测试文档。当我看到一个软件模块的单元测试用例有三百多页时,我觉得心里 很是沉重。 当我第三次踏上这片土地时,我又见到了熟悉的人们,明亮的眼睛,温和的笑容, 随意的穿着,风驰电掣的摩托,还有大学校园中穿着拖鞋,手抱书本的年轻人。 我也见到了我的项目经理,一个个子较高,瘦瘦的年轻人,据说刚从美国回来,已 工作了五、六年。我听了心里很高兴,这回要一招一式地学两手。 需求分析的时间是一个月,项目经理和我们(实际上代表客户)讨论了proposal中 的内容,确定每一项都是需要的。然后他把模块大致划分了一下,开始进入计划中的学习阶段。每 个人在学习阶段要写出功能描述的胶片,给其他人讲解,不知不觉中,项目组的所有人对项目有了 整体的了解。 他还安排了一些培训,如他们公司的软件开发模型、项目组中各角色的定义,以后 及时的培训不断,只要项目组中有需求,他总是把qa或相关的人请来,培训很专业。需求分析完成 后提交了一份四十多页的文档,当我看到这份英文文档中我写的部分整整齐齐地列在其中时,我的 感觉很复杂,有些喜悦,但更多的是苦涩,我以前怎么就从来没有这样做过需求分析呢。在我写 文档的过程中,qa给我们培训过srs的写作模板,后来我还是不放心,让他们一个有经验的工程师 写了一段,我们再琢磨着照着写。这份srs虽然是多个人合写,但风格一致,内容详实。更为可贵 的是,一直到最后,这份需求分析的内容都没有改过,以至于我们没有机会走一下他们的需求更改 流程。 需求分析是项目的第一阶段,第二阶段的开发时间要根据需求分析的结果来确定。 当对方的首席技术官(相当于我们业务部的总体组长)来和我们讨论计划时,他们已列出了对每个 模块的代码行数的预测,可能存在的风险。根据他们公司的生产率--300行/人月,他得出了项目 第二阶段需要多少周。我们当时就提出了异议:1)公司对该项目需求很急;2)每月300行是否太 少;3)我们还有下载的源代码参考。他解释说,300行/人月是使得项目能达到他们质量标准的经验 数据,考虑到有源代码参考,生产率最多不能超过350行/人月。当他问我们公司的生产率时,我脑 袋里转了三个圈,没敢多说,大概六、七百行吧。他沉默了一会儿,然后坚定地说,我们这个计划 是建立在确保质量的基础上的,我想你们到印度来开发软件,首先看中的应该是我们印度公司的质 量保证。我知道你们不缺乏软件开发人员,你们为什么不选择下载的软件呢。几句话说到了我的痛 处,现在国内的弟兄们还在为使用下载软件移植的产品四处奔波呢! 随后的开发活动有条不紊,我们老老实实地跟着做。系统测试计划、用例,概要设 计,集成测试计划、用例,详细设计,单元测试计划、用例,编码,单元测试,集成测试,系统测 试。一个完整的v模型开发过程,其中每个过程都有review。当我们对一些设计的方法不太明白 时,项目经理给我们发来了相关的资料,我不知道他当时是怎么想的,一些基本的分析、设计方法是 十年,甚至二十年前的软件工程书中就讲到的,印度每个计算机专业的人员都是必修这些内容的。 而我们除了对一些具体协议的代码很熟之外,对这些常用的方法似乎一无所知。我感到一些羞愧, 进城直奔书店,把他给我开列的书找了出来,晚上躺在床上,仔细研读,我仿佛突然又遇到了能给 我指点迷津的良师益友。现在印度所已形成了强烈的学习风气。我回来后也推销了700多本书,这 些书教我们如何用工程化的方法开发软件,是成为一个软件工程师必读的资料。 我们的项目经理的计划控制能力很强,当有什么影响到项目计划的事情发生时,如 人员辞职、实验室搬家、某一模块预测不准(该模块是我们预测的),他总是采取必要的措施,减 少延期,调整计划。刚开始,我们对他们每天上午11点,下午4点下楼喝咖啡还有点意见,后来也 跟着喝去了,原来,喝咖啡时的交流非常丰富,从项目管理到设计方法,从技术发展到风土人 情,无所不包,对我们互相之间的理解,对团队的气氛很有帮助。我们项目的qa也在适当的时候出 现在我们的面前,我们对她的工作只有一些感性认识。她每次参加会议时,手里时常拿着一个 check list,项目经理准备相应的资料,回答一些问题,她打着勾,或写着项目经理的解释。她给我们 做培训时也很耐心,体现出很好的职业素养,我至今还在怀念她给我们的帮助。 我从事软件开发已有九个年头了,可我现在仍然不能说自己是个合格的软件工程 师,更不用谈什么合格的管理者。我看到一份报道说,瑞士洛桑一权威机构把中国的科技综合竞争力 从原来的第十三位调到二十多位,原因是他们调整了一些评估标准,其中有一条是中国合格工程师 的可获得性非常低。想着弟兄们熬红的双眼,四处奔波升级的疲惫身影,我有一个强烈的愿望:快 把我们自己升级成合格的工程师吧。 |
|
|
沙发#
发布于:2001-12-29 17:36
感慨良多!
最近到几个公司去应聘,说起软件工程,负责人就顾左右而言它。 更令人心寒的是许多人一点都没有这个方面的意识,也难怪我们的产品质量是如此之差,开发效率如此之低,没办法,明明是有规律可循,偏偏贪图眼前的利益不顾客观规律,最终受害的还是自己。 |
|
板凳#
发布于:2001-12-29 22:27
感慨良多! 说实话,我并不认为所谓的软件工程在大多数国内的开发中 有用以及一大堆蠢驴在软件工程的良好组织下能够写出好程序。 linux的开发并没有多少这些概念。而且一个月300行代码也让 吃惊。如果是一个100个人的小组的话,那我就觉得不错,但是 如果是一个5个人的小组,每个月一个人只能写300行代码就让 我非常吃惊。我认为一个人一个月写1500行代码并不困难, 我不知道为什么还要5个人的小组。 “让我们坐下来开始编码,看看会发生什么” |
|
|
地板#
发布于:2002-01-02 23:43
说实话,我发现中国的确需要软件工程。
我现在做的东西,有80%都是在重复前人的工作,我实在想不通,当初他们为什么不多考虑考虑以后改进的事,每次改动或换人的话都要从头做起。真是无聊! |
|
|
地下室#
发布于:2002-01-03 12:07
说实话,我发现中国的确需要软件工程。 那是因为开发者没有经验。此外,没有遵循“总是要扔掉 第一个”的原则。目前我开发任何软件,总是要扔掉第一个 已经开发了80%的东西。因为一开始,我总是不清楚我会遇到 什么问题,软件的具体需求。等到开发到了80%的时候,我才 基本明白。如果我对该软件有什么继续使用的需求,我会 在第2个已经完成了100%要求的情况下重新写一个。但是就算 这样,也很难让我在开发下一版本时放弃重新设计,完全重写 的冲动。 |
|
|
5楼#
发布于:2002-02-19 16:21
我们和印度不一样,我们要有自己的核心技术。(microsoft,oracle可没过什么cmm)大家看看这篇文章吧。
中国软件业:绝不能COPY爱尔兰、印度模式! 作者: 成一虫 评价: 上站日期: 2001-09-14 内容说明: 来源: ChinaByte |
|
6楼#
发布于:2002-03-28 08:26
说实话,我发现中国的确需要软件工程。
我们公司现在做的东西,有80%都是在重复前人的工作,我实在想不通,当初他们为什么不多考虑考虑以后改进的事,每次改动或换人的话都要从头做起。几呼每个人都是英雄,但加到一齐。。。。。。。真是无聊! :( :) :D ;) :( :) ;) |
|
7楼#
发布于:2002-04-01 23:08
microsoft is only cmm2,but it is microsoft.success is best true.
|
|
8楼#
发布于:2002-05-11 11:50
作需求分析,白盒测试,代码走查,编写测试用例,真是一件费时间的工作,把这些都加到每月的程序行数里,算下来。他们作的还真挺快的。
|
|
|