基于CMMI的软件项目管理体系的研究及设计

2018-12-21        来源:《工业加热》作者:中冶赛迪电气技术有限公司 任佳        点击:
       摘要:随着软件技术的发展,CMMI已经在软件行业中得到非常广泛的应用。软件企业要想迅速发展,在取得CMMI认证的同时还应结合企业的实际情况,探索适合自身发展的道路。鉴于钢铁行业软件企业在项目管理上的现状,依据CMMI的管理思想,为软件项目管理设计出一套适合本企业发展的管理体系,使软件产品的质量得到控制及提高企业的生产率。
       关键词:CMMI;软件;项目管理;钢铁行业
       钢铁行业自动化控制软件是一个复杂并庞大的软件,随着项目类型、规模、客户需求及开发人员习惯的不同,导致软件的生产变得难以管理,因此软件开发过程亟需一个科学的管理和定义。提高自动化控制软件的标准化程度,是一个持续关注的问题。如今我们正处于一个竞争激烈、技术突飞猛进的时代,软件企业的竞争能力取决于该企业的过程能力。软件企业的过程能力越成熟,该企业的软件生产能力就越有保证,风险就能有效的规避,成本得到有效的控制,软件质量才能得到保证。
       CMMI全称是Capability Maturity Mode Integration,即集成能力成熟度模型,1994年由美国国防部、卡内基-梅隆大学的软件工程研究中心和美国国防工业协会共同开发和研制。CMMI是目前国际上最流行、最被认可的能力成熟度模型,目的是帮助软件企业对软件工程进行管理和改进,增强开发和改进的能力。CMMI认证必须通过主任评估师评估及软件公司在美国软件工程学会(SEI)网站上注册才能获得CMMI等级证书。
