Books : reviews

John Cheesman, John Daniels.
UML Components: simple process for specifying component-based software.
Addison Wesley. 2001

rating : 3.5 : worth reading
review : 31 August 2001

Components are a way of structuring software into chunks that helps make it robust to change -- well-designed components can be separately upgraded or replaced relatively easily. (The emphasis is usually on reuse; it is interesting to see the opposite side of the coin presented here.) The authors tersely and economically describe a process for using UML to specify such components. It makes a pleasant change to read a slim volume (under 200 pages), where every word earns its place, as opposed to some bloated and inflated fatter tomes.

If you are interested in developing component-based software systems, the techniques, process steps, and UML stereotypes here described will make a valuable starting point for your own developments. Even if you are not interested in components, this is a worthwhile read, because it shows how to use UML to describe and specify interfaces, and how to move through the design process. These descriptions and insights can be adapted to most OO design tasks. In particular, the excellent chapter on requirements definition stands alone, and would be an appropriate starting point for any OO development.