Understanding Software Configuration Management

Understanding Software Configuration Management

Posted by Dongyupu on December 21, 2016

Understanding Software Configuration Management

知识点

  • 引入工具很重要,而用好工具,配合合适的流程和策略,以支持特定研发组织的具体研发场景,则更为重要。
  • 选择、安装、设置、二次开发、培训、疑难解答、制定相关规定和流程等一系列工作。
  • 变更集 change set / patch set
  • 新特性 Feature
  • 暂存 Stage
  • 变基 Rebase
  • 单元测试 Unit test
  • 敏捷 Agile
  • 测试驱动开发 Test Driven Development TDD
  • 同行评审/代码走查 Peer Review/Code Inspection
  • 结对编程 Pair Programming
  • 静态程序分析 Static Program Analysis
  • 冒烟测试 Smoke Test
  • 触发器 Trigger
  • 构建 Build

  • 基线 Baseline :一个有一定质量的整体版本

集成之道,中庸之道。

  • 质量保证:集成之前、集成中、集成后
  • 侠义集成、广义集成
    • 广义集成其实发生在三个阶段。  * 第一个阶段,侠义集成之前。其实就是开发人员的改动提交公共版本库之前。在这个阶段开发人员更新工作区、代码评审、编译链接、做一系列的自测试,等等。该阶段的质量保证工作可以有效率的解决问题,不必把集成工程师或测试人员折腾进来,也不必在缺陷跟踪工具里走一系列流程。
    • 第二个阶段,侠义集成过程中。集成工程师收集最近提交的代码改动,在一起编译链接,并粗略测试,然后发布基线给大家。此阶段质量标准不宜太高。太高的质量标准,基线产生过程中就会遇到太多的问题必须要解决,这使得基线的产生更加困难,需要更多时间。
    • 第三个阶段,侠义集成之后。测试人员使用基线进行系统全面的测试,发现问题,并提交由开发人员改正。
    • 这三个阶段,都在做质量保证工作,都在消灭集成过程中的问题,直到最后,达到一定的质量标准,集成完成。