TSP-Coaching Development Teams
暫譯: TSP-教練發展團隊

Watts S. Humphrey

  • 出版商: Addison Wesley
  • 出版日期: 2006-04-20
  • 定價: $1,780
  • 售價: 9.0$1,602
  • 語言: 英文
  • 頁數: 448
  • 裝訂: Hardcover
  • ISBN: 0201731134
  • ISBN-13: 9780201731132
  • 相關分類: 專案管理 PM軟體工程
  • 立即出貨

買這商品的人也買了...

相關主題

商品描述

Description

Most modern software development projects require teams, and good teamwork largely determines a project’s success. The Team Software Process (TSP), created by Watts S. Humphrey, is a set of engineering practices and team concepts that produce effective teams, thereby helping developers deliver high-quality products on time and within budget. TSP bridges Humphrey’s seminal work on the Capability Maturity Model (CMM), an improvement framework for the entire software organization, and his Personal Software Process (PSP), practices designed to improve the work of individual developers.

Typical first-time TSP teams increase productivity by more than 50 percent while greatly increasing the quality of their delivered products. However, TSP teams only continue to improve under the guidance of a capable coach. One industrial-strength team, for example, increased its productivity by an additional 94 percent and reduced test defects by 85 percent through three consecutive TSP quarterly product release cycles. Without competent coaching, teams often do not progress much beyond the initial one-time improvement seen after the introduction of the TSP.

Humphrey distinguishes between TSP coaching and TSP leadership, explaining why the skillful performance of both functions is critical. In this practical guide, he shares coaching methods that have repeatedly inspired TSP teams and steered them toward success. With the help of a coach, TSP teams undergo a brief but intense project launch in which they define their own processes, make their own plans, and negotiate their commitments with management, resulting in dramatically enhanced performance.

Whether you are considering the TSP or are actively implementing it, TSPSM—Coaching Development Teams provides the invaluable examples, guidelines, and suggestions you need to get started and keep developing as a team coach. It’s meant to complement Humphrey’s other books, TSPSM—Leading a Development Team and PSPSM: A Self-Improvement Process for Software Engineers. Together, the three works offer a rich resource for improving your software development capabilities.

 

Table of Contents

Preface xvPart I: Team Formation 1Chapter 1: Development Teams 5

1.1. TSP Overview 5

1.2. Why Teams Are Needed 6

1.3. What Are Teams? 8

1.4. Kinds of Teams 9

1.5. The Nature of Self-Directed Teams 10

1.6. The Team Leader and Coach Roles 14

1.7. Coaching Workload 14

1.8. Summary 15

Chapter 2: Team Behavior 17

2.1. The Team Life Cycle 18

2.2. Kinds of Groups 22

2.3. Team Styles 25

2.4. Why Teams Fail 28

2.5. Summary 33

Chapter 3: The Coaching Job 35

3.1. Coaching Principles 35

3.2. Launching a TSP Team 37

3.3. Coaching the Team Members 38

3.4. Coaching Experienced Teams 39

3.5. Coaching the Team Leader 40

3.6. Coaching Management 46

3.7. Summary 47

Chapter 4: Teambuilding 49

4.1. What Makes Teams Successful? 49

4.2. Teambuilding Approaches 50

4.3. The TSP Teambuilding Strategy 51

4.4. How the Launch Builds Teams 51

4.5. Getting Involvement 55

4.6. Summary 63

Part II: Launching a TSP Team 65Chapter 5: Launch Preparation 67

5.1. When to Launch a Project 67

5.2. Team Scope 68

5.3. Team-Member Selection 70

5.4. Preparation Topics 71

5.5. Common Preparation Problems 75

5.6. Launch Preparation Steps 76

5.7. Weekly Launch Preparation Status Meeting 77

5.8. Summary 77

Chapter 6: The Team Charter 79

6.1. Establishing the Team Charter 80

6.2. The Opening Management Meeting 80

6.3. Start with a Positive Attitude 81

6.4. Issues and Considerations 82

6.5. Summary 83

Chapter 7: Team Goals 85

7.1. What Goals Are 85

7.2. The Importance of Feedback 87

7.3. Goal Priorities 87

7.4. Measurable Goals 88

