软件开发周期延期浅谈

来源:互联网 发布:北京 考研 机构 知乎 编辑:程序博客网 时间:2024/04/26 02:53

软件开发是一个复杂的流程,整个开发周期因为不同公司的成熟能力cmm不同而不同。软件开发周期的延期通常是一个司空见惯的事情,究其原因,每个人大概也能说出个一两点:

   在一个极客头条中看到了关于这样的一篇文章:http://geek.csdn.net/news/detail/2256,这里没有直接点破开发周期延期的具体原因,而是用一个实际的比方来阐述这一点。整个开发过程是一个旅途一般,我们算好了线路,计划好了时间,并且精确地将途中的一些其它时间算进去,然后开始这段旅途。然而,事与愿违,最终会因为旅途总各种不可预知的事情耽搁了,比如高山,大河,恶劣天气等。

   软件开发也一样,项目开发团队在需求分析后,通过各种软件工程学的计算方法计算出时间计划,然后开发……而后,在进度与成本上的不均衡,找一批低水平廉价的码农,开始开发之旅,而后,部分人员受不了这种气氛离开,而后,项目经理了解情况,找来又几个经验丰富的开发人员,而后,他们对之前的系统状况不满意,后来,与项目经理商量,一致认为,将软件重新架构,甚至更改部分开发技术要求,再之后,开始来的那批开发人员又开始学习新技术……

  以上情况还是比较乐观的。带到整个系统流程能够走通,好了,用户开始验收测试,需求又来了,而且是每完没了,之后,各种加班加点……关键的情况是,初来乍到的程序员能经受这么个过程的折腾吗?

  大学期间在一个软件公司,公司是以VC开发一些应用的,继续给用户定制一个一百多万的B/S架构系统,便于管理,没办法,银行就是有钱,这么个小项目也发个一百万。之后就是公司了,领导一阵欢喜,之后便找一批我们这种没毕业的几个人开始读需求,还有的一个是刚从技术支持过来的,技术就是Java、jsp。而后开始开发,项目经理也是初来乍到,一个劲的搞进度。然后就这么赶紧找个平台,当时用MyEclipse,开发了几天,上头说,我们是上市公司,不能用。没法子,继续使用开源的Eclipse吧,情况有所好转,继续开发,毫无疑问。数据库需求是用Orcle10g,上头又发话了,我们是上市公司,不能用这个,要收费的,为了省钱。好吧,继续使用Mysql代替吧,大伙这阵蛋疼……

   开发继续中,经理发话,项目紧张,明年六月底开始上线,合同到七月。好吧,年底完成整个流程,一个多月,大伙加班加点,总算筹好了。过年开心回家,毫无疑问。年还没过完,项目经理打电话来催了,项目要求使用它们自己的开发平台什么EOS,老大的话听呗,说叫我们是苦逼的码农呢。然后,能用的代码就继续用,不能用的重新写。后来,又来个通知项目是要求开发人员中拥有EOS开发认证的,老大又叫一个同事往北京来考证来了。这么就又继续开发测试,测试中问题不断,反应到上级领导那,说我们这个项目没有测试资格。项目经理那个气的,直接就往我们身上来了,一阵狂骂。好吧,换了一个部门主管来管,部门主管技术很牛逼,听说都是公司挖来的。他要求开会个人对自己的一块功能讲解,我们也就听话讲喽,该过程发现好多问题,什么数据库连接池不够用导致崩溃,代码重用率不高,注释不多,维护性不好……要求重构。数据库使用oracle开始,进入实际模拟开发。后来问题是接踵而至,数据库改了,许多积累下来的分页啊、内置函数、主键外键等生成等待,慢慢改吧,继续加班加点。适逢本人在校间准备期末考试,上班时间有限,还有部分同时合作不顺利,心情不佳……项目进展缓慢。

   七月将至,项目依然在各种需求变更中进行,八月初,我们几个学校出来实习的走了……至今,2013年8月16日,听说项目还在测试和验收中。

   整个开发构成曲折艰辛,周期比预算完了好多,究其原因,我认为,公司上层对这一块不够重视,从需求开始就没有好的投入。后期开发成本进度没有衡量好,省钱省时导致最后的延期。这也许还有我们个人的原因吧。也许这就是软件产品开发的这么一个复杂的过程而导致的吧。