推荐序 许多工学院学生都上过实习课,会在工厂内真实地体会车、铣、刨、磨、钻、铸、锻、焊等诸多生产制程,同时也会领略到管线生产的高效和有序。实际上设定管理就是保障这些制程过程按生产大纲的安排,平行而有序地开展,最后将原材料变为成品的关键方法。但软体毕竟和制造业产品或硬体不同,软体是「软」的,灵活性高,而且易变。因此,如何了解软体设定管理,并进而把握软体设定管理的内在规律,真正使软体设定管理造成为软体发佈保驾护航的作用,的确是值得业界仔细思考和研究的课题。
从流程角度看,软体设定管理是整个软体开发生命週期中一个非常核心的管理过程。设定管理实际贯穿了从需求分析、架构设计、专案管理、开发、整合建构、测试,以及上线的全过程。这一过程不仅有关巨观的专案进度控制、设定管理标准及计画、多地点开发规划等,也包含更细粒度的分支模型、建构及整合方式、变更处理流程,还包含微观的与开发人员直接相关的版本控制、差异比较与归併等。绝不夸张地讲,软体设定管理是一种「八面玲珑」的技术或艺术,而读者可以从本书中切实感受到这一点。当开发人员从设定管理工具的版本树中静静欣赏自己作品的成形轨迹时,当整合人员
从元件基准线树把握整个应用元件的里程碑脉络时,当专案管理人员面对缺陷发展趋势以判断产品发佈时机时,当建构生产人员顺利将正确版本的原始程式码从版本函数库中取出、建构并在生产系统投产时,设定管理及相关工具不仅仅是这些人员的有力帮手,而且随着时间的演进它带给大家更多的将是一份信任和感动!
从人员角度看,软体设定管理人员在软体企业中具有非常重要的作用,绝不是许多人头脑中的文件管理员、档案管理员或什么其他的人员。他们是软体企业中所有软体资产的管理员,是最洞悉软体整个开发及变更过程并参与其设计的关键人员,是能与专案经理/人员、品质保障经理/人员、软体分析/设计/开发/建构/测试人员充分沟通并与之打成一片的「公关」人员,是了解作业系统管理、网路管理、各种开发语言和环境、深谙软体过程改进理论和相关工具的技术人员。透过本书,读者可以加深对设定管理的了解,加强企业设定管理的相关工作,重视设定管理人员的培养和加强。
全书尽管只有三百余页,但却深入浅出地道出了与设定变更管理相关的多个基本概念,如版本控制、设定管理、缺陷追踪与变更管理、建构、元件、整合、分支等。同时书中根据不同实际场景列出了业界的最佳做法,而且处处渗透了作者在软体设定管理方面的心得,举例来说,对分支运用的分析、对元件多工的了解和实作、对于整合过程及整合责任的清晰说明等。并且,本书结合工具(ClearCase、ClearQuest、Subversion、Bugzilla等)简单明了地指出了目前流行的设定工具是如何实现这些最佳做法的。可以看出本书是作者多年专注于软体设定管理理论和实作的结晶,书中不少观点实际上也代表了包含我在内的很多软体设定管理相关从业人员的感受和心声,是值得所有软体开发从业人员仔细阅读、细细品味及随时参考的好书!
非常感谢董越先生在紧张工作之余为大家所做的切切实实的贡献!
~IBM中国有限公司软体部Rational软体北方区技术负责人李纪华