《配置管理最佳实践》——1.2 从哪里开始

1.2 从哪里开始

实施源代码管理最好的切入点是确定源代码管理的目标和需求。我曾经工作过的一些公司,有的是集中全公司的资源来做好配置管理;而有的则是源代码管理几乎处于自我管理的状态。大多数公司开始做都是先评估其现有的做法,如确保代码安全、控制变更、建立基线和发布,包括修复补丁。当我们进行评估时,一定要确保现有的实践和进行改进的领域是依然可以工作的。采用一种平稳渐进的改进方式可以帮助避免来自团队的抵制,并且使他们在别人审视自己团队长处和短处时感觉比较舒适。我推荐敏捷和精益的做法。例如,只进行可以让任务完成而又没有多余步骤的过程,且具备可以改变过程从而提高质量和生产力的能力(也许需要得到在第4章变更管理中讨论的SEPG1的批准)。烦琐死板的源代码管理过程也许在理论上听上去很美好,但是在现实世界中基本上无法工作,或者所有人都想方设法绕开。用必不可少的步骤把工作完成就可以了。如果需要,通常可以增加另外的限制(也许是一个过程中的一个步骤)来达到我们的目的。任何改进的机会,在没确定得到高层管理人员的支持之前,请不要贸然开始。无论是从下往上,还是从上往下改进,在最后一分钟情况都有可能发生改变。源代码管理中首先需要理解的是如何创建和管理代码基线。

获得高级管理层的支持

我还记得曾经和公司的CIO5开过一次会议,寻求他支持源代码管理的实施。实际上,他的很多直属下属已经非常支持我的工作了,但我还是希望得到他明确和公开的支持来改进公司的源代码管理过程。这位CIO25找来他的一位直属下属(一位高级副总裁),让他总结下部门目前的源代码管理情况。这位高级副总裁承认他的团队仅仅把代码放在网络存储上(其中的一些并没有周期性的备份)。这位高级副总裁在公司里是最了解配置管理的经理(后来,我才意识到为什么CIO把他叫进来)。这位高级副总裁被任命为我的新经理并且得到指示“公司所有的资产都必须得到保障”。看着新老板慢慢变成一个配置管理最佳实践的倡导者是件非常有意思的事情。他时常在办公室里说:“千万不要告诉我你还没有签入代码哦。”他常常和其他高级技术经理交流,确保他们能全力和我合作。
没有高级管理层的支持,你的工作将会很困难,甚至还没有启程,就已经掉进了沟里。

1SEPG (Software Engineering Process Group) ,即软件工程过程组,是一个企业内部进行软件工程过程管理规范制定的组织,也是指导该企业软件工程活动的一个重要组成部门。SEPG应当为企业内部软件工程活动提供过程规范性上的指导,帮助项目组制定项目过程中需要执行的软件工程过程的重要环节,从而帮助项目组有效地工作、有效地执行过程。如果项目和SQA对过程的理解发生争持,SEPG作为最终仲裁者。
2CIO (Chief Information Officer) ,首席信息官。

时间: 2024-08-01 02:49:42

《配置管理最佳实践》——1.2 从哪里开始的相关文章

《配置管理最佳实践》——2.10 建立构建过程

2.10 建立构建过程 实施构建工程最佳实践是一项非常具有挑战性的工作.构建工程师可以选择有益于公司的实践:也可以选择最好的工具去建立可重复的构建,实施持续集成.但是实际工作远不止此,构建工程部门还需要为开发团队提供培训和技术支持.我的经验是和研发团队合作,解决构建和部署过程中的问题,然后转到幕后做支持,把日常的工作还交给开发团队来负责.这里有个前提就是公司的合规部门允许这样做.曾经一家实施 SAS-70的公司认为可以接受这样的做法:但是另外一家公司认为这不合规,不能接受.在一些公司里因为合规的

《配置管理最佳实践》——导读