7.5. Kinds of Goal Measures 89

7.6. The Problem with Measurements 91

7.7. Kinds of Goals 92

7.8. The TSP Goal-Setting Process 94

7.9. Goal Tracking 96

7.10. A Goal Measurement Example 97

7.11. Summary 98

Chapter 8: Team-Member Roles 101

8.1. What Roles Are 101

8.2. Why Roles Are Needed 102

8.3. Selecting Team Roles 103

8.4. The TSP Roles 104

8.5. Other Team-Member Roles 110

8.6. Roles and Team Size 110

8.7. Coaching the Role Managers 112

8.8. The Role Manager Commitment 113

8.9. Summary 113

Chapter 9: Team Planning 115

9.1. The TSP Planning Process 116

9.2. Launch Meeting 3 116

9.3. Product Conceptual Design 116

9.4. Team Strategy 118

9.5. The Products to Be Produced 121

9.6. The Development Process 121

9.7. Process and Support Plans 123

9.8. CCB Membership 124

9.9. Launch Meeting Documentation 124

9.10. Summary 124

Chapter 10: The Overall Plan 127

10.1. Launch Meeting 4 128

10.2. The Size Estimate 128

10.3. Determining Project Tasks 129

10.4. The Overall Resource Estimate 131

10.5. Resource Availability 131

10.6. Generating and Assessing the Overall Plan 132

10.7. Optimum Staffing 133

10.8. Summary 135

Chapter 11: The Quality Plan 137

11.1. The Importance of Quality 137

11.2. Quality Goals 139

11.3. The Cost of Defects 140

11.4. Measuring Software Quality 145

11.5. Percent Defect Free (PDF) 145

11.6. Making the Quality Plan 146

11.7. Summary 150

Chapter 12: Detailed Planning 153

12.1. How Far Out Should Teams Plan? 154

12.2. How Detailed Should Plans Be? 154

12.3. How Plans Can Improve Efficiency 155

12.4. Whether to Plan Now or to Plan Later 156

12.5. The Need for Balanced Plans 157

12.6. The TSP Detailed Planning Process 158

12.7. Summary 159

Chapter 13: Managing Risk 161

13.1. What Are Risks? 161

13.2. The Importance of Risk Management 162

13.3. The Principles of Risk Management 162

13.4. The TSP Risk Management Process 163

13.5. Risk Identification 163

13.6. Risk Evaluation 165

13.7. The Risk Evaluation Process 165

13.8. Assigning Risks 166

13.9. Risk Mitigation 166

13.10. Risk Management Examples 167

13.11. Risk Tracking and Management 168

13.12. Summary 169

Chapter 14: The Management Meeting 171

14.1. Preparing for the Management Meeting 172

14.2. Presenting the Team’s Plan 173

14.3. Alternative Plans 174

14.4. Risks 174

14.5. Closing the Meeting 175

14.6. Presentation Suggestions 175

14.7. Summary 178

Chapter 15: The Launch Postmortem 181

15.1. The Postmortem Attitude 182

15.2. The Postmortem Process 184

15.3. Postmortem Coaching Strategies 186

15.4. Summary 187

Chapter 16: Relaunching a Team Project 189

16.1. What Is a Relaunch? 190

16.2. Why Do a Relaunch? 192

16.3. When to Relaunch 193

16.4. How to Do a Relaunch 195

16.5. The Relaunch Process 196

16.6. Revising the Quality Plan 200

16.7. A Quality Replanning Example 200

16.8. Concluding the Relaunch 204

16.9. Summary 204

Part III: Coaching a TSP Project 207Chapter 17: Post-Launch Coaching 209

17.1. Starting New Teams 210

17.2. The Coaching Process 210

17.3. The Post-Launch Briefing 210

17.4. The Weekly Team Meeting 211

17.5. The Daily Stand-Up Meeting 212

17.6. The Weekly Status Report 212

17.7. Coaching Inspections 214

17.8. Coaching Individuals 215

17.9. Coaching Role Managers 215

17.10. Coaching the Team Leader 216

17.11. The Project Notebook 217

17.12. The Team-Member Notebook 217

17.13. The Checkpoint Review 218

17.14. The Coaching Plan 220

17.15. Summary 223

