Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software

Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software

by Bijay K. Jayaswal

View All Available Formats & Editions


An Integrated Technology for Delivering Better Software—Cheaper and Faster!


This book presents an integrated technology, Design for Trustworthy Software (DFTS), to address software quality issues upstream such that the goal of software quality becomes that



An Integrated Technology for Delivering Better Software—Cheaper and Faster!


This book presents an integrated technology, Design for Trustworthy Software (DFTS), to address software quality issues upstream such that the goal of software quality becomes that of preventing bugs in implementation rather than finding and eliminating them during and after implementation. The thrust of the technology is that major quality deployments take place before a single line of code is written!


This customer-oriented integrated technology can help deliver breakthrough results in cost, quality, and delivery schedule thus meeting and exceeding customer expectations. The authors describe the principles behind the technology as well as their applications to actual software design problems. They present illustrative case studies covering various aspects of DFTS technology including CoSQ, AHP, TRIZ, FMEA, QFD, and Taguchi Methods and provide ample questions and exercises to test the readers understanding of the material in addition to detailed examples of the applications of the technology.


The book can be used to impart organization-wide learning including training for DFTS Black Belts and Master Black Belts. It helps you gain rapid mastery, so you can deploy DFTS Technology quickly and successfully.

Learn how to


•    Plan, build, maintain, and improve your trustworthy software development system

•    Adapt best practices of quality, leadership, learning, and management for the unique software development milieu

•    Listen to the customer’s voice, then guide user expectations to realizable, reliable software products

•    Refocus on customer-centered issues such as reliability, dependability, availability, and upgradeability

•    Encourage greater design creativity and innovation

•    Validate, verify, test, evaluate, integrate, and maintain software for trustworthiness

•    Analyze the financial impact of software quality

•    Prepare your leadership and infrastructure for DFTS


Design for Trustworthy Software will help you improve quality whether you develop in-house, outsource, consult, or provide support. It offers breakthrough solutions for the entire spectrum of software and quality professionals—from developers to project leaders, chief software architects to customers.

The American Society for Quality (ASQ) is the world's leading authority on quality which provides a community that advances learning, quality improvement, and knowledge exchange to improve business results, and to create better workplaces and communities worldwide. The Crosby Medal is presented to the individual who has authored a distinguished book contributing significantly to the extension of the philosophy and application of the principles, methods, or techniques of quality management.


Bijay K. Jayaswal, CEO of Agilenty Consulting Group, has held senior executive positions and consulted on quality and strategy for 25 years. His expertise includes value engineering, process improvement, and product development. He has directed MBA and Advanced Management programs, and helped to introduce enterprise-wide reengineering and Six Sigma initiatives.


Dr. Peter C. Patton, Chairman of Agilenty Consulting Group, is Professor of Quantitative Methods and Computer Science at the University of St. Thomas. He served as CIO of the University of Pennsylvania and CTO at Lawson Software, and has been involved with software development since 1955.

Editorial Reviews

The Barnes & Noble Review
Trustworthy software is reliable, safe, secure, maintainable, and responsive to its buyers and users. Sadly, it's also the exception, not the rule. But if you look beyond the boundaries of the software industry, you'll find proven techniques for making all kinds of products and systems trustworthy. They're called the Taguchi Methods, and you may be surprised how valuable they can be in software development.

In this book, two leading software quality experts show how to leverage Taguchi and related techniques to finally prevent bugs -- instead of paying through the nose to find and fix them. You'll find chapter-length coverage of software quality metrics and the financial implications of trustworthy software; detailed tools and techniques for designing software that reflects the customer's "voice"; and comprehensive guidance on applying these techniques. You'll also find some very wise thinking on succeeding with trustworthy software initiatives in your organization. Bill Camarda, from the December 2006 Read Only

Product Details

Pearson Education
Publication date:
Sold by:
Barnes & Noble
File size:
11 MB
This product may take a few minutes to download.

Read an Excerpt

Design for Trustworthy SoftwareDesign for Trustworthy SoftwareTools, Techniques, and Methodology of Developing Robust SoftwarePreface

