Issue #51: Freelancing,  Library

Barry Boehm

We have often talked about software economics in this magazine. For example, when we enumerated Eric Sink’s perspectives on the software business, discussed platforms as a paradigm for economic analysis, or talked about how Brad Cox advocated for an object-oriented economy. But there is a more extraordinary author about the subject, one we mentioned a few times in this magazine and who sadly passed away last August: Barry Boehm.

Barry Boehm started his career in software engineering in 1955, and his experience led him to analyze the economic forces shaping software engineering in business, government, and society.

The 800-page book “Software Engineering: Barry W. Boehm’s Lifetime Contributions to Software Development, Management, and Research” by Richard W. Selby, published by Wiley in 2007 together with the Computer Society, contains a compilation of 43 influential papers published between 1973 and 2006.

Barry Boehm wrote about software quality, economics, tooling, risk management, and project management in those papers. He was a pragmatist; he wanted to find valuable solutions to common problems and provide software project managers with tools to implement those solutions.

Among the various inventions of Barry Boehm, we will find the COCOMO software project estimation models he developed in the 1980s and 1990s. I mentioned them in a previous article:

In his 1981 paper titled “Software Engineering Economics” he went as far as to propose a formula to evaluate the cost of software projects. You heard right; this is an algorithmic method for software cost estimation (you can rub your eyes, I will wait for you); that is, a mathematical formula that could have been implemented in Excel 35 years ago. And, lo and behold, SLOCs are at the basis of the whole equation.

This rather revolutionary contraption was called the COCOMO, or COnstructive COst MOdel. An unfortunate name, distorted 5 years later by the Beach Boys as the soundtrack of a Hollywood blockbuster. But quite an incredible precedent, mostly forgotten by younger developers, and followed by the release of COCOMO 2.0 (by the same Barry Boehm) in 1995.

Some of the readers of this magazine might remember a social media website called “Ohloh” created by the same team that brought us SourceForge and that offered services to open-source software developers. One of those services was, indeed, a cost calculation widget available on every project page.

Ohloh became Open Hub in the meantime. However, thanks to the Internet Archive’s Wayback Machine, we can see what Ohloh looked like in 2010. Their “Codebase Cost” page explained in detail that they were using COCOMO for such evaluations. For example, the PEAR framework, providing reusable PHP components, was estimated to have cost 17’555’092 USD in June 2010. Today, the Open Hub tells us that Mozilla Firefox costs half a billion dollars.

In an age where we are debating the “unpopular opinion” of whether we should pay people to make open-source software, Barry Boehm gave us the formula to figure out how expensive software actually was, and never paid attention to it. The work done by Boehm in this area is only comparable to that of Steve McConnell and his book about software estimation.

Barry Boehm’s did not stop there. In the 2000s, he proposed Value-Based Software Engineering (VBSE) as a paradigm to drive software team efforts and cost calculations.

As explained by Kevin Sullivan in the foreword of chapter 9,

VBSE rests on the simple but transformative idea that any expenditure of scarce and valuable resources on software or a software-intensive system or initiative should be seen and managed as an investment in a risky asset: a project leading to a product or service of uncertain value.

Sounds about right: consider software a risky asset and apply rules inspired by financial management to understand costs, outcomes, and resources.

His obituary says it all. A “legend” and a “giant” are the words used to describe his work and persona.

Barry Boehm was part of a generation of academics who oversaw the rise of computing in all areas of society. He watched them evolve from large rooms onto our desks and later into our pockets, transforming every aspect of our lives. But sadly, instead of a podcast or a blog, he poured his brain into PDF papers, which most full-stack engineers have never read.

Not many remain from his generation, and whether we like it or not, we are their legacy. We should understand the work of people like Barry Boehm better.

Cover photo by the author.

Donate using Liberapay

Adrian Kosmaczewski is a published writer, a trainer, and a conference speaker, with more than 25 years of experience in the software industry. He holds a Master's degree in Information Technology from the University of Liverpool.