Chapter 18: Maintaining the Plan 225

18.1. Plan Types 226

18.2. Plan Dynamics 227

18.3. Maintaining the Team’s Plan 228

18.4. A Workload Imbalance Example 229

18.5. Facing Facts 231

18.6. When to Update the Plan 232

18.7. Updating Individual Plans 232

18.8. Dynamic Load Balancing 236

18.9. Interpreting Plan Data 237

18.10. Management Reporting 240

18.11. Summary 241

Chapter 19: Managing Quality 243

19.1. Principles of Quality Management 244

19.2. Why Manage Quality? 245

19.3. The Quality Journey 246

19.4. The Developer’s Responsibility for Quality 247

19.5. The Team’s Responsibility for Quality 248

19.6. Quality Management Methods 249

19.7. Interpreting Quality Data 259

19.8. Reporting Quality Data 261

19.9. Defect Reporting Considerations 266

19.10. Summary 267

Chapter 20: The Project Postmortem 269

20.1. The Purpose of the Postmortem 270

20.2. The Desired Data 270

20.3. Postmortem Preparation 272

20.4. The Postmortem Process 272

20.5. Teamwork Assessment 275

20.6. Coaching and Leadership Assessment 276

20.7. Coaching the Postmortem 276

20.8. The Team-Member Postmortem 277

20.9. Summary 278

Part IV: TSP Extensions 279Chapter 21: Team Variations 281

21.1. Work Perspectives 282

21.2. Team Structure 285

21.3. Team Communication 286

21.4. Functional Teams 287

21.5. Distributed Teams 288

21.6. Multiple Teams 290

21.7. System-Wide Teams 291

21.8. Coaching Guidelines 292

21.9. Summary 293

Chapter 22: Functional Teams 295

22.1. Why Functional Teams Are Needed 296

22.2. The Functional-Team Strategy 296

22.3. Preparing for a Functional-Team Launch 298

22.4. Goal Setting 299

22.5. Launching Functional Teams 303

22.6. Coaching a Functional-Team Launch 308

22.7. Coaching a Functional Team 309

22.8. Summary 311

Chapter 23: Multiple Teams 313

23.1. What Is a Multi-Team? 314

23.2. The TSP Multi-Team Strategy 314

23.3. Forming a Multi-Team 315

23.4. The TSPm Launch Preparation Process 316

23.5. Launching a Multi-Team 321

23.6. Coaching a Multi-Team Launch 324

23.7. Launching a Distributed Multi-Team 325

23.8. Coaching Multi-Teams 328

23.9. Tracking and Reporting on Multi-Teams 330

23.10. Summary 330

Chapter 24: Integrated Development Teams 333

24.1. Process Principles for Large-Scale Teams 334

24.2. The Program-Initiation Team 339

24.3. The Program-Management Problem 341

24.4. Program Launching and Coaching Strategies 346

24.5. The Role-Manager Teams 347

24.6. Program Monitoring and Reporting 348

24.7. Summary 348

Part V: Maintaining a TSP Team 351Chapter 25: Developing Teamwork 353

25.1. Team-Member Communication 354

25.2. Principled Negotiation 357

25.3. The TSP Communication Strategy 358

25.4. Maintaining Team Communication 359

25.5. Process Discipline 361

25.6. Summary 364

Chapter 26: Coaching Ethics 365

26.1. The Coach’s Responsibilities 366

26.2. The Coaching Commitment 367

26.3. Handling Team and Individual Data 370

26.4. Measuring People 373

26.5. Relating to Management 375

26.6. Handling Difficult Team Members 375

26.7. Summary 376

Chapter 27: The Coaching Team 379

27.1. Coaching in Organizations 379

27.2. Why Use a Coaching Team? 380

27.3. Forming a Coaching Team 381

27.4. Launching a Coaching Team 382

27.5. Managing and Tracking Coaching Teams 384

27.6. Coaching a Coaching Team 385

27.7. Being on a Coaching Team 385

27.8. Summary 386

Chapter 28: Being a Team Coach 387

28.1. Building Understanding and Motivation 388

28.2. Building a Coaching Team 388

28.3. Success Is Invisible 389

28.4. Reporting to Management 390

