Sparx Systems Forum

Enterprise Architect => General Board => Topic started by: Alex9329 on October 13, 2017, 05:09:37 pm

Title: Show several instances of the same element on one diagram
Post by: Alex9329 on October 13, 2017, 05:09:37 pm
Hi,

I would like to add several instances(paste as link) of the same element on one diagram. How can I do it?
When I try I receive this message: This diagram already contains an instance of the element you are trying to paste. Currently only one instance is supported, so you can not paste the element here.
Title: Re: Show several instances of the same element on one diagram
Post by: Geert Bellekens on October 13, 2017, 05:16:59 pm
Since version 12 or 13 there is something called virtual connector ends that sortof kinda does this in a bit weird and Sparxian way.

See http://sparxsystems.com/enterprise_architect_user_guide/13.5/modeling_tools/virtual_routing.html for more info.

Geert

Title: Re: Show several instances of the same element on one diagram
Post by: MaXyM on October 13, 2017, 09:09:54 pm
BTW what's the reason to have multiple items representing the same element on a diagram?
Title: Re: Show several instances of the same element on one diagram
Post by: qwerty on October 13, 2017, 09:39:30 pm
Probably some spider web design :-/

q.
Title: Re: Show several instances of the same element on one diagram
Post by: Richard Freggi on October 14, 2017, 03:33:45 pm
This is really a UML question, not a tool question.  I don't think it makes sense in UML to have multiple instances of the same classifier in a diagram, and if absolutely-positively need to, the correct way to do it is with a generalization (duplicate element IS-A original element).  EA implements the UML standard correctly by not allowing 2 of same classifiers in a diagram. 

Since version 12 or 13 there is something called virtual connector ends that sortof kinda does this in a bit weird and Sparxian way.

See http://sparxsystems.com/enterprise_architect_user_guide/13.5/modeling_tools/virtual_routing.html for more info.

Geert
Title: Re: Show several instances of the same element on one diagram
Post by: Geert Bellekens on October 14, 2017, 05:00:07 pm
This is really a UML question, not a tool question.  I don't think it makes sense in UML to have multiple instances of the same classifier in a diagram, and if absolutely-positively need to, the correct way to do it is with a generalization (duplicate element IS-A original element).  EA implements the UML standard correctly by not allowing 2 of same classifiers in a diagram. 

I'm pretty sure there's nothing in the UML specs that says you can't put an element on a diagram twice.
In fact UML says very little about what you can or can't do on diagram.

But I don't understand your point about generalization. If I wanted to put a an action on a diagram twice, how could generalization help me? I don't even think generalization is allowed between Actions.

Geert
Title: Re: Show several instances of the same element on one diagram
Post by: qwerty on October 14, 2017, 06:28:26 pm
Geert is right that there is no written limitation (though I think there should be one). In fact the UML specs itself use some diagrams where the same element appears more than once on the same diagram. IIRC this has been pointed out by sargasso. I can't recall which diagrams it were and I'm too lazy to find them once again.

q.

P.S. See http://www.sparxsystems.com/forums/smf/index.php/topic,38518.msg239381.html#msg239381 (http://www.sparxsystems.com/forums/smf/index.php/topic,38518.msg239381.html#msg239381)
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on October 16, 2017, 07:45:41 am
BTW what's the reason to have multiple items representing the same element on a diagram?

There is as much design that goes into a creating a view as goes into the underlying model.  There's a direct relationship between the number of times connectors cross and the difficulty in understanding what the view is trying to tell the viewer.

Sometimes you want the same element in different places on the page to untangle the birds nest.
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on October 16, 2017, 10:50:27 am
BTW what's the reason to have multiple items representing the same element on a diagram?

There is as much design that goes into a creating a view as goes into the underlying model.  There's a direct relationship between the number of times connectors cross and the difficulty in understanding what the view is trying to tell the viewer.

Sometimes you want the same element in different places on the page to untangle the birds nest.
You may also have views that have NO relationships visible but use with visual embedding or other similar techniques to indicate relationships.  In such cases, having multiple instances is appropriate.

