Re: links & messages



Date view Thread view Subject view Author view

Mitch Kokar (kokar@coe.neu.edu)
Thu, 20 Jan 2000 14:39:27 -0800


My understanding of associations (as relations) is that when we show an association between two classes in a class diagram all we are saying is that objects instantiated from these two classes can be in that relation and that the system will have this information somewhere. This means that not necessarily objects need to have references to each other. This would be a lower level (either specification or even implementation) issue. If all instances had to be related, the relation would be a Cartesian product. That would not be very interesting to model. Therefore not all of them have to be related. Also, the fact that two classes (and then two objects) are related is not a property of any single object or class. It is a property of the system. Thus objects don't have to be "aware" of each other to be related, although this is not precluded. Moreover, one can decide to implement message passing between objects that are not related. This is fine, since not all aspects of the system need to be modeled at the class diagram level. However, if one decides to show that two classes are related, this fact should not just be ignored at the more refined levels of specification, or implementation. I believe class diagrams should be abstractions of implementations and thus all the aspects of class diagrams should be implemented. Otherwise the abstraction relation would not hold. ==Mitch


Date view Thread view Subject view Author view