Although closely related to the idea of inheritance or generalization-specialization from other object-oriented models and programming languages, the OSA notion is actually quite different. The key difference is pointed out by the name and the representation. OSA's generalization-specialization is actually just a special type of relationship set. This means that we could draw an object at the end of a gen-spec line. Does it make any sense to do that in C++? No. The reason is that inheritance and subclasses in C++ (and some other object-oriented methodologies) are actually relationships between their classes, not objects.

So what does this mean to you? For an example, see how it affects the concept of an Abstract Class.

Go to the OSA Tutorial ORM

 OSM Home Page CS Dept Home Page  BYU Home Page

Last updated 27 Sept 1994 by Barry Roberts