One of the problems with UML is that (originally) it barely mentioned diagrams they weren't even third-class citizens, but undocumented illegal immigrants.   ;)  Since then, as Glassboy has pointed out, we have discovered that they are very productive members of the community. 

The issue for diagrams is that if printed out, you can't tell whether to objects on the diagram are the same object or two separate objects with the same name. 

The virtualised connector end goes some way to alleviating this since it is a formal mechanism for placing the doppelganger into the diagram.  Initially, the doppelganger was visually distinct (to the point where you couldn't tell it was the same thing!).  In later versions, increasing control over the visuals has been made available, but not enough.  What is actually needed is that a true doppelganger is as fully visually configurable as the master, but with a decoration to indicate that it is, in fact, a doppelganger.

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: sargasso on October 16, 2017, 06:46:16 pm
What is actually needed is that a true doppelganger is as fully visually configurable as the master, but with a decoration to indicate that it is, in fact, a doppelganger.

Sigh!
What would be nice is something we used in the early 1970's in data flow modelling and that is a duplicate icon for an element - if you senior practitioners remember it was a sort of an inverse of a UML note icon, a box with a filled in triangle in the bottom LHC or RHC - that represented "this element is some where else in this diagram" go see it for actual details.

The trick would be to be able to drag a link between  the original element and the "copyof" icon - this would not change the original link specs just where its geometry goes.

Bruce


b
Title: Re: Show several instances of the same element on one diagram
Post by: DavidM on September 04, 2018, 08:48:40 pm
I think this is quite a pragmatic question. Often I have been in the same situation where you have a large data model, where entities are miles apart, but you want to connect them, it would be easier to have a clone of one element (with an indicator if needed for the pure at heart) to create a cleaner diagram.

Same for UML class diagrams, same for ANY diagram come to mention it.

There is http://sparxsystems.com/enterprise_architect_user_guide/13.5/modeling_tools/virtual_routing.html but it is not perfect
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 05, 2018, 08:57:16 am
I agree that this need is very real and quite pragmatic. However, to Sargasso's subtle point, I don't see Sparx moving on this any time soon, probably not at all.

I imagine this constraint is buried so deep in the internals of the Sparx product that removing it would be a fundamental design change and (even if made) would likely break a whole range of other features based around the constraint. The virtual connector ends approach is clearly a kludge, possibly the best that can be done without making the fundamental design change required.
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on September 05, 2018, 09:43:37 am
I agree that this need is very real and quite pragmatic. However, to Sargasso's subtle point, I don't see Sparx moving on this any time soon, probably not at all.

I imagine this constraint is buried so deep in the internals of the Sparx product that removing it would be a fundamental design change and (even if made) would likely break a whole range of other features based around the constraint. The virtual connector ends approach is clearly a kludge, possibly the best that can be done without making the fundamental design change required.
They, Sparx, are ALMOST (as usual) already there!  The basic problem is that the Virtual Connector End is an actual object on the visible diagram.  You can select it, move it, make SOME changes to it.  BUT, it is NOT a real diagram object in the t_diagramobject table.  Consequently, you can't do the full gamut of rendering operations on it.

It isn't rocket science to be able to designate a real t_diagramobject as a VCE and so act accordingly.

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 05, 2018, 11:36:24 am
@Paolo you may well be right, perhaps there are just one or two more tweaks that are required to make it work in a sensible way.
My assumption was that they haven't taken / can't take those extra steps because of some deep underlying constraint.

Hopefully you're right and I'm wrong :-)
Either way there doesn't seem to have been any real progress from previous feature requests.  Maybe it's time to raise it again, formally ?
Title: Re: Show several instances of the same element on one diagram
Post by: Richard Freggi on September 05, 2018, 12:27:57 pm
What's wrong with my initial proposal.
If you want to have different instances of one classifier in a diagram, go ahead and knock yourself out
If you absolutely-positively must have same instances of one classifier in a diagram, create children of the classifier using generalization.  I's the same as using a placeholder / bookmark / virtual thingy but it's 100% UML compliant... no gimmicks needed.

