软件配置管理[学习内容]
软件配置管理
软件配置管理(Software configuration management,SCM)目录软件配置管理 (1)什么是软件配置管理 (2)配置管理的任务 (2)实施软件配置管理的优点 (2)配置软件管理实施的流程 (3)软件配置管理与CMMI (4)软件配置管理案例分析 (4)案例:配置管理在软件企业中的应用 (4)软件配置管理(SCM)是一种标识、组织和控制修改的技术。
软件配置管理应用于整个软件工程过程。
SCM活动的目标就是为了配置管理是对产品进行标识、存储和控制,以维护其完整性、可追溯性以及正确性的学科。
目的是使错误降为最小并最有效地提高生产效率。
1.维护和编制公司配置管理规划、流程和策略。
2.负责日常运行维护及系统优化,负责配置管理工作,包括权限分配、基线管理、版本管理、变更管理、配置审计等;负责配置管理报告的编写和分析。
3.监督和审核项目过程中配置管理规范的实施情况,为项目组提供配置管理流程、工具方面的咨询、培训和支持,参与公司产品及体系认证与维护工作4.负责建立和优化公司配置管理的相关规范和流程并进行相关推广。
不断优化公司配置管理方法和工具(1)定义配置项:软件配置项(SCI)即软件配置管理的对象。
软件开发过程中产生的所有信息构成软件配置,它们是:代码(源代码、目标代码)以及数据结构(内部数据、外部数据)、文档(技术文档、管理文档、需方文档)、报告,其中每一项称为(2)标识配置项:正确标识软件配置项对整个管理活动非常重要,对软件开发过程中的所有软件项目赋予唯一的标识符,便于对其进行状态控制和管理。
(3)定义基线:基线标志着软件开发过程一个阶段的结束,任一软件配置项,一旦形成文档并审议通过,即成为基线。
基本的作用在于把各阶段的工作划分得更明确,使本来连续的工作在这些点上断开,以便检验和肯定阶段成果。
(4)定义软件配置库:软件配置库内容涵盖开发的全过程.实施软件配置管理的优点∙节约费用:缩短开发周期、减少施工费用∙利于知识库的建立:代码对象库、业务及经验库∙规范管理:量化工作量考核、规范测试、加强协调与沟通。
软件配置管理常考内容解析
软件配置管理常考内容解析软件配置管理(Software Configuration Management,SCM)是软件工程领域中至关重要的一项工作。
它旨在确保软件产品在开发过程中以及在发布后的维护中得到有效的控制和管理,以提高软件的质量和可维护性。
本文将对软件配置管理中的常考内容进行解析,帮助读者更好地理解和应用这些知识。
1. 配置管理计划配置管理计划是软件配置管理的基础。
它描述了软件项目中的配置管理活动、责任和流程,以确保软件的稳定性和可追踪性。
配置管理计划通常包括以下内容:a) 配置标识:确定如何标识和命名软件配置项(Software Configuration Item,SCI),以便在开发和维护过程中进行跟踪和控制。
b) 配置控制:规定何时以及如何变更软件配置项,以避免不受控制的变更对系统造成不稳定性或不兼容性。
c) 配置审核:确保软件配置项的规范和准确性,常见的配置审核包括代码审核、文档审核等。
2. 配置管理工具配置管理工具是实现软件配置管理的必备工具。
它们能够帮助团队进行版本控制、配置控制和变更管理等任务,提高开发效率和软件质量。
a) 版本控制工具:例如Git、SVN等,用于跟踪和管理软件版本,确保团队成员能够协作开发,并能够回溯到历史版本。
b) 缺陷跟踪工具:例如Jira、Bugzilla等,用于追踪和管理软件中的缺陷和问题,确保它们得到及时解决。
c) 自动构建工具:例如Jenkins、Travis CI等,用于自动执行构建、测试和部署等任务,提高软件交付的效率和质量。
3. 配置管理过程配置管理过程是软件配置管理的核心,它定义了软件项目中从需求管理到发布交付的整个生命周期。
常见的配置管理过程包括:a) 变更管理:确保软件的变更得到规范和及时处理,避免不受控制的变更对系统造成不稳定性或不兼容性。
b) 文档管理:管理软件项目中的各种文档,包括需求文档、设计文档、测试文档等,以确保团队能够准确地理解和使用这些文档。
软件配置管理内部培训(三库、集成)
什么是系统集成 系统集成的步骤
系统集成
系统集成,简称集成,是基本的使命就是把 产品的各个部分捏在一起,并保证产品作为 整体是可以运转的,而不仅是每个模块,每 个单元能在特定的开发调试环境、特定的数 据和参数下运转。
视角1:集成的,不是模块,而是工作。每个任务 单元可能在一个模块上修改,也可能涉及多个模块。
软件配置管理 基本的版本控制 系统集成 构建管理 分支 变体 三库管理的概念
什么是分支 分支与工作空间的对比 流 集中精力于主线的演进 分支管理要注意的事项
分支
主线又被称为主干,是一种特殊的分支。 合并是某种复制行为,不是复制版本本身,而是复
—— 一个权威定义 (被CMM、CMMI引用)
软件配置管理的一些比喻
图书管理 (在一借一还的过程中都需要记录) 保险柜 (软件资产可能丢失、被窃取和泄露,特别是源代码) 岩钉 (适当保存历史版本,所有的一切软件资产都可以保存)
缺乏管理所造成的问题
软件开发人员之间缺乏必要的交流 产品升级和维护所必需的程序和文档非常混乱 开发过程中的人员流动经常发生 因管理不善致使未经测试的软件加入到产品中 项目开发状态不清楚 软件生产达不到规模化
使用分支 能有效的实现隔离,也实现共享。
弱势: 分支是有管理成本的。如果变体所在的分支
上,包含了一些应该共享的改动,那么应合 并到主干上。这样的话,相应管理成本也会 提高。
支持分支的多种方法
使用文件属性
在一定程度上实现了隔离,但并不完全。在 降低共享的成本同时,削弱了隔离。
共享又不总是能够自动传播。需要手动修改 其他变体的相关文件,才能实现这个功能改 动。
支持分支的多种方法
软件配置管理
软件配置管理1、简介软件配置管理,贯穿于整个软件生命周期,它为软件研发提供了一套管理办法和活动原则。
软件配置管理无论是对于软件企业管理人员还是研发人员都有着重要的意义。
软件配置管理可以提炼为三个方面的内容:●VersionControl-版本控制●ChangeControl-变更控制●ProcessSupport-过程支持关键活动包括:配置项、工作空间管理、版本控制、变更控制、状态报告、配置审计等。
2、软件配置管理技术软件配置管理是一组活动,是设计用来标识变更的工作产品、建立它们之间的关系、定义管理这些工作产品不同版本、控制变更以及审计和报告所发生的变更。
每一个涉及到软件工程过程的人员均在某种程度上和SCM相关联。
一般情况下需要专门的SCM小组或专门的技术人员来管理和支持。
下面通过依次介绍配置管理过程中的主要活动来描述配置管理过程。
2.1识别配置项在项目开发过程中,程序、数据和文档都可以作为配置管理的对象,下面以图的形式来列举可能的配置项,如图2-1所示,由图可以看出配置项之间是组合关系或者相互关系。
图2-1可能的配置项2.2基于配置项版本控制版本控制是将规程和工具相结合来管理在软件工程过程中所创建的配置对象的不同版本,通过“属性元组”等其它技术来控制完整版本中的“变体”,采用不同的工具不同的技术,版本控制的机制会有一些不同。
2.3变更控制变更在软件开发过程中是不可避免的,但过于频繁的变更也会对项目的开发产生负面的影响,如影响项目的进度、浪费人力物力,因此需要对变更进行控制。
变更控制可以依照如下的步骤来进行:(1)提交变更请求;(2)审核变更请求;(3)分配和确定任务;(4)提取变更项;(5)执行变更;(6)审核变更;(7)更新配置管理库。
整个变更控制的产物主要是变更请求单、变更报告单、工程变更单或变更确认单等。
2.4配置审计配置审计一般包括两种,一种是正式的技术评审,另一种是软件配置审计。
在正式的技术评审中,将关注已经被修改的配置项的正确性,配置项的评估配置项,以确定它与其他一致性、遗漏及潜在的副作用。
软件配置管理讲义
二、软件配置管理计划
配置管理计划标准——IEEE 828-1990 1.引言
——配置管理计划的目的、适应范围、使用要求 ——项目概述 ——项目中需特别关注的配置管理问题和风险 ——软件配置管理严格性要求的等级 ——限制和假设 ——术语 ——参考文件
2、软件配置管理
——配置管理的组织结构 ——职责和权限 ——指令和方针 ——参照的规程(组织的规程或客户的规程) ——遵循的标准
——设计库:在设计工作结束时所产生的 • 系统设计说明书 • 程序规格说明 • 数据库设计 • 编码标准、用户接口标准、测试标准 • 系统测试计划 • 用户手册
——构造库:在编码和段单元测试结束时
生
成的
• 源代码
• 标代码
• 单元测试数据
——测试库:系统测试完成后生成的
• 系统测试数据
• 运行手册和安装手册
B
C
A
D
H
E F
G
用户1
A B C D E
F
产品1
用户2
A B C D E
G H
产品2
图3 两个产品具有不同的配置
用户1: A、B、C、D、E和F
用户2: A、B、C、D、E和G、H
(二)软件配置管理
1、什么是软件配置管理
(1)ISO 9000-3 :1997
配置管理是一个管理学科,它对配置项(包括软件项)的开发和 支持生存期给予技术上的和管理上的指导。配置管理的应用取决于项 目的规模、复杂程度和风险大小。 2 W.Babich 的解释
B. 对下列工作进行技术和行动指导与监督的一套规范: ——对配置项的功能特性和物理特性进行标识和文件编制工作; ——控制这些特性的更动情况; ——记录并报告这些更动进行的处理和实现的状态。
软件工程具体学习计划
软件工程具体学习计划在当今信息技术迅速发展的时代,软件工程作为一个重要的学科,已经成为了IT行业的核心内容之一。
因此,学习软件工程知识对于计算机科学专业的学生来说至关重要。
为了更好地学习软件工程知识,我制定了以下学习计划。
一、学习目标1.熟练掌握软件工程的基本理论知识和方法。
2.能够熟练掌握软件需求分析、设计、开发、测试和维护等基本技术。
3.了解软件工程相关标准和规范。
4.掌握常见的软件开发工具和技术。
5.掌握软件项目管理知识。
6.具备独立开发软件系统的能力。
二、学习内容1.软件工程基础知识学习-编程语言-数据结构和算法-数据库原理-操作系统-计算机网络-面向对象程序设计-软件工程概论2.软件需求分析与设计-需求获取与分析-需求规格说明-概要设计-详细设计-UML建模3.软件开发技术-软件开发方法与过程 -面向对象分析与设计 -软件构建技术-软件测试技术-软件质量保证4.软件项目管理-项目计划与进度管理 -项目风险管理-团队协作与沟通-软件配置管理5.软件工程工具和技术 -集成开发环境-配置管理工具-软件测试工具-性能测试工具-持续集成与部署6.软件工程实践-软件开发实践-软件项目实践-软件测试实践-软件质量管理实践三、学习计划1. 学习软件工程基础知识:在学校课堂上认真听讲,及时完成各种作业和实验,并积极参加学校组织的相关竞赛活动。
2.自学软件工程相关知识:阅读相关教材和学习资料,通过实际编程练习来加深对软件工程相关知识的理解。
3.参加社会实践活动:积极参加相关的实习和实训活动,争取在实践中学到更多的软件工程知识和技能。
4.持续学习并积累经验:在校期间多参加各种软件开发项目,通过实践不断积累经验。
五、学习成果1.学会软件工程的基本理论和方法,并可以熟练应用在工程实践中。
2.具备了较强的团队协作能力,能够参与软件项目的全过程。
3.具备了一定的软件开发能力,可以根据实际需求独立完成小型软件项目的开发与维护。
第七章软件项目配置管理
27
本章要点
■ 1 配置管理的概念 ■ 2 配置管理计划 ■ 3 配置标识与建立基线 ■ 4 变更管理 ■ 5 版本管理 ■ 6 配置审核 ■ 7 配置状态报告
28
基线(Base Line)
■ (IEEE)基线:已经正式通过复审和批 准的某规约或产品,它因此可作为进一 步开发的基础,并且只能通过正式的变 化控制过程改变。
9
配置管理的作用
7/1/2021
•软件项目的位置 管理
----
•Who am I ?
•Why am I here
•Why am I who I am?
•Where do I
belong?
10
配置管理主要功能
■ 给出程序的状态 ■ 给出一个程序的最新版本 ■ 处理并发更新申请 ■ 取消一个程序变更 ■ 防止未授权的变更或删除 ■ 提供需求变更申请和程序变更之间的可跟踪性 ■ 取消一个需求变更 ■ 显示相关变更 ■ 收集当前系统源代码和文档信息,以便恢复
■ 记录和追踪变更; ■ 采取措施保证变更在受控状态下进行;
54
配置库
■ Configuration Library ■ 作用:
·记录与配置相关的信息; ·利用库中信息评价变更后果; ·从库中提取配置管理过程的管理信
息;
55
关于软件配置库的概念
■ 动态库(开发库、程序员库、工作库)
·开发周期的某个阶段,存放与该阶段工作有关系 的信息
· 配置管理系统包括提交建议的变更的过程,评审 和批准建议的变更的跟踪系统,为授权和控制变 更规定的批准级别,和确认批准的变更的方法。
■ CMMI即(能力成熟度模型集成)
· 运用配置标识、配置控制、配置状态统计和配置 审计,建立和维护工作产品的完整性。
软件配置管理
特定目标与特定实践
• SG1建立基线
建立并维护用于标识工作产品的基线。
SP 1.1识别配置项 识别将置于配置管理之下的配置项、配置元素和有关的工作产品。 SP 1.2建立配置管理系统 建立并维护用于控制工作产品的配置管理系统和变更管理系统。 SP1.3 建立或放行基线 创建或放行基线,供内部使用和支付给客户。
• SG 3建立完整性
建立并维护基线的完整性。
SP 3.1 建立配置管理记录 建立并维护描述配置项的记录。 SP3.2 进行配置审核 进行配置审核,以便维护配置基线的完整性。
Copyright 2014 NeoTrident Technology Ltd. All rights reserved.
特定目标与特定实践
Copyright 2014 NeoTrident Technology Ltd. All rights reserved.
特定目标与特定实践
SP 2.1跟踪变更请求 产出物:变更请求 子实践: 1.申请变更,评估变影响 (与所有技术需求和项目需求一致 ); 2.对那些受变更请求影响的配置项进行审查并求得一致; 3.跟踪变更请求的状态,直到结束。 SP 2.2控制配置项 产出物:配置项的经过修改的履历 ;基线档案 。 子实践: 1.在整个生存周期中控制对配置项的变更 ; 2.在把经过更改的配置项纳入配置管理系统之前,获得适当的授权 ; 3.使那些涉及变更的配置项在保证正确性和完整性的前提下进入和退出配置管理系统; 4. 进行审查,以确保配置项的变更不会对基线造成非预期的影响,例如,确保这些变更不 会危及系统的安全性; 5.记录变更和变更原因(适宜时)。
Copyright 2014 NeoTrident Technology Ltd. All rights reserved.
第13章 软件配置管理
第27页
三、测试的层次与内容
1.软件测试的层次
软件测试工作包括两个层次:
测试工作的组织与管理,包括制定测试方法与规范、控 制测试进度、管理测试资源。 测试工作的实施,包括编制符合标准的测试文档、研制 测试环境、与开发组织协作实现各阶段的测试活动。
第28页
2.软件测试的内容 软件测试工作可以分为4个方面:
建立控制项; 重构任何修订版的某一项或者某一文件; 利用加锁技术防止覆盖; 当一个修订版时要求输入变更描述; 提供比较任意两个修订版的使用工具,采用增量存储方式; 提供对修订版历史和锁定状态的报告功能;
提供归并功能;
允许在任何时候、任何版本; 控制权限的设置;
渐进模型的建立;
提供各种控制报告。
第18页
实施软件配置管理,主要包括以下活动:
制定配置管理计划;
确定配置标识;
版本管理; 变更控制; 系统整合; 配置审核。
第11页
一、制定软件配置计划
制定配置管理计划的过程就是确定软件配置管理的解决方
案;
项目经理和软件配置管理委员会(SCCB)根据项目的开 发计划确定各个里程碑和开发策略;
一、软件配置管理概述
软件配置管理(SCM)是一组针对软件产品的追踪和控制
活动,它贯穿于项目生命周期的始终,并代表着软件产品接
受各项评审。 IEEE对SCM的论述如下:“软件配置管理由适用于所有 软件开发项目的最佳工程实践组成,无论是采用分阶段开发, 还是采用快速原型进行开发,甚至包括对现有软件产品进行
统,其测试工作涉及大量的人力和物力,有效的测试工作
管理是保证有效测试工作的必要前提。 3)测试环境的建立:设计环境、实施环境和管理环境 。
软件工程中的配置管理
任务执行
执行编译、测试、 部署等任务
依赖管理
管理项目依赖库的 版本
配置管理数据库
信息存储
存储软件配置项的 信息
关系管理
管理软件配置项之 间的关系
状态管理
管理软件配置项的 状态
远程存储工具
远程存储工具在软件开发过程中起到了关键作用,用 于备份和共享软件代码。常见的远程存储工具有
GitHub、Bitbucket等,它们提供了代码托管、版本 控制、协作开发等功能,保证了代码的安全性和可靠
谢谢
性。
●04
第四章 配置管理流程
配置识别
确定软件产品的构成 和特性
关键步骤
建立软件配置项清单
操作指南
配置控制
管理软件产品的变更
重要性
跟踪和控制软件变更的过程
操作流程
配置审计
配置审计是对软件配置项进行审查和验证,通过配置 审计,可以确保软件配置项的正确性和完整性。在软 件工程中,配置审计是至关重要的一环,需要严格执
第2章 配置管理概述
什么是配置管理
配置管理是一种全面的、系统的方法,用于追踪和控 制软件产品的变化。它包括版本控制、变更管理等方 面。配置管理的主要目的是确保软件产品的一致性和 稳定性,通过配置管理,可以追踪软件的演变过程。
配置管理的目的
确保一致性
保持软件产品的一 致性
维护稳定性
确保软件产品稳定 运行
分,帮助团队更好地管理和控制软件配置
敏捷开发与配置管理
快速迭代
灵活适应需求变化
团队协作
促进团队协作和交 付效率
软件发布
帮助团队更好管理 变更和发布软件
云原生与配置管理
基于云计算
软件配置管理培训方案
软件配置管理培训方案1. 培训目标本培训旨在帮助学员了解并掌握软件配置管理的基本概念、方法和工具,提升团队开发效率和项目质量管理水平。
2. 培训内容2.1 软件配置管理概述- 2.1.1 什么是软件配置管理?- 2.1.2 软件配置管理的重要性- 2.1.3 软件配置管理的主要流程2.2 配置项管理- 2.2.1 配置项的定义和分类- 2.2.2 配置项标识和版本控制- 2.2.3 配置项的配置控制2.3 变更管理- 2.3.1 变更管理流程- 2.3.2 变更控制和审批- 2.3.3 变更实施和验证2.4 版本管理- 2.4.1 版本控制的原理和方法- 2.4.2 版本控制系统及其应用3. 培训方法3.1 理论讲授:通过教材讲解和案例分析,让学员全面了解软件配置管理的概念和方法。
3.2 实践操作:提供实际项目中的配置管理案例和练题,让学员通过实践操作加深理解和掌握。
3.3 小组讨论:鼓励学员分享自己的经验和观点,通过小组讨论促进交流和研究。
4. 培训工具4.1 讲义和教材:准备详细的讲义和教材,包含理论知识和实践案例。
4.2 演示工具:使用PPT等演示工具辅助讲解和案例展示。
4.3 实践环境:提供配置管理工具和实际项目案例,供学员进行实践操作。
5. 培训评估5.1 知识考核:设置笔试题目,考察学员对软件配置管理理论的掌握程度。
5.2 操作实践:要求学员完成实践操作,评估其在实际项目中应用软件配置管理的能力。
6. 培训周期和安排本培训计划为期3天,每天6小时。
7. 培训师资7.1 主讲人:具有丰富的软件配置管理实践经验和培训经验的专家。
7.2 助教人员:负责演示和实践环境的搭建和维护。
8. 培训效果评估与总结培训结束后,进行学员满意度调查和反馈收集,对培训效果进行评估和总结,提出改进建议。
以上为软件配置管理培训方案的基本内容,具体培训材料将根据实际情况进行补充和调整。
软件配置管理
1、什么是软件配置管理?软件配置管理包括哪些方面、内容涉及哪些人员及人员的工作?答:软件配置管理统一的定义,下面是其中几种定义:配置管理能够系统地处理变更,从而使得软件系统可以随时保持其完整性。
配置管理又可称为“变更控制”,可以用来评估提出的变更请求,跟踪变更,并保存系统在不同时间的状态。
软件配置管理是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性。
配置管理是对工作成果的一种有效保护。
配置管理能够系统地处理变更,从而使得软件系统可以随时保持其完整性。
配置管理又可称为“变更控制”,可以用来评估提出的变更请求,跟踪变更,并保存系统在不同时间的状态。
对软件开发组所建立的软件的修改进行标识、组织和控制的艺术,其目标是减少错误,提高生产力。
标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的发布和变更,记录并报告配置的状态和变更要求,验证配置项的完整性和正确性作用:在质量体系的诸多支持活动中,配置管理处在支持活动的中心位置,它有机地把其它支持活动结合起来,形成一个整体,相互促进,相互影响,有力地保证了质量体系的实施。
目的:软件配置管理的目的是建立和维护在项目的整个软件生存周期中软件项目产品的完整性。
主要内容包括:及时地确定软件的配置,系统地控制软件配置的变更,保证整个软件生命周期软件配置的完整性和可追溯性。
包括哪些方面:软件配置管理,贯穿于整个软件生命周期,它为软件研发提供了一套管理办法和活动原则。
软件配置管理无论是对于软件企业管理人员还是研发人员都着重要的意义。
软件配置管理可以提炼为三个方面的内容。
Version Control-版本控制Change Control-变更控制Process Support-过程支持涉及人员及任务:•PM:project manager 项目经理项目经理是整个软件研发活动的负责人,他根据软件配置控制委员会的建议批准配置管理的各项活动并控制它们的进程。
软件配置管理
如果没有软件配置管理,将有什么坏处?
最大的麻烦是工作成果被覆盖。 如果不采用配置管理软件来保存工作成果 的历史版本的话,人们在同一个文件上修改内 容,保存之后,那么新的内容覆盖了老的内容。
多数情况下新的内容比老的内容好 ,覆盖了也没关系。但是总有不少意 外,例如程序员修改了老程序员之后 ,突然发现新程序是错误的,而老程 序却是对的,可是老程序被新程序覆 盖了,再也无法恢复。
CMM2的配置管理活动最主要的内容是:建立 软件基线库,该库存储开发的软件基线。通过 软件配置管理的更改控制和配置审核功能,系 统地控制基线变更和由软件基线库生成的软件 产品版本。
要达到 CMM 规定的 SCM要求所需具备的能力:
1.具有对软件基线产品有管理权限的组织已经 建立,例如:软件配置管理委员会; 2.协调和实现软件配置管理的组织已经建立; 3.为进行软件配置管理所需要的各项资源已经 分配; 4.软件配置管理组织里的成员已经接受了软件 配置目标、流程、方法方面的培训; 5.软件项目组或是其他的相关的部门经过培训, 可以执行他们的软件配置管理活动;
CMM 中对SCM 规定的活动
1.根据文档化的流程,项目软件配置管理计 划已准备完毕; 2.文档化的已获批准的软件配置管理计划可 用作以后软件配置管理活动的基础; 3.软件配置管理库已经创建,并可用作进入 基线的软件制品的存贮库; 4.处于软件配置管理下的软件制品被标志和 识别; 5.对于配置项的变更请求和问题报告被初始 化、计划、评审、批准并根据文化化的流 程对其进行跟踪;
第4章 软件配置管理
•首都师范大学 教育技术系 •方海光
Company
LOGO
第4章 软件配置管理
4.1. 什么是软件配置管理
软件配置管理(Software Configuration Management, SCM)是指通过执行版本控制、变更 控制等规程,以及使用合适的配置管理软件,来保 证所有配置项的完整性和可跟踪性。配置管理是对 工作成果的一种有效保护。
软件配置管理计划(SCMP)产品经理学习资料
目录1.引言 (5)1.1.标识 (5)1.2.系统概述 (5)1.3.文档概述 (5)1.4.组织和职责 (5)1.5.资源 (6)2.引用文件 (6)3.管理 (6)3.1.机构 (6)3.2.任务 (6)3.3.职责 (7)3.4.接口控制 (7)3.5.实现 (7)3.6.适用的标准、条例和约定 (8)3.6.1.指明所适用的软件配置管理标准、条例和约定 (8)3.6.2.描述要在本项目中编写和实现的软件配置管理标准、条例和约定 (8)4.软件配置管理活动 (9)4.1.配置标识 (9)4.1.1.本条必须详细说明软件项目的基线(即最初批准的配置标识) (9)4.1.2.本条必须描述本项目所有软件代码和文档的标题、代号、编号以及分类规程 (9)4.2.配置控制 (10)4.2.1.本条必须描述在本计划3.2条描述的软件生存周期中各个阶段使用的修改批准权限的级别 (10)4.2.2.本条必须定义对已有配置的修改申请进行处理的方法 (10)4.2.3.对于各个不同层次的配置控制组和其他修改管理机构 (10)4.2.4.当要与不属于本软件配置管理计划适用范围的程序和项目进行接口时,本条必须说明对其进行配置控制的方法 (11)4.2.5.本条必须说明与特殊产品(如非交付的软件、现存软件、用户提供的软件和内部支持软件)有关的配置控制规程 (11)4.3.配置状态的记录和报告 (11)4.4.配置的检查和评审 (12)5.工具、技术和方法 (12)6.对供货单位的控制 (12)7.记录的收集、维护和保存 (13)8.配置项和基线 (13)8.1.配置项命名规则 (13)8.2.配置项的识别和基线的划分 (13)8.3.变更和发布 (13)9.备份 (13)10.日程表 (14)11.注解 (14)附录 (14)附表 .............................................................................................................................. 错误!未定义书签。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
特选内容
3
——W.Babich认为,软件配置管理能协调软件开发,使 得混乱减少到最小。软件配置管理是一种标识、组 织和控制修改的技术,目的是最有效地提高生产率。
——配置状态报告
——配置审核
——发行管理和版本管理
总之,软件配置管理是软件质量管理的一部分。它 是对软件生存期过程中的各种阶级产品和最终产品演化 或变更的管理。因此有人概括地说,软件配置管理是要 解决软件地标识变更、控制变更和发布变更的问题。
表1给出了国际标准ISO/IEC软件生存期过程中规定的软件配置管 理过程的活动和任务。
6.发行管理和交付
• 有效控制软件产品和文档 的发行和交付
• 在产品的生存期内保存代 码、文档的主拷贝
包含重要的安全或保密功能的代 码和文档应按组织的方针处理、 储存、包装和交付
特选内容
11
3,软件配置标识
(1)确定配置项
大型软件项目在其开发过程中可能产生数十各,上百个, 甚至上千个文档,其中有技术性的,也会有不少管理性 的。技术性文档是在不断地变更着,依它们又是下个阶 段工作的依据。管理性的如计划书、建议书、会议录、 备忘录等等,也是需要认真保管好的,但需要加以区分, 例如项目计划、需求规格说明、设计规格说明、源程序、 测试数据等更为重要,被称为正式文档。确定配置项就 是要从中做出选择,决定哪些是受控的,称之为配置项。 图2给出了一个软件配置的层次图,表2则列出了 R.S.Pressman 推荐的软件配置项清单。
制工作; ——控制这些特性的更动情况; ——记录并报告对这些更动进行的处理和实现的状态。
特选内容
4
(2)什么是软件配置项 (Software Configuration Item) ——含义:配置管理的对象,软件工程过程产生的所有
信息项。
——包括:计算机可执行的源代码、目标码、数据库 计算机不可执行的文档、源程序清单、测试用例。
特选内容
12
(2)制定命名规则
配置标识的一项重要工作就是为配置项命名。合理的命 名将有利于管理,使之不致造成混乱。 命名的要求是唯一性(不允许多个配置项命名)和可追 溯性(即命名能够反映各配置项之间的相互关系,可追 溯到相关的配置项)。
——GB/T 11457:1995(软件工程术语)对配置管理的解释:
A.标识和确定系统中配置项的过程,在系统整个生存 周期内控制这些项的投放和更动,记录并报告配置 的状态和更动要求,验证配置项的完整性和正确性。
B.对下列工作进行技术和行政指导与监督的一套规范: ——对一配置项的功能和物理特性进行标识和文件编
——管理的产品(ISO9000-3的4.8)
• 与合同、过程、计划和产品有关的文档和数据;
• 源代码、目标代码和可执行代码;
• 相关产品,包括:软件工具、包括库在内的可复 用软件、外购软件和用户提供的软件。
特选内容
5
——软件配置:所有以上产品在不同时期,出于不同要 求的组合,该组合随着开发工作的进展而不断演化。 可以说,软件配置是指一个软件产品在软件生存期 各阶段的不同形式(机器可读或人工可读)和不同 版本的文档、程序及其数据的集合。该集合中的每 一个元素称为该软件产品软件配置中的一个配置项。 如它可以是针对不同的硬件环境及软件环境的组合。 例如,图1表示某一软件产品的初始系统展开出各种 版本。
特选内容
7
2,软件配置管理计划
原则上,软件配置管理计划是软件开发计划的一个 组成部分。按国家标准GB/T 12505-90计算机软件配置管 理计划规范的规定,软件配置管理计划应包括以下重要 内容:
——明确规定负责软件配置管理的机构及其任务、职责 和有关接口的控制。
——要开展的配置管理活动,涉及到:
的软件项 • 审核跟踪变更 • 控制并审核受控制软件项
• 跟踪变更原因、变更授权 • 以保证重要功能的安全或保密
特选内容
10
4.配置状态报告
• 编制管理记录和状态报告
• 表明受控项(包括基线)的状态 和历史
• 状态报告应包括变更号、最新 版本、发行标识、版本号及各版 本比较
5.配置评价
• 确定和保证软件项的功能 完整性、物理完整性
——配置标识(Configuration Identification) 配置标识包含了确定产品结构,选择配置项,将配 置项的物理特性和功能特性以及接口和随后的变更 形式文件,为配置项及相应文件分配标识符或编码 的活动。
特选内容
6
(3)软件配置管理的任务
——制定配置管理计划
——确定标识规则
——实施变更控制
参考:国家ቤተ መጻሕፍቲ ባይዱ准GB/T 12505-90计算机软件配置管理计划规范
特选内容
2
配置(Configuration)一词在其它领域中已有广泛的 应用,只不过称呼有所不同,但都有其确切的含义。如原 子结构的形态和组态,控制系统的配置以及计算机系统的 配置等等。许多领域也把配置称为技术状态。
1,什么是配置管理Configuration Management
活动
任务
解释
1.过程实施
• 开发配置管理计划
• 计划描述:配置活动、这些活 动的规程、进度、配置管理组织 及与其它组织的管理
• 计划应形成文件
2.配置标识
• 规定标识规则
• 以控制软件项及其版本
• 标识内容包括:基线文档、版 本基准号、其它。
3。配置控制
• 标识并记录变更申请 • 分析与评价变更 • 批准(或不批准)申请 • 实现、验证和发行已变更
软件配置管理
SCM---Software Configuration Management
------概念、方法与任务
主讲:郑人杰
2001年8月
特选内容
1
目录
1. 什么是配置管理 2. 软件配置管理计划 3. 软件配置标识 4. 变更管理 5. 版本管理和发行管理 6. 配置审核 7. 配置状态报告 8. 软件配置管理工具 9. 结论
• 配置标识 • 配置控制,即变更控制 • 配置状态的记录和报告 • 配置审核和评审
特选内容
8
——配置管理所采用的工具、技术和方法。
上述国家标准还附有软件配置管理计划的示例和配置管 理报表及其格式。
特选内容
9
表1 国际标准ISO/IEC 12207 (1995)
信息技术——软件生存周期过程中规定的软件配置管理过程