The fastest-growing phenomenon in the world today is computer end-user expectation. The computer revolution that began with the announcement of the ENIAC on Valentine's Day 1946 in the New York Times has completely changed the world. Computer hardware has become so reliable that we cast it in silicon microchips and even embed it in other machines. We assume that if hardware survives its "infant mortality" period, it will never need to be repaired, as do other machines. (Frequently upgraded to meet demand, perhaps!) Software has likewise come a long way, but it remains the Achilles' heel of truly trustworthy computing. No hard-goods manufacturer today would deliberately ship goods with known defects into a high-tech market, yet software vendors do so routinely. They simply have no other choice given the relentless demand of computer end-user expectation, software's inherent complexity, and the general lack of the kind of strong "quality cultures" that pervade high-tech hard-goods manufacturing.

The authors bring more than 30 years of quality experience and 50 years of software development experience to bear on the problem of designing software to be inherently trustworthy. We were inspired by Craig Mundie's Trustworthy Computing Initiative at Microsoft Corporation. After reading the literature on software quality and attending numerous conferences, we were convinced that Taguchi Methods had much to offer. We were further emboldened to find that Taguchi Methods had been recommendedfor such applications by none other than Dr. Taguchi himself. They had been applied in only a half-dozen cases, and all successfully. The major premise of this book is that although software is designed like hardware, nothing in its development process is akin to the manufacturing of hardware. Therefore, any quality method employed to improve software reliability and hence trustworthiness would have to be applied as far upstream as possible. The genius of Taguchi Methods is that they can treat both controllable (inherent design) factors and uncontrollable noise (exogenous) factors at design time. By using a statistical experiment technique employing orthogonal matrices or Latin Squares, Taguchi Methods can consider all factors simultaneously. This means the end of downstream testing, bottleneck analysis, and finding and fixing one bug at a time in software products. The goal of software quality now becomes preventing bugs in implementation rather than finding and eliminating them during and after implementation. Like other quality methods, Taguchi Methods are not a "black box" that you simply insert into the software development process. Nor are they used alone. They are used in the context of other upstream customer-oriented methods, such as Analytic Hierarchy Process (AHP), Quality Function Deployment (QFD), TRIZ, Pugh Concept Selection, and Failure Modes and Effects Analysis (FMEA), all of which may be applied before a single line of code is written!

The essence of Taguchi Methods is listening to the "voice of the customer." By listening carefully, the software architect or designer can get in front of computer end-user expectation and guide it to realizable and reliable products. This is better than being dragged behind end-users in an endless cycle of product "fix and repair" without any hope of ever catching up. This book offers a framework of tools, techniques, and methodologies for developing robust software. This framework is an integrative technology based on the principles of transformational leadership, best practices of learning organizations, management infrastructure, and quality strategy and systems, all blended into the unique context of software development milieu. We call it Design for Trustworthy Software (DFTS).

This book is intended to meet the needs of software development organizations, big and small, that want to build the kind of trustworthy or highly reliable software demanded by today's increasingly sophisticated computer user. It is designed to be a resource for organization-wide learning that helps you understand, implement, improve, and maintain a trustworthy software development system. It is meant for organizations that are led by visionary leaders who understand and value such user needs and who are ready to lead their organizations to develop such robust capability. Although we have emphasized enterprise software, this book can be used by any organization in which software development is an important activity for developing proprietary software, providing internal software support, or imparting outsourcing vendor service. Organizations can use it for formal DFTS black belt, master black belt, and other certifications. Such formal certification can greatly enhance organization-wide DFTS learning and deployment. This book can also be used as a practical reference by software developers as well as quality professionals and senior management, who play a crucial role in such organizations.

This book is equally useful for students of software development technology, MIS, product design and development, operations, quality management, and technology management, at both undergraduate and graduate levels. It particularly complements Master of Science programs in engineering, MIS, IT, and computer science, as well as MBA programs that focus on operations, product development, and technology. It also is a useful resource for the American Society for Quality's (ASQ's) Certified Software Quality Engineer (CSQE) examination.

This book contains examples, sidebars, and case studies. It is supported by key points, review questions, discussion questions, projects, exercises, and problems. It is further supported by additional learning material on the Internet to provide intensive and continually updated material for learning in corporate settings or classrooms or for self-study.

