Author Topic: <<facade>> Package  (Read 823 times)

bernhard

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
<<facade>> Package
« on: August 20, 2007, 12:29:17 am »
Hello @all,

I miss a support for the UML 2.0 stereotype <<facade>> on a package. A facade package should only contain references on elements of other packages and is used to furthermore structure the model.

I can apply the stereotype to the package but without effect. If I try to add reference elements from other packages I will fail as they are always removed from that package.

Example: If you model an iterative process from your use cases of the business model packages in UML the iterative packages can be <<facade>> packages including the use cases which should be implemented.

Thanks for replies on that topic,

Bernhard

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5874
  • Karma: +71/-77
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: <<facade>> Package
« Reply #1 on: August 20, 2007, 03:56:54 am »
Hi Bernhard,

I'm afraid the only mention I can find in the [size=13]UML 2.1.1 Superstructure (formal)[/size] Specification to a «facade» Package is in section C.2 StandardProfileL3 (page 694) where it's mentioned as:

Changes from previous UML
The following table lists predefined standard elements for UML 1.x that are now obsolete.

«facade» Package

HTH,
Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: <<facade>> Package
« Reply #2 on: August 20, 2007, 04:37:18 am »
Hi Bernhard,

Perhaps you could whip something up via EA's support for patterns. Check the help file for this.

I suspect that a profile won't help you much in the EA world, since the EA implementation seems geared at a lower level. However, this is a guess and I'd be delighted if I were whong here. You might want to try this route.

David
No, you can't have it!

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5874
  • Karma: +71/-77
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: <<facade>> Package
« Reply #3 on: August 20, 2007, 05:45:01 am »
Hi David,

Bernhard's observation of EA's behaviour is what I'd expect EA to do given the UML 2 specification.

What I think Bernhard's trying to achieve (from his description of what a «facade» Package used to be) is to create a browser link (rather than a link in a diagram) so that a reference in one package is actually a "pointer" to the real occurrence somewhere else.  Have I got that right Bernhard?

This is contrary to what I believe is the UML 2 view of the world: that a UML model is a strict tree and the same item can't be in more than one place in that tree.

Now, as it happens, I would like some functionality similar to Bernhard - the ability to have the same classifier specification in more than one place - so that editing one edits the other.  However, our assessment (at Ripple) is that this is contrary to the UML intent (at least).

AU$0.05  :(
Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: <<facade>> Package
« Reply #4 on: August 20, 2007, 06:19:00 am »
Quote
Hi David,

Bernhard's observation of EA's behaviour is what I'd expect EA to do given the UML 2 specification.

What I think Bernhard's trying to achieve (from his description of what a «facade» Package used to be) is to create a browser link (rather than a link in a diagram) so that a reference in one package is actually a "pointer" to the real occurrence somewhere else.  Have I got that right Bernhard?

This is contrary to what I believe is the UML 2 view of the world: that a UML model is a strict tree and the same item can't be in more than one place in that tree.

Now, as it happens, I would like some functionality similar to Bernhard - the ability to have the same classifier specification in more than one place - so that editing one edits the other.  However, our assessment (at Ripple) is that this is contrary to the UML intent (at least).

AU$0.05  :(
Paolo

Pretty good value for 5 cents! I agree across the board.

In particular, I did not address the UML compliance issue as I felt that: you had covered the current situation in your earlier post; and retrofitting EA to handle this in 'UML 1.x mode' was unlikely to lead to anything constructive.

What I was trying to provide was some idea of how Bernhard could solve the immediate problem, rather than how it 'should' be done via the UML standard.

Of course this bends UML out of shape, and I would choose a more compliant route if it were my project. However, that would still not solve his problem.

David
No, you can't have it!

bernhard

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: <<facade>> Package
« Reply #5 on: August 20, 2007, 06:24:14 am »
Hi,

thanks for your quick reply! You're correct Paolo and you understood very well what I intended to do.

I have to recheck UML specification and especially the changes again. Anyway I will miss the <<facade>> package now if that is not allowed in UML 2.0 any more.

From my point of view I understand very well why it may be a problem for physical models like code class models to have elements in more than one package as there is a namespace behavior defined for packages in the superstructure.

I thought for logical models it would be ok to have packages with references / pointers to view different aspects of the model but maybe I was wrong. I can imagine that maybe one intention of the UML 2.0 was to get an easier structure into the model to set this feature obsolete without any substitutes.

Best regards,

Bernhard

KP

  • EA Administrator
  • EA Expert
  • *****
  • Posts: 2436
  • Karma: +29/-2
    • View Profile
Re: <<facade>> Package
« Reply #6 on: August 20, 2007, 03:30:09 pm »
Bernhard,

Try this: go "Tools > Options > Diagram > Behavior" and set the option "Show Linked Items in Package", then drop your <<facade>> package onto a diagram, then open the diagram properties dialog and set the "Package Contents" option on the "Elements" tab. Now any elements that appear on a diagram in your facade package will be listed within the package element.

Not exactly what you were asking for, but may help you.
The Sparx Team
support@sparxsystems.com