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.
Results-Based Software Management: Achieve Better Outcomes with Finite Resources
Effective software development is no longer merely an IT concern: today, it is crucial to the entire enterprise. However, most businesspeople are not ready to make informed decisions about software initiatives. The Economics of Iterative Software Development: Steering Toward Better Business Results will prepare them. Drawing on decades of software development and business experience, the authors demonstrate how to utilize practical, economics-based techniques to plan and manage software projects for maximum return on technology investments.
The authors begin by dispelling widespread myths about software costs, explaining why traditional, “engineering-based” software management introduces unacceptable inefficiencies in today’s development environments. Next, they show business and technical managers how to combine the principles of economics and iterative development to achieve optimal results with limited resources. Using their techniques, readers will learn how to build systems that enable maximum business innovation and process improvement–and implement software processes that allow them to do so consistently.
Highlights include
The Economics of Iterative Software Development: Steering Toward Better Business Results will help both business and technical managers make better decisions throughout the software development process–and it will help team and project leaders keep any project or initiative on track, so they can deliver more value faster.
Improving Software Economics, Part 1 of 7: From Software Development to Software Delivery
Improving Software Economics, Part 2 of 7: The Move to Agility
Improving Software Economics, Part 3 of 7: Top 10 Principles of Conventional Software Management
Improving Software Economics, Part 4 of 7: Top 10 Principles of Iterative Software Management
Improving Software Economics, Part 5 of 7: Reducing Uncertainty: The Basis of Best Practice
Download the sample pages (includes Chapter 3 and Index)
Preface xiii
About the Authors xvii
Part I: The Software-Driven Economy 1
Chapter 1: The Challenge of Software Project Management 3
The High Stakes in Software Development 4
Institutional Focus 5
Traditional Software ProjectManagement 7
Problems with theWaterfall Approach 8
Summary 11
Chapter 2: Achieving Results: The Case for Software Economics 13
Iterative Development 15
Benefits of the Results-Based Approach 16
TheMark of Success 18
Summary 19
Part II: Improving Software Development Economics 21
Chapter 3: Trends in Software Economics 23
A SimplifiedModel of Software Economics 24
Software Engineering: A 40-Year History 26
Keys to Improvement: A Balanced Approach 28
Summary 30
Chapter 4: Reducing Software Project Size or Complexity 33
Managing Scope 33
Reducing the Size of Human-Generated Code 35
Improving Reuse Using Service-Oriented Architectures 36
Summary 36
Chapter 5: Improving the Development Process 39
Project Processes 39
Using an Iterative Process 40
Attacking Significant Risks Early 43
Improve Practices Incrementally to Meet Goals 46
Summary 48
Chapter 6: Improving Team Proficiency 51
Enhancing Individual Performance 52
Improving Project Teamwork 52
Advancing Organizational Capability 55
Summary 57
Chapter 7: Improving Automation Through Integrated Tools 59
Improving Human Productivity 60
Eliminating Error Sources 61
Enabling Process Improvements 62
Summary 63
Chapter 8: Accelerating Culture Change Through Common Sense 65
Profiles of Successful Organizations 65
Keys to Success 67
Recommendation: Select the Right Project, the Right
People, and the Right Goals 73
Summary 73
Part III: Practical Measurement for Software Engineering 77
Chapter 9: A Practical View of Software Development Metrics 79
Measurements and Goals 80
Variability and Goals 80
Measurement and Iterative Development 81
WhenMeasurement GoesWrong 83
What’sWrong with Detailed Up-front Planning? 85
DecidingWhat toMeasure, Phase by Phase 86
Summary 87
Chapter 10: What to Measure in the Inception Phase 89
Assessing Financial Viability 90
Assessing Technical Viability and Estimating Overall
Project Cost 91
Iteration in the Inception Phase 93
OtherMeasures 94
Summary 96
Chapter 11: What to Measure in the Elaboration and Construction Phases 99
Measurement in the Elaboration Phase 99
Measuring Risk Reduction 102
Measuring Progress 104
Measurement in the Construction Phase 106
Measuring the Project Backlog 107
Measuring Test Coverage 107
Measuring Build Stability 108
Expected Progress Trends in the Construction Phase 109
Summary 110
Chapter 12: What to Measure in the Transition Phase 113
Measurement in the Transition Phase 114
Concluding the Transition Phase 118
Summary 119
Chapter 13: Measuring Projects Embedded in Programs 123
Organizing Projects into Programs 124
Measuring Program Stages 127
Summary 127
Appendix: Getting Started with Iterative Project Management 129
Embarking on Your First Iterative Project 130
Adopting an Iterative Approach Iteratively 144
Conclusion 154
Suggested Reading 157
Index 161