软件测试之统一变更管理
变更管理(CM)术语是指一个组织或项目用来计划、执行以及对软件系统变更进行跟踪的流程和工具。统一变更管理(UCM)是Rational与我们的客户联合开发的一套特定的变更管理流程。UCM在管理文件、目录、组件和系统的生成与修改等方面为软件项目小组提供支持。从学术上说,变更管理流程由两条工作流组成:
?软件配置管理(SCM)
?缺陷与变更跟踪(DCT) 【批注:亦称作变更请求管理(CRM),此处避免与“客户关系管理”混淆。】
SCM处理版本控制、工作空间管理、软件集成、软件编译(Build)、软件分发及发布等流程。DCT处理流程与过程,通过这些流程与过程,缺陷、增强型请求与新特性被提交、评估、实施、验证及完成。
Rational拥有两种工具对这两条工作流提供相应支持。首先是Rational ClearCase,自动化SCM相关流程。其次是Rational ClearQuest,自动化DCT相关流程。同时使用这两种工具,就能自动化UCM。事实上,使用ClearCase和ClearQuest能够自动化几乎任何变更管理流程,但是如果需要为变更管理提供黑盒支持,那么UCM是佳选择。
在Rational,我们已对问题“什么是UCM流程?”提供了多种方式的回复。我们提供产品文档、论述ClearCase与UCM的书、可免费订购的多媒体光盘。因此,如果已经对UCM有了一定了解,可能会问:“UCM相对其它变更管理流程的优点是什么?”这里将对此问题作一阐述。
首先要说的是,一种流程可能不是对所有软件项目都是合适的。因而,脱离实际软件开发项目的环境来描述UCM较之其它变更管理流程更优,并无意义。所以相反,将要描述UCM与传统变更管理(CM)流程的差异。然后你就能决定怎样将这些不同点应用到自己的软件开发项目中去。
用UCM进行更高级别的抽象
如果你观察软件开发语言,具有几十年历史的计算机科学与工程,显而易见,其抽象水平已从机器代码级大为提升。在底层,全都是1和0,只能期望非常早的程序员在此级别上工作。汇编语言很快出现,它对1和0进行抽象以提供雏形的机器指令如“load register X with value Y”。接下来出现了Pascal与C这样的语言,它们提供了更高水平的指令诸如“if-then-else”语句。那么,在今天,我们开始认识到可视化“编程”的潜力。通过对软件系统的行为建模,我们能让代码被生成。随着这些抽象的引入,更复杂的软件系统编程对开发人员来言已变得更容易和快速。
至于CM工具的演变,类似的情况正在发生。初,CM工具仅仅由存储版本的存储库构成:文件及目录在保存并标识的给定时间点上的内容,可以必要时重新取出。接着,出现了允许用户管理工作空间的工具:可为特定任务或活动选择特定版本的文件及目录集合。同时,当类似存储库及工作空间这样低层次的抽象变得普遍起来并被广为接受时,高水准功能可凸显出来以简化变更管理流程。UCM就是干这件事的。让我们看看UCM包括的三个核心抽象:项目、组件基线、活动。
报名咨询:021-53088868
网站咨询:www.5***
电子邮件: ttxzhong@12***
地 址:上海市普陀区凯旋北路1305号(清水湾会议中心)7楼北大青鸟
交通路线:金沙江路地铁站,隧道3、4、13线,公交67路 136路 216路 754路 846路 856路 947路
?软件配置管理(SCM)
?缺陷与变更跟踪(DCT) 【批注:亦称作变更请求管理(CRM),此处避免与“客户关系管理”混淆。】
SCM处理版本控制、工作空间管理、软件集成、软件编译(Build)、软件分发及发布等流程。DCT处理流程与过程,通过这些流程与过程,缺陷、增强型请求与新特性被提交、评估、实施、验证及完成。
Rational拥有两种工具对这两条工作流提供相应支持。首先是Rational ClearCase,自动化SCM相关流程。其次是Rational ClearQuest,自动化DCT相关流程。同时使用这两种工具,就能自动化UCM。事实上,使用ClearCase和ClearQuest能够自动化几乎任何变更管理流程,但是如果需要为变更管理提供黑盒支持,那么UCM是佳选择。
在Rational,我们已对问题“什么是UCM流程?”提供了多种方式的回复。我们提供产品文档、论述ClearCase与UCM的书、可免费订购的多媒体光盘。因此,如果已经对UCM有了一定了解,可能会问:“UCM相对其它变更管理流程的优点是什么?”这里将对此问题作一阐述。
首先要说的是,一种流程可能不是对所有软件项目都是合适的。因而,脱离实际软件开发项目的环境来描述UCM较之其它变更管理流程更优,并无意义。所以相反,将要描述UCM与传统变更管理(CM)流程的差异。然后你就能决定怎样将这些不同点应用到自己的软件开发项目中去。
用UCM进行更高级别的抽象
如果你观察软件开发语言,具有几十年历史的计算机科学与工程,显而易见,其抽象水平已从机器代码级大为提升。在底层,全都是1和0,只能期望非常早的程序员在此级别上工作。汇编语言很快出现,它对1和0进行抽象以提供雏形的机器指令如“load register X with value Y”。接下来出现了Pascal与C这样的语言,它们提供了更高水平的指令诸如“if-then-else”语句。那么,在今天,我们开始认识到可视化“编程”的潜力。通过对软件系统的行为建模,我们能让代码被生成。随着这些抽象的引入,更复杂的软件系统编程对开发人员来言已变得更容易和快速。
至于CM工具的演变,类似的情况正在发生。初,CM工具仅仅由存储版本的存储库构成:文件及目录在保存并标识的给定时间点上的内容,可以必要时重新取出。接着,出现了允许用户管理工作空间的工具:可为特定任务或活动选择特定版本的文件及目录集合。同时,当类似存储库及工作空间这样低层次的抽象变得普遍起来并被广为接受时,高水准功能可凸显出来以简化变更管理流程。UCM就是干这件事的。让我们看看UCM包括的三个核心抽象:项目、组件基线、活动。
报名咨询:021-53088868
网站咨询:www.5***
电子邮件: ttxzhong@12***
地 址:上海市普陀区凯旋北路1305号(清水湾会议中心)7楼北大青鸟
交通路线:金沙江路地铁站,隧道3、4、13线,公交67路 136路 216路 754路 846路 856路 947路