信息系统项目管理师论文范例5:利用CMM保证软件质量【 摘要】 本文论述了如何在一个规模较大的网上管理系统的开发中结合CMM二级的框架要求,以及软件工程学的质量保证策略进行项目的软件质量保证工作.本项目的特点有:( 1 )开发人员多,有40人左右;( 2 )采用面向对象分析与建模技术,JAVA语言,WebLogic应用服务器等以前项目中未采用过的开发模式和技术.因此不确定性因素很多,急需采用有效的质量保证策略.公司为了提高软件开发能力,已经于近期全面引入了当今软件界正在流行、且行之有效的CMM质量保证体系,并在顾问公司和主评审员的帮助下,由公司的SEPG结合公司实际,制定了初步的规范体系和模板文件,并决定将本项目作为试点项目.本文详细论述了作为SEPG 负责人之一,并且担任本项目质量保证人员的笔者,是如何在本项目中有效推行CMM二级质量保证措施的,并指出了其中的经验教训和有关的建议.【 正文】 本项目是一个面向政府管理部门,全市房地产企业和个人用户的网上管理系统,它既是一个电子商务项目,又是一个电子政务项目.本系统采用了B / S 结构,融合了政府部门和房地产企业的内部网上管理系统于一身,同时作为全国建设系统信息化的一部分而实现Inter-net平台上的上下集成.它还提供信息发布、房屋交易等电子商务功能。本项目对系统的安全以及可靠性等方面有着较高要求,公司决定采用三层架构模式的J2EE环境作为运行环境.另外,本项目参与人员众多,面临看新技术、工期紧等影响软件质量的不利因素,对软件质量保证工作提出了很高的要求.本人作为公司CMM实施工作的负责人之一,以质量保证人员的角色参与到项目的开发和管理工作中,主要负责质量保证策略的建立以及实施工作.一、以CMM二级理论为指导,采取措施保证开发过程与开发规范的符合性,以过程质量的提高来保证产品的高质量1、建立起明确的权责制度,减少因权责不明而产生的混乱为确保质量保证人员有独立的途径向公司反映开发中的问题,同时为了避免质保经理与项目经理、软件配置经理之间过分隔阂,本人在项目启动阶段,起草了《项目管理人员责任书》,并由相关人员评审通过;并提议公司设立了高级经理交涉,以快速处理纠纷.为防止开发人员与项目管理人员在规范化开发过程中过度依赖规范而主动性不高,以及可能产生的相互埋怨,制定并实施了《项目开发人员守则》,由各项目级每个成员在参加项目之初进行签名式确认,以解决开发过程中应规范滞后和实施不力而引起的混乱问题.2、以制定的《质量保证计划》为纲,全程监控各开发工作的过程建立和符合性问题在项目启动阶段,就依据CMM二级要求和公司发布的项目开发规范,制定并基线化《XX项目质量保证计划书》,在计划书中详细地制定了质量保证工作的内容和进度安排。计划书中主要有职责、培训工作、检查评审及组织工作等四方面的内容.职责方面详细说明本人作为质量保证人员在项目中的全责以及主要活动,澄清了与各开发角色的关系,主要起到项目成员监督质量保证人员的作用.培训方面指明了为有效推行CMM质量体系而进行的有关培训,有CMM基础理论方面的,也有本项目特色的规范方面的培训内容。检查评审方面指出了要检查评审的过程及提交产品,并列举了相应的通过准则,即CHECK-LIST.比如要评审的过程有项目规划阶段;检查项目经理和配置经理是否按有关规范制定了各自的计划书;项目组的技术评审活动是否符合评流程和规范;风险分析过程和任务分解过程是否符合规范的执行.对提交的工作产品,如需求文档和设计文档,是否经过了正式技术评审并基线化.这些都指明了切入时间和建议人员.组织工作方面指明QA(质保人员的简称)在开发过程要做的组织工作,如技术评审工作、测试工作、估计和工作细分等工作.这些组织工作主要是为了协助项目经理开展工作并能有效且及时地获得第一手质量方面的资料.对项目开发过程中的跟踪和检查,主要采取了现场参与、分析项目成员日报和周报、个别交流以及项目周例会的形式.二、以RUPCN和软件工程方面的理论为指导.制订了行之有效的技术规范文件CMM质量体系更多的关注软件开发过程方面的事情,也就是建义由谁在什么时候做哪些工作,但没有指明各个工作如何开展,也就是偏重于管理,偏轻于技术指导.为了避免在框架方面很有效,但应实现细节不明确而出现的“一条腿走路”的现象,特在项目启动之初就制定了要建立的技术规范,如需求文档编写指南、界面设计规范等.这些都列入QA的计划中了.考虑到本项目采用了面向对象的分析和设计技术,急需UML和Rose技术方面的指导性文档,因此将与UML高度相关的RUPCN体系为主要参考,其他软件工程理论为辅助参考,组织资源开发人员制定了各个开发阶段的规范性和指导性文档.实践证明,项目组成员有了CMM过程方面的规范,又有了指导开发工作的详细技术文档后,开发质量有了质的提高.主要体现在以下几点:1、各个过程的效率提高了,从而保证了各个交互成功的质量.比如,人员的选择,时间的必备,开展的流程方面真正按照CMM的建议做了,这些都保证了开发过程的高效.一个显著的例子就是技术评审过程.如果选择的人员资格不够,所花的评审时间很少,开展的时机不对,就很难保证提交成果的质量.2、人员之间的交流变得有效,自信心更强了.三、不足亟待改进之处由于是初次按照CMM的要求在项目中实践QA工作,因此不可避免地有一些不足之处,主要有:.因培训工作的不及时、不全面,导致QA实施工作遇到了一些麻烦..度量数据的收集和分析工作做得还不够.仅仅有少量的度量数据,分析工作也很少.总的原因是缺少一个有效的度量数据收集和分析机制.总之,这次项目的质量保证工作基本达到了CMM二级的框架要求,证明了过程质量是产品质量的重要因素,为本项目顺利地、高质量地完成做出很大的贡献.但也有很多教训值得吸取,需要在培训工作和QA度量数据收集和利用方面下更大气力.