3

I've just generated a doxygen documentation for LLVM using python-sphinx. I'm not very good at UML. I understand inheritance diagrams, but I'm not very clear about collaboration diagrams. Explanations that I found online are not very clear.

I'd really appreciate if someone could show the difference between the two using a specific example.

flashburn
  • 4,180
  • 7
  • 54
  • 109

1 Answers1

2

There is no "inheritance" diagram. I guess you mean a class diagram where you can see inheritance drawn as a line with a hollow triangle. This is a static display of a class model. It shows methods and attributes of classes as well as how the classes are related to each other (not just generalization but all kinds of dependencies).

A collaboration diagram is the behavioral part. There are two exchangeable versions: communication and sequence diagrams. While the first puts a focus on "which object collaborate in a certain use case" the sequence puts the focus on "which messages are exchanged in which order" for a scenario. Both use messages and you can convert one into the other.

To be true, there are more than the above. But those are the most important when you start.

qwerty_so
  • 35,448
  • 8
  • 62
  • 86