前言
当前国内存在大量的软件公司,这些公司的规模不大,开发团队一般3到8人,项目开发一般采取比较粗糙的开发模型,比如瀑布模型。经过问题定义,可行性研究,需求分析,总体设计,详细设计,编码与单元测试,综合测试成功的开发出了第一个版本并交付客户使用。
接下来就发现当初所做的需求不符合客户实际使用的要求;许多模块的底层开发人员离职导致程序无法维护;版本多处缺陷没有测试,导致客户数据部分丢失,客户满意度下降;由于项目开始延期,软件人员开始出现抱怨和生产率下降。而此时客户方面有提出了更多的应用需求,在这种情况下,怎么提高软件的开发效率,降低软件开发风险是摆在管理者面前的一个严峻问题。
通过软件开发实践以及参考相关的书籍,提出针对软件开发项目如何提高软件生产率,最大限度规避开发风险的具体实施办法。
2 软件项目的风险在哪里?
上述项目具有软件开发项目的典型特征,综合分析,我们认为软件项目开发的风险主要存在以下几个方面:
(一) 软件开发需求一般都不可能与客户同步,客户需求的变更往往导致大量的功能模块更改。
(二) 项目部分重点模块由于单人负责,导致有可能出现一个主要程序员离职导致整个项目开发进度停滞不前的问题。
(三) 测试没有跟上软件开发的进度,测试的进度如果跟上开发进度的时候往往又缺陷率上升。。
(四) 测试不能发现某些隐藏的潜在缺陷。
(五) 软件人员只是闷头开发,没有给软件开发人员很好的进度激励。
(六) 对软件开发人员的工作量的考核不够量化,目前一般都是量化到模块,没有量化到功能点的实现,如何实现精细化管理也是一个亟待解决的问题。
在分析问题之后,我们认为,对于前四个问题我们可以采用更改团队组建和团队开发实践变更的办法来进行改进,而对于第五个和第六个问题,我们需要采用量化的项目管理的办法来建立三条控制线来及时对项目进行掌控,降低项目开发的风险。