Sparx Systems Forum

Enterprise Architect => Bugs and Issues => Topic started by: Ron Beernink on November 16, 2020, 02:44:10 pm

Title: Flow relationship changes to double arrow when adding an information item
Post by: Ron Beernink on November 16, 2020, 02:44:10 pm
Why does Sparx EA change the Archimate "Flow" relationship line from a single arrow to a double arrow when I add an information item?   Having the double arrow does not add any value and makes for a more messy diagram!

This happens when I right click on the line and select Advanced-->Information Flows Realized.. from the context menu, and select or create an business object or application data element; see example below
https://drive.google.com/file/d/1Usw8nHRccRAcgJxR0o8fG2YXgjJPCWJ0/view?usp=sharing (https://drive.google.com/file/d/1Usw8nHRccRAcgJxR0o8fG2YXgjJPCWJ0/view?usp=sharing)
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: KP on November 16, 2020, 03:09:21 pm
You are mixing your notations, adding a UML construct (information flow/information item) to an ArchiMate relationship. I believe the ArchiMate solution to what you want to do is to add the payload element (e.g. Business Object) to the diagram and then draw an Association from Business Object to the Flow connector.
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Sunshine on November 16, 2020, 04:31:49 pm
You are mixing your notations, adding a UML construct (information flow/information item) to an ArchiMate relationship. I believe the ArchiMate solution to what you want to do is to add the payload element (e.g. Business Object) to the diagram and then draw an Association from Business Object to the Flow connector.
Yes indeed you are right KP except between two application components it would be a data object as that is used at the application layer and business objects are used in the business layer.

See some examples in figure 53 in ArchiMate Cookbook
http://www.hosiaisluoma.fi/ArchiMate-Cookbook.pdf (http://www.hosiaisluoma.fi/ArchiMate-Cookbook.pdf)
or 3rd diagram in this blog
https://bizzdesign.com/blog/practical-archimate-viewpoints-for-the-application-layer/ (https://bizzdesign.com/blog/practical-archimate-viewpoints-for-the-application-layer/)

You can also have a flow between two application components and simply name the flow instead of having a data object. IIRC it was called the Application Cooperation  viewpoint. Here is an example but without the flows being named.
https://sparxsystems.com/resources/tutorials/archimate/index.html#Application-Cooperation-Viewpoint (https://sparxsystems.com/resources/tutorials/archimate/index.html#Application-Cooperation-Viewpoint)

The older ArchiMate Specs 1.0 to 2.1 if I recall correctly used to have examples of view points but they appear to have taken them out of the latest spec. Hinkelmann has these original viewpoints as part of his lectures.
http://knut.hinkelmann.ch/lectures/EA2012/EA_4b_ArchiMate_Views_and_Viewpoints.pdf (http://knut.hinkelmann.ch/lectures/EA2012/EA_4b_ArchiMate_Views_and_Viewpoints.pdf)

I guess at some point you may want more detail down to attributes describing what that flow consists of in which case you may use a UML class diagram with attributes. Marc Lankhorst talks about mixing notations for modelling different levels of detail in his book and on his blog as he recognises that ArchiMate doesn't have attributes for data objects.
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Thelonius on November 17, 2020, 10:45:46 am
You can also have a flow between two application components and simply name the flow instead of having a data object.

This is what we do a lot of...
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Sunshine on November 17, 2020, 05:15:57 pm
You can also have a flow between two application components and simply name the flow instead of having a data object.

This is what we do a lot of...
#MeToo
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Ron Beernink on January 13, 2021, 09:27:23 am
I finally got around to looking at the replies.   Thanks for these.   Unfortunately it doesn't answer my concern
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Eve on January 13, 2021, 12:15:05 pm
I am not using UML and sticking to Archimate, so that doesn't explain why Sparx changes the line style to a double arrow when I associate a data object to the information flow
As soon as you use Information Flows Realized you're using UML. ArchiMate doesn't have that concept.

What you are appear to be seeing (without me looking at anything other than your image) is that EA has drawn the ArchiMate connector, then added the UML indicator for information flows on top. I doubt that the shape script even has a way to detect information flows, let alone a way to customize it.
Title: Re: Flow relationship changes to double arrow when adding an information item
Post by: Ron Beernink on January 21, 2021, 07:32:30 am
I am not using UML and sticking to Archimate, so that doesn't explain why Sparx changes the line style to a double arrow when I associate a data object to the information flow
As soon as you use Information Flows Realized you're using UML. ArchiMate doesn't have that concept.

What you are appear to be seeing (without me looking at anything other than your image) is that EA has drawn the ArchiMate connector, then added the UML indicator for information flows on top. I doubt that the shape script even has a way to detect information flows, let alone a way to customize it.
This is interesting.  So if I create an Archimate Flow Relationship, I can add a description but not define for what specific objects the flow realises?   Trouble is that descriptions are little use when reporting on your model.  So what is the best way to model what objects are associated with what information flows if this can't be done in Archimate-compliant way?  I'm guessing that using the Common "Information Flow" Relationship may be the answer.
(https://drive.google.com/file/d/17t-8XvATQ8VBYY5OmT2_OlRKcyE5Q5A0/view?usp=sharing)