Re: links & messages



Date view Thread view Subject view Author view

robert france (france@CS.ColoState.EDU)
Wed, 19 Jan 2000 09:07:37 -0700 (MST)


For communication to take place between objects the sending object must know the identity of the receiving object. If you interpret a link as one object "having knowledge" (knows the identity) of the other object (where the direction of the link indicates which object knows about the other) then a link must exist between objects for communication to take place (assuming that there are no other mechanisms other than links for doing this). Collaboration diagrams allow for a variety of links (parameter, global, local, transient). An interesting question is the following: Must a link in a collaboaration diagram be an instant of an association in a corresponding Class Diagram? The answer seems to be no (based on my current understanding of Collaboration Diagrams), and this is probably desirable if only to reduce clutter in the Class Diagrams. A rule I use (and I would like feedback on the problems) is that a high-level design Class Diagram should show only persistent associations (i.e., associations whose links persist between operation invocation); thus if an object is passed as a parameter to an operation in another object I would not show this relationship as an association in the Class Diagram. Class Diagrams at lower levels of abstraction may show transient relationships as associations/dependencies. Ofcourse there are always exceptions to the rule, but if one wants to model a transient relationship as an association in a high-level design Class Diagram there should be a good reason for doing this. Robert ==================================================================== Robert B. France, Assoc Professor | Tel: 970-491-6356 Computer Science Department | Fax: 970-491-2466 Colorado State University | Email: france@cs.colostate.edu Fort Collins, CO 80523 | www.cs.colostate.edu/~france/


Date view Thread view Subject view Author view