Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!samsung!umich!sharkey!dino!ux1.cso.uiuc.edu!ux1.cso.uiuc.edu!m.cs.uiuc.edu!render From: render@m.cs.uiuc.edu Newsgroups: comp.object Subject: Re: Seeking review of Booch's new book Message-ID: <77500043@m.cs.uiuc.edu> Date: 18 Jul 90 15:03:00 GMT References: <139084@sun.Eng.Sun.COM> Lines: 48 Nf-ID: #R:sun.Eng.Sun.COM:139084:m.cs.uiuc.edu:77500043:000:2714 Nf-From: m.cs.uiuc.edu!render Jul 18 10:03:00 1990 Written 11:05 pm Jul 17, 1990 by vladimir@prosper: >Is anyone willing to post (if it hasn't been done already) a review of Grady >Booch's new book, "Object Oriented Design with Applications" (title?), or >e-mail it to me if it's old hat? I got the book a while back and read through it last week. Here are my general impressions: Booch's new book attempts to outline a methodical approach to OO system design. The introductory chapters provide an overview of general design and OO design principles. The middle chapters describe his OO design notation, a combination of graph diagrams and document templates. The latter chapters show how the design principles and notation may be applied to sample problems. I found Booch's discussion of design principles to be quite good, with many references to other work in and out of the OO area. His notation seems to be better than other OO analysis/design notations I have seen (e.g. Shlaer and Mellor or Coad and Yourdon), mostly because it supports several inter-object and inter-class relationships. His applications examples also seem good, since he chooses examples from a wide range of areas (control systems, software tools, AI) with different support mechanisms (a DBMS, a blackboard system). His references and bibliography are excellent, so much so that I recommend reading the book if only to peruse the list of sources. My only misgivings (and they are not strong ones) are that he uses five different languages for the examples (Smalltalk, CLOS, C++, Object Pascal and Ada) and that the last, Ada, is not really an OOPL at all. Because I have had experience with all of the languages, the variety didn't impair my reading of the text, but I believe that someone with a more limited background could have trouble. The inclusion of Ada is understandable given Booch's background (he has written several books on Ada and works for a leading Ada vendor), but I question it's use when it requires "coding discipline" to do things in an OO manner. Still, this may actually be good for those software developers who have to use non-OO languages but wish to experiment with OO design. I think Booch recognizes this audience since he supports both a "logical view" (pure OO) and a "physical view" (possibly non-OO) of a system with his design notation. This could widen the interest in OO design and overcome the "cult" label that currently plagues it. In summary, I recommend the book, and I'm looking forward to trying out his notation. Speaking of this, does anyone know if there are any support tools available for his diagrams and templates? Please e-mail me or post it to the net. Thanks. hal render render@cs.uiuc.edu