This is really a UML question, not a tool question.  I don't think it makes sense in UML to have multiple instances of the same classifier in a diagram, and if absolutely-positively need to, the correct way to do it is with a generalization (duplicate element IS-A original element).  EA implements the UML standard correctly by not allowing 2 of same classifiers in a diagram. 

I'm pretty sure there's nothing in the UML specs that says you can't put an element on a diagram twice.
In fact UML says very little about what you can or can't do on diagram.

But I don't understand your point about generalization. If I wanted to put a an action on a diagram twice, how could generalization help me? I don't even think generalization is allowed between Actions.

Geert
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 05, 2018, 12:55:30 pm
Richard - for me the challenge is that we are using Archimate as well as UML.
From an Archimate perspective, there is no such thing as an instance (or alternatively an element is the instance depending on how you look at it).  The overhead and implications of creating children and generalisations make that quite messy, and breaks the model (in the sense that there are multiple things representing the same thing).

To be clear, I am sympathetic to the argument that whilst putting multiple elements on a diagram to handle layout challenges would be convenient, it's also a bit of a cop-out. However we have use cases where we genuinely need to represent the same element multiple times on Archimate diagrams due to the inherent structure of the type of diagram.  One example is 'box in box' diagrams of a hierarchy, with overlays of a different concept.  For example - a Capability Map (box in box) with an overlay of applications, projects, strategies etc  Usually the overlaid concept has elements associated with multiple capabilities, so needs to appear multiple times; the entire point of the diagram is to see where everything falls, how many for each capability, where there is overlap and duplication etc.
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 05, 2018, 02:03:16 pm
Richard - for me the challenge is that we are using Archimate as well as UML.
From an Archimate perspective, there is no such thing as an instance (or alternatively an element is the instance depending on how you look at it).  The overhead and implications of creating children and generalisations make that quite messy, and breaks the model (in the sense that there are multiple things representing the same thing).

That's a strange thing to say about ArchiMate.  Firstly because it doesn't have the generalisation relationship, but from a wider perspective the most practical way of modelling some architectures is to create an archetype and have elements that realise it.
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on September 05, 2018, 05:11:00 pm
[SNIP]
That's a strange thing to say about ArchiMate.  Firstly because it doesn't have the generalisation relationship, but from a wider perspective the most practical way of modelling some architectures is to create an archetype and have elements that realise it.
GB, it's a bit more complicated than that (and perhaps goes to your often voiced criticism of ArchiMate).  ArchiMate HAS a specialization relationship and (somewhat unthinkingly) I assumed Specialization => inverse Generalization.  Indeed we have so defined it in our MDG.  We, therefore, allow two forms of Specialization:  Inheritance and Restriction.

But (looking again), the Archimate 3.0 standard says:
5.4.1 Specialization Relationship
The specialization relationship indicates that an element is a particular kind of another element.
The specialization relationship has been inspired by the generalization relationship in UML class
diagrams but is applicable to specialize a wider range of concepts. The specialization
relationship can relate any instance of a concept with another instance of the same concept.
A specialization relationship is always allowed between two instances of the same element.
(my emphasis)
It looks as though the definition is our restriction, not inheritance.  Is that your reading?

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: Richard Freggi on September 05, 2018, 05:51:56 pm
Mixing Archimate and UML IN THE SAME MODEL is not a good idea IMHO.  Each has its place, but their metamodels don't play nice together, so.... good luck???

Richard - for me the challenge is that we are using Archimate as well as UML.
From an Archimate perspective, there is no such thing as an instance (or alternatively an element is the instance depending on how you look at it).  The overhead and implications of creating children and generalisations make that quite messy, and breaks the model (in the sense that there are multiple things representing the same thing).

