软件配置管理Word格式.docx
- 文档编号:13675079
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:13
- 大小:33.59KB
软件配置管理Word格式.docx
《软件配置管理Word格式.docx》由会员分享,可在线阅读,更多相关《软件配置管理Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
一个版本是软件系统的一个实例,在功能上和性能上与其他版本有所不同,或是修正、补充了前一版本的某些不足。
实际上,对版本的控制就是对版本的各种操作控制,包括检入检出控制、版本的分支和合并、版本的历史记录和版本的发行。
ChangeControl-变更控制
进行变更控制是至关重要的。
但是要实行变更控制也是一件令人头疼的事情。
我们担忧变更的发生是因为对代码的一点小小的干扰都有可能导致一个巨大的错误,但是它也许能够修补一个巨大的漏洞或者增加一些很有用的功能。
我们担忧变更也因为有些流氓程序员可能会破坏整个项目,虽然智慧思想有不少来自于这些流氓程序员的头脑。
过于严格的控制也有可能挫伤他们进行创造性工作的积极性。
但是,如果你不控制他,他就控制了你!
ProcessSupport-过程支持
一般来说,人们已渐渐意识到了软件工程过程概念的重要性,而且人们也逐渐了解了这些概念和软件工程支持技术的结合,尤其是软件过程概念与CM有着密切的联系,因为CM理所当然地可以作为一个管理变更的规则(或过程)。
如IEEE软件配置管理计划的标准就列举了建立一个有效的CM规则所必需的许多关键过程概念。
但是,传统意义上的软件配置管理主要着重于软件的版本管理,缺乏软件过程支持的概念。
在大多数有关软件配置管理的定义中,也并没有明确提出配置管理需要对过程进行支持的概念。
因此,不管软件的版本管理得多好,组织之间没有连接关系,组织所拥有的是相互独立的信息资源,从而形成了信息的"
孤岛"
。
在CM提供了过程支持后,CM与CASE环境进行了集成,组织之间通过过程驱动建立一种单向或双向的连接。
对于开发员或测试员则不必去熟悉整个过程,也不必知道整个团队的开发模式。
他只需集中精力关心自己所需要进行的工作。
在这种情况下,可以延续其一贯的工作程序和处理办法。
介绍
软件配置管理(SoftwareConfigurationManagement,SCM)是一种标识、组织和控制修改的技术。
软件配置管理应用于整个软件工程过程。
我们知道,在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。
SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。
从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
软件配置管理(SoftwareConfigurationManagement,SCM)作为CMM2级的一个关键域(KeyPracticeArea,KPA),在整个软件的开发活动中占有很重要的位置。
正如Pressman所说的:
“软件配置管理是贯穿于整个软件过程中的保护性活动,它被设计来
(1)标识变化,
(2)控制变化,(3)保证变化被适当的发现,以及(4)向其他可能有兴趣的人员报告变化。
”所以,我们必须为软件配置管理活动设计一个能够融合于现有的软件开发流程的管理过程,甚至直接以这个软件配置管理过程为框架,来再造组织的软件开发流程。
迅速发展的软件配置管理
配置管理的概念源于美国空军,为了规范设备的设计与制造,美国空军1962年制定并发布了第一个配置管理的标准“AFSCM375-1,CMDuringtheDevelopment&
AcquisitionPhases”。
而软件配置管理概念的提出则在20世纪60年代末70年代初。
当时加利福利亚大学圣巴巴拉分校的LeonPresser教授在承担美国海军的航空发动机研制合同期间,撰写了一篇名为“ChangeandConfigurationControl”的论文,提出控制变更和配置的概念,这篇论文同时也是他在管理该项目(这个过程进行过近一千四百万次修改)的一个经验总结。
LeonPresser在1975年成立了一家名为SoftTool的公司,开发了配置管理工具:
ChangeandConfigurationControl(CCC),这是最早的配置管理工具之一。
随着软件工程的发展,软件配置管理越来越成熟,从最初的仅仅实现版本控制,发展到现在的提供工作空间管理、并行开发支持、过程管理、权限控制、变更管理等一系列全面的管理能力,已经形成了一个完整的理论体系。
同时在软件配置管理的工具方面,也出现了大批的产品,如:
最著名的ClearCase;
开源产品CVS;
入门级工具MicrosoftVSS;
新秀HanskyFirefly。
在国外已经有30多年历史的软件配置管理,但在国内的发展却是在21世纪这几年的事。
但是通过专家们的介绍,我们感受到,国内的软件配置管理已经取得了迅速发展,并得到了软件公司的普遍认可。
软件配置管理的基本目标
软件配置管理是在贯穿整个软件生命周期中建立和维护项目产品的完整性。
它的基本目标包括:
目标1:
软件配置管理的各项工作是有计划进行的。
目标2:
被选择的项目产品得到识别,控制并且可以被相关人员获取。
目标3:
已识别出的项目产品的更改得到控制。
目标4:
使相关组别和个人及时了解软件基准的状态和内容。
XSSC有关软件配置管理的方针
为了达到上述目标,如下的方针应该得到贯彻执行:
技术部门经理和具体项?
置管理的工作过程。
施行软件配置管理的职责应被明确分配。
相关人员得到软件配置管理方面的培训。
技术部门经理和具体项目主管应该明确他们在相关项目中所担负的软件配置管理方面的责任。
软件配置管理工作应该享有足够的资金支持,这需要在客户,技术部门经理和具体项目主管之间协商。
软件配置管理应该实施于如下产品:
对外交付的软件产品,以及那些被选定的在项目中使用的支持类工具等。
软件配置的整体性在整个项目生命周期中得到控制。
软件质量保证人员应该定期审核各类软件基准以及软件配置管理工作。
使软件基准的状态和内容能够及时通知给相关组别和个人。
常用的软件配置管理工具
现在常用的软件配置管理工具主要分为三个级别:
lRationalClearCase,CACCC/HavestlMerantPVCSlMicrosoftVSS,CVS
软件配置管理角色职责
对于任何一个管理流程来说,保证该流程正常运转的前提条件就是要有明确的角色、职责和权限的定义。
特别是在引入了软件配置管理的工具之后,比较理想的状态就是:
组织内的所有人员按照不同的角色的要求、根据系统赋予的权限来执行相应的动作。
因此,在本文所介绍的这个软件配置管理过程中主要涉及下列的角色和分工:
项目经理(ProjectManager,PM):
项目经理是整个软件研发活动的负责人,他根据软件配置控制委员会的建议批准配置管理的各项活动并控制它们的进程。
其具体职责为以下几项:
制定和修改项目的组织结构和配置管理策略;
批准、发布配置管理计划;
决定项目起始基线和开发里程碑;
接受并审阅配置控制委员会的报告。
配置控制委员会(ConfigurationControlBoard,CCB):
负责指导和控制配置管理的各项具体活动的进行,为项目经理的决策提供建议。
定制开发子系统;
定制访问控制;
制定常用策略;
建立、更改基线的设置,审核变更申请;
根据配置管理员的报告决定相应的对策。
配置管理员(ConfigurationManagementOfficer,CMO):
根据配置管理计划执行各项管理任务,定期向CCB提交报告,并列席CCB的例会。
软件配置管理工具的日常管理与维护;
提交配置管理计划;
各配置项的管理与维护;
执行版本控制和变更控制方案;
完成配置审计并提交报告;
对开发人员进行相关的培训;
识别软件开发过程中存在的问题并拟就解决方案。
系统集成员(SystemIntegrationOfficer,SIO):
系统集成员负责生成和管理项目的内部和外部发布版本,其具体职责为以下几项:
集成修改;
构建系统;
完成对版本的日常维护;
建立外部发布版本。
开发人员(Developer,DEV):
开发人员的职责就是根据组织内确定的软件配置管理计划和相关规定,按照软件配置管理工具的使用模型来完成开发任务。
软件配置管理过程描述
概述
一个软件研发项目一般可以划分为三个阶段:
计划阶段、开发阶段和维护阶段。
然而从软件配置管理的角度来看,后两个阶段所涉及的活动是一致,所以就把它们合二为一,成为“项目开发和维护”阶段。
项目计划阶段:
一个项目设立之初PM首先需要制定整个项?
?
研发计划之后,软件配置管理的活动就可以展开了,因为如果不在项目开始之初制定软件配置管理计划,那么软件配置管理的许多关键活动就无法及时有效的进行,而它的直接后果就是造成了项目开发状况的混乱并注定软件配置管理活动成为一种“救火”的行为。
所以及时制定一份软件配置管理计划在一定程度上是项目成功的重要保证。
在软件配置管理计划的制定过程中,它的主要流程应该是这样的:
CCB根据项目的开发计划确定各个里程碑和开发策略;
CMO根据CCB的规划,制定详细的配置管理计划,交CCB审核;
CCB通过配置管理计划后交项目经理批准,发布实施。
项目开发维护阶段:
这一阶段时项目研发的主要阶段。
在这一阶段中,软件配置管理活动主要分为三个层面:
(1)主要由CMO完成的管理和维护工作;
(2)由SIO和DEV具体执行软件配置管理策略;
(3)变更流程。
这三个层面是彼此之间既独立又互相联系的有机的整体。
在这个软件配置管理过程中,它的核心流程应该是这样的:
(1)CCB设定研发活动的初始基线;
(2)CMO根据软件配置管理规划设立配置库和工作空间,为执行软件配置管理就阿做好准备;
(3)开发人员按照统一的软件配置管理策略,根据获得的授权的资源进行项目的研发工作;
(4)SIO按照项目的进度集成组内开发人员的工作成果,并构建系统,推进版本的演进;
(5)CCB根据项目的进展情况,审核各种变更请求,并适时的划定新的基线,保证开发和维护工作有序的进行。
这个流程就是如此循环往复,直到项目的结束。
当然,在上述的核心过程之外,还涉及其他一些相关的活动和操作流程,下面按不同的角色分工予以列出:
各开发人员按照项目经理发布的开发策略或模型进行工作;
SIO负责将各分项目的工作成果归并至集成分支
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 配置管理