当前位置:首页 > 计算机网络 > 软件工程/开发项目管理 > 未雨绸缪
出版社:电子工业出版社
出版日期:2012-6
ISBN:9787121166747
作者:董越
页数:253页
作者简介
《未雨绸缪:理解软件配置管理(第2版)》分为两部分,第一部分详细介绍了软件配置管理的基本知识;第二部分主要讲述了软件配置管理的一些实际问题。《未雨绸缪:理解软件配置管理(第2版)》的目标是让读者用很短的时间就能掌握软件配置管理的基础知识,在参与软件开发时,具备软件配置管理方面的基本素养。
书籍目录
目 录
上篇 基本话题
1
第1章 恼人不休的问题:什么是软件配置管理
2
1.1 问题的引出
3
1.2 有那么一类管理
4
1.3 为什么称做配置管理
6
1.4 其他一些比喻
8
第2章 基本的版本控制:记录历史并防止混乱
10
2.1 即使只有一个开发人员
11
2.2 建立公共存储区
12
2.3 防止版本覆盖
15
2.4 行话
18
第3章 当代版本控制方法
21
3.1 变更集的概念
22
3.2 以变更集为单位修改代码并提交
24
3.3 反方向:适时更新工作区
27
3.4 源代码的整体版本
29
3.5 分布式版本控制
32
第4章 集成:关注整体质量
35
4.1 集成的概念
36
4.2 保证提交的质量
38
4.3 狭义集成的步骤
40
4.4 在基线产生之后
44
4.5 质量保证:集成前、集成中、集成后
45
第5章 从源代码到运行中的程序
49
5.1 管理生成转换过程和相关资产
50
5.2 保证构建的可重复性
51
5.3 全量构建和增量构建
53
5.4 让构建更快
55
5.5 安装包的版本控制
57
5.6 管理测试运行环境
60
第6章 迈向持续集成
62
6.1 及早和经常地集成,持续集成
63
6.2 化繁为简
65
6.3 全程自动化
67
6.4 快!快!快!
69
6.5 多层集成:当团队规模扩大以后
70
第7章 分支:减少等待,分头工作
74
7.1 文件级分支
75
7.2 产品级分支
76
7.3 典型应用:实现多层集成
79
7.4 温故而知新:实现隔离与共享
80
7.5 分支的其他典型应用
82
7.6 公共版本库中的分支
84
7.7 私有版本库中的分支
85
第8章 管理文档
88
8.1 文档的标识和存储
89
8.2 自带的说明信息
91
8.3 趋势:Wiki
93
8.4 趋势:数据文件和数据库
95
第9章 跟踪缺陷,直到消灭
98
9.1 别让发现的缺陷跑掉
99
9.2 状态转换图
100
9.3 准确记录,便于修复
104
9.4 消灭它?立刻消灭它?
106
9.5 分析统计缺陷相关数据
109
9.6 关联缺陷记录与变更集
112
第10章 管理变更
114
10.1 管理增强
115
10.2 管理特性
116
10.3 瀑布模型中的变更
118
10.4 影响变更管理的因素
121
10.5 控制产品版本间的差异
123
10.6 表达产品版本间的差异
125
第11章 玄妙的学院派
127
11.1 配置识别
128
11.2 配置控制
130
11.3 配置状态报告
131
11.4 配置审计
133
11.5 一些软件研发模型中的配置管理
135
下篇 复杂场景中的配置管理
139
第12章 用分支实现交迭
140
12.1 补丁版本
141
12.2 复用另一条分支上的改动
142
12.3 甚至早在1.0版发布之前
145
12.4 甚至为了重要的内部版本
147
12.5 甚至为了每次集成
149
12.6 双分支结构
151
12.7 都是交迭
153
第13章 用分支实现变体
156
13.1 什么是变体
157
13.2 用分支支持变体
158
13.3 随主干继续演进
160
13.4 把公共改动放到主干上
163
13.5 变更管理对交迭和变体的支持
165
13.6 历史版本与变体版本的命名
166
第14章 用设置实现变体
169
14.1 在构建时读取设置信息
170
14.2 安装和运行时读取设置信息
171
14.3 资源与数据
172
14.4 何时使用哪种方法
173
14.5 设置对交迭的支持
174
第15章 用组件的组合实现变体
175
15.1 雏形:平台加应用
176
15.2 在不同阶段组装
177
15.3 复合基线
180
15.4 复合分支
183
15.5 实现软件复用:分支、设置、组件相结合
187
15.6 实现软件复用:架构、过程和组织
188
第16章 支持多地点开发
192
16.1 何时出现多地点开发
193
16.2 主要困难和解决方法
194
16.3 离线工作模式
195
16.4 远程访问模式
197
16.5 当地版本库模式
199
16.6 只读模式
201
16.7 多地点开发中的变更管理
202
第17章 支持跨组织合作
204
17.1 从开源到外包
205
17.2 管理第三方资产
206
17.3 本地记录第三方源代码的演进
207
17.4 再加上本地的改造
209
17.5 共同开发
211
第18章 管理软件部署
213
18.1 安装包的存储和管理
214
18.2 管理安装过程
216
18.3 记录运行系统配置
218
18.4 管理变更请求
219
18.5 管理网站
220
第19章 软件配置管理实施
223
19.1 不同阶段,不同挑战
224
19.2 如何完成一项改进
225
19.3 在一个项目的生命周期中
227
19.4 平衡集权与自治
231
19.5 管理众多的项目
234
19.6 软件配置管理团队的组织结构
235
结语 提倡务实的精神
238
附录A 相关工具索引
241
参考书目
251
在线资源
252
书网互动
254
编辑推荐
《未雨绸缪:理解软件配置管理(第2版)》的一大特色是作者用诙谐生动的语言来讲述专业的技术知识。文中充满睿智的调侃,为读者营造出一种轻松的氛围,让原本比较沉闷的技术阅读成为一种愉悦的享受!
前言
第2版前言 本书第1版的写作完成于2007年秋天。四年以来,软件配置管理领域最大的发展变化是,以Git为代表的分布式版本控制工具日渐流行。本书第2版添加了专门的章节(第3.5节)介绍分布式版本控制工具,并在其他已有章节(第2、3、4、5、7、12、16章)中,介绍如何在不同的场景中使用这个新“装备”。 然而,引入分布式版本控制工具,只是第2版所修订内容的一小部分。读过第一版的读者在预览本版目录时会发现,本书的篇章结构发生了不少变化。比如,持续集成的内容进行了扩充,作为单独的一章(第6章)体现出来。再如,在讲解变更管理时,用一节的篇幅(第10.2节)讲解了Scrum等开发方法中,以特性(Feature)为单位的开发管理。 在具体内容的修改中,替换了第1版中两三成的文字,以进一步突出重点、说清本质,并帮助读者更好地学以致用。此外,第1版中使用的若干术语在本版中进行了更新。比如改称任务单元为变更集,与业界通用术语相符。 本书第2版的具体内容改变了很多。而与第1版相比,本书的叙述风格和目标读者群没有发生什么变化。本书仍然力图以生动、易懂的叙述,让广大的软件开发人员、管理人员、质量保证与流程优化人员,当然也包括配置管理人员,对软件配置管理有一个基本的了解。 感谢电子工业出版社张春雨等编辑的辛苦工作,使本书第2版得以付梓。同时感谢如下评审者认真、细致的评审:我的配置管理同行,李靖雯、李晓琴、李越、罗晓辉、王晓翔、赵延涛、郑博星,他们足以保证本书的专业性;从事软件研发中不同工作的关恒、齐文、张辉、庄孝德等同事,他们帮助我从不同视角审视考量本书;以及并不从事软件研发工作的我的夫人,她负责保证本书的叙述通俗易懂,即使外行也能理解。感谢你们的帮助! 本书第1版在当当网和中国互动出版网得到了读者的较好评价,并且从出版至售罄,一直位列两网站软件配置管理书籍销量榜首。作为作者,最希望的事情就是写出的一点东西能得到读者的认可,对读者有所帮助。很高兴本书第1版初步实现了这一目标,并期望本书第2版能够给读者带来更大的收获。 董越 2011年10月
内容概要
董越,网名流水先生,男,1977年生,他目前的公开身份是索尼公司的CM Architect(配置管理架构师)。而他的秘密身份是咨询师,年复一年,飞来飞去,向众多企业提供软件配置管理方面的培训和咨询服务。他毕业于清华大学,拥有一个硕士学位和两个学士学位。他曾工作于西门子、摩托罗拉和雅虎等公司,一直专注于软件配置管理。他发表文章,撰写书籍;曾领导Flooda、EasyCM等多个开源软件项目;经常在各种会议、沙龙等场合讲演。
(个人网站:http://www.dongyue.name, 电子邮箱:me@dongyue.name)
章节摘录
版权页: 插图: 1.1问题的引出 软件配置管理工作者差不多都有这样的经验:在认识新朋友时,当别人问起自己所从事的职业,自然会回答道:“我从事软件配置管理工作。”接着,十有八九,会被问到下一个问题:“什么是软件配置管理?”总被问到相同的问题,倒还称不上是苦恼,真正的苦恼在于回答这个问题,因为软件配置管理真是不太容易说得清……解释了半天,结果往往是:“你这份工作好玄妙啊。隔行如隔山啊,我是搞不懂了。” 是的,软件配置管理确实不太好解释。软件开发过程中的其他工作,似乎都比它容易理解。开发人员在编写源代码;测试人员在测试、挑毛病;需求分析师配合用户确定需求,并且用准确的语言表达出来……虽然这样说未必严谨,但是至少能够得到一个大致的印象。然而,软件配置管理呢?软件配置管理是什么? “一套应用技术上和管理上的指导和监督的方法,用来识别和记录配置项的功能特征和物理特征;控制这些特征的变更;记录和报告变更的处理和执行的状态;以及验证其是否符合特定的需求。”。 如果你看得一头雾水,别担心,这不是你能力上的问题。大部分人和你的感受相同。这个定义,以及类似的权威定义,都高度抽象。用一两句话确实很难把握好软件配置管理这个概念,需要更多的描述才能把它说清楚。事实上,这一整本书,就是在认识和理解软件配置管理。而在这一章中,我们将用一些我们相对熟悉的概念来打比方、做对比,来讲解软件配置管理这个概念。通过这样一种方式,让大家对软件配置管理有一个虽然初步但比较正确的认识。 1.2有那么一类管理 管理是个很宽泛的话题。大到管理企业、组织生产、治理河川、治国平天下,小到制定周末出游计划、整理通讯录、清理垃圾文件。在这里我们可不是要讨论这么多的事情。我们来重点看看下面这几个: ●库房管理 库房管理员小张关心仓库里存放了哪些东西,分门别类放在哪儿,每样有多少个,何时存进来的,谁存进来的,何时提走,谁提走的(提走时要有出库单才行)。 ●财务会计 小王负责会计出纳工作,她要把公司的各项费用和各项收入分类记录在各种财务表格中,并进行统计。除了记录之外,她要确保合乎规定的票据才能在她这里报销。
图书封面