To be clear, I am sympathetic to the argument that whilst putting multiple elements on a diagram to handle layout challenges would be convenient, it's also a bit of a cop-out. However we have use cases where we genuinely need to represent the same element multiple times on Archimate diagrams due to the inherent structure of the type of diagram.  One example is 'box in box' diagrams of a hierarchy, with overlays of a different concept.  For example - a Capability Map (box in box) with an overlay of applications, projects, strategies etc  Usually the overlaid concept has elements associated with multiple capabilities, so needs to appear multiple times; the entire point of the diagram is to see where everything falls, how many for each capability, where there is overlap and duplication etc.
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 06, 2018, 08:04:29 am
It looks as though the definition is our restriction, not inheritance.  Is that your reading?

Well I think you have to be careful to compare apples with apples.  ArchiMate is a notation and UML is a language.  In UML it's useful to talk about the language concepts and abstractions in a theoretical way.  With ArchiMate if you can't produce a viewpoint that conveys the same information to every viewer with symantec consistency you're just wasting everyone's time.

I can't think of a time where I wanted the same element on a view twice because mostly I either have the archetype view, the realised view, or ArchiMate just can't inherently produce the view I need*.

My reading of the ArchiMate specialisation is that it is a kludge and that you're applying more rigour to it than the ArchiMate authors.

* For example how do you show what a product is used for (and no this is not any of the motivation elements).
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on September 06, 2018, 10:00:36 am
It looks as though the definition is our restriction, not inheritance.  Is that your reading?
Well I think you have to be careful to compare apples with apples.  ArchiMate is a notation and UML is a language.
Surely a notation is a language or at least a rendering of a language?
Quote
In UML it's useful to talk about the language concepts and abstractions in a theoretical way.  With ArchiMate if you can't produce a viewpoint that conveys the same information to every viewer with semantic consistency you're just wasting everyone's time.
Surely that's true of any graphical language?
Quote
I can't think of a time where I wanted the same element on a view twice because mostly I either have the archetype view, the realised view, or ArchiMate just can't inherently produce the view I need*.
Well, we produce our own viewpoints (as required) and one in particular uses visual grouping to indicate relationships (without seeing the relationships - similar to visual embedding) if we are showing the relationship between (say) business functions and the systems that serve them, where a system serves more than one business function then it needs to be shown in two places on the same diagram. We now manage this with VCEs.
Quote
My reading of the ArchiMate specialisation is that it is a kludge and that you're applying more rigour to it than the ArchiMate authors.
Rigour is your friend! :)
Quote

* For example how do you show what a product is used for (and no this is not any of the motivation elements).
In the case of our MDG, we have (tried to) constructed a graphical language which provides as much rigour as is necessary and whose notation is sufficiently "ArchiMate" like to allow our new architects to "come on board" with as little friction as we can muster given the "foibles" of EA.

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 06, 2018, 01:46:07 pm
Mixing Archimate and UML IN THE SAME MODEL is not a good idea IMHO.  Each has its place, but their metamodels don't play nice together, so.... good luck???

Richard - I agree completely.  But the "IN THE SAME MODEL" are your words not mine.  We use both notations for different purposes within our practice - a fact which I mentioned only to clarify why we have difficulty with your initial proposal, which may (or may not) be appropriate for UML but is not effective for Archimate.

Richard - for me the challenge is that we are using Archimate as well as UML.
From an Archimate perspective, there is no such thing as an instance (or alternatively an element is the instance depending on how you look at it).  The overhead and implications of creating children and generalisations make that quite messy, and breaks the model (in the sense that there are multiple things representing the same thing).
That's a strange thing to say about ArchiMate.  Firstly because it doesn't have the generalisation relationship, but from a wider perspective the most practical way of modelling some architectures is to create an archetype and have elements that realise it.

Glassboy - I'm not sure from your comment what specifically you find strange ... ? The use of the work generalisation? I was couching my response in terms of Richard's suggestion which inherently relies on the concept of classes and instances (both supported explicitly by Sparx) which don't translate into Archimate; attempting to do so (using specialisation not generalisation as pointed out by Paolo) would be cumbersome at best.

