专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »软件测试 » 软件Software配置管理:软件Software配置管理基础 »正文

软件Software配置管理:软件Software配置管理基础

来源: 发布时间:星期四, 2009年2月12日 浏览:32次 评论:0


“配置第”这个理念是位IT公司项目经理(project manager)告诉我他用了“深刻教训” 4个字来为这个言论作注脚他告诉我这样件事:

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

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

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

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

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


-----摘自IEEE定义

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

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

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

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

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

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

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

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

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

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

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

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

特点  

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

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

优点  

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

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

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

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

配置管理重点工作描述

1)配置项识别

配置项识别就是将配置项按规定统编号将其划分为基线配置项和非基线配置项结构保存在配置库中然后赋予区别人员区别权限来使用它们

那么“基线”又是什么呢?

基线是由组具有唯标识号配置项组成这些配置项构成个相对稳定逻辑实体它们处于“冻结”状态不能被任何人随意修改



基线通常和项目开发过程中里程碑点相对应在项目里程碑阶段项目通常会进行阶段成果评审经过正式评审并获得批准阶段性项目成果标识便标志着项目区别基线根据使用对象区别基线被分为建造基线(对内使用)以及放行基线(对用户使用) [Page]

对基线及其集成系统任何修改都必须按照特定规程来评估和验证

2)变更控制

随着项目进展需求、开发资源及环境都可能会发生变更变更控制便是对这些变更进行跟踪和规划是便于变更有效管理和追溯避免工作混乱

变更控制使配置项真正处于受控状态并保障配置项在任何情况下都能迅速恢复到任历史状态

上图是个较典型变更控制流程重点在于变更申请审批、变更方案审核、变更结果评估等环节通过这种审批、审核来保证变更合理性降低变更风险

3)版本管理

这里版本包括各种文件、技术文档和版本这些配置项均属于版本管理范畴

版本管理是按照命名规则保存配置项所有版本避免发生版本丢失或混淆等现象并确保能快速而准确地查找到配置项

版本管理对存取软件Software资源采取加锁等控制策略保证了多人同时开发时软件Software资源内容致性和正确性

配置项状态通常有 3种:“草稿”、“正式发布”、“正在修改”配置项区别状态由多种版本号所组成随着状态流程变迁版本号发生变化版本出现版本管理就是对配置项各种版本进行存储、登记、索引、权限分配等系列管理活动

4)配置状态报告

根据配置库记录情况我们可以整理总结出区别角度配置状态报告它可以由CASE工具自动生成如:配置项状态基线的间差别描述变更日志变更结果记录

通过配置状态报告我们可以了解基线配置项状态、当前工作进度、变更对项目进展影响等情况从而为开发决策提供参考依据

软件Software配置管理工具选择

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

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

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

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

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

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

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

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

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

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

提供灵活多样配置状态报告在配置区别阶段能提供多角度配置状态报告详细反映配置项变化过程追溯变更任务进程为项目管理(project management)提供第手参考资料

管理规范标准制定和推广

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

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

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

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

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

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

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

5、确定配置管理流程

制定配置管理计划



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

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

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

执行配置管理计划

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

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

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

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

6、制定相关规范标准来保障流程实施

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

领导重视是前提没有领导支持和推进过程控制规范标准便没有执行力纸空文

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

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

结束语  

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

我们能指望这堆废铁什么呢?



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: