In spite of its title, many of the book’s 11 papers, written almost exclusively by academicians, are only loosely related to software process improvement. The inadequate three-page preface merely provides a spotty overview of each paper and does little to tie the contents together. There is no indication of how the papers were collected, but none is a reprint, and neither the papers’ authors nor the publisher are noteworthy. It is unlikely that any of the papers would have been accepted by a reputable refereed journal without major revisions. There is simply nothing of significant research or tutorial value in them.
A common thread through more than half of the papers is the Software Engineering Institute (SEI)’s Capability Maturity Model (CMM), and each paper summarizes the CMM to some degree. None offers worthwhile extensions to the CMM, and none provides an overview as good as the one that can be found on the SEI Web site or in numerous journal articles on the topic. The index is sparse, and the number of typos and grammatical errors varies from paper to paper. On the positive side, most of the papers contain good sets of references, and some are extensive.
Of the best papers in the book, the one by Kawalek and Wastell analyzes software development in terms of cybernetic theory. Although the cybernetic aspect of the analysis is artificial, the two case studies are interesting. The paper by McComb and Slater makes a clear case for applying cost-benefit analysis after projects go off schedule, in order to determine whether to continue them. A cost-benefit analysis of the book itself determines that the cost of the effort to read any part of it is much greater than the benefit of the knowledge to be gained.