[Help-Modeling] Flow

Started by Nicolas, December 17, 2024, 13:36:39 PM

Previous topic - Next topic

Nicolas

Hello,
I'm beginning to work on some complex modeling...

In brief:
How can I illustrate the flow between two applications that a user is performing with a specific file type?

In detail:
Let's say I have Excel and ArchiMate. I want to represent the process of importing data from an Excel file into ArchiMate using a specific arrangement of CSV files, which is an extended version of the CSV file type.


Thanks in advance for any help

Xiaoqi

Hi Nicolas,

If my understanding is correct, you want to model the information transfer relationship between two applications.

In my modeling practice, the first suggestion is: keep it as simple as possible in the beginning, as long as that can be understood by your talking partner.

So, as attached two options --

The "flow-1" is simpler, before you may have inside "function" or "modules" information, keep just using ApplicationComponent would provide you quite flexibility on variable relations, then one app called "Excel Source", the other called "ArchiMate Model", and I prefer to just use "Name" property over the FlowRelation to indicate "CSV", this is able to tell the level 1 story already:

flow-1.png

Then "flow-2" tries to reflect your "specific" / "extended" wording, if there's some special treatment to your standard Excel Source application, and sometimes your team develop certain additional code (or adaptor) to handle the conversion, then you may consider to add one ApplicationInterface layer, and illustrate that part of function, while to be easier communicate, I suggest you use Grouping to show your application (now the bigger meaning) boundary, again, a FlowRelation with Name="CSV" is sufficient:

flow-2.png

For sure, you may also use either Business Layer or Technology Layer to show those. (p.s. in coming ArchiMate 3.2, notations are to be simplified, looking forward.)

Hope this bring some hints to you, good luck!
Xiaoqi

romuald

Capture d’écran 2024-12-18 100608.png

I like to modelize flow like this. A mixe with Flow1 and Flow2. It allow you to keep the flow between the two components but also to see the interface.

Nicolas

I like both of your approach but I'm still getting an issue with both.
We don't see that is somebody doing it, compared to an automated data transfert.

For instance, how would you differenciate between these scenarios :
- Excel write a CSV File, somebody send it into Archimate
- Excel write a CSV File, Archimate automatically pull this CSV (no human intervention)
- Archimate request a CSV file to Excel, Excel make it and Archimate read it

romuald

somebody send it into Archimate : You can always use my approach and put the actor in place of the interface

rchevallier

Archimate is very flexible about what you want to express. There are many ways to express ideas, according to the details and meaning you want to convey in your message.
For instance I could modelize like below:

Example.png

Alberto

#6
QuoteFor instance, how would you differenciate between these scenarios :
- Excel write a CSV File, somebody send it into Archimate
- Excel write a CSV File, Archimate automatically pull this CSV (no human intervention)

Perhaps by combining Business and Application layers?  Since the active entities in the business layer are the subjects (e.g., business actors or business roles) that perform behavior such as business processes.  I would model it like this:



This could be exploded with more detail if needed. (green relationships are derived when red elements abstracted away)


Nicolas

Quote from: rchevallier on December 18, 2024, 16:51:35 PMArchimate is very flexible about what you want to express. There are many ways to express ideas, according to the details and meaning you want to convey in your message
I'm not entirely satisfied with this statement. My vision for Archi is to have a standard where a process description is always modeled consistently, ensuring uniformity across different models. I'm unsure whether the creators of Archi intend it to be a consistent modeling language or a fully flexible one. However, I appreciate the way you've modeled things; it's easy to understand while retaining sufficient detail.


Nicolas

Quote from: Alberto on December 18, 2024, 17:24:29 PM
QuoteFor instance, how would you differenciate between these scenarios :
- Excel write a CSV File, somebody send it into Archimate
- Excel write a CSV File, Archimate automatically pull this CSV (no human intervention)

Perhaps by combining Business and Application layers?  Since the active entities in the business layer are the subjects (e.g., business actors or business roles) that perform behavior such as business processes.  I would model it like this:



This could be exploded with more detail if needed. (green relationships are derived when red elements abstracted away)




I like how you mix different layers, however the other two representations are a bit too detailed for me.

rchevallier

Quote from: Nicolas on December 23, 2024, 08:59:04 AMMy vision for Archi is to have a standard where a process description is always modeled consistently, ensuring uniformity across different models.

IMHO, Archimate is not UML or SysML, it's a graphical language for communication between humans, not to create an unambiguous executable specification. As any human language, you express your ideas differently according to the information you want to convey and the level of details you need.

However, you may locally decide how to represent specific patterns to insure representation uniformity in your models.