|
|
Welcome to Food for Thought™, an e-newsletter from Software Quality Consulting. I've created free subscriptions for my valued business contacts. If you find this newsletter informative, I encourage you to continue reading. Feel free to pass this newsletter along to colleagues by clicking on the Forward Email link at the bottom of this email. If you’ve received this newsletter from a colleague and would like to subscribe, please click this Enter New Subscription link. If you don't wish to receive this newsletter, click the SafeUnSubscribe™ link at the bottom of this newsletter, and you won’t be bothered again. Your continued feedback on this newsletter is most welcome. Please send your comments and suggestions to info@swqual.com. |
In This Month's Topic, I pay tribute to the enormous contributions made by Watts Humphrey. Regular features to look for each month are:
|
Watts Humphrey
|
Watts Humphrey
The Father of Software Quality The software engineering community recently lost one of its most influential and dynamic leaders. On October 28, 2010, Watts A. Humphrey passed away – he was 83 years old. Watts was an inspiration to a generation of software engineers and software quality professionals. I have long considered Watts a mentor, a role model, and a person with a unique gift. He had the ability to make software engineering understandable to managers and executives. This gift has led to many significant changes in how software development work is managed. I feel privileged to have benefited from his wisdom and experience. This edition of my e-newsletter is dedicated to Watts and acknowledges the huge impact he has had on software engineering and the software quality profession. A brief biography… Born in Battle Creek, MI, Watts suffered with dyslexia and had trouble in public school. His family relocated to Connecticut, where schools were better able to help him overcome his dyslexia. He persevered and eventually graduated valedictorian of his high school class. After serving in the Navy, Watts earned a bachelor’s degree in physics from the University of Chicago, studying under Enrico Fermi. He then completed a master’s degree in physics from the Illinois Institute of Technology and an MBA degree, with an emphasis on manufacturing, from the University of Chicago. There, he later recalled, professor Judson Neff taught him the three most important things in manufacturing: planning, planning, and planning.
Cost accounting also made an enormous impact on his later work.
In 1953, he came to Boston and worked at Sylvania Labs designing circuits. He attended a course on the Whirlwind computer at MIT. Wanting to learn more, he inquired about computer courses at Northeastern University. At the time, there were none, so he was asked to create and teach one – which he did. To prepare this course, he spent weeks at the Harvard and MIT libraries. His class consisted of employees from Honeywell Corporation who spent time actually building computers. Watts said this experience reinforced the philosophy that to manage or teach effectively, you need to respect the knowledge and experience of those who you are managing or teaching.
When asked about his time at IBM, Watts said:
In 1986, after retiring from IBM, he joined the newly formed Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh. The SEI was established by the US Dept of Defense to provide guidance to the military services in selecting capable software contractors. [2] It was at the SEI where he made an “outrageous commitment” to change the world of software development by developing sound management principles.
Significant contributions: Let’s look at just a few of the major contributions Watts has made… One of his first books – Managing the Software Process, published in 1995, was a direct result of work on the DoD project to provide guidance to DoD in selecting capable software contractors. This book describes “technical and managerial topics that assessments have found most critical for improvement” [3] and has roots in the work of Demming and Juran (statistical process control). In this book, Watts suggests we assess the software development process by asking three questions:
This book also provides basic principles for process assessment. These include:
In this book, Watts talks about process assessment and process improvement and reinforces the notion of measurement. With regard to process improvement, he states:
Watts also identifies the key goals of Software Quality Assurance:
In his book, Winning with Software: An Executive Strategy, published in 2001, Watts used his unique gift to explain why management techniques used to manage manufacturing are not effective in managing software development work. In this book, he identified several reasons why executives should insist that software quality be measured and managed:
He also identified the five most common causes of project failure:
CMM and CMMi The development of the CMM and CMMi represents the most significant advancement in software engineering and software quality in the past 50 years. While often viewed with skepticism, the CMM established a consistent way of assessing (measuring) software development processes. CMM assessments provided management with:
The CMM and CMMi provided ways to make use of data and measurements along with well-known process improvement tools such as Plan-Do-Check-Act to enable organizations to achieve remarkable improvements in repeatability, consistency, and quality. Shortly after the CMM and CMMi were established, Watts was honored as the first Fellow of the Software Engineering Institute. With this honor, he was now free to investigate any topics that were of interest to him. What followed is truly remarkable… The Personal Software Process (PSP) In his book the Personal Software Process (PSP), Watts undertook to better understand the personal characteristics and behaviors of software engineers that lead to higher quality software. He did this in a unique way – he gave himself a challenge – to develop software and document the practices he determined would lead to better quality. This book and the accompanying training courses Watts developed and taught have helped improve software engineering skills and software quality throughout the world. The Team Software Process (TSP) After creating the PSP, Watts recognized that the PSP was not sufficient since software was developed by teams not by individuals. Watts then developed the Team Software Process (TSP) as an outgrowth of the PSP. The Quality Attitude After creating the PSP and TSP, Watts continued his work at the SEI. He began writing a series of newsletters called Watts New.
One of my favorite issues of this newsletter was one titled "The Quality Attitude" [6]. In this article, Watts states the importance of having an attitude that reinforces quality. He said:
This article also introduces the notion of the testing footprint:
What he pointed out was that the shaded area is the area covered by system testing. However, once software is released, customers often use software in ways that were not covered by system testing. When this happens, customers find defects not found in system testing. Knowing your testing footprint and how it differs from how your customers use your software is critical to reducing the number of defects customers find. Watts reported that some development groups are now producing reasonably large-scale software products that have had no defects found by their users. While these products actually have latent defects, for all practical purposes, they are defect free. Today, Watts reported that there are but a few development teams can consistently produce such software. Watts also collected some defect data from a group of 810 experienced software engineers who developed over 8,000 programs. An analysis of the date showed that:
What this analysis shows is that, on average, experienced software engineers inject about 1 defect for every 8 lines of code written. In many cases, about 95% of these defects are found prior to release. As a result, software is released with some known defects and a significant number of unknown defects. Given this, let’s look at a typical example consisting of one million lines of code:
This means that there could be as many as 6,000 defects were not found in the released software. Watts recognized this and observed:
Watts Humphrey’s Legacy There have been only a handful of people who have made significant contributions to the state of the art in software engineering and software quality assurance. In my opinion, the contributions of Watts Humphrey are far and away the most significant. He has managed to achieve his “outrageous commitment” to change the way software development projects are managed by developing and applying sound management principles. We will forever be indebted to his accomplishments, we will miss his wisdom and wit and his ability to change the course of software engineering. |
Every month in this space, you’ll find additional information related to this month’s topic.
The Watts Collection The SEI has put together a comprehensive collection of the work that Watts has published called The Watts Collection. I urge you to take advantage of this resource as it contains the wisdom of one of the greatest software engineering minds of our time. Complete list of books by Watts: Leadership, Teamwork, and Trust: Building a Competitive Software Capability (SEI Series in Software Engineering), Addison-Wesley, to be published 2011. Reflections on Management: How to Manage Your Software Projects, Your Teams, Your Boss, and Yourself. Addison-Wesley, Reading, MA, 2010 TSP, Coaching Development Teams, Addison-Wesley, Reading, MA, 2006 TSP, Leading a Development Team, Addison-Wesley, Reading, MA, 2006 PSP, A Self-Improvement Process for Software Engineers, Addison-Wesley, Reading, MA, 2001 Winning with Software: An Executive Strategy, Addison-Wesley, Reading, MA, 2001 Introduction to the Team Software Process, Addison-Wesley, Reading, MA, 1999 Managing Technical People - Innovation, Teamwork and Software Process, Addison-Wesley, Reading, MA, 1997 Introduction to the Personal Software Process, Addison-Wesley , Reading, MA, 1996 A Discipline for Software Engineering. Addison-Wesley, Reading, MA, 1995 Managing the Software Process, Addison-Wesley, Reading, MA, 1989 Switching Circuits: With Computer Applications, McGraw-Hill, 1958 |
Software Quality Consulting provides consulting, training, and auditing services tailored to meet the specific needs of clients. We help clients fine-tune their software development processes and improve the quality of their software products. The overall goal is to help clients achieve Predictable Software Development™ – so that organizations can consistently deliver quality software with promised features in the promised timeframe. To learn more about how we can help your organization, visit our web site or send us an email. |