关于我们

在线客服

帮助

24小时客服:010-82326699 400-810-5999

建设工程教育网 > 建筑文苑 > 工程管理 > 正文

软件配置管理 软件项目的先行者

2009-11-25 13:53    【  【打印】【我要纠错】

  软件配置管理是一门应用技术、管理和监督相结合的学科,通过标识和文档来记录配置项的功能和物理特性,控制这些特性的变更,记录和报告变更的过程和状态,并验证它们与需求是否一致。

  “配置第一”这个理念是一位IT公司的项目经理告诉我的,他用了“深刻教训”四个字来为这个言论作注脚。他告诉我这样一件事:

  这家公司曾为电信企业开发一个手机收费的中间业务系统。按规定,系统的收费平台应根据第三方传来的手机资费信息进行扣款。其中,负责网络通讯的路由器是由多家厂商提供的。

  在项目试运行阶段,系统运行一切正常。这时,有一家路由器厂商(以下简称A厂商)要升级运行程序,网络通讯接口要变,A厂商向电信提出了修改接口程序的提示。负责项目开发的这家IT公司很快完成了通讯接口修改,和A厂商联调测试无误后,准备将接口程序发布运行。负责程序发布的老兄嫌版本发布流程太麻烦,便走捷径,私自将程序更新上线了。未料到,接口的改变影响了电信与其他厂商路由器的数据通讯。途经A厂商路由器的通讯数据没有问题,可其他品牌的路由器却收不到信息了。后果是:当天电信用户的手机资费信息数据报大量遗失,相关电信资费损失无法挽回。

  负责软件承包的IT公司境遇可想而知。“痛定思痛,痛何如哉!”从此,该公司痛下决心,买工具、定规范、搞培训,将配置管理切切实实地作为日常重点管理工作来抓。

  配置管理是什么“东东”,它真这么重要吗?

  软件配置管理是一门应用技术、管理和监督相结合的学科,通过标识和文档来记录配置项的功能和物理特性,控制这些特性的变更,记录和报告变更的过程和状态,并验证它们与需求是否一致。

  简而言之,配置管理(Software Configuration Management , 简称SCM)就是对软件产品的配置项进行控制和管理。它的目标是最大限度的减少错误和混乱,保证软件项目工作产品在整个生命周期内的完整性。

  配置管理的对象是配置项,主要包括:接口描述、过程描述、需求、设计、测试计划、测试结果、代码及模块、工具、系统参数、版本描述等。配置项与配置人员、配置工具、配置规范等构建起了整个配置管理体系。

  配置管理的出现是项目发展的必然结果

  软件技术迅速扩展,项目开发日趋复杂,人员数量不断扩充,系统开发平台多样化,开发及测试场所分布各地,开发规模日益扩大,随之而来的管理复杂性急剧增加。

  软件开发永远不变的特点就是变化,需求变更、技术更新、人员变化、环境变化、架构变化等层出不穷,所有这些使项目风险大大增强,如何应对并追溯变化,从而控制变化,是一个重要课题。

  软件系统越做越大,产品组件动辄上千,多者上万,版本控制如何着手,令人头痛。

  “乱世出英雄”,配置管理便在这样的环境下应运而生了。

  配置管理的管理范围恰是项目开发、协调最混乱的地方:

  交付给用户的软件产品(需求、源代码等)

  软件产品的外部产生“环境”(操作系统参数、编译程序等)

  对项目内部而言工作产品(过程描述、流程控制等)

  那么,这种管理的特点是什么呢?它到底能带来什么好处呢?

  特点

  相对独立。配置管理相对独立于其他管理控制活动,它可以在其他活动都未开展或还不成熟的时候独立进行。

  是其他各项管理的基础。需求管理、需求变更、资源变更、系统维护、合同管理、计划管理、文档管理等都是在配置管理这个“平台”基础上进行的。

  优点

  对项目产品单元进行统一的版本变更管理,统筹安排系统的修改、发布以及系统资源的使用,预防开发的进程混乱,保证系统版本的完整和一致。

  支持并行开发与维护。软件开发过程时常要求多个开发人员同时在同一个软件模块或项目文档上工作,同时对同一个代码或文档部分作不同的修改,配置管理能满足这样的要求,同时使跨平台、跨地域的并行开发成为可能。

  使项目管理人员能掌握项目开发进度。配置管理系统可以提供配置状态报告,对每日变更完成的工作量、开发中存在的问题等会有详尽的反映。

  减少人员变动对项目带来的影响。项目的变更轨迹可跟踪,文档的增删、代码的修改、参数的改变、配置项的状态、基线之间的差异等都有案可查。参照变更的原因、内容描述等内容,我们便可对项目的开发进程有详细而完整的把握,从而避免对相关人员的过分依赖。

  配置管理的重点工作描述

  1) 配置项识别

  软件配置管理工具的选择

  “工欲善其事,必先利其器”,配置工具的选择对配置管理的好坏影响巨大。

  配置工具是配置管理的自动化平台,是一个管理具体实施的基础。一套功能强大、实施容易、管理方便的配

  置管理的好坏影响巨大。

  配置工具是配置管理的自动化平台,是一个管理具体实施的基础。一套功能强大、实施容易、管理方便的配置管理工具,可以极大地提高配置管理的实施效果。

  目前配置管理工具大致分3类:

  版本控制工具,提供基本的版本管理功能,例如:CVS, Visual SourceSafe;

  项目级配置管理工具,适合中小型的项目,除版本管理功能外,还提供变更控制、状态统计功能,例如:ClearCase,PVCS,StarTeam;

  企业级配置管理工具,除上述功能外还提供较强的过程管理功能,例如:ALLFusion Harvest.

  如何选择配置工具呢?通常的选择标准如下:

  提供基线化管理,对于基线有明显的标识。在工具所管理的配置库中,所有的配置项都应清晰、完整的得到保存,对于同一基线所包含的配置项可以迅速而明确地查到。如:项目人员在实施某一个需求变更时,可以方便地查到与此更改相关的编码、文档、测试用例、使用手册等产品单元,从而保证变更的完整性。

  操作简单、流程便利。项目开发是一项复杂工程,项目人员工作繁重,应尽量减轻他们的工作压力,消除其使用戒心。

  提供完善过程管理功能。能根据实际情况定制不同的开发规范,包括访问权限控制、开发规则的实施等;能跟踪、控制开发过程中出现的缺陷、变更等,可以随时了解变更的实施状态。

  提供灵活多样的配置状态报告。在配置的不同阶段能提供多角度的配置状态报告,详细反映配置项的变化过程,追溯变更任务的进程,为项目管理提供第一手参考资料

  管理规范的制定与推广

  通常人们会认为,配置管理就是工具管理,就是找几个人,买几个工具,就可以开干了,这实在是大大的误解。再好的工具都要靠人来操作、管理。工具是死的,人是活的。工具虽好,若无严格可行的规章、流程做保证其实施,要做好配置管理是空谈。

  配置管理规范是成功实施配置管理的根本保障。它包括:配置管理计划、版本控制规则、变更控制规则、配置库操作规则、配置审计规则等,所有这些,构成了完整的配置规范及配置管理基础。

  如何做好配置管理的相关规范及流程呢?

  1、明确项目要做到的配置管理目标。

  2、根据目标确立配置管理应提供的功能。

  3、确定相关人员,明确其岗位职责。

  4、确定是否要引入配置管理工具,如需引入,要引入何种工具。

  5、确定配置管理流程。

  制定配置管理计划。

  1)配置控制委员会(Configuration Contronl Board ,简称CCB)根据项目的开发计划制定阶段里程碑,明确开发策略;

  2)配置管理人员(Confiuration Management Officer,简称CMO)根据CCB的规划,制定配置管理计划,交CCB审核;

  3)CCB审核通过配置管理计划后,将其交项目经理批准,然后对外发布。

  执行配置管理计划。

  1)CCB设定项目研发的初始基线;

  2)CMO设立配置库与空作空间,为软件开发做准备;

  3)开发人员根据软件配置策略获得授权资源,进行研发工作。

  4)CCB根据研发进展情况,审核项目变更请求,根据里程碑来确定新的基线,推进配置管理活动。

  6、制定相关规范来保障流程的实施。

  规范规定完毕,还要有执行,如何来推进配置管理各项制度及流程呢?

  领导的重视是前提,没有领导的支持与推进,过程控制规范便没有执行力,是一纸空文。

  培训。不光要对配置管理人员进行培训,还要对相关的技术及管理人员进行培训,使他们认识到配置管理的重要性,应如何来应用,如何来配合。培训是化解阻力的重要手段,大家只有了解你的好处才会支持你,否则,迎接你的往往是拒绝。

  建立反馈渠道及反馈机制。“鞋子合适不合适,只有脚知道。”规章合理不合理,用户最清楚,听取各方的意见,不断自我完善,才能建立起切实可行的规范制度。

  结束语

  配置管理离不开“人、工具、规范”三要素,我们若把软件项目比喻成隆隆向前的战车的话,配置人员便是战车的机械师,负责及时通报战车的性能、方位,排除系统故障;配置工具则是战车的传送带,平稳而准确地推动着战车前进的步伐,确保它到达一个又一个新的目标;配置规范就是润滑油,有它在,战车的各个部件才能精确地耦合运转。配置管理对项目是如此重要,没有它的保障,项目“战车”便是一堆废铁。

延伸阅读:配置管理 先行者 项目
收藏分享:论坛
分享到:
相关新闻
  • 特色班
    4大班次+2-3套全真模拟题
    提升学习效果
  • 精品班
    4大班次+2-3套全真模拟题+1套预测试题
  • 实验班
    3套全真模拟题+2套预测试题+考前冲关宝典
  • 定制班
    3套模拟题+3套预测题+考前冲关宝典+考前重点
  • 移动班
    以知识点为单元授课练习,
    强化重点、难点、考点
版权声明

  1、凡本网注明“来源:建设工程教育网”的所有作品,版权均属建设工程教育网所有,未经本网授权不得转载、链接、转贴或以其他方式使用;已经本网授权的,应在授权范围内使用,且必须注明“来源:建设工程教育网”。违反上述声明者,本网将追究其法律责任。
  2、本网部分资料为网上搜集转载,均尽力标明作者和出处。对于本网刊载作品涉及版权等问题的,请作者与本网站联系,本网站核实确认后会尽快予以处理。
  本网转载之作品,并不意味着认同该作品的观点或真实性。如其他媒体、网站或个人转载使用,请与著作权人联系,并自负法律责任。
  3、本网站欢迎积极投稿。