The main objective of the book is to present software components and their importance in software engineering mainly for reuse purpose. To a large extent, this objective has been achieved. The book is a fairly good and complete coverage of many technical (foundations, approaches, implementation, standards, etc.) and non-technical aspects (markets, billing, professions, etc.) of software components. The presentation of the three major approaches for software components, i.e., OMG CORBA, Sun Java and Microsoft COM, and their comparison are very valuable especially when one has to choose one of this approach in building component-based systems. The discussion of non- technical aspects, especially, the market issue is a plus in such types of books.
In this book, systematic reuse is viewed as how to build reusable asset consisting primarily of software components. Reuse is mostly viewed through implementation inheritance and object composition with forwarding or delegation in the object-oriented sense. In that respect, the book goes into many details related to objects. While objects are tightly related to software components from the author's point of view, it is sometimes not clear how the presented discussion is useful for actually building reusable components. Also, sometimes the reader may lost the relationship and differences between objects and components. On the other hand, the author should have discussed in more details the importance of software components in the general area of software reuse. In particular, will software components based on objects be the only way to build reusable components. There are also a number of software engineering issues that should receive more attention regarding the reuse of components. These concern library or catalog of components and quality measurement of components.
The book is well organized, but I think that short chapters should be grouped together. This is especially the case for the last part. Also, one of the problem that I had while reading the book is that in some instances the link between successive sections is not well done. Finally, in my opinion, many of the chapters in part two, three and four should be read in two passes, a first quick pass and a second more deep reading. This will enable the reader to get a maximum benefit from them.