CMMI为软件企业提供了有效的改进方法,它帮助软件企业整合现有的管理体系,确定过程改进的目标和步骤、为质量控制提供指导,对软件企业本身项目管理的完善和产品开发效率的提高具有重要意义[1-6]。
       1.CMMI
       1.1集成能力成熟度模型
       CMMI即集成能力成熟度模型实际上是一种管理流程的标准化。CMMI有5个成熟度等级,分别为初始级、可重复级、已定义级、已管理级和优化级,每一个等级对企业的管理力度都有着不同的要求。企业可以改进管理模式,不断地提高自己的CMMI等级,从而达到提升管理水平的目的。
       1.2CMMI过程域
       满足CMMI三级集成能力成熟度,需要同时实现CMMI1级和2级的过程域。不同的等级,涉及的过程域要求不同,如表1所示。
       2.基于CMMI的软件项目管理体系
       结合钢铁行业自动化控制软件项目的总体架构和CMMI3级的要求,本体系包含两大过程,分别为组织级过程和项目级过程,其中组织级过程包含过程改进和培训管理模块,项目级过程包含项目管理过程、项目支持过程和软件生命周期模块,CMMI3级的要求体现在每一个模块的具体实现上,如图1、图2所示。
       3.组织级过程的建立
       3.1过程改进
       过程改进模块中定义了过程文件编制的标准及规范、项目团队建设指南、软件项目角色与职责统一规定、软件开发生命周期指南、工作环境标准、软件项目资产库建设与管理统一规定、团队协作平台管理指南、过程持续改进的方法与步骤。软件项目实施过程中,项目团队按照定义的各项标准组建团队、担任角色行使职责、使用各项资源等开展项目工作,并按照持续改进的要求向过程改进团队提供建议,以便过程改进团队识别出过程改进的机会。一旦过程改进建议得到认可,则修改现有的体系并重新发布使用。
       3.2培训管理
       培训管理为通过公共课程培训,满足各专业室、部门和公司的发展需要或多个项目的公共需求,建立培训机制。通过某项培训后,培训管理员在知识库中记录个人培训情况,为项目团队建设和人才储备做好了准备。
       4.项目级过程的建立
       4.1软件生命周期钢
       铁行业自动化控制软件生命周期中包含项目计划、需求分析、基本设计、详细设计、编码实现、软件测试、软件调试、验收及售后服务,做到全生命周期服务。根据钢铁行业软件开发的传统经验,软件开发过程中,客户会参与基本设计评审、软件测试及验收,因此,这三个节点成为软件生命周期中的重要里程碑节点。
       1)项目计划
       软件项目计划的目的是为项目的开发和管理工作制定合理的行动纲领,使项目成员充分了解项目情况,合理有序地开展项目各阶段的工作,按时保质完成项目目标。
       根据软件项目的类型及实际情况裁剪工作项。根据裁剪后的结果规划工作任务、时间及人员安排,并计划各类会议的举行时间及相关参与人。钢铁行业自动化控制软件的开发是一个长期的过程,当实际情况与计划不符,则需调整项目计划,并向上级领导报告。
       2)需求分析
       通过调查与分析,获取钢厂客户需求并定义软件需求,建立与客户之间对需求的共同理解,并控制需求的变更,维护需求与软件成果的一致性。对需求分析的结果进行编号,使其在后续的基本设计、详细设计及编码实现中得到体现,做到需求分析到设计阶段可双向追溯,以便需求变更时,能迅速修改后续阶段的设计。
       3)基本设计与详细设计
       基本设计的目的是在需求与详细设计之间建立桥梁,以指导开发人员去实现用户需求。软件设计师依据需求分析的结果,进行控制功能分配和软件结构设计,规划数据流程,设计报警、通信等功能模块及模块间接口,分析组件集成环境与策略,确定集成方案。
       详细设计的目的是设计自动化系统、控制功能模块、数据库、算法等,以指导开发人员编码实现能满足用户需求的软件产品。
       4)编码实现与软件测试
       编码实现的目的是使用选定的程序语言编写代码,实现功能满足需求。
       软件测试的目的是发现软件中的缺陷,以确保各单元组合在一起后能够按既定意图协作运行,并满足需求。测试工程师按照测试用例逐项进行测试,记录发现的缺陷,当缺陷进行确认和修改后,再次进行回归测试,直到所有缺陷都被消除为止,软件测试才能结束。
       5)软件调试
       软件调试的目的是确保软件在最终使用环境中正常运行并满足需求。调试工程师根据调试计划确认调试条件,在现场按照调试手册进行逐项功能调试,直到客户认可并同意接收。
       6)验收与售后服务
       验收由客户确认软件已满足需求,交付软件项目。验收后继续为客户提供售后服务,确保软件产品稳定运行。
       4.2项目管理过程
       1)项目监控
       软件经理和质量保证工程师周期性地跟踪软件项目进度、工作量、资源、工作成果、风险等,及时了解项目的实际进展,在项目实际进展明显偏离计划时能够及时采取纠正措施。监控数据与度量指标发生严重偏差时,找出显著偏差项并纠正,直到偏差被消除。
       2)风险管理
       风险管理的目的是对软件项目潜在问题进行识别,以便在整个项目生命周期中计划并在需要时启动风险的处理活动,从而减少这些潜在问题对达成目标产生的不利影响。
       3)采购管理
       从多个候选外包商中选择最合适的供应外包商,与其签订软件外包合同,并依据合同对外包软件服务执行过程监控和验收。
       4.3项目支持过程
       1)配置管理
       通过执行版本控制、变更控制等规程,以及使用配置管理软件(Team Foundation Server)来保证所有配置项的完整性和可跟踪性。配置管理员为项目成员分配不同的权限,使其在权限范围内使用项目资源。
       2)技术评审
       在项目计划中确定技术评审的时间及方式,召集评审专家在评审过程中发挥集体智慧,发现工作成果中的缺陷,提出问题和建议,及时消除缺陷,有助于提高产品质量、提高生产率、降低成本。在项目计划阶段定义需评审的工作产品。
       3)决策分析
       项目执行过程中遇到关键节点,并有多个可选方案时,采用决策分析过程方法,筛选方案,确保解决方案的质量。决策分析中定义了评价准则及评价方法标准,采用专家打分法评价可选方案,最终选出分数最高的作为解决方案。
       4)度量分析
       项目执行过程中,根据组织级度量库指标,定量地分析和管理项目过程以保证项目的顺利进行,定量地分析软件产品特性以保证产品质量。在项目监控过程中,使用实际监控数据与度量指标进行比较,出现偏差时能够给出纠正措施。
       5)质量保证
       质量保证工程师对项目全流程进行监控,及时发现问题,为项目组和管理层提供项目过程客观的可视度,确保项目目标的实现。
       5.基于CMMI的软件项目管理体系的应用
       中冶赛迪电气技术有限公司已通过SEI颁发的CMMI3级认证,并将基于CMMI的软件项目管理体系命名为软件开发综合管理平台。到目前为止,已有多个工程软件项目和科研项目使用了该管理平台。在实施过程中,各项目根据实际情况裁剪工作项,并严格按照该平台要求开展项目。与以往的软件项目管理工作比较,体现了如下作用:
       (1)更清晰的流程,避免职责混乱,小作坊开发模式;
       (2)更及时的成果检查,避免无谓的返工;
       (3)更高效的同行评审,改变冗长的会议;
       (4)更丰富的模板,帮助项目组轻松应对文案工作;
       (5)更规范的决策程序,避免一言堂;
       (6)更简洁的需求对应关系,帮助开发人员实现后续设计或变更;
       (7)扩展了组件库,帮助未来的项目节约开发成本。
       6.结语
       CMMI是软件开发综合管理平台设计的主题思想,通过对CMMI3级所包含的过程域的分析,结合本公司在钢铁行业自动化控制软件的开发经验,设计出一套适合本公司发展的软件项目管理体系。通过多个项目的实践,在提升软件项目管理的水平和效率方面有明显的效果,且有很大的推广应用价值,为企业走向国际化奠定了基础。(本文2016年发表于《工业加热》)
       参考文献:
