JTangney@cup.portal.com (John Dominic Tangney) (02/16/89)
Hi I need to put together a presentation to my boss on Object Oriented Analysis and design -- or at least analysis methodolgies which are appropriate if we are intending to go towards OO design and implementation. Help!! I came across a methodology called Information modelling (course by Project Technology). There are some problems with it, which tend to lead one away from an Object Oriented approach... We may still go with it in the absence of any other appropriate approach. Does anyone know of an Analysis methodology (or at least a notational regimen) which supports and leads naturally into OO design and implementation? Further, any info on OO Design (and I mean *real* OO -- pbably implemented in Smalltalk or at worst, C++ -- no flthat please) would be highly appreciated. Y'see, these groups are not just for people to ask where they can get free compilers :-) :-) :-) Reply by email if possible, or post for a discussion. TIA john tangney
david@cullsj.UUCP (David Taylor) (02/23/89)
This same question was raised at the OOPS panel at Software Development '89 last week. Grady Booch's "Software Engineering with Ada" was recommended by one of the panel as being applicable in general, not just to Ada. Though I haven't read it, I have read his paper "Object-Oriented Development" in IEEE Trans. on Software Engineering 2/86 and recommend it. The Jackson method, as outlined in "System Development" by Michael Jackson, has been quite useful to me. Though I used the approach before learning object-oriented programming, I find that languages such as Smalltalk provide the most natural fit. Jackson teaches identification of entities and their actions in a way that is quite accessible. Currently, I am 26 pages into Bertrand Meyer's 534-page work "Object- Oriented Software Construction" and already I feel safe in recommending it highly. Bertrand combines academic rigor with a keen ability to cut through the bull so rampant in this profession. Part 1 of the book deals with issues and principles. Part 2 gives concrete techniques of object- oriented design. Though his own commercial language Eiffel is used throughout (rather shameless self-promotion I think, since Eiffel's price makes it inaccessible to many), Part 3 discusses use of the techniques in other environments. Actually, the historical notes and bibliography alone are valuable, and may be an excellent starting point for your search. A good book to stay away from is "Abstract Data Types" by Thomas Robinson, et. al. A review of that book should be in a forthcoming issue of IEEE Computer, so I'll spare you the details here. Good Luck, david taylor Cullinet Software, Inc.
mark@drd.UUCP (Mark Lawrence) (02/24/89)
Also, _Data_Structures_and_Algorithms_ by Aho, Hopcraft & Ullman [ISBN 0-201-00023-7] tries (rather naturally and comprehensibly, I think) to introduce the subject by utilizing Abstract Data Types which start with simple lists and are built upon for queues, trees, heaps and so forth. Very clear treatise about how to hide the actual implementation of the list or whatever from the application using them. Highly recommended.