Using Services or Interface?

133 views
Skip to first unread message

Rick Walsh

unread,
Apr 14, 2020, 6:57:09 AM4/14/20
to ArchiMate
I have an application A component which is assigned to a function which realises service A. Application component has an API which is assigned to the service.

In my model I have application component B which makes use of the first applications API.

So I could model it as:
1) application B using application A's API 
2) application B using Application A's service

Both seem valid?



Kalin Maldjanski

unread,
Apr 16, 2020, 5:09:19 AM4/16/20
to ArchiMate
Both are valid ! 

It really depends on what you want to show there. In fact App B using Function A and App A are also valid.

You don't need to model all that can be modelled, but what you actually need to express. Essentially when you have a Service it can be concluded that there is an Interface which exposes it, but it might not be relevant, also when you have an Interface there should be a Service that it exposes, but we might not need to represent it in our model.

You can also have multiple services exposed by the same interface or multiple interfaces(Rest API, SOAP, RPC, FTP) exposing the same service.

Interface is a structure element while Service is behaviour element. If you want to show structure dependencies you can use the Interface. On the other hand if you want to show specific behaviour abstracting from the specific way it is exposed and consumed you can use the service.

For example when you need to show it to the developers, API or Security guys they are interested in the structural relationships between components - how they interact and how secure are they and do not care too much what functionality they perform. If you discuss with analysts, product owners they are much more interested in the exposed functionality and where is it used rather than how exactly the components communicate.

I also tend to relate swagger, WSDL, etc to the interface and Functional documentation to the service.

Hope this helps.

What is your case actually?

Cheers,
K

Mastering ArchiMate

unread,
Apr 16, 2020, 8:56:25 AM4/16/20
to ArchiMate
Forgot to also send this to the group Tuesday.
Yes, both are valid.

1. is the structural side, it is a direct relation.
2. is still in ArchiMate 3.1 as a direct relationship (3.1 Standard 9.1). This was introduced in ArchiMate 2 when the Assignment relation lost its bidirectionality, and it stayed in ArchiMate 3.1 even if it is now a valid derivation (3.1 Standard B.2.2).

G





--
You received this message because you are subscribed to the Google Groups "ArchiMate" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-archimate-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/open-archimate-forum/48a5d51f-69fc-4a36-915b-2a16bf337548%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages