HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
PDF The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
This is the digital version of the printed book (Copyright © 2005).
Take Control of Your Project in the Final Stage of Software Development
In software development, projects are won or lost during the project endgame—that final stage of software development between release for testing and release to customers.
Software Endgames: Eliminating Defects, Controlling Change, and the Countdown to On-Time Delivery presents the core strategies for delivering working software to your customers. Focusing solely on the endgame, the book provides hard-won, hands-on strategies and practices for delivering real value.
In the endgame, effective management and repair of defects is crucial. Experienced project manager and consultant Robert Galen shows readers how to conduct effective defect triage -- analyzing, understanding, and categorizing defects—in preparation for scheduling repairs. Readers will learn how to transform the endgame from a time of rampant defects and utter chaos into a time of focused repairs, effective teamwork, and change management. You'll set release criteria, establish endgame release plans, and utilize a variety of change reduction and endgame management techniques.
Topics include
Download the sample pages (includes Chapter 3 and Index)
Preface xix
My Motivation for the Book xxi
Intended Audience xxii
How to Approach This Book xxiii
What We're Not Trying to Explore xxiv
Chapter One: Introduction 3
You Know You're in the Endgame When … 4
Focus of the Book: It's Mostly About Defects 5
Triage Workflow 6
Repair Triage and Change Control Workflows 8
Flow of the Book 12
Part One: Endgame Basics 17
Chapter Two: Triage and Change Control Process and Meeting Framework 19
Different Names and Formats 20
Formal CCB Format 21
A Lightweight CCB (LW-CCB) Explored 22
A Quick Look at the Meeting Flow 25
Meeting Participant Roles 26
Setting Up Meeting Dynamics 28
Triage MeetingAgenda Format 32
Decision-Making 36
Wrap-Up: Additions to Your Endgame Toolbox 40
Chapter Three: Developing Release Criteria and Working Views 42
Release Criteria or Defining Success 43
Better Decisions: Aspects of a Project Working View 46
Steps to Establishing a Working View 49
Examples of Working View Application Scenarios 52
Project Application: Example #1 54
Project Application: Example #2 56
Project Application: Example #3, Another Approach 59
Resetting Your Working View 59
Wrap-Up: Additions to Your Endgame Toolbox 60
Chapter Four: Endgame Release Framework 62
Overview of the Framework 64
A Word on Strategy 70
Release Framework Example 72
Measuring Progress for the Release Framework 75
Ownership of the Release Framework 75
Updating Your Release Framework 76
The Impact of Granularity on Methodologies 76
Wrap-Up: Additions to Your Endgame Toolbox 77
Chapter Five: Reducing the Rate of Change 78
Change Reduction Milestones for the Endgame Framework 79
The Notion of a Code Freeze 80
Beyond Code Freeze and Code Complete Defect Repair Change Cycles 83
Change Reduction Anti-Patterns 85
How the CCB Assists in Change Reduction 96
Wrap-Up: Additions to Your Endgame Toolbox 97
Chapter Six: Configuration Management in the Endgame 98
Configuration Management Readiness Checklist 99
Level of CM Control Granularity 100
Early On Run a Practice Build Test 101
Beware of Changing Tools in the Endgame 101
The Role of Team Leaders in Configuration Management 102
Periodic (Nightly) Builds and Smoke Testing 104
Release Turnover Meetings 107
Wrap-Up: Additions to Your Endgame Toolbox 108
Part Two: Endgame Defects 109
Chapter Seven: Defect Basics: Terms, Tools, Methods, and Management 111
Fundamental Defect Types 112
Basic Defect Data Fields 114
Defect Evolution 129
Introduction to Work Queues 131
Information Weight 133
Using Defects to Track Development (and Other) Work 134
Frequent Defect Monitoring What Needs Attention 135
The Idea of Bug Advocacy 136
Wrap-Up: Additions to Your Endgame Toolbox 137
Chapter Eight: Useful and Relevant Metrics 138
Find (New) Versus Fixed (Closed, Deferred) 139
Factoring in Priority 141
Factoring In Keywords 144
Defect Transition Progress 146
Functional Areas and Defect Distribution 149
Further Examination of Trending Correlations to External Stimuli 151
Metrics Analysis Questions 56
Maintaining Historical Data 158
Wrap-Up: Additions to Your Endgame Toolbox 159
Chapter Nine: The Many Ways to Fix Defects 160
Just Repair It 161
Make a Partial Repair to Reduce Impact and Severity 161
Log It As a Known Defect and Move On 162
Simply Change the Severity or Priority 163
Ignore It and Hope It Goes Away 164
Consider It Anomalous Behavior and Wait for the Next Occurrence 165
Defer the Repair to a Later Release 165
Negotiate with Marketing or the Customer to Change the Requirement 167
Add More System Resources to Reduce the Impact 168
Find a Workaround (Procedural, Operational, Documentation, or Automated) 171
Remove the Functionality/Code 173
Change or Remove Interacting Software Products 174
Wrap-Up: Additions to Your Endgame Toolbox 175
Part Three: Endgame Workflow 177
Chapter Ten: Work Queues and Packaging 179
Work Queues 180
Deriving Work Queues from Your Defect-Tracking System 182
Queue Loading Rules 184
How Should Testing Interact with the Work Queues? 185
Deal with Defect Repairs in Packages 186
Thinking About Package Costs 190
Think About Your Regression Trends 191
Package Plan Status and General Replanning 191
Wrap-Up: Additions to Your Endgame Toolbox 193
Chapter Eleven: Defect Repair Selection: Other Considerations 194
Reproducing the Defect 195
Overall Level of Difficulty 196
Locality and Relationship to Other Defects 198
How Will the Repair Impact the Test Team? 199
Exploring Possible Workarounds 201
Handling Gold Features 201
Considering Your Available Resources 203
Likelihood That the Defect Will Surface in Normal Operation of the Product 206
Wrap-Up: Additions to Your Endgame Toolbox 207
Chapter Twelve: Endgame Estimation: A Few Useful Collaborative Techniques 208
Defect Estimation Life Cycle 209
PSP PROBE Method—Proxy-Based Estimation 211
Wideband Delphi Method 214
Other Estimation Techniques 217
Collaborative Estimation What to Collect 220
Wrap-Up: Additions to Your Endgame Toolbox 222
Part Four: Endgame Management 223
Chapter Thirteen: Management Dynamics 225
The Importance of Team Leads: Clear Roles and Responsibilities 226
The Tone of the Endgame 229
Be Aware of the Natural Tension Points Across Functional Groups 233
Identify Your Best Debuggers 234
Reserve Resources or Develop Generalists for Later Repairs 235
Team Types: Strengths for the Endgame 237
Wrap-Up: Additions to Your Endgame Toolbox 239
Chapter Fourteen: Leadership Practices 241
The Burden of Leadership 242
Use of Overtime 244
Establish a War Room 245
Find Room for Play 247
Daily Status Meetings 248
Gathering General Status 251
Handling Distributed Endgame Teams 252
Knowing When to Say When Release 255
Knowing When to Say When You're in Trouble 257
The Testing Team Your Secret Weapon 259
Wrap-Up: Additions to Your Endgame Toolbox 262
Chapter Fifteen: Endgame Retrospectives and Conclusions 263
Keeping an Endgame Log or Diary 264
Should You Conduct a Retrospective? 265
Key Points of a Retrospective 265
Guidelines for an Endgame Retrospective 268
Using Your Endgame Data in the Retrospective 268
Endgames Provide Wonderful Insights into the Character of Your Team 272
Celebrating Success 273
Agile Endgames 276
Concluding Thoughts 279
Afterword: An Invitation to Endgame Collaboration 281
Appendix A: Pre-Endgame Preparation Checklist 283
Appendix B: Collaborative Estimation, Data Focus Checklist 286
Appendix C: Sticky Note Guidelines 288
Note-Generator Guidelines 288
Note-Facilitator Guidelines 289
Note Formats 290
Appendix D: Guidelines for Constructing Endgame Release Frameworks 291
Historical Notes 291
Plan Details 292
Endgame Flow 293
References 295
Index 299