28.5. Coaching Yourself 393

28.6. Summary 396

Index 397

商品描述(中文翻譯)

大多數現代軟體開發專案需要團隊合作,而良好的團隊合作在很大程度上決定了專案的成功。由 Watts S. Humphrey 創建的團隊軟體流程 (Team Software Process, TSP) 是一套工程實踐和團隊概念,能夠產生有效的團隊,從而幫助開發人員按時、在預算內交付高品質的產品。TSP 橋接了 Humphrey 在能力成熟度模型 (Capability Maturity Model, CMM) 上的開創性工作,這是一個針對整個軟體組織的改進框架,以及他的個人軟體流程 (Personal Software Process, PSP),這些實踐旨在改善個別開發人員的工作。

典型的首次 TSP 團隊的生產力提高超過 50%,同時大幅提升交付產品的品質。然而,TSP 團隊只有在有能力的教練指導下才能持續改進。例如,一個工業級的團隊在三個連續的 TSP 季度產品發佈周期中,生產力額外提高了 94%,測試缺陷減少了 85%。如果沒有合格的教練,團隊通常無法在引入 TSP 後的初次改進之外取得進展。

Humphrey 區分了 TSP 教練和 TSP 領導,解釋了兩者的熟練表現為何至關重要。在這本實用指南中,他分享了多次激勵 TSP 團隊並引導他們走向成功的教練方法。在教練的幫助下,TSP 團隊經歷了一個簡短但強度高的專案啟動,定義自己的流程,制定計畫,並與管理層協商承諾,從而顯著提升表現。

無論您是考慮 TSP 還是正在積極實施它,《TSPSM—教練發展團隊》提供了您開始並持續發展作為團隊教練所需的寶貴範例、指導和建議。這本書旨在補充 Humphrey 的其他書籍,《TSPSM—領導開發團隊》和《PSPSM:軟體工程師的自我改善過程》。這三本書共同提供了豐富的資源,以改善您的軟體開發能力。