I can't think of a time where I wanted the same element on a view twice because mostly I either have the archetype view, the realised view, or ArchiMate just can't inherently produce the view I need

... and Paolo and I have provided specific examples of when we have this need and which are completely valid Archimate, but which Sparc cannot produce.
(There are a vast plethora of features in Sparx that I have never used and likely will never need, just because I don't need them doesn't mean than no-one does)
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 09, 2018, 06:16:51 am
That's a strange thing to say about ArchiMate.  Firstly because it doesn't have the generalisation relationship, but from a wider perspective the most practical way of modelling some architectures is to create an archetype and have elements that realise it.

Glassboy - I'm not sure from your comment what specifically you find strange ... ? The use of the work generalisation? I was couching my response in terms of Richard's suggestion which inherently relies on the concept of classes and instances (both supported explicitly by Sparx) which don't translate into Archimate; attempting to do so (using specialisation not generalisation as pointed out by Paolo) would be cumbersome at best.

It's like you don't bother to read what people reply to you with.
Title: Re: Show several instances of the same element on one diagram
Post by: Sunshine on September 10, 2018, 06:12:35 am
Mixing Archimate and UML IN THE SAME MODEL is not a good idea IMHO.  Each has its place, but their metamodels don't play nice together, so.... good luck???

Well we use both ArchiMate, UML and BPMN together in harmony in the same model for different levels of abstraction required in doing both Enterprise Architecture and Solution Architecture. There are a few papers on using these three notations together and its not rocket science.
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 10, 2018, 08:44:21 am
It's like you don't bother to read what people reply to you with.

1) Communication is the responsibility of the communicator - if someone doesn't understand what you say, and so asks questions to clarify what you mean, then the fault is yours not theirs. If your response is going to simply be "you're not listening to me" then the value of discourse and the opportunity to really share knowledge is gone.

2) Pot. Kettle. Black.
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 10, 2018, 01:09:12 pm
It's like you don't bother to read what people reply to you with.

1) Communication is the responsibility of the communicator - if someone doesn't understand what you say, and so asks questions to clarify what you mean, then the fault is yours not theirs. If your response is going to simply be "you're not listening to me" then the value of discourse and the opportunity to really share knowledge is gone.

<sigh>  I'll repeat myself.

In ArchiMate the most practical method of modelling can be to model an archetype and then elements that realise the archetype.   
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 10, 2018, 04:11:22 pm
<sigh>  I'll repeat myself.

In ArchiMate the most practical method of modelling can be to model an archetype and then elements that realise the archetype.

Thank you for making the effort, and clarifying what specifically you found strange (I'll forgive the dramatics).
My interpretation of your comment is: even though there are not classes and instances in Archimate, the pattern of using an archetype with elements that realise that archetype can still be used. Hopefully that is the right interpretation, or close to right.

If I have understood your point then I certainly agree that it is a valid modelling pattern and can be used. Whether I have understood your point or not, I'd still assert that pattern isn't appropriate for all scenarios, and not for the specific ones that I have provided (in this thread and others);  and that there are genuine use cases for modelling when the most practical approach is to have the same element visualised on a diagram multiple times.

For a concrete example:
- I have an element, type Archimate Application Component, let's call it "SAP ERP" (in this sense "SAP ERP" is an instance of Application Component, but as stated earlier this is not useful in this context as the archimate meta-types aren't part of the model)
- This element realises (directly or indirectly) a number of Archimate Application Services, Business Processes, Business Services and Capabilities (again this is a different sense, these are not archetypes being realised)
- It so happens that "SAP ERP" realises multiple Capabilities and I wish to illustrate this in a diagram
- I could show "SAP ERP" and all the relevant Capabilities on a diagram with the connectors between them, however there are in fact multiple other Application Components i wish to show on the same view, so lots of arrows all over the place and no insights from the diagram
- Instead I choose to use block style (box in box) diagram of the Capabilities (Capability Map) and overlay all the Application Components on each of the relevant Capabilities they realise
- But I can't because I can only have one "SAP ERP" on the diagram.

