Book Review: Return on Software

Return on Software: Maximizing the Return on Your Software Investment
by Steve Tockey
Addison-Wesley, 2004
621 pages, $49.99

When software developers sit down to debate a new project, the debate is usually framed in technical terms: should we use J2EE or .NET for the framework? Should we be using SOAP or REST for communications across distributed components? These are the sorts of questions that we all feel qualified to discuss and decide.

But there's a more fundamental question that needs to be decided as well: should the company do the project at all? If it costs $1,000,000 to build the software, and the payoff is $200,000 next year and for the four years after that, would it be better or worse for the bottom line to keep the money in the bank and fire all the developers instead? Or perhaps the money would be more wisely invested in maintaining an existing system, no matter how unglamorous that work seems to the IT staff. Making such decisions in a rational way is the subject of the field of engineering economy - and this book presents itself as an engineering economy book for software professionals.

Tockey starts off by discussing some of the basic concepts of accounting and business: cash-flow diagrams, basic cost accounting, making decisions, the time value of money, equivalence, and so on. He then walks through making for-profit business decisions, and gets into some advanced topics such as inflation, deflation, taxes, and depreciation. There's a chapter on making decisions in not-for-profit organizations, a section on optimization, and a chunk of estimation, risk, and uncertainty. He wraps up the book by talking of decisions based on multiple attributes.

Tockey presents the material well; it's complex and at times daunting, but clearly explained, with plenty of examples. Each chapter ends with a set of self-study questions, and there are answers in the back for the questions. Overall, if you've never been exposed to the field of engineering economy, this would be a good choice. But there's a caveat in that sentence: if you have been exposed to the field, you'll find this book mostly a refresher. Despite the subtitle, at least three-quarters of the book isn't about software at all. The examples draw from our field, but they'd make just as much sense in a dozen other fields. If you're already comfortable with the language of decision making and cash flows, you can probably give this one a pass.

About the Author

Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.