Figures and Tables xvii Preface xix Part
I: A Software Engineering Culture 1 Chapter 1: Software Culture
Concepts 3 Culture Defined 3 Growing Your Own Culture
6 A Healthy Software Culture 8 Individual Behaviors
8 Team Behaviors 8 Management Behaviors 9 Organizational Characteristics
9 A Less Healthy Software Culture 10 Individual
Behaviors 10 Management Behaviors 11 Organizational Characteristics 11 Organizational
Options 12 The Management Challenge 15 Summary 18 Culture Builders
and Killers 18 References and Further Reading 19 Chapter
2: Standing On Principle 23 Integrity and Intelligence:
With Customers 24 Integrity and Intelligence: With Managers 27 The Five
Dimensions of a Software Project 28 Summary 33 Culture Builders and Killers
34 References and Further Reading 34 Chapter 3: Recognizing
Achievements Great and Small 35 The Importance of Being
Visible 38 The Importance of Management Attitude 39 Rewards for a Job
Well Done 40 Summary 41 Culture Builders and Killers 42 References
and Further Reading 43 Chapter 4: So Much to Learn, So Little
Time 45 What to Learn 47 Where to Learn 49
Professional Seminar Sources 49 Technical Conferences 50 Publications
51 Videotape Instruction 53 On-Line Information Sources 53 Professional
Societies and Certification 53 Summary 55 Culture Builders
and Killers 55 References and Further Reading 56 Part
II: In Search of Excellent Requirements 59 Chapter 5: Optimizing
Customer Involvement 61
Software Requirements: The Foundation
of Quality 62 The Need for Customer Involvement 64 The Project Champion
Model 66 Project Champion Expectations 69 When the Project Champion Model
Fails 73 Summary 75 Culture Builders and Killers 75 References and
Further Reading 76 Chapter 6: Tools for Sharing the Vision
78 Use Cases 79 Software Requirements Specifications
83 Dialog Maps 91 Prototypes 93 Requirements Traceability Matrices
96 From Requirements to Code 97 Summary 98 Culture Builders and Killers
99 References and Further Reading 100 Part III: Improving
Your Processes 103 Chapter 7: Process Improvement Fundamentals
105
Principles of Process Improvement 106 Getting Started
with Process Improvement 112 Summary 114 Culture Builders and Killers
115 References and Further Reading 116 Chapter 8: Process
Improvement Case Study 117 Making Change Happen 122 Sustaining Momentum
123 Summary 125 Culture Builders and Killers 126 References and Further
Reading 126 Chapter 9: Software Process Maturity 127
The Capability Maturity Model 128 Level 1: Initial 130
Level 2: Repeatable 131 Level 3: Defined 131 Level 4: Managed 132
Level 5: Optimizing 133 Dissenting Opinions 135 Process
Assessments 137 Process Maturity and Culture 139 Summary 140 Culture
Builders and Killers 141 References and Further Reading 141 Chapter
10: Software Development Procedures 146 Standards, Procedures,
and Guidelines, Oh My! 147 Local Development Guidelines 149 Our Software
Development Guidelines 151 IEEE Standards 155 Other Standards Sources
156 Summary 158 Culture Builders and Killers 159 References and Further
Reading 160 Part IV: The Bug Stops Here 163
Chapter 11: The Quality Culture 165
The Cost of Quality
167 Assuring Software Quality 168 How Dense Are Your
Defects? 170 Lines of Code versus Application Functionality 172 How
Good Is Good Enough? 174 An Assault on Defects 178 Explicit SQA Responsibilities
181 Why Do We Think Quality Practices Pay Off? 184 Summary 185 Culture
Builders and Killers 185 References and Further Reading 186 Chapter
12: Improving Quality by Software Inspection 189 Inspections
and Culture 190 Benefits of Inspections 190 Inspections, Walkthroughs,
and Reviews 194 Guiding Principles for Reviews and Inspections 198 Keeping
Records 201 Making Inspections Work in Your Culture 204 Summary 207
Culture Builders and Killers 207 References and Further Reading 208 Chapter
13: Structured Testing 211 Testing and the Quality Culture
212 A Unit Testing Strategy 215 Cyclomatic Complexity and Testing 218
Test Management and Automation 220 Structured Testing Guidelines 222 Summary
224 Culture Builders and Killers 224 References and Further Reading 225 Part
V: Methods, Measures, and Tools 229 Chapter 14: The CASE for
Iteration 231
Types of CASE Tools 233 Hypes of CASE
Tools 235 Lessons from Our CASE History 236 Fitting CASE into Your Culture
244 Other Benefits from CASE 247 Culture Change for CASE 248 Summary
249 Culture Builders and Killers 250 References and Further Reading 251 Chapter
15: Control Change Before It Controls You 254 Benefits
of a Problem Tracking System 255 A Software Change Management Case Study 256
The Software Change Control Board 261 How Change Control Can Simplify Your
Life 262 Learning from Bug Detection Trends 263 Proactive Failure Reporting
265 Making Change Management Work in Your Culture 267 Summary 268
Culture Builders and Killers 269 References and Further Reading 270 Chapter
16: Taking Measures to Stay on Track 272 Why Measurement
Programs Fail 273 Metrics Programs Don't Have to Fail 276 What to Measure
276 How to Design Your Metrics Program 278 Summary 282 Culture Builders
and Killers 283 References and Further Reading 284 Chapter
17: Case Study: Measurement in a Small Software Group 287
Software Work Effort Metrics 287 Trends and Applications 295 Metrics-Based
Project Estimation 297 Lessons from Work Effort Metrics 300 Predicting
Maintainability with Metrics 300 Summary 301 Culture Builders and Killers
302 References and Further Reading 302 Chapter 18: If
It Makes Sense, Do It 304 Summary 308 Culture Builders
and Killers 308 References and Further Reading 309 Part
VI: What to Do on Monday 311 Chapter 19: Action Planning for
Software Managers 313
Action Item Menu 315 Summary
318 References and Further Reading 318 Chapter 20: Action
Planning for Software Engineers 319 Action Item Menu 320
Building a Healthy Workplace 324 Summary 327 References and Further Reading
327 Epilogue 329 Appendix A: Sources for Continued
Software Learning 331 Appendix B: Contact Information for Selected
Resources 337 Bibliography 339 Author Index 349 Subject
Index 351 Reviewers' Comments 359 Return
to Book Page |