Book a Demo

Author Topic: visibility of created connectors on other diagrams  (Read 7547 times)

kochst

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
  • SW Architect in Medical
    • View Profile
visibility of created connectors on other diagrams
« on: December 22, 2015, 07:31:00 pm »
Hello,

I see a major problem that its not possible to prevent newly created connectors to appear in all existing diagrams of the model.

We just introduced EA12 to our development team. Our product is very complex and so it our EA model. This is one of our use cases:

- System Architects create system architecture diagrams and element library of subsystems

- Domain specialists reuse the library elements to create topical views within the model (new diagrams)
   - topical views contain new relationship connectors (e.g. indicating dependencies, information flows and so on..)
   - System Architects do not accept that these newly created relationships appear in their diagrams

Not sure if that is a bug or feature. Everybody in a larger team must have faced that issue already if working on a common model.

Thanks,
Stefan

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: visibility of created connectors on other diagrams
« Reply #1 on: December 22, 2015, 08:20:06 pm »
Stefan,

You can in fact hide a relation in other diagrams through the right click menu option Visibility|Hide connector in other diagrams

But you should ask yourself the question if that is what you really want.
You are not working with a set of diagrams but with a model.
If there is a relationship between two elements in your model, don't you want to show it wherever those two are shown?

If you don't want to show that relationship anywhere else then you might not be using the right element.
Sometimes you can solve this by using instances i.s.o. elements on your diagrams, sometimes you might need inherited elements, or sometime you need a copy of the "common" elements.

But you should really think about what you are modelling, and which type of re-use you want to use.

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: visibility of created connectors on other diagrams
« Reply #2 on: December 22, 2015, 09:26:11 pm »
In other words: UML is not about diagrams.

q.

kochst

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
  • SW Architect in Medical
    • View Profile
Re: visibility of created connectors on other diagrams
« Reply #3 on: December 22, 2015, 11:54:55 pm »
Geert,

For us a diagram is a specific view on the model. There can be multiple diagrams showing different aspects of this model.

My point is: I want these different aspect to stay different. example: If I have a diagram outlining the dependency between components then I dont want these dependencies in the other diagram where I only outline the electrical interfaces of these components.
...

The  Visibility|Hide connector in other diagrams did the work. Thanks!

Stefan

qwerty,
I know.
« Last Edit: December 22, 2015, 11:56:47 pm by kochst »

Helmut Ortmann

  • EA User
  • **
  • Posts: 970
  • Karma: +42/-1
    • View Profile
Re: visibility of created connectors on other diagrams
« Reply #4 on: December 28, 2015, 08:20:12 pm »
Hi,

it's always a good idea to annotate your diagram. Say what you want to tell the reader.

The reader should know what to expect and also sometimes what he can't expect from the view/diagram, especially if some relations among diagramobjects are missing.

In the community is an Addin to visualize that on a diagram are diagram objects with hidden relations.

Helmut
Coaching, Training, Workshop (Addins: hoTools, Search&Replace, LineStyle)

Uffe

  • EA Practitioner
  • ***
  • Posts: 1859
  • Karma: +133/-14
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Re: visibility of created connectors on other diagrams
« Reply #5 on: January 05, 2016, 01:14:26 am »
Not sure if that is a bug or feature. Everybody in a larger team must have faced that issue already if working on a common model.

I consider this one of the worst, or at least the most dangerous, features in EA.

Whenever I meet a client who's discovered the Hide Connector feature, I always advise them to get rid of it as a practice, the architectural reason being that it's purely a GUI feature which encourages a magical way of working where some information is simply there without being stored in the proper data structures, and the practical reason being that it is impossible to control and thus a maintenance nightmare.

The typical objection is that there is a need to describe different aspects of things, eg systems. So systems X and Y have not one but several types of relationship between them, such as dependencies, information flows, etc. To which the response is that that's fine, but it doesn't mean that a system should be represented by one single element which is reused in every single diagram. That would be a bit like saying that in all the documentation for a system, the system's name can only appear once, and in all other places there must instead be a reference to chapter X.Y.Z.

I usually get blank looks at this point.  ::)

But there are better ways to achieve the same result as hiding the connectors.

The simplest one, just a step up from hiding, is using diagram filters. Unfortunately, as of EA 11.1 connector filters are pretty limited in what information they can look at. But they do have access to name, alias, type, stereotype and notes, which is sometimes enough.

The other option is to use stereotyped connectors and shape scripts. Shape scripts have access to most of a connector's information, and a lot of information on the source and target elements as well, but they can also check which type of diagram they're being drawn on. So all you need to do is write a shape script which doesn't draw anything at all if the diagram is of the wrong type.

Cheers,


/Uffe
My theories are always correct, just apply them to the right reality.