- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 软件配置管理 软件配置管理的概念 软件配置项及基线 软件配置管理过程 10.1 软件配置管理的概念 软件配置管理(Software Configuration Management,SCM)是应用于整个软件过程中的庇护性活动。软件配置是一个软件产品在生存期各个阶段的不同形式和不同版本的程序、文档及相关数据的集合。 软件开发过程中,会得到许多工作产品或阶段产品,还会用到许多工具软件,所有这些信息都需要管理,以便在提出某些特定的要求时,能将其进行约定的组合来满足使用的目的。 (见下图) 软件开发属于变化驱动的过程。软件时时处于演化变更状态。技术的快速发展、业务环境的不断改变、不同用户的不同需求、需求在开发中的频繁变更、开发人员对阶段产品的改变等等,都会对产品的最后质量造成影响。 SCM是对软件生存期过程中的各阶段产品和最终产品演化和变更的管理,是CMM第二级中的关键过程域。它的主要目的是对变更加以控制,将变更对成本、进度和质量影响降到最小。 10.2 软件配置项及基线 1、软件配置项 程序、文档、数据这些软件配置中的每一个成员称为软件配置项(SCI),是软件配置的基本单位。大中型软件项目在开发中会产生几十个、上百个文档或数据信息,这些信息每个阶段都在演化,后期版本是对前期的修改及扩展。另外,在软件开发中还使用很多开发工具。这些所有的软件配置都应该被组织成配置对象,有自己的名字并被归类到项目数据库中,以适应开发和维护中变更管理的需要。 2、基线 基线是软件开发各个阶段不能轻易改变的底线,它的作用用于控制变更。IEEE对基线的定义如下: 已经通过正式评审和批准的规约或产品,可以作为进一步开发的基础,并且只能通过正式的变更控制规程才能改变。 因此,在软件配置项作为基线前,变更可以按照非正式的过程进行。对于已成为基线的SCI,虽然可以修改,但必按照正式的规程进行评估、确认每一个变更,才能进行修改。如需求分析、设计等规格说明书,一旦通过正式评审就成为基线。 建立基线的概念是为了把各开发阶段的工作划分得更加明确,这样有利于检验和肯定阶段工作的成果。同时也有利于变更控制。有了基线的规定后,就可以禁止开发人员随便修改一个“已冻结”的工作成果。 10.3 软件配置管理过程 SCM的基本任务: ? 制定SCM计划 ? 配置项标识 ? 版本控制 ? 变更控制 ? 配置审核和报告 1、软件配置项标识 (1)确定配置项(SCI) 确定哪些数据、文档需要被保存、被管理。 (2)配置项标识 ? 唯一性:在一个项目内不能出现重名, ? 可追溯性:名字能体现相邻配置项之间的关系,如采用层次式命令规则反映树状结构,便于查询。 2、版本控制 版本控制结合了规程和工具来管理在软件工程过程中所创建的配置对象的不同版本。配置管理使得用户能够通过对适当版本的选择来指定可选的软件系统的配置。实现的方法是通过将属性(版本号和特征表)关联到每个软件版本,然后通过描述一组所期望的属性来指定(或构造)配置。 软件的每个版本都是一组SCI实体的集合,并且每个版本都可能由多种不同的变体(variant)组成。 (见ppt第3页) 为了构造某程序给定版本的适当变体,为每个实体赋予一个特征表——属性元素组,它定义了当构造某软件版本的特定变体时是否被使用。同样对每个变体也赋予一个或多个属性,定义它属于哪个版本,由哪些SCI实体构成。 SCI与实体、变体、版本之间的关系可以表示为一个三维空间(教材P160图10-2)。 3、变更控制 (1)软件变更 ? 软件变更的不可避免性:变更来源于用户 或开发人员; ? 变更的复杂性:涉及一些相关部件和文档, 需要将某些变更通知相关人员。 (2)变更管理的任务 ? 分析变更:研究变更的必要性、经济可行性 (成本-效益比,是否合理)和技术可行性 (能否实现)。
文档评论(0)