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 © 1996).
Written in a remarkably clear style, Creating a Software Engineering Culture presents a comprehensive approach to improving the quality and effectiveness of the software development process.
In twenty chapters spread over six parts, Wiegers promotes the tactical changes required to support process improvement and high-quality software development. Throughout the text, Wiegers identifies scores of culture builders and culture killers, and he offers a wealth of references to resources for the software engineer, including seminars, conferences, publications, videos, and on-line information.
With case studies on process improvement and software metrics programs and an entire part on action planning (called “What to Do on Monday”), this practical book guides the reader in applying the concepts to real life.
Topics include software culture concepts, team behaviors, the five dimensions of a software project, recognizing achievements, optimizing customer involvement, the project champion model, tools for sharing the vision, requirements traceability matrices, the capability maturity model, action planning, testing, inspections, metrics-based project estimation, the cost of quality, and much more!
Principles from Part 1
Creating a Software Engineering Culture
Download the sample pages (includes Chapter 3 and Index)
Figures and Tables xvii
Preface xix
Part 1: A Software Engineering Culture 1
Chapter 1: Software Culture Concepts 3
Culture Defined 3
Growing Your Own Culture 6
A Healthy Software Culture 8
A Less Healthy Software Culture 10
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
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
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 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