ACTION DESIGNER OBJECT ORIENTED ANALYSIS AN EXPERIMENT As of 3/1/90 Object-Oriented Analysis (OOA), Object-Oriented Design (OOD) and Object-Oriented Programming (OOP) have gotten a lot of attention lately. Most of the discussion has centered on programming languages like C++ and Smalltalk. To say that there is controversy would hardly describe the battle. I'd like to fire a slavo of my own: you can't do OOP or OOD if you can't do OOA. In other words, if we don't know where we are, how can we know where we are going or how to get there? Now, you might reply, OOA is easy. Identify the objects making up the system (any system), define them as abstract data types and you've done OOA. From there, it is straightforward to do OOD and OOP. Says who? We aren't even close to having robust OOA methodologies and tools. Maybe we shouldn't bother, but my gut tells me that it is worthwhile to pursue the subject. One of the problems is, we need some kind of a model as a starting point. It would also be a good idea if the model had some basis in practical experience as well as theory. AD contains an EXPERIMENTAL feature: Action Diagram constructs for one such model. The model is derived from a recent book: OBJECT-ORIENTED ANALYSYS Peter Coad and Edward Yourdon Yourdon Press, 1990 If you have an interest in the subject, you will want to pick this one up. The authors claim industrial strength experience in OOA and present a potentially useful model which they claim has worked for them. The OOA process Coad and Yourdon describe involves identifying objects, structure, and subjects and defining attributes and services. They also present a diagramming technique that I don't much care for. Here is what they say about objects: "An object is an encapsulation and an abstraction: an encapsulation of Attributes and exclusive Services on those Attributes; an abstraction of the problem space, representing one or more occurances in the problem space." Whew. You'll have to read the book to put some flesh on those bones. But, this is the basis for AD's OOA extension. You can use the Object menu just like the Action menu to insert OOA supporting control brackets. There are brackets for Classes Sub Classes, Attributes and Services. They will allow you to describe hierarchies of objects and browse them by controlling the level of detail displayed. Keep in mind that Objects are synonomous with OOP Classes, Attributes with Variables and Services with Methods. I think that, with some refinements, it eventually will be possible to generate code. Rather than try to rewrite the book here, why don't you take a look at what is in AD, try it out, read the book and call me so we can work through this together. I'll add more to this discussion as I learn more. Maybe we can get some sort of thread going on CompuServe. Please register. Lou Barnett MetaLogic Corporation (805) 529-4498