The book is not a "handbook" in the classic sense. Instead, it is an exposition of the principles and practices involved in several proven quality methodologies that interact well and that are suitable for software development. They are particularly applicable at design time, before implementation begins. Smaller software and other engineering design case studies and examples are presented throughout the book to illustrate the application of the principles. Software architects will find examples that support their design concepts. Software engineers will find examples that support building in quality at the detailed design stage. Although all the DFTS techniques are applicable throughout the development process, the emphasis changes as a product goes from end-user need to concept, architecture, engineering design, implementation, testing, and finally support in the field. All five parts deal with relevant leadership and management infrastructure for successful learning and deployment of DFTS technology.How This Book Is Organized

The book is organized into five parts. Part I, containing Chapters 1 through 5, presents contemporary software development practices, with their shortcomings and the challenges of and framework for developing trustworthy software. This is supported by chapter length treatment of two critical software quality issues, namely, software quality metrics and financial perspectives on trustworthy software. Part II, containing Chapters 6 through 14, presents the tools and techniques advocated by the authors for developing trustworthy software and is the primary focus of the book. Part III, containing Chapters 15 through 19, shows you how to apply these tools and techniques upstream in the design process before program implementation even begins. Part IV, containing Chapters 20 and 21, lays the groundwork for deploying a DFTS initiative in your organization. Like all quality initiatives, DFTS must be supported from the top to succeed and must become a part of the organization's "culture." Part V, containing Chapters 22 through 27, presents six major case studies of the software quality techniques presented in Parts I and II. We have sought out world-class practitioners of these techniques, and they have generously contributed their leading examples for your consideration and study.Useful Software

You can benefit from using several software packages that facilitate learning and the deployment of quality methodologies such as AHP, Taguchi Methods, and QFD. A number of Web sites provide free limited-use/limited-time downloads. In particular, the following software is available:

  • AHP: You can find a free 15-day trial version of Expert Choice at

    Special prices are available for students, instructors, and corporate bulk purchases. Call 1-888-259-6400 for pricing details.

  • QFD: Modern Blitz QFD® templates for Microsoft Excel are included in QFD Institute training programs. Details are available at

  • Taguchi Methods: Qualitek-4 DEMO software lets you review over 50 examples and use an L8 array to design your own experiments. It can be downloaded from

    You may also want to visit the following Web sites that we found useful:

    You may try the DEMO version for experiments involving L8 arrays. The full version may be negotiated with the vendors.

This Book's Web Site

This book's Web site keeps the book current between editions, providing new material, examples, and case studies for students and instructors. The Web site also provides materials for other users of this book—quality professionals and corporate leaders who play a crucial role in the DFTS process. The book's two websites are:

Instructors may contact the publisher for answers to the exercises and problems. We look forward to comments and feedback on how the material can be further enhanced and continually improved. Tell us about your experience, what you like about the book, how it has been useful, and, above all, how we can improve it. We trust that you will.

Bijay Jayaswal
Minneapolis, MN

Peter Patton
St.Paul, MN

© Copyright Pearson Education. All rights reserved.

Meet the Author

Bijay K. Jayaswal holds a B.Eng. (Hons.) degree in electrical engineering from the Birla Institute of Technology and Science, Pilani, India, and an MBA and a master’s degree in electrical engineering from Aston University in England. He is the CEO of Agilenty Consulting Group, LLC. He has held senior executive positions and has consulted in quality and strategy for the last 25 years. His consulting and research interests include value engineering, process improvement, and product development. He has taught engineering and management at the University of Mauritius and California State University, Chico and has directed MBA and Advanced Management programs. He has helped introduce corporate-wide initiatives in reengineering, Six Sigma, and Design for Six Sigma and has worked with senior executive teams to implement such initiatives. He can be contacted at


Dr. Peter C. Patton is Professor of Quantitative Methods and Computer Science at the University of St. Thomas, St. Paul, Minnesota. He also is Chairman of Agilenty Consulting Group. He has taught at the Universities of Minnesota, Paris, and Stuttgart and has held the position of Chief Information Officer at the University of Pennsylvania. He has engineering and mathematics degrees from Harvard, Kansas, and Stuttgart. He was Chief Technologist at Lawson Software from 1996 to 2002. He was Lawson’s representative on the Technical Advisory Committee of IBM’s SanFrancisco™ Java Framework project. He has been involved in computer hardware and software development since 1955. He can be contacted at


Customer Reviews

Average Review:

Post to your social network


Most Helpful Customer Reviews

See all customer reviews