In writing the observations in this book review, I must first confess a certain degree of conflict of interest that might affect my objectivity. Joe Marasco, the author of this book, The Software Development Edge, is a special friend of mine. "Special" because he is one of a growing group of people that is becoming increasingly common in this modern age of the Internet. I have conversed with him at length, worked with him and exchanged ideas, yet we have never actually met face-to face. Of course we both know what each other looks like, but that is as far as it goes. Such are the wonders of modern technology yet, in a way, strictly limited to what can be conveyed through the typed word.
But I digress. I find it an honor and privilege to be counted amongst Joe's acquaintances because Joe is an author of considerable intellectual prowess. He makes you think! You might believe that this book is about software development, or about project management, or about being successful - in a way it is, all of these. But the book is also about a variety of challenges that Joe has found intriguing and to which he offers solutions, the more mathematical the better. After taking a bachelor's degree in chemical engineering he earned his Ph.D. in physics from the University of Geneva. This latter no doubt laid the foundations for his excursions into mathematical modeling that has stood him well in his career in software development.
Joe Marasco is the CEO of Ravenflow, a new software tools company serving the field of software requirements development. Previously he was a senior vice-president and business-unit manager for Rational Software, a company offering software development processes and tools, and subsequently acquired by IBM. One of Joe's greatest challenges and achievements was to take on, in 1991, a new project team to plan and deliver "Rational II" in two years and on two UNIX platforms: IBM and Sun. After seven months, a limited-function subset prototype was up and running. After sixteen months, the development team was "self-hosted" which means that the team was able to complete the development of the product using the partially completed product itself. The final product was delivered in exactly two years as promised. It just goes to show - it can be done!
According to reports, one reason why Joe was so successful was because he spent a lot of time with his developers understanding the details of the products and the development problems. But he also spent a lot of time with Rational's customers, developing a keen understanding of their needs. As every product delivery is the result of many compromises, Joe was able to make well-informed judgments when it came to decision time.
In more recent years, Joe contributed articles to Rational's electronic magazine, The Rational Edge. These articles had a special flavor, being about Joe's practical experiences, his understanding of human responses in a technically challenging environment, and his fascination with problem solving by modeling. In a way, this book of his is a compendium of many of these articles. Some you will find refreshingly obvious, others you will find take you into the realms of serious mathematics.
For those like me, who no longer have the necessary mathematical horsepower, these sections can be skipped with out damage. As Joe himself observes, the book's chapters have several different styles. Some are expository, some are fairly analytical, and some are folksy "Socratic dialogs" between the author and a fictional character known as Roscoe Leroy. This is Joe's device designed to get his message across. But you'll have to read the book to get to know Roscoe.
1. Marasco, J., The Software Development Edge, Addison-Wesley, NY, 2005, p xx