Home > Store > Process Improvement > Software Process Improvement
Solid Software
- By Shari Lawrence Pfleeger, Les Hatton, Charles C. Howell
- Published Jul 2, 2001 by Prentice Hall. Part of the Software Quality Institute Series series.
- Copyright 2002
- Dimensions: K
- Pages: 336
- Edition: 1st
- Book
- ISBN-10: 0-13-091298-0
- ISBN-13: 978-0-13-091298-5
Register your product to gain access to bonus material or receive a coupon.
The practical guide to evaluating and improving the quality of mission-critical software.
Large software systems will never be perfect, but decision makers need better ways to evaluate and enhance software qualityespecially where software is mission critical or used in life-or-death environments. Solid Software presents realistic techniques for analyzing and improving the quality and robustness of any software system or software-intensive product.
Solid Software isn't theoretical: it's a relentlessly practical decision maker's guide to making intelligent, responsible trade-offs that lead to the best software at the best cost.
- Understand what levels of quality are reasonable to expect at every stage of the software life cycle, including development, deployment, and maintenance
- Discover the key "design leverage points" that lead to robust software
- Learn sophisticated new ways to predict software quality and assess systems in production
- Make the most of hazard analysis, testing, design analysis, reviews, static code analysis, and other techniques
- Choose the best toolsand use them more effectively
Solid Software draws upon dozens of real-world examples, based on the authors' extensive experience as software quality consultants, and interviews with key software decision makers worldwide. Whether you're a developer, project manager, architect, executive, manager, or regulator, it's your single source for improving software qualityin the real world.
Preface
Preface
They constantly try to escape...by dreaming of systems so perfect that no one will need to be good.
T. S. Eliot, Choruses from The Rock, VI
You're in charge. The buck or pound or peso stops with you. Your developers are to build a safety- or business-critical system, and you have a lot of questions to answer. How solid is the software supposed to be? How will you be able to demonstrate to the clients that it is as solid as they wish it? How will your developers be able to demonstrate to you that the software will be solid and (eventually) is solid, so that you can give assurances to your boss and to the clients? You know that there is (unfortunately) no easy solution to the challenges you face-no "eat all the cake you want and still lose weight diet" for developing critical software. But you can take advantage of the experience of others in a wide range of critical software projects.
There are many books for developers and much research about the theoretical ways to build software that does what it is supposed to do (and nothing more, like a virus or Trojan horse) and does it in a consistent, predictable, and safe way. There are theoretical books about how to evaluate the software before you field it or deliver it. But with safety-critical systems, many of which would need over 100,000 years of failure-free testing to confirm required reliability, theory is not enough. You need to know what is practical, what is available right now, and what can give you confidence in the quality of the requirements, design, code, and test procedures.
This is the book for you. In Solid Software we describe the problem and suggest what you can and cannot expect from your developers, their techniques and tools, and their software. We discuss what you should know about software quality-not just about the faults and failures but also how the quality affects your company's bottom line. Then we introduce eight techniques, one chapter at a time, that can help to increase your confidenceand that of your clientsin how the software will perform:
- Hazard analysis
- Testing
- Design analysis
- Prediction
- Reviews
- Static code analysis
- Configuration management and change control
- Tools
None of these techniques is foolproof, but each one helps you to manage the risks inherent in producing such critical code. When properly applied, each one gives you added confidence that you have addressed key points of vulnerability. When used in concert, these techniques stabilize the software, making it less likely to fail and more easy to change and expand.
Table of Contents
(Note: Each chapter concludes with section on References.)
1. Why Is This Book Needed?
2. Defining Quality: What Do You Want?
3. Hazard Analysis.
4. Testing.
5. Software Design.
6.Prediction.
7. Peer Reviews.
8. Static Analysis.
9. Configuration Management.
10. Using Appropriate Tools.
11. Trust but Verify.
Index.
Book
This publication currently is not for sale.
- Save more by becoming a member.
- Request an Instructor or Media review copy.
- Corporate, Academic, and Employee Purchases
- International Buying Options

Account Sign In
View your cart