[整理版]若何有效地前进版本操纵和治理课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《[整理版]若何有效地前进版本操纵和治理课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整理版 整理 若何 有效地 前进 版本 操纵 治理 课件
- 资源描述:
-
1、1如何有效地进行版本控制和管理如何有效地进行版本控制和管理2议程议程l配置管理的发展和最佳经验l配置管理模式l版本构造和发布管理lUCM和perforce的版本控制l播控组的实践经验(董全武)l部门配置管理规程和指南3软件开发的混沌软件开发的混沌l版本较多,不知道如何选择一个合适的版本进行下一步的工作?l你的团队经常得不到一个可以工作的版本而苦不堪言?l有多个版本而不能很好的整合?l用户出现问题,而你却无法获取和重构用户版本?l变更无法追踪,无法有效的追溯版本的变化?l你经常处在无法说清楚项目的真实状态l45作业作业l你们项目组版本控制和管理存在什么问题,原因是什么,使用本培训的方法如何改进?
2、l要求 至少提出2个问题,说明其原因 改进方法应该明确并有可操作性 周五前提交到li_6如何避免如何避免l对症下药l配置管理l变更管理l项目管理l对于开发者,最切实可行的就是版本控制和管理7第一代配置管理第一代配置管理l时间 七十年代开始l特征 基于文件(File Based)的版本控制 支持check-out/check-in模型 简单分支l解决问题 文件丢失和覆盖的问题8最佳经验最佳经验l标识工件,将工件存入安全的版本库l控制并记录对工件的变更l保持稳定,一致的工作空间9第二代配置管理第二代配置管理l时间 八十年代中后期l特征 基于项目库将元数据与配置项分开存储管理 从而更好地支持并行开发
3、、团队协作以及过程管理l解决问题 并行开发10最佳实践最佳实践l支持工件的并行开发l及早集成,经常集成l记录并追踪变更跟请求l保证软件build可重现11第三代配置管理第三代配置管理l时间 2000年l特征 以活动为中心的组织和集成l解决问题 如何在复杂的软件开发中把握变更12最佳实践最佳实践l将工件组织成版本化的构件 “构件的引入”有利于逻辑设计和物理实现相对应 提供一种机制来更智能的创建和使用基线构件是对众多的文件进行合理分类以呈现系统的设计要素可以大大简化项目开发控制,可以通过合理的目录来组织构件l以活动为中心的组织和集成 建立活动变更集的映射l在项目里程碑处创建基线 更好的标识阶段点和
4、提供开发复用的基准13定义开发流程定义开发流程l确定代码线策略、集成规约和质量标准l获取工作列表l选择工作的代码线和获取一个可信版本l在工作区完成单个任务,测试符合代码线策略后提交,反复执行l集成人员根据集成规约进行集成,根据质量标准打标签,提交测试,符合质量后标识基线,通知相关人员更新代码14议程议程l配置管理的发展和最佳经验l配置管理模式l版本构造和发布管理lUCM和perforce的版本控制l播控组的实践经验(董全武)l部门配置管理规程和指南15什么是模式?什么是模式?l描述在我们环境中反复出现的问题,然后给出该问题的核心解决办法,以这样的方式,你可以上百万次地使用这种解决方法,而不会有
5、两次一样,它描述了为了解决问题而定义的存在而不得不做的事情的规则。16如何理解和使用模式如何理解和使用模式l上下文 何时应该考虑使用该模式l问题 说明该模式要解决的问题l解决办法注意:模式如何互相关联与模式所解决的问题和解决问题的方法同样重要 17模式纵览模式纵览l与工作区相关的模式 存储库 私用工作区 第三方码线 任务级提交 私用系统构造 集成构造 单元测试 冒烟测试 回归测试l与码线相关的模式 码线策略 主线 活动开发线 私用版本 任务分支 版本线 版本预备线18存储库模式存储库模式l上下文 为了创建私用工作区或者运行可靠的集成构造,你需要正确的组件。本模式介绍如何用必要的部件轻松的构造工
6、作区。l问题 如何获得填充新工作区的正确组件的正确版本?l解决办法 一站式购物 从单一访问点获取你的代码和有关人工制品。使创建开发者工作区尽可能的简单与透明19私用工作区模式私用工作区模式l上下文 你要确保正在跟最新的代码打交道,但是因为人们不能妥善的处理不可控制的变更,所以你要能控制何时开始跟其他开发者变更打交道。本模式描述如何调解总是使用当前码基进行开发的理想与当环境不停的变化时人们不能有效的工作的现实之间的紧张状态。l问题 如何跟上不断变化的码线并取得进展,而不会为你们自己造成的环境变化分心?l解决办法 以隔离工作的方法控制变更 在私用工作区工作,在那里控制你正在做的代码和组件的版本。你
7、可以完全控制你的环境何时以及如何变更20第三方代码线模式第三方代码线模式l上下文 你的系统需要和外部组件相联系。本模式介绍如何跟踪自己的代码的方式,来跟踪第三方的组件l问题 什么是协调供应商代码的版本与产品代码的版本的最有效的战略?l解决办法 为第三方代码创建码线。用这条码线构造工作区和安装工具。21任务级的提交模式任务级的提交模式l上下文 如果知道哪些东西或变更参加了集成,集成构造时就比较容易排错。本模式讨论如何平衡对稳定性、速度和原子性的需要。l问题 在两次向版本控制系统提交之间,你应该做多少工作?检入文件之前,你应该等多长时间?l解决办法 每一项小粒度任务做一次提交 每一项小粒度的、一致
8、的任务做一次提交。22私用系统构造模式私用系统构造模式l上下文 私用工作区使得变更和其他外部变化隔离起来,但是你的变更又需要和系统其余部分打交道,为了验证这一变更,你需要以一致的方式构造系统,本模式说明如何在提交变更时检验你的变更是否与最新公布的码基一致。l问题 如何在检入你的变更前检验它们不损坏构造或者系统?l解决办法 通过本地构造实现全局考虑 提交给源码控制之前,用私用系统构造来构造系统23集成构造模式集成构造模式l上下文 各个开发在单独的私用区间变更,这些变更必须集成在一起,并且整个系统必须可靠的构造。本模式讨论有助于确保系统的代码总能构造的机制l问题 如何确保码基总能可靠地构造?l解决
9、办法 进行集中式构造 要确保用中央集成构造所有的变更以及其依存关系,这个构造过程应该是可重生的,尽可能接近最终的产品构造,自动化的或只是需要最少的人工干预,有识别错误与不一致的通知或日志机制。在你的版本控制系统中用标号标识这次构造。24冒烟测试模式冒烟测试模式l上下文l即使代码能够构造,仍需要检验以后可能使你出故障的运行问题。本模式讨论为了确认构造 有效性而需要的决策。l问题 如何知道系统在你变更后仍能工作?l解决办法 验证基本功能 每次构造都必须进行冒烟测试,以显而易见的方式验证应用未被损坏。25单元测试模式单元测试模式l上下文 在你做模块尤其是编写新代码时,冒烟测试对详细的测试变更是不够的
10、。本模式向你介绍如 何测试详细的变更,使得你能确保码线的质量。l问题 如何测试模块经你变更后是否仍能像预期那样工作。l解决办法 测试合同 开发及运行单元测试。26回归测试模式回归测试模式l上下文 冒烟测试不详尽,单元测试局部化,如果要确定准备发布的版本,就需要确保码基是健壮的。本模式说明如何生成不比上次更差的构造。l问题 如何确保现有的代码没有因你进行其他改进而变得更糟?l解决办法 对修改进行测试 每当要确保码线的稳定性时,就对系统运行回归测试。用过去使得系统出故障的测试用例创建回归测试。回归测试是黑箱测试,包括过去出现过的和预先考虑到的各种失效模式。27码线策略模式码线策略模式l上下文 当有
展开阅读全文