Cart
Free US shipping over $10
Proud to be B-Corp

PSP(sm) Watts S. Humphrey

PSP(sm) By Watts S. Humphrey

PSP(sm) by Watts S. Humphrey


$10.00
Condition - Very Good
Only 2 left

Summary

Presents a disciplined process for software engineers and those involved in software development. This book scales down industrial software practices to fit the needs of the module-sized program development. It walks readers through a progressive sequence of practices that provide a foundation for large-scale software development.

PSP(sm) Summary

PSP(sm): A Self-Improvement Process for Software Engineers by Watts S. Humphrey

Most software-development groups have embarrassing records: By some accounts, more than half of all software projects are significantly late and over budget, and nearly a quarter of them are cancelled without ever being completed. Although developers recognize that unrealistic schedules, inadequate resources, and unstable requirements are often to blame for such failures, few know how to solve these problems. Fortunately, the Personal Software Process (PSP) provides a clear and proven solution. Comprising precise methods developed over many years by Watts S. Humphrey and the Software Engineering Institute (SEI), the PSP has successfully transformed work practices in a wide range of organizations and has already produced some striking results.

This book describes the PSP and is the definitive guide and reference for its latest iteration. PSP training focuses on the skills required by individual software engineers to improve their personal performance. Once learned and effectively applied, PSP-trained engineers are qualified to participate on a team using the Team Software Process (TSP), the methods for which are described in the final chapter of the book. The goal for both PSP and TSP is to give developers exactly what they need to deliver quality products on predictable schedules.

PSPSM: A Self-Improvement Process for Software Engineers presents a disciplined process for software engineers and anyone else involved in software development. This process includes defect management, comprehensive planning, and precise project tracking and reporting.

The book first scales down industrial software practices to fit the needs of the module-sized program development, then walks readers through a progressive sequence of practices that provide a sound foundation for large-scale software development. By doing the exercises in the book, and using the PSP methods described here to plan, evaluate, manage, and control the quality of your own work, you will be well prepared to apply those methods on ever larger and more critical projects.

Drawing on the author's extensive experience helping organizations to achieve their development goals, and with the PSP benefits well illustrated, the book presents the process in carefully crafted steps. The first chapter describes overall principles and strategies. The next two explain how to follow a defined process, as well as how to gather and use the data required to manage a programming job. Several chapters then cover estimating and planning, followed by quality management and design. The last two chapters show how to put the PSP to work, and how to use it on a team project. A variety of support materials for the book, as described in the Preface, are available on the Web.

If you or your organization are looking for a way to improve your project success rate, the PSP could well be your answer.



About Watts S. Humphrey

Known as the father of software quality, Watts S. Humphrey is the author of numerous influential books on the software-development process and software process improvement. Humphrey is a fellow of the Software Engineering Institute (SEI) at Carnegie Mellon University, where he founded the Software Process Program and provided the vision and early leadership for the original Capability Maturity Model (CMM). He also is the creator of the Personal Software Process (PSP) and Team Software Process (TSP). Recently, he was awarded the National Medal of Technology-the highest honor given by the president of the United States to America's leading innovators.



Table of Contents

Preface xiiiChapter 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

Additional information

GOR002301310
9780321305497
0321305493
PSP(sm): A Self-Improvement Process for Software Engineers by Watts S. Humphrey
Used - Very Good
Hardback
Pearson Education (US)
20050317
368
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
This is a used book - there is no escaping the fact it has been read by someone else and it will show signs of wear and previous use. Overall we expect it to be in very good condition, but if you are not entirely satisfied please get in touch with us

Customer Reviews - PSP(sm)