目錄
前言 xv
第一部分:團隊組建 1
第一章:開發團隊 5
1.1. TSP 概述 5
1.2. 為什麼需要團隊 6
1.3. 團隊是什麼? 8
1.4. 團隊的種類 9
1.5. 自我導向團隊的特性 10
1.6. 團隊領導者和教練角色 14
1.7. 教練工作量 14
1.8. 總結 15
第二章:團隊行為 17
2.1. 團隊生命週期 18
2.2. 團體的種類 22
2.3. 團隊風格 25
2.4. 團隊失敗的原因 28
2.5. 總結 33
第三章:教練工作 35
3.1. 教練原則 35
3.2. 啟動 TSP 團隊 37
3.3. 教練團隊成員 38
3.4. 教練經驗豐富的團隊 39
3.5. 教練團隊領導者 40
3.6. 教練管理層 46
3.7. 總結 47
第四章:團隊建設 49
4.1. 什麼使團隊成功? 49
4.2. 團隊建設方法 50
4.3. TSP 團隊建設策略 51
4.4. 啟動如何建立團隊 51
4.5. 獲得參與 55
4.6. 總結 63
第二部分:啟動 TSP 團隊 65
第五章:啟動準備 67
5.1. 何時啟動專案 67
5.2. 團隊範圍 68
5.3. 團隊成員選擇 70
5.4. 準備主題 71
5.5. 常見準備問題 75
5.6. 啟動準備步驟 76
5.7. 每週啟動準備狀態會議 77
5.8. 總結 77
第六章:團隊章程 79
6.1. 建立團隊章程 80
6.2. 開幕管理會議 80
6.3. 以積極的態度開始 81
6.4. 問題和考量 82
6.5. 總結 83
第七章:團隊目標 85
7.1. 目標是什麼 85
7.2. 反饋的重要性 87
7.3. 目標優先級 87
7.4. 可衡量的目標 88
7.5. 目標衡量的種類 89
7.6. 衡量的問題 91
7.7. 目標的種類 92
7.8. TSP 目標設定過程 94
7.9. 目標追蹤 96
7.10. 目標衡量範例 97
7.11. 總結 98
第八章:團隊成員角色 101
8.1. 角色是什麼 101
8.2. 為什麼需要角色 102
8.3. 選擇團隊角色 103
8.4. TSP 角色 104
8.5. 其他團隊成員角色 110
8.6. 角色與團隊規模 110
8.7. 教練角色管理者 112
8.8. 角色管理者的承諾 113
8.9. 總結 113
第九章:團隊計畫 115
9.1. TSP 計畫過程 116
9.2. 啟動會議 3 116
9.3. 產品概念設計 116
9.4. 團隊策略 118
9.5. 要生產的產品 121
9.6. 開發過程 121
9.7. 流程和支援計畫 123
9.8. CCB 成員資格 124
9.9. 啟動會議文件 124
9.10. 總結 124
第十章:整體計畫 127
10.1. 啟動會議 4 128
10.2. 尺寸估算 128
10.3. 確定專案任務 129
10.4. 整體資源估算 131
10.5. 資源可用性 131
10.6. 生成和評估整體計畫 132
10.7. 最佳人力配置 133
10.8. 總結 135
第十一章:品質計畫 137
11.1. 品質的重要性 137
11.2. 品質目標 139
11.3. 缺陷的成本 140
11.4. 測量軟體品質 145
11.5. 無缺陷百分比 (PDF) 145
11.6. 制定品質計畫 146
11.7. 總結 150
第十二章:詳細計畫 153
12.1. 團隊應該計畫多遠? 154
12.2. 計畫應該多詳細? 154
12.3. 計畫如何提高效率 155
12.4. 現在計畫還是稍後計畫 156
12.5. 平衡計畫的必要性 157
12.6. TSP 詳細計畫過程 158
12.7. 總結 159
第十三章:風險管理 161
13.1. 風險是什麼? 161
13.2. 風險管理的重要性 162
13.3. 風險管理的原則 162
13.4. TSP 風險管理過程 163
13.5. 風險識別 163
13.6. 風險評估 165
13.7. 風險評估過程 165
13.8. 分配風險 166
13.9. 風險緩解 166
13.10. 風險管理範例 167
13.11. 風險追蹤與管理 168
13.12. 總結 169
第十四章:管理會議 171
14.1. 準備管理會議 172
14.2. 提呈團隊計畫 173
14.3. 替代計畫 174
14.4. 風險 174
14.5. 結束會議 175
14.6. 簡報建議 175
14.7. 總結 178
第十五章:啟動後檢討 181
15.1. 檢討的態度 182
15.2. 檢討過程 184
15.3. 檢討教練策略 186
15.4. 總結 187
第十六章:重新啟動團隊專案 189
16.1. 什麼是重新啟動? 190
16.2. 為什麼要重新啟動? 192
16.3. 何時重新啟動 193
16.4. 如何進行重新啟動 195
16.5. 重新啟動過程 196
16.6. 修訂品質計畫 200
16.7. 品質重新規劃範例 200
16.8. 結束重新啟動 204
16.9. 總結 204
第三部分:教練 TSP 專案 207
第十七章:啟動後教練 209
17.1. 開始新團隊 210
17.2. 教練過程 210
17.3. 啟動後簡報 210
17.4. 每週團隊會議 211
17.5. 每日站立會議 212
17.6. 每週狀態報告 212
17.7. 教練檢查 214
17.8. 教練個別成員 215
17.9. 教練角色管理者 215
17.10. 教練團隊領導者 216
17.11. 專案筆記本 217
17.12. 團隊成員筆記本 217
17.13. 檢查點回顧 218
17.14. 教練計畫 220
17.15. 總結 223
第十八章:維持計畫 225
18.1. 計畫類型 226
18.2. 計畫動態 227
18.3. 維持團隊的計畫 228
18.4. 工作量不平衡範例 229
18.5. 面對事實 231
18.6. 何時更新計畫 232
18.7. 更新個別計畫 232
18.8. 動態負載平衡 236
18.9. 解釋計畫數據 237
18.10. 管理報告 240
18.11. 總結 241
第十九章:管理品質 243
19.1. 品質管理原則 244
19.2. 為什麼要管理品質? 245
19.3. 品質之旅 246
19.4. 開發人員對品質的責任 247
19.5. 團隊對品質的責任 248
19.6. 品質管理方法 249