Yes, I could create multiple Application Components, one for each of the Capabilities.  I could call each of them "SAP ERP" (or some variant), I could even establish a formal relationship between these and the 'real' "SAP ERP". Then I could place these all on the same diagram.  But these elements genuinely represent the same thing, their sole purpose is to make the diagram work - there is no value having them in the model.
Title: Re: Show several instances of the same element on one diagram
Post by: Sunshine on September 10, 2018, 05:06:21 pm
I've had this problem of showing several instances of the same archimate element on one diagram.
Originally I created this script to create multiple diagram elements pointing to the same element.
Code: [Select]
option explicit
 
'!INC Local Scripts.EAConstants-VBScript
 
'
' Script Name: Add Element to Diagram
' Purpose: This adds the currently selected element to the currently visible diagram
' Date: 11/08/2010
'
 
sub main
       Dim currentElement as EA.Element
       Set currentElement = Repository.GetTreeSelectedObject
       Dim currentDiagram as EA.Diagram
       Set currentDiagram = Repository.GetCurrentDiagram
       Dim diagramID
      
       if ( currentDiagram is Nothing ) then
              Session.Output("No Current Diagram Selected")
       else
              Session.Output("Adding " & currentElement.Name & " to " & currentDiagram.Name)
              diagramID = currentDiagram.DiagramID
              Repository.SaveDiagram(diagramID)
              Dim currentDiagramObject as EA.DiagramObject
              set currentDiagramObject = currentDiagram.DiagramObjects.AddNew("l=10;r=130;t=10;b=82", "")
              currentDiagramObject.ElementID = currentElement.ElementID
              currentDiagramObject.Update
              currentDiagram.DiagramObjects.Refresh
              currentDiagram.Update
             
              Repository.CloseDiagram(diagramID)
              Repository.OpenDiagram(diagramID)
       end if
end sub
Initially that worked but after a few Sparx EA versions later it didn't work so well.
So now I have resorted to creating an instance of the ArchiMate element similar to a UML instance of a class. I had to create stereotypes with shapescript for the instance so it looked like the ArchiMate element. I put all the instances of the ArchiMate element under the original in the project explorer. Seems to work but kind of a hack.
Title: Re: Show several instances of the same element on one diagram
Post by: Graham_Moir on September 10, 2018, 06:57:16 pm
<sigh>  I'll repeat myself.

In ArchiMate the most practical method of modelling can be to model an archetype and then elements that realise the archetype.

Thank you for making the effort, and clarifying what specifically you found strange (I'll forgive the dramatics).
My interpretation of your comment is: even though there are not classes and instances in Archimate, the pattern of using an archetype with elements that realise that archetype can still be used. Hopefully that is the right interpretation, or close to right.

If I have understood your point then I certainly agree that it is a valid modelling pattern and can be used. Whether I have understood your point or not, I'd still assert that pattern isn't appropriate for all scenarios, and not for the specific ones that I have provided (in this thread and others);  and that there are genuine use cases for modelling when the most practical approach is to have the same element visualised on a diagram multiple times.

For a concrete example:
- I have an element, type Archimate Application Component, let's call it "SAP ERP" (in this sense "SAP ERP" is an instance of Application Component, but as stated earlier this is not useful in this context as the archimate meta-types aren't part of the model)
- This element realises (directly or indirectly) a number of Archimate Application Services, Business Processes, Business Services and Capabilities (again this is a different sense, these are not archetypes being realised)
- It so happens that "SAP ERP" realises multiple Capabilities and I wish to illustrate this in a diagram
- I could show "SAP ERP" and all the relevant Capabilities on a diagram with the connectors between them, however there are in fact multiple other Application Components i wish to show on the same view, so lots of arrows all over the place and no insights from the diagram
- Instead I choose to use block style (box in box) diagram of the Capabilities (Capability Map) and overlay all the Application Components on each of the relevant Capabilities they realise
- But I can't because I can only have one "SAP ERP" on the diagram.