** 前言 **配置管理(CM,Configuration Management)在任何开发工作中都起着非常关键的作用.我从事配置管理的实施和支持工作已经超过25年,本书中将讨论的大部分内容都直接来自于个人的经验.我实施并支持过各种配置管理的实践方法并达到这样一种状态--如果建立的过程或自动化没有按照预期般运作的话,我经常会在半夜里被惊醒.作为一名教师,我向超过九百多的专业技术人员传授过工业级的配置管理工具(同样,他们在成功地完成课程后都得到了我家的电话号码,这样如果我没有教授好知识和技能,即使

《配置管理最佳实践》——1.13 结论

1.13  结论 源代码管理是配置管理最佳实践的核心.在保护源代码的同时,利用配置管理工具和规范可提高工作效率和产品质量.在选择源代码管理工具和购买某些源代码管理功能时,一定要小心行事.培训和定义良好的使用模型有助于确保配置管理职能有效地执行且容易被接受.认真对待特殊的需求和满足这种需求时可能发生的风险.支持愿意深入了解源代码管理的人,鼓励他们分享自己的经验.源代码管理是一项团队活动.如果开发人员愿意去学习和分享配置管理最佳实践,源代码管理流程就会更加高效.

《配置管理最佳实践》——1.8 培训

1.8 培训 在选择源代码管理工具时,还要考虑供应商或者第三方机构是否有系统性的培训.有时我更倾向于那些非供应商提供的培训,因为我希望从一个没有偏见的角度去了解如何有效地使用工具,尤其是涉及工具缺陷和限制等.供应商有时认为培训只是销售过程的延伸,所以他们的培训总有种推销的味道,不能让人从公正的角度去看工具.我曾经参加过一个培训,这位讲师以前就是在供应商处工作,并且自己确实写了一些代码.他直率地讲了以前代码的一些错误,这些错误很多时候都是由于公司没有给他足够时间导致的,因为那时的首要任务是向外声称

《配置管理最佳实践》——1.12 高级特性和授权高级用户

1.12 高级特性和授权高级用户 配置管理最佳实践很多专业技术人员是源代码管理工具和规范的高级用户,而另外一些人仅仅期望以最少的精力把工作做完就可以了.团队中的每个人并非都要成为一个源代码管理工具专家,但应该认可和授权那些在源代码管理方面想提高的用户.我从同事那里学到很多经验,所以鼓励你授权给那些认真对待配置管理最佳实践且愿意分享所学的专业技术人员.良好的配置管理经验是会传播的,配置管理员应该努力宣扬和弘扬这种传播.

《配置管理最佳实践》——1.6 工具的选择

1.6 工具的选择 在实施任何一个源代码管理解决方案中,工具的选择都是一项非常重要的任务.选择一个源代码管理工具需要考虑众多的因素.针对这一主题,我会在这章只讨论最基本的方面,而在我们的网站上(www.cmbestpractices.com/tools)专门讲了一个工具的选择部分作为对本章的补充.这样一来,就可以保证内容的时效性,同时可以允许我的同事说出他们的观点,尽管很多时候这个题目都会变成激烈的宗教般的争论. 首先可以观察到的一个事实是,目前市场上有众多优秀的源代码管理工具.感谢厂商们开发了

《配置管理最佳实践》——2.5 构建工具评估和选择

2.5 构建工具评估和选择 目前有很多好的构建工具,也有很多相关的最佳实践教程.这些教程可以指导你建立一个可靠.可扩展的构建流程.这里将会讨论一些工具和最佳实践,你可以有选择性地实施其中一些来支持公司的开发工作.目前软件开发中主要有几类比较流行的构建工具.不久以前,有段时间构建自动化仅仅意味着使用 Make(也许还有一些 shell 脚本)自动执行构建过程的每一个步骤.这种方法可以很好地支持 C 和 C++ 的构建.但是在实现的时候,要注意底层不同平台带来的差异性.我在 HP-UX, Solar

《配置管理最佳实践》——1.3 源代码管理核心概念

1.3 源代码管理核心概念 就像其他学科一样,源代码管理也有它自己的术语.可能你以前从其他一些配置管理人员那里听到一些技术行话却百思不得其解,读过这一章你就不会再对这些术语感到陌生了.这一章将会帮助你理解这些核心概念.理解了这些概念对理解源代码管理最佳实践也是非常有帮助的. 1.3.1 建立基线和时间机器许多开发者认为源代码管理就是简单地从源代码管理工具中(一个代码库)签入和签出代码.就像大多数人认为的那样,多年前一些比较老的版本管理系统的确是这个样子.如今,虽然大多数配置管理代码库具备的可靠性

《配置管理最佳实践》——2.4 建立构建职能的注意事项

2.4 建立构建职能的注意事项 根据我的经验,在开发团队中实施构建工程最佳实践之前,必须要打消大家的疑虑.有时,对现有构建过程复杂度认识不足,可能会导致人为错误.代码缺陷.不断返工.生产效率低等问题.造成这种现象的大部分原因都是技术上的,另外可能是过程上的.而一旦有问题,就会有人把责任推到构建过程上来,建议简化构建过程.曾经遇到过在某产品中使用的技术特别复杂,而专业技术人员深陷于复杂的技术泥潭之中,并把它弄得更复杂了.显然,我们都希望尽可能地把事情变简单,做到万无一失.但是现实情况是,很多专业技