Author Topic: UML relationship between cluster and server  (Read 11379 times)

kepNCI

  • EA User
  • **
  • Posts: 127
  • Karma: +1/-0
    • View Profile
UML relationship between cluster and server
« on: February 21, 2013, 04:59:04 am »
I have defined our network devices, including servers and clusters.
I now want to create a relationship between a cluster and the servers that make up the cluster.  Which UML relationship best describes the relationship between a cluster and its servers? I am thinking just an association connection.

Karl

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +395/-301
  • I'm no guru at all
    • View Profile
Re: UML relationship between cluster and server
« Reply #1 on: February 21, 2013, 06:19:52 am »
I'd use a composition.

q.

Ignacio G. T.

  • EA User
  • **
  • Posts: 38
  • Karma: +0/-0
    • View Profile
Re: UML relationship between cluster and server
« Reply #2 on: February 27, 2013, 02:17:19 am »
The three of them (association, aggregation, and composition) are valid, and the subtleties are a good topic for a pub conversation :-)

I use this rule of thumb:

1) If the association is between parts and a whole, I tend to use aggregation or composition, instead of simple association.

2) If, in the view you are trying to depict, a part's existence has no sense outside the whole, I tend to use composition, instead of aggregation.

3) If the part may be a part of another whole, you can use composition only for one of those relationships; for the other ones, you must use aggregation.

In your case, if your server will always be part of one and only one cluster, I'd use composition.

kepNCI

  • EA User
  • **
  • Posts: 127
  • Karma: +1/-0
    • View Profile
Re: UML relationship between cluster and server
« Reply #3 on: February 27, 2013, 03:34:31 am »
You hit right on why in my case I likely should not use composition.  In our network we may have 3 physical servers in which each are associated with three clusters.  Thus deleting one cluster would not necessarily delete the associated servers, or vice versa.  However deleting all three servers would effectively delete all three clusters.

Aggregation may be the best in my case. In which case who owns who? In other words, Is the physical server the owner or is the logical cluster the owner? In my case owner would not necessarily imply life dependency.

Thanks for the reply. Got me thinking.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +395/-301
  • I'm no guru at all
    • View Profile
Re: UML relationship between cluster and server
« Reply #4 on: February 27, 2013, 04:16:33 am »
Quote
Aggregation may be the best in my case. In which case who owns who? In other words, Is the physical server the owner or is the logical cluster the owner? In my case owner would not necessarily imply life dependency.
Sort of hen and egg problem  ;)

q.

kepNCI

  • EA User
  • **
  • Posts: 127
  • Karma: +1/-0
    • View Profile
Re: UML relationship between cluster and server
« Reply #5 on: February 27, 2013, 09:43:50 am »
I think you are right.

It is more an academic issue in my head as I try to learn UML than an important issue for our diagram and project since the main thing we want to show is the relationship.  It is just that I want to try to stick with correct UML, if possible, but since this whole network config is somewhat outside of UML, it likely does not matter.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +395/-301
  • I'm no guru at all
    • View Profile
Re: UML relationship between cluster and server
« Reply #6 on: February 27, 2013, 10:08:46 am »
UML is a language. And like all languages you have multiple ways to express your thoughts. If the reader understands, you probably have a good "expression". Unfortunately you learn that the reader did not understand only by catching some bad experience. There is a learning curve for UML...

q.
« Last Edit: February 27, 2013, 10:10:01 am by qwerty »