Renowned risk analyst and systems engineer Robert N. Charette has dedicated the last 20 years studying software failures. He brings his insights to a lay audience through articles in consumer magazines. Charette has a storied 50-year career. During this process, he’s experienced up close and personally the magical thinking that sometimes develops among IT staff, government leaders and corporate bigwigs, particularly before and after a major software project crash and burn.
Charette’s reflections on these crashes, which are all too common, are nothing new. In 2005, he authored a prescient piece—“Why Software Fails”—which laid bare the dysfunctional patterns that continue to afflict the industry. He makes the case that despite this country having spent trillions of dollars and waited decades, we’ve really learned nothing—we’re still making the same mistakes. As such, they end up suffering catastrophes that are often totally preventable. His post is shocking, but it is instructive because it highlights everything that still goes wrong with software development.
In his talks about failure in software projects, Charette highlights some of the most disastrous failures, such as the Canadian government’s Phoenix payroll system. This is the same system that has suffered systemic failures for nine years. Consequently, tens of thousands of employees have experienced both fiscal and mental anguish from receiving unexpected paychecks. Charette’s point is that developers frequently fail to consider the destructive impact of their software choices.
“Software is as significant as electricity,” Charette stated. We would never tolerate electricity tripping out every other day, but we sure as hell have no issue with accepting AWS going down or telcos or banks going under.
Charette’s observations go further than just government systems. He’s studied software failures in the context of medical devices. Unlike many other industries, he believes the stakes are far greater in this sector. The rigorous requirements coupled with the high stakes of failing crank up the pressure. The U.S. Food and Drug Administration (FDA) recalls an average of 20 medical devices every month due to software-related problems. This further underscores the urgent need to address these shortcomings directly.
Conversations about software failures, as Stephen Cass, our Special Projects Editor, reminded Charette, can take on a pretty negative tone. To his dismay, he found them to be quite depressing. This sentiment reflects the gravity of the issues he raises and the lack of urgency many organizations express regarding preventing software failures.
“The biggest tragedy is that [software failure] is for the most part predictable and avoidable,” Charette explained. Sadly, many organizations do not consider failure urgent enough to address despite the fact that perspective being dangerous to the organization and potentially fatal. Figuring out why this attitude continues to exist is not merely an intellectual endeavor. It has huge consequences for commerce and community.
At times, Charette’s frustration at society’s continued lack of accountability for software failures shines through. He thinks a culture change is key. Whether in the private or public sector, this transition will place a new premium on reliability of software. There is no denying technology plays a huge role in all our lives—personally and professionally. He’s right that we need to stop laughing off the impacts of software disasters.