Yes, I could create multiple Application Components, one for each of the Capabilities.  I could call each of them "SAP ERP" (or some variant), I could even establish a formal relationship between these and the 'real' "SAP ERP". Then I could place these all on the same diagram.  But these elements genuinely represent the same thing, their sole purpose is to make the diagram work - there is no value having them in the model.

There is a workaround to this provided you are prepared to work bottom up and accept slightly more onerous maintenance and apply some extra structure to the project browser.

The approach is to create an individual capability-app component diagram for each capability and overlay the application components in the way you want on each of these diagrams.  Obviously this will work as you won't be trying to put an element on the same diagram twice. 

Then to present the consolidated diagram that you really want, create another diagram and insert/drag-drop the specific diagrams you've created as diagram frames.  Move them around to get the information where you want it.  This works quite well in my opinion, especially if you use the appearance options to remove the diagram frame borders.  The consolidated diagram then looks pretty much as if you've created it directly.  The consolidated diagram is also dynamic and so updates automatically should any of the lower level individual diagrams be changed. 
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 11, 2018, 07:50:40 am
Yes, I could create multiple Application Components, one for each of the Capabilities.  I could call each of them "SAP ERP" (or some variant), I could even establish a formal relationship between these and the 'real' "SAP ERP". Then I could place these all on the same diagram.  But these elements genuinely represent the same thing, their sole purpose is to make the diagram work - there is no value having them in the model.

You don't have a model or element problem, you have a viewpoint problem which is fairly typical with ArchiMate.  It also sounds like you are creating the SAP ERP archetype but you want to mix it with other archetypes.

I'd suggest two things.  Firstly the larger view may satisfy a desire you have but may not be the best communication tool.  Secondly don't start at that point.  See if you can create a number of A4 landscape views of the major application components and the application services they serve.  Once you have those print them all out and see if you can add application collaboration elements in a way that make sense.

Then and only then jump up to your wacky strategy level capabilities.  You might find that your capability map might be better as a mapping of capability to application function, or to technology function if you are consuming web services.  It will also allow you to include missing functions that are not being provided but are needed for the organisation to have the capability.
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on September 11, 2018, 09:52:24 am
Hi Glassboy,

You are correct, it is isn't a model or element problem, but a viewpoint problem.  However to solve the essential problem - how to show more than one rendering of an item on a diagram hasn't changed.  As I mentioned previously, Sparx has ALMOST solved the problem with the VCE.  With the VCE you can have as many "legitimate" copies of the original item on the same diagram as you need, you just can render them as though they were a real item.  Sparx just needs to give the VCE item a real existence in t_diagramobjects so that it can be rendered in an analogous way to the original item.

There are implementation issues, but I really don't think it's rocket science.

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 11, 2018, 10:45:30 am
You are correct, it is isn't a model or element problem, but a viewpoint problem.  However to solve the essential problem - how to show more than one rendering of an item on a diagram hasn't changed.

Sure but I'm yet to see any instance where it was really needed for ArchiMate, as all times I have seen someone claim they did they were creating a Frankenview.
Title: Re: Show several instances of the same element on one diagram
Post by: matthew.james on September 13, 2018, 03:49:48 pm
I'd suggest two things.  Firstly the larger view may satisfy a desire you have but may not be the best communication tool.  Secondly don't start at that point.  See if you can create a number of A4 landscape views of the major application components and the application services they serve.  Once you have those print them all out and see if you can add application collaboration elements in a way that make sense.

Then and only then jump up to your wacky strategy level capabilities.  You might find that your capability map might be better as a mapping of capability to application function, or to technology function if you are consuming web services.  It will also allow you to include missing functions that are not being provided but are needed for the organisation to have the capability.