[1]刁振军.CMMI的软件项目质量管理研究[J].黑龙江科学,2014(10):31-31.
[2]齐小玲,冯大鹏.CMMI体系建立过程及在项目管理中的作用[J].计算机科学,2013,40(11A):436-438.
[3]邓军.基于CMMI的企业软件过程与质量管理平台设计[J].湖南师范大学自然科学学报,2014,37(1):66-71.
[4]周金陵,张鹏.基于CMMI的软件过程改进研究[J].计算机工程与设计,2003,24(11):60-62.
[5]刘学仁,邵伟民,黄威.基于CMMI三级的企业项目管理系统研究与设计[J].计算机工程与设计,2009,30(13):3100-3103.
[6]廖茂林,李志蜀.探讨CMMI对质量管理(QM)的改进[J].计算机应用,2004,24(12):46-48.
 
分享到:

免责声明:
  1、pmo评论发布的所有资讯与文章是出于为业界传递更多信息之目的,并不意味着赞同其观点或证实其描述。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请浏览者仅作参考,并请自行核实相关内容。
  2、本站部分内容转载于其他网站和媒体,版权归原作者或原发布媒体所有。如文章涉及版权等问题,请联系本站,我们将在两个工作日内进行删除或修改处理。敬请谅解!

热词: PMO定位   PMO职责   PMO招聘  

活动圈

more
Copyright © 2019     PMO评论    版权所有    京ICP备17062359号-2    如转载本站文章,请注明原作者和原发布媒体
本着互联网分享精神,本站部分内容转载于其他网站和媒体,如稿件涉及版权等问题,请联系本站进行删除或修改处理
客服电话:010-89506650 89504891 非工作时间可联系:18701278071(微信) QQ在线:511524637
新闻与原创文章投稿:tougao#cpmta.com 客服邮箱:info#cpmta.com(请将#换成@)
PMO评论——我国唯一的PMO专业人士门户网站,隶属卓橡公司