【摘要】结合CMMI项目管理和软件工程,详细的探讨了对日软件外包的项目管理,经实际应用,取得了理想的效果。
【关键词】软件外包;CMMI;项目管理
日本软件发包企业通常都非常关注项目管理和软件开发质量,同时还关注软件质量检查、评价手段。但我国的现实情况是,多数承担日本软件外包项目的企业还没有开展规范化、制度化的项目管理,导致软件开发进度缓慢、费用超支、软件质量低下,极大的削弱了我国对日软件外包的竞争力。总的来说,我国接包企业一定要增强自身的项目管理水平,以应对激烈的市场竞争。
1.通过CMMI来管理对日软件外包项目的必要性
所谓CMMI模型,也就是能力成熟度模型集成。CMMI是当前全球最为实用、应用范围最广的软件企业成熟度等级认证标准。拥有高级别CMMI认证的软件外包企业能够为自身赢得软件外包项目创造有利条件。
据权威机构的研究表明,企业如果重视CMMI投资,会获得5:1至8:1的投资回报率。因而,对日软件外包企业要积极引入CMMI来进行对日软件外包项目的管理。
2.对日软件外包项目的主要特点
(1)主要任务为项目测试和代码编写。具体工作重点分布于软件实施阶段,多开展的是中下游的局部开发工作,需要严格遵循客户的要求来进行软件的维护、测试和编码。
(2)客户普遍要求软件产品具有较高的质量。对日软件外包项目重视验收、测试和评审等相关环节的质量把关,要求严格的还会明确规定缺省率目标值,如果达不到要求,客户就会要求返工重作。
(3)要编写数量众多的管理文档和开发文档。客户普遍要求利用文档来对项目进度和品质等进行跟踪,部分客户还会将其纳入到产品交付范围。
(4)有着较多的规范性要求。
(5)项目通常只拥有较短的开发周期,导致工期较为紧张。
(6)以本为单位来进行软件产品的交付和开发。
3.对日软件外包项目的CMMI模型
对日软件外包项目的CMMI模型将计划作为主线,将生命周期作为线索,在管理工作实施过程当中,主要利用监控手段来保障项目能够实现预期目标。
由于对日软件外包项目管理具有一定的特殊性,因而其CMMI模型强调监督和控制,重视CMMI三级中与项目管理相关的过程域以及项目管理体系中的九大知识领域,要求在合适的时机计划管理上述内容。
4.对日软件外包项目的CMMI模型的子过程
(1)项目启动
作为对日软件外包项目的起点,项目启动环节基于客户所提供的资料,全面了解项目的开发周期、关键技术、体系结构、客户要求、产品范围、主要功能和特色等相关方面的要求,并获取相关的软硬件设备和人力资源。完成筹备后,企业要举行项目启动会议,进行概况介绍和明确分工。
(2)项目计划
对于项目计划过程域来说,有着估计构建、项目计划拟定以及承诺获得这三个特定目标。对应的,项目计划的具体阶段主要如下:
①项目估计。
由于客户已经事先拟定好了产品范围,因此,项目估计的重点内容应当为项目成本、工作量以及产品规模等方面的估计。务必基于历史经验数据和客户需求文档,将项目范围的估算结果通过工作分解结果WBS来予以表示,进而估算产品规模。以此为基础,结合成员生产性和项目难易度等因素估算差旅费、活动费、软硬件消耗等项目成本以及所需工作量。
②项目总体计划的制定。
按照文本形式,项目总体计划对项目风险管理计划、度量和品质保证以及进度安排、资源分配、任务划分和人力安排等内容予以明确,以便为项目监控以及项目开展提供必要的依据,以利于项目各方承诺和共识的达成。需要注意的是,由于是全面性的规划性文件,因而一定要严密、客观的进行评审。
③项目计划变更控制。
由于客户需求、委托变更、纠正性措施以及承诺变化,对日软件外包项目的总体计划也会发生相应的改变,以满足项目的需求。
(3)项目监控
对日软件外包项目的CMMI模型的项目监控子过程主要包括了项目计划的跟踪以及偏差纠正。
①项目计划跟踪。
利用月会、周会等形式,全面记录和了解成员的实际工作状态,并对承诺关系的落实情况和项目的进展情况进行定期评审,在文档化后向客户和上级领导通报。
②偏差纠正。
及时分析获得的跟踪数据,在出现重大偏离情况时,采取有效、合理的纠正措施,对偏差行为进行管理和纠正,直到偏差消除为止。
(4)项目实施
通常情况下,项目活动主要集中在软件的维护、测试和编码等环节。因此,上述环节一定要严格落实规范制定和评审工作,对错误进行记录和纠正。
①编码。
通过对详细设计式样书的充分理解,及时发现存在的潜在问题,严格遵守质量规范和开发规约,按照“本”为单位开展代码设计工作,以便源程序能够达到规范和客户的要求。程序一定要作到清晰易懂、结构良好,同时,要严格评审编码阶段的工作,以便及时发现问题并进行纠正。
②测试。
对模块的正确性进行检查,然后再顺序组装后开展结合测试工作,主要对集成功能及模块间的接口进行测试。严格按照测试标准来修正和记录所发现的问题和缺陷。
(5)结项管理
①产品交付。
严格按照项目进度计划将软件产品交付给客户,在此之前一定要开展杀毒处理,同时要落实版本控制,避免出现版本混乱现象。
②维护。
在交付产品之后,还要对客户发现的软件缺陷进行修正,企业应当组织骨干技术成员来对存在的缺陷進行消除,完善软件产品的功能。
③项目总结。
评定和总结项目成员的个人绩效、项目资产、项目经验教训、收益和质量等指标,并形成文档化,以便日后参考。
5.结束语
CMMI项目管理能够有效提高对日软件外包企业的管理水平,确保软件能够保质、按期的交付,并能够使项目开发成本控制在计划成本之内,同时还能够为日后的项目开发工作提供借鉴。但是,对日软件外包企业的项目管理工作还应当充分结合自身的实际情况,开展差异分析,以便真正提高自身的项目管理水平。
参考文献
[1]梁良,张大维,邓文红.软件工程在软件外包中的应用[J].中国民航飞行学院学报,2005(03).
[2]蔡锡荣.信息技术在勘察设计项目全过程管理中的应用[J].水运工程,2009(07).
[3]博一雪.在信息系统建设中引入信息系统项目管理的研究[J].内蒙古科技与经济,2007(12).
[4]徐嫣,祁振强,刘国明,王晓东.基于CMMI的航天项目管理模型[J].质量与可靠性,2010(04).
作者简介:董小瑜(1993—),女,江西景德镇人,大学本科,现就读于重庆文理学院计算机科学与技术(服务外包对日软件工程)专业。