Let's just say for the sake of the discussion that I have done those A4 views (full transparency, I have done some but not all) and, more importantly, have traceability from capabilities through business services & processes down to application services and the underlying components.  These are great to understand, analyse and discover impact - and architects love them.  But for other stakeholders they are often too abstract and too theoretical - they don't think in models, they understand what they can see and touch.  They understand capabilities, processes and applications / systems but they don't always 'get' what an application function or a business service is.

You don't have a model or element problem, you have a viewpoint problem which is fairly typical with ArchiMate.

That's a fair comment, and I will happily admit that I am stretching both Sparx and Archimate in my attempts to create views for a variety of stakeholders - architects and technicians but also a non-technical, executive audience.  My goal was to build a 'business friendly' set of views to communicate the implications of the current architecture, supported by the more detailed models.  I'll also admit that I have tried (and failed) to do this in the past with other tools and have always ended up needing to revert to providing a Visio / PowerPoint layer over the top due to various different limitations with the views achievable. Frustratingly I am very close to achieving what (I think) will work, but there are just that couple of limitations that make it not quite achievable.
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 14, 2018, 08:47:33 am
I'd suggest two things.  Firstly the larger view may satisfy a desire you have but may not be the best communication tool.  Secondly don't start at that point.  See if you can create a number of A4 landscape views of the major application components and the application services they serve.  Once you have those print them all out and see if you can add application collaboration elements in a way that make sense.

Then and only then jump up to your wacky strategy level capabilities.  You might find that your capability map might be better as a mapping of capability to application function, or to technology function if you are consuming web services.  It will also allow you to include missing functions that are not being provided but are needed for the organisation to have the capability.

Let's just say for the sake of the discussion that I have done those A4 views (full transparency, I have done some but not all) and, more importantly, have traceability from capabilities through business services & processes down to application services and the underlying components.  These are great to understand, analyse and discover impact - and architects love them.  But for other stakeholders they are often too abstract and too theoretical - they don't think in models, they understand what they can see and touch.  They understand capabilities, processes and applications / systems but they don't always 'get' what an application function or a business service is.

Yeah well what you are coming across is the fact that the claim that ArchiMate is an "enterprise architecture" notation is complete bullshit.  To get a sense just how incomplete it is have a look at the EBMM (http://motivationmodel.com/).  Nick left Microsoft and started his own company so the conversation we were having about the next version dried up (for example a business role may require a licence or a warrent which then traces back to a legislative edict).  But you can get a grasp from the ontology as it stands now, just how many gaps exist in ArchiMate (like modelling what people use products for).   

You don't have a model or element problem, you have a viewpoint problem which is fairly typical with ArchiMate.

That's a fair comment, and I will happily admit that I am stretching both Sparx and Archimate in my attempts to create views for a variety of stakeholders - architects and technicians but also a non-technical, executive audience.  My goal was to build a 'business friendly' set of views to communicate the implications of the current architecture, supported by the more detailed models.  I'll also admit that I have tried (and failed) to do this in the past with other tools and have always ended up needing to revert to providing a Visio / PowerPoint layer over the top due to various different limitations with the views achievable. Frustratingly I am very close to achieving what (I think) will work, but there are just that couple of limitations that make it not quite achievable.

The key at that level is less is more, especially in the structure elements.  Stick to only those "moving parts" that everyone knows about.  Make sure you have your detailed views to show when needed to illustrate you understand the environment (there are lots of shit architects out there that cause scepticism in business users).
Title: Re: Show several instances of the same element on one diagram
Post by: Paolo F Cantoni on September 14, 2018, 09:46:36 am
[SNIP]
... (there are lots of shit architects out there that cause scepticism in business users).
"in titulo, ergo sum" (with apologies to Rene)  (I am thus titled, therefore I must be)

Happy Friday everybody!

Paolo
Title: Re: Show several instances of the same element on one diagram
Post by: Glassboy on September 14, 2018, 11:40:41 am
"in titulo, ergo sum" (with apologies to Rene)
I like the Billy Bragg cover (https://www.youtube.com/watch?v=xgsrVZZ06Bc).