PSP: A Self-Improvement Process for Software Engineers (Hardcover)
暫譯: PSP:軟體工程師自我提升過程(精裝版)
Watts S. Humphrey
- 出版商: Addison Wesley
- 出版日期: 2005-03-13
- 售價: $836
- 語言: 英文
- 頁數: 368
- 裝訂: Hardcover
- ISBN: 0321305493
- ISBN-13: 9780321305497
已絕版
買這商品的人也買了...
-
$980$774 -
$1,930$1,834 -
$780CMMI: Guidelines for Process Integration and Product Improvement (Harcover)
-
$590$466 -
$560$476 -
$2,390$2,271 -
$750$593 -
$780$616 -
$680$537 -
$902Computer Science Illuminated, 2/e
-
$675LPIC 1 Exam Cram 2: Linux Professional Institute Certification Exams 101 and 102 (Paperback)
-
$890$703 -
$650$507 -
$680$578 -
$450$383 -
$580$452 -
$620$490 -
$880$748 -
$1,127Database System Concepts, 5/e (IE) (美國版ISBN:0072958863)
-
$880$695 -
$390$308 -
$890$757 -
$780$663 -
$650$507 -
$550$495
商品描述
Table of Contents:
Preface xiii
Chapter 1: The Personal Process Strategy 1
1.1. The PSP’s Purpose 3
1.2. The Logic for a Software Engineering Discipline 4
1.3. Using Disciplined Development Practices 6
1.4. Operational Processes 6
1.5. Defining and Using a Personal Process 7
1.6. Learning to Use a Personal Process 8
1.7. Preparing for the Team Software Process 9
1.8. Summary 9
Reference 10
Chapter 2: The Baseline Personal Process 11
2.1. What Is a Process? 12
2.2. Defining Your Own Process 13
2.3. Baseline Process Contents 14
2.4. Why Forms Are Helpful 16
2.5. The PSP Process Elements 17
2.6. The PSP0 Process 18
2.7. PSP0 Measures 20
2.8. Time Recording 21
2.9. Defect Recording 24
2.10. The PSP0 Project Plan Summary 30
2.11. The Compile Phase 31
2.12. Incremental Development 32
2.13. PSP Tool Support 34
2.14. Summary 34
2.15. Exercises 34
Chapter 3: Measuring Software Size 35
3.1. Size Measures 35
3.2. Establishing a Database Counting Standard 40
3.3. Establishing a Line-of-Code Counting Standard 40
3.4. Size Accounting 42
3.5. Using Size Data 45
3.6. Calculating Productivity 47
3.7. Size Counters 48
3.8. Other Size Measures 53
3.9. Summary 54
3.10. Exercises 54
References 55
Chapter 4: Planning 57
4.1. The Planning Process 58
4.2. Why Make Plans? 59
4.3. What Is a Plan? 60
4.4. The Contents of a Software Plan 60
4.5. Planning a Software Project 62
4.6. The Conceptual Design 63
4.7. Plan Quality 65
4.8. Planning Issues 65
4.9. Summary 66
Reference 67
Chapter 5: Software Estimating 69
5.1. Size Estimating Principles 69
5.2. The Conceptual Design 70
5.3. Proxy-Based Estimating 71
5.4. Using Proxies in Estimating 75
5.5. Producing the Relative-Size Table 78
5.6. Estimating Considerations 80
5.7. Summary 84
Chapter 6: The PROBE Estimating Method 85
6.1. Estimating from Data 85
6.2. Proxy-Based Estimating 87
6.3. Estimating with Limited Data 95
6.4. An Estimating Example 100
6.5. Estimating Nonprogramming Tasks 102
6.6. Considerations in Using PROBE 105
6.7. Summary 108
6.8. Exercises 108
Chapter 7: Software Planning 109
7.1. Plan Requirements 109
7.2. Project and Period Plans 111
7.3. Producing the Schedule 113
7.4. Making the Schedule 115
7.5. Earned Value 119
7.6. An Earned Value Example 120
7.7. Comments on the EV Example 123
7.8. Estimating Accuracy 125
7.9. The Prediction Interval 126
7.10. Alerting Management to Changes 128
7.11. Planning Considerations 129
7.12. Summary 131
7.13. Exercises 132
References 132
Chapter 8: Software Quality 133
8.1. The PSP Quality Strategy 135
8.2. What Is Software Quality? 135
8.3. The Economics of Software Quality 136
8.4. Defect Types 141
8.5. Personal Quality Practices 142
8.6. Quality Measures 143
8.7. Quality Management 153
8.8. Personal Quality Management 154
8.9. Managing Product Quality 156
8.10. PSP Improvement Practices 157
8.11. Defect Prevention 158
8.12. Summary 160
References 161
Chapter 9: Design and Code Reviews 163
9.1. What Are Reviews? 164
9.2. Why Review Programs? 164
9.3. Review Principles 168
9.4. The PSP Code Review Process 173
9.5. The Code Review Checklist 176
9.6. Design Reviews 181
9.7. Design Review Principles 183
9.8. Review Measures 187
9.9. Review Issues 194
9.10. Summary 201
9.11. Exercises 202
References 202
Chapter 10: Software Design 203
10.1. What Is Design? 204
10.2. Why Design? 206
10.3. The Design Process 207
10.4. Design Levels 210
10.5. Design and Development Strategies 216
10.6. Design Quality 220
10.7. Summary 223
References 224
Chapter 11: The PSP Design Templates 225
11.1. Design Representation 226
11.2. The Design Templates 229
11.3. The Operational Specification Template (OST) 230
11.4. The Functional Specification Template (FST) 233
11.5. The State Specification Template (SST) 236
11.6. The Logic Specification Template (LST) 240
11.7. A State-Machine Design Example 241
11.8. Using the PSP Design Templates 246
11.9. Using the Design Templates in Large-Scale Design 248
11.10. Summary 250
11.11. Exercises 250
References 250
Chapter 12: Design Verification 253
12.1. Why Verify Programs? 254
12.2. Design Standards 257
12.3. Execution-Table Verification 258
12.4. Trace-Table Verification 262
12.5. Verifying State Machines 265
12.6. Loop Verification 271
12.7. Other Analytical Verification Methods 277
12.8. Verification Considerations 280
12.9. Summary 284
12.10. Exercises 284
References 285
Chapter 13: Process Extensions 287
13.1. Customizing the Development Process 289
13.2. Why Define a Process? 290
13.3. The PSP Process Strategy 291
13.4. Defining a Process 291
13.5. Process Evolution 294
13.6. Example Processes 298
13.7. Process Development Considerations 306
13.8. Summary 307
13.9. Exercises 308
References 308
Chapter 14: Using the Personal Software Process 309
14.1. Development Challenges 309
14.2. The Team Software Process (TSP) 313
14.3. The Logic of the TSP 314
14.4. Teambuilding 314
14.5. The TSP Launch Process 316
14.6. The TSP Coach 317
14.7. Managing Your Own Project 318
14.8. TSP Results 322
14.9. The Rewards of Teamwork 322
14.10. The TSP Team of One 323
14.11. Your Future in Software Engineering 326
References 327
Index 329
商品描述(中文翻譯)
目錄:
前言 xiii
第一章:個人流程策略 1
1.1. PSP 的目的 3
1.2. 軟體工程學科的邏輯 4
1.3. 使用有紀律的開發實踐 6
1.4. 操作流程 6
1.5. 定義和使用個人流程 7
1.6. 學習使用個人流程 8
1.7. 為團隊軟體流程做準備 9
1.8. 總結 9
參考文獻 10
第二章:基準個人流程 11
2.1. 什麼是流程? 12
2.2. 定義自己的流程 13
2.3. 基準流程內容 14
2.4. 為什麼表單有幫助 16
2.5. PSP 流程元素 17
2.6. PSP0 流程 18
2.7. PSP0 測量 20
2.8. 時間記錄 21
2.9. 缺陷記錄 24
2.10. PSP0 專案計畫摘要 30
2.11. 編譯階段 31
2.12. 增量開發 32
2.13. PSP 工具支援 34
2.14. 總結 34
2.15. 練習 34
第三章:測量軟體大小 35
3.1. 大小測量 35
3.2. 建立資料庫計數標準 40
3.3. 建立程式碼行計數標準 40
3.4. 大小會計 42
3.5. 使用大小數據 45
3.6. 計算生產力 47
3.7. 大小計數器 48
3.8. 其他大小測量 53
3.9. 總結 54
3.10. 練習 54
參考文獻 55
第四章:規劃 57
4.1. 規劃流程 58
4.2. 為什麼要制定計畫? 59
4.3. 什麼是計畫? 60
4.4. 軟體計畫的內容 60
4.5. 規劃軟體專案 62
4.6. 概念設計 63
4.7. 計畫品質 65
4.8. 規劃問題 65
4.9. 總結 66
參考文獻 67
第五章:軟體估算 69
5.1. 大小估算原則 69
5.2. 概念設計 70
5.3. 基於代理的估算 71
5.4. 在估算中使用代理 75
5.5. 產生相對大小表 78
5.6. 估算考量 80
5.7. 總結 84
第六章:PROBE 估算方法 85
6.1. 從數據中估算 85
6.2. 基於代理的估算 87
6.3. 使用有限數據進行估算 95
6.4. 估算範例 100
6.5. 估算非程式設計任務 102
6.6. 使用 PROBE 的考量 105
6.7. 總結 108
6.8. 練習 108
第七章:軟體規劃 109
7.1. 計畫要求 109
7.2. 專案和期間計畫 111
7.3. 產生時間表 113
7.4. 制定時間表 115
7.5. 賺取價值 119
7.6. 賺取價值範例 120
7.7. 對 EV 範例的評論 123
7.8. 估算準確性 125
7.9. 預測區間 126
7.10. 提醒管理層變更 128
7.11. 規劃考量 129
7.12. 總結 131
7.13. 練習 132
參考文獻 132
第八章:軟體品質 133
8.1. PSP 品質策略 135
8.2. 什麼是軟體品質? 135
8.3. 軟體品質的經濟學 136
8.4. 缺陷類型 141
8.5. 個人品質實踐 142
8.6. 品質測量 143
8.7. 品質管理 153
8.8. 個人品質管理 154
8.9. 管理產品品質 156
8.10. PSP 改進實踐 157
8.11. 缺陷預防 158
8.12. 總結 160
參考文獻 161
第九章:設計和程式碼審查 163
9.1. 什麼是審查? 164
9.2. 為什麼要審查程式? 164
9.3. 審查原則 168
9.4. PSP 程式碼審查流程 173
9.5. 程式碼審查清單 176
9.6. 設計審查 181
9.7. 設計審查原則 183
9.8. 審查測量 187
9.9. 審查問題 194
9.10. 總結 201
9.11. 練習 202
參考文獻 202
第十章:軟體設計 203
10.1. 什麼是設計? 204
10.2. 為什麼要設計? 206
10.3. 設計流程 207
10.4. 設計層級 210
10.5. 設計和開發策略 216
10.6. 設計品質 220
10.7. 總結 223
參考文獻 224
第十一章:PSP 設計範本 225
11.1. 設計表示 226
11.2. 設計範本 229
11.3. 操作規範範本 (OST) 230
11.4. 功能規範範本 (FST) 233
11.5. 狀態規範範本 (SST) 236
11.6. 邏輯規範範本 (LST) 240
11.7. 狀態機設計範例 241
11.8. 使用 PSP 設計範本 246
11.9. 在大型設計中使用設計範本 248
11.10. 總結 250
11.11. 練習 250
參考文獻 250
第十二章:設計驗證 253
12.1. 為什麼要驗證程式? 254
12.2. 設計標準 257
12.3. 執行表驗證 258
12.4. 追蹤表驗證 262
12.5. 驗證狀態機 265
12.6. 迴圈驗證 271
12.7. 其他分析驗證方法 277
12.8. 驗證考量 280
12.9. 總結 284
12.10. 練習 284
參考文獻 285
第十三章:流程擴展 287
13.1. 自訂開發流程 289
13.2. 為什麼要定義流程? 290
13.3. PSP 流程策略 291
13.4. 定義流程 291
13.5. 流程演變 294
13.6. 範例流程 298
13.7. 流程開發考量 306
13.8. 總結 307
13.9. 練習 308
參考文獻 308
第十四章:使用個人軟體流程 309
14.1. 開發挑戰 309
14.2. 團隊軟體流程 (TSP) 313
14.3. TSP 的邏輯 314
14.4. 團隊建設 314