Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!munnari.oz.au!sirius.ucs.adelaide.edu.au!fang!dch From: dch@aeg.dsto.oz.au (Dave Hanslip) Newsgroups: comp.object Subject: Re: OOA vs OOD (was: Booch GOOD - Coad/Yourdon BAD) Keywords: ooa, ood Message-ID: <1289@fang.dsto.oz> Date: 8 Nov 90 16:27:17 GMT References: <0B010001.gv7aox@bse.com> Sender: news@fang.dsto.oz Lines: 46 eberard@bse.com (Edward V. Berard) writes: >... However, I make the following observations: > 1. If you are not predisposed to rigorous software engineering, and > you have a traditional object-oriented programming background, > you will probably feel most comfortable with things like CRC (Class, > Responsibilities, Collaboration) cards and responsibility-driven > design. [These approaches do introduce a good deal of object coupling > and do not seem to work well with medium to large projects.] > 2. If you come from a more traditional software engineering background > (e.g., structured and data modeling approaches), you will find > Coad/Yourdon and Shlaer/Mellor to be more comfortable. You will > also find, however, that these approaches are only partially > object-oriented. (Although, they are evolving.) This means that > some of the promised advantages of an object-oriented approach > may not be fully realized. > 3. Even if you feel most comfortable with Booch's new book, there > will be pieces missing. Booch does not address the beginning of > the life-cycle in depth, for example. > -- Ed >---------------------------------------------------------------------------- >Edward V. Berard | Phone: (301) 353-9652 >Berard Software Engineering, Inc. | FAX: (301) 353-9272 >18620 Mateney Road | E-Mail: eberard@bse.com >Germantown, Maryland 20874 | >---------------------------------------------------------------------------- As one currently grappling with applying OOD to a very large project, I must agree with the final sentence of para 1. I recall a statement I saw on the net some months back that large system design should proceed sequentially through steps of SA/SD and OOD. In my experience, with a laand very complex system, if one commences with OOD, one is overwhelmed by complexity. Commencing with SA/SD allows smaller less complex subsystems to be identified to which OOD (a la CRC cards) can then be applied. SA/SD (or functional decomposition if you like) is then again applied within classes to member functions. With regard to Booch's new book, I found guidance on subsystem selection and subsequent integration of subsystems to be missing. Also, how to achieve this integration (both organisationally and practically) using a language such as C++. Course, I'm not complaining, it's exciting working in a new area, breaking new ground, going boldly where no man has gone before (sorry, boldly going where nobody has gone before!). David C. Hanslip E-mail: dch@aeg.dsto.oz.au Aeronautical Research Laboratory Phone: +61 8 259 5792 DSTO Salisbury, South Australia Fax: +61 8 259 5507