第一部分 团队形成第1章 开发团队 3
1.1 TSP概述 3
1.2 为什么需要团队 3
1.3 什么是团队 4
1.4 团队的类型 5
1.4.1 开发团队 5
1.4.2 团队规模 5
1.4.3 小型、大型和超大型团队 6
1.5 自主型团队的本质 6
1.5.1 成员感和归属感 7
1.5.2 对共同目标的承诺 7
1.5.3 过程和计划的自主权 7
1.5.4 技能和纪律 8
1.5.5 正直、诚实和谦恭的行为 8
1.5.6 追求卓越 8
1.6 团队领导和培训师角色 8
1.7 培训工作量 9
1.8 小结 9
参考文献 10
第2章 团队行为 11
2.1 团队生命周期 11
2.1.1 形成阶段 11
2.1.2 风暴阶段 12
2.1.3 规范阶段 13
2.1.4 执行阶段 13
2.1.5 培训建议 13
2.2 小组类型 14
2.2.1 工作小组 14
2.2.2 过程小组 15
2.2.3 战斗小组 15
2.2.4 培训建议 16
2.3 团队风格 16
2.3.1 开放小组 16
2.3.2 随机小组 17
2.3.3 封闭小组 17
2.3.4 同步小组 18
2.4 团队失败的原因 18
2.4.1 资源不足 18
2.4.2 领导能力问题 19
2.4.3 不可能实现的目标 19
2.4.4 士气问题 20
2.4.5 培训建议 21
2.5 小结 21
参考文献 21
第3章 培训工作 22
3.1 培训原则 22
3.2 启动TSP团队 23
3.3 培训团队成员 24
3.4 培训经验丰富的团队 25
3.4.1 使用已定义的过程 25
3.4.2 建立基准 25
3.5 培训团队领导 25
3.5.1 新人 25
3.5.2 培训新人 26
3.5.3 设计师 27
3.5.4 培训设计师 27
3.5.5 懦弱的人 27
3.5.6 培训懦弱的人员 27
3.5.7 独断专行的人 28
3.5.8 培训独断专行的人 28
3.5.9 顽固分子 29
3.5.10 培训顽固分子 29
3.6 培训管理层 29
3.7 小结 30
参考文献 30
第4章 组建团队 31
4.1 团队成功的原因 31
4.2 团队组建方法 31
4.2.1 团队组建演习 31
4.2.2 团队组建演习中的问题 31
4.3 TSP团队组建策略 32
4.4 启动过程如何组建团队 32
4.5 置身其中 34
4.5.1 提问,不要叙述 35
4.5.2 沉默不语 35
4.5.3 频繁检查约定 36
4.5.4 感受无言的顾虑或分歧 36
4.5.5 不要让任何人垄断讨论 37
4.5.6 管理专家 37
4.5.7 培训团队领导 38
4.5.8 关注事实和数据 39
4.5.9 不允许观察者出现 39
4.6 小结 40
第二部分 启动TSP团队第5章 启动准备 43
5.1 启动项目时间 43
5.2 团队范围 43
5.2.1 承诺 44
5.2.2 分配时机 44
5.2.3 整合相关功能 44
5.2.4 经验 44
5.3 团队成员选择 44
5.4 与准备相关的论题 45
5.4.1 计划 45
5.4.2 项目报告 46
5.5 共同的准备问题 48
5.6 启动准备步骤 49
5.7 启动准备状态每周例会 49
5.8 小结 49
参考文献 50
第6章 团队章程 51
6.1 制定团队章程 51
6.2 首次管理层会议 51
6.3 以积极的态度启动 52
6.4 问题和考虑事项 52
6.4.1 缺少主管 52
6.4.2 缺席会议 53
6.4.3 人员未接受过培训 53
6.5 小结 53
第7章 团队目标 55
7.1 目标是什么 55
7.1.1 为什么说目标很重要 55
7.1.2 团队为什么需要目标 55
7.2 反馈的重要性 56
7.3 目标优先权 56
7.4 可以度量的目标 57
7.5 目标度量的类型 57
7.5.1 具体目标 57
7.5.2 判断目标 58
7.5.3 观点 58
7.6 度量的问题 58
7.7 目标的类型 59
7.7.1 陈述性目标 59
7.7.2 强制目标 59
7.7.3 隐含目标 60
7.7.4 内部目标 60
7.8 TSP目标设定过程 60
7.8.1 会议概述 61
7.8.2 回顾管理层的陈述性目标 61
7.8.3 隐含目标 61
7.8.4 团队目标 62
7.9 目标跟踪 62
7.10 目标度量示例 63
7.11 小结 63
参考文献 64
第8章 团队成员角色 65
8.1 何为角色 65
8.2 为什么需要角色 65
8.2.1 满足人类需求 66
8.2.2 处理迫切的团队任务 66
8.2.3 加速团队组建过程 66
8.3 选择团队角色 66
8.4 TSP角色 67
8.4.1 客户接口经理的职责 67
8.4.2 设计经理的职责 68
8.4.3 实现经理的职责 68
8.4.4 测试经理的职责 68
8.4.5 计划经理的职责 69
8.4.6 过程经理的职责 69
8.4.7 质量经理的职责 70
8.4.8 支持经理的职责 70
8.5 其他团队成员角色 70
8.6 角色和团队规模 71
8.7 培训角色管理者 72
8.8 角色管理者的承诺 72
8.9 小结 73
参考文献 73
第9章 团队计划 74
9.1 TSP计划过程 74
9.2 第3次启动会议 74
9.3 产品的概念设计 74
9.3.1 细节太多 75
9.3.2 细节不充分 75
9.4 团队策略 75
9.4.1 粗略的规模估算 76
9.4.2 选择开发策略 76
9.5 待生产的产品 77
9.6 开发过程 77
9.6.1 组建单位自己的过程 78
9.6.2 过程定义示例 78
9.6.3 过程一致性 78
9.7 过程和支持计划 79
9.8 CCB成员资格 79
9.9 启动会议文档 79
9.10 小结 79
参考文献 80
第10章 整体计划 81
10.1 第4次启动会议 81
10.2 规模估算 81
10.3 确定项目任务 82
10.4 整体资源估算 83
10.5 资源可用性 83
10.6 生成和评估整体计划 84
10.7 最优人员配置 85
10.8 小结 86
参考文献 86
第11章 质量计划 87
11.1 质量的重要性 87
11.2 质量目标 88
11.3 缺陷的成本 89
11.3.1 Teradyne公司的经验 89
11.3.2 测试所需要的时间 89
11.3.3 维护成本 91
11.4 度量软件的质量 92
11.5 无缺陷比率 92
11.6 制订质量计划 93
11.6.1 估算注入的缺陷 94
11.6.2 估算清除的缺陷 94
11.6.3 制订质量计划 95
11.7 小结 95
参考文献 96
第12章 详细计划 97
12.1 团队计划要有多长远 97
12.2 计划会有多详细 97
12.3 计划怎样提高效率 98
12.4 现在制订计划,还是以后制订 98
12.5 均衡计划的需求 99
12.6 TSP详细计划过程 100
12.7 小结 100
参考文献 100
第13章 管理风险 101
13.1 什么是风险 101
13.2 风险管理的重要性 101
13.3 风险管理的原则 101
13.4 TSP风险管理过程 102
13.5 风险识别 102
13.6 风险评估 103
13.7 风险评估过程 103
13.8 分配风险 103
13.9 风险缓解 104
13.10 风险管理示例 104
13.10.1 人员影响 104
13.10.2 电力故障 105
13.10.3 后期变更 105
13.11 风险跟踪和管理 105
13.12 小结 105
参考文献 106
第14章 管理层会议 107
14.1 准备管理层会议 107
14.2 递交项目计划 108
14.3 候选计划 109
14.4 风险 109
14.5 结束会议 109
14.6 提交建议 109
14.6.1 没有任何值得惊讶的事 109
14.6.2 提醒管理层要记得公开操作项 110
14.6.3 快速转移话题 110
14.6.4 使用平实的语言 110
14.6.5 态度要明确 111
14.6.6 管理层接受计划就停止 111
14.6.7 确保团队了解管理层的需要 111
14.6.8 大量备份 111
14.7 小结 111
第15章 启动后总结分析 113
15.1 总结分析的态度 113
15.1.1 总会有地方需要改进 113
15.1.2 许多细微的变更 113
15.1.3 用户拥有最好的改进思想 114
15.1.4 让每个人都参与其中 114
15.1.5 识别出所有的问题 114
15.1.6 个性不能太强,不要有防备心理 114
15.1.7 把人员问题变成过程问题 115
15.2 总结分析过程 115
15.2.1 会议介绍 115
15.2.2 评审启动数据 115
15.2.3 准备PIP 115
15.2.4 启动评价 116
15.2.5 启动会议文档 116
15.3 总结分析培训策略 116
15.4 小结 116
第16章 重新启动团队项目 118
16.1 何为重新启动 119
16.2 为何要重新启动 119
16.2.1 有限计划期 120
16.2.2 完成周期 120
16.2.3 项目变更 120
16.2.4 团队变更 120
16.3 何时重新启动 121
16.3.1 重新启动会花费时间 121
16.3.2 小变动 121
16.3.3 “分析麻痹” 121
16.4 如何重新启动 122
16.5 重新启动过程 123
16.6 修订质量计划 125
16.7 重新制订质量计划的示例 125
16.8 结束重新启动 127
16.9 小结 127
参考文献 128
第三部分 TSP项目培训第17章 启动后培训 130
17.1 启动新团队 130
17.2 培训过程 130
17.3 启动后短会 131
17.4 团队每周例会 131
17.5 每日例会 132
17.6 每周状态报告 132
17.7 培训审查 133
17.8 培训个体 133
17.9 培训角色管理者 134
17.10 培训团队领导 134
17.11 项目备忘录 135
17.12 团队成员备忘录 135
17.13 检查点评审 136
17.14 培训计划 137
17.15 小结 138
参考文献 138
第18章 维护计划 139
18.1 计划类型 139
18.1.1 基线计划 139
18.1.2 团队计划 140
18.1.3 详细计划 140
18.1.4 整体计划 140
18.1.5 质量计划 140
18.2 计划动力学 140
18.3 维护团队的计划 141
18.4 工作量失衡示例 141
18.5 面对现实 142
18.6 何时更新计划 143
18.7 更新个体计划 143
18.7.1 每周任务时数 143
18.7.2 任务生产率 144
18.7.3 未计划任务的频率 144
18.7.4 处理未计划的任务 145
18.8 动态负载平衡 145
18.9 诠释计划数据 145
18.10 管理层报告 147
18.11 小结 148
参考文献 148
第19章 管理质量 149
19.1 质量管理的原则 149
19.2 为什么要管理质量 150
19.3 质量之旅 150
19.4 开发人员的质量职责 151
19.5 团队的质量职责 151
19.6 质量管理方法 153
19.6.1 计划评审 153
19.6.2 设计方法 153
19.6.3 设计评审方法 154
19.6.4 审查预评审 155
19.6.5 捕获-重新捕获缺陷估算 155
19.6.6 预测收益 156
19.6.7 质量简档和质量标准 157
19.6.8 测试数据分析 159
19.7 诠释质量数据 159
19.8 报告质量数据 161
19.9 缺陷报告事项 164
19.10 小结 165
参考文献 165
第20章 项目总结分析 166
20.1 总结分析的目的 166
20.2 期望数据 166
20.2.1 预测准确性 166
20.2.2 质量绩效 167
20.2.3 过程改进 167
20.3 总结分析准备 167
20.4 总结分析过程 168
20.4.1 基线评价 168
20.4.2 计划评价 168
20.4.3 质量绩效 168
20.4.4 计划数据 168
20.4.5 过程评价 168
20.4.6 利益相关者调查 169
20.4.7 目标评价 169
20.4.8 最终报告准备 169
20.5 团队协作评估 169
20.6 培训和领导力评估 170
20.7 培训总结分析 170
20.8 团队成员总结分析 171
20.9 小结 171
参考文献 171
第四部分 TSP扩展第21章 团队差异 175
21.1 工作观点 175
21.1.1 互相依赖 175
21.1.2 特殊化 176
21.1.3 规模 177
21.2 团队结构 177
21.3 团队沟通 178
21.4 职能型团队 178
21.5 分布式团队 179
21.5.1 与团队成员的沟通 179
21.5.2 团队成员之间的沟通 179
21.5.3 支持 180
21.5.4 指导、评价和培训 180
21.6 多重团队 180
21.6.1 结构问题 181
21.6.2 人员配备问题 181
21.7 系统级别的团队 181
21.8 培训准则 182
21.9 小结 182
参考文献 183
第22章 职能型团队 184
22.1 为什么需要职能型团队 184
22.2 职能型团队策略 184
22.3 为职能型团队启动做准备 185
21.3.1 团队培训 185
21.3.2 工作识别和分配 185
21.3.3 概念设计 186
21.3.4 数据准备 186
22.4 树立目标 186
22.4.1 多重目标 187
22.4.2 模糊或人为的目标 188
22.4.3 客户优先级 188
22.4.4 目标定义 189
22.5 启动职能型团队 189
22.5.1 第1次启动会议 189
22.5.2 第2次启动会议——目标 189
22.5.3 第2次启动会议——角色 190
22.5.4 第3次启动会议 190
22.5.5 第4次启动会议 191
22.5.6 第5次启动会议 191
22.5.7 第6次启动会议 192
22.5.8 第7次启动会议 192
22.5.9 第8次启动会议 192
22.5.10 第9次启动会议和PM 192
22.6 培训职能型团队启动 192
22.6.1 团队整合 192
22.6.2 团队成员培训 192
22.6.3 启动会议进度安排 193
22.7 培训职能型团队 193
22.7.1 职能型团队的跟踪 193
22.7.2 职能型团队的状态报告 193
22.7.3 职能型团队的任务优先级 193
22.7.4 职能型团队的每周例会 194
22.8 小结 194
参考文献 195
第23章 多重团队 196
23.1 什么是多团队 196
23.2 TSP多团队策略 196
23.3 形成多团队 197
23.4 TSPm启动准备过程 198
23.5 启动多团队 200
23.6 培训多团队启动 202
23.7 启动分布式多团队 203
23.8 培训多团队 204
23.9 多团队跟踪和报告 205
23.10 小结 206
参考文献 206
第24章 集成开发团队 207
24.1 大规模团队的过程原则 207
24.1.1 在各个层次上使用可靠的工程方法 208
24.1.2 管理每日工作量的变更 209
24.1.3 定义标准的报告度量 209
24.1.4 鼓励团队级的决策制订 209
24.1.5 强制实施架构纪律 210
24.1.6 管理系统的突现特性 210
24.1.7 实施量化质量管理 210
24.2 项目启动团队 211
24.3 项目管理的问题 212
24.3.1 管理职责 212
24.3.2 矩阵管理 213
24.3.3 制订项目决策 213
24.3.4 项目沟通 214
24.4 项目启动和培训策略 215
24.5 角色管理者团队 216
24.6 项目监控和报告 216
24.7 小结 216
参考文献 217
第五部分 维护TSP团队第25章 发展团队合作 220
25.1 团队成员沟通 220
25.1.1 广播和通知 221
25.1.2 劝说 221
25.1.3 协商 221
25.1.4 倾听 221
25.1.5 调节 222
25.2 原则协商 222
25.3 TSP沟通策略 223
25.4 维持团队沟通 223
25.4.1 分享公共的工作空间 224
25.4.2 频繁召开团队例会 224
25.4.3 关注于事实和数据 224
25.4.4 把所有事情都拿出来讨论 224
25.5 过程纪律 225
25.5.1 纪律的重要性 225
25.5.2 建立过程的纪律 225
25.5.3 维持过程纪律 226
25.5.4 团队的纪律职责 226
25.6 小结 226
参考文献 227
第26章 培训道德 228
26.1 培训师的职责 228
26.2 培训承诺 229
26.2.1 棘手的管理层 229
26.2.2 处理管理层的问题 229
26.2.3 棘手的团队领导 230
26.2.4 棘手的团队成员 230
26.2.5 毫无希望的项目 231
26.3 处理团队和个体数据 231
26.3.1 数据收集的成本 231
26.3.2 管理层评审数据 232
26.3.3 团队成员的个人数据 232
26.4 人员度量 233
26.4.1 正确地使用数据 233
26.4.2 数据误用 233
26.4.3 度量限制 234
26.5 与管理层相关的事务 234
26.6 处理棘手的团队成员 235
26.7 小结 235
参考文献 235
第27章 培训团队 236
27.1 单位内的培训 236
27.2 为什么要使用培训团队 236
27.3 组建培训团队 237
27.4 启动培训团队 237
27.4.1 资源承诺 238
27.4.2 备选计划 238
27.4.3 最小进度 238
27.5 管理和跟踪培训团队 239
27.6 对培训团队进行培训 239
27.7 参加培训团队 240
27.8 小结 240
第28章 成为团队培训师 241
28.1 培养理解和动机 241
28.2 组建培训团队 242
28.3 成功是无形的 242
28.4 向管理层报告 243
28.5 自我培训 244
28.6 小结 246
索引 248