Mastering ArchiMate

How does the API-economy differ from the SOA approach of the past? An ArchiMate answer.

These days, there is a lot of talk about the ‘API Economy’: a world filled with systems providing services to other systems using (above all RESTful) services. It would be easy to miss the fact that this isn’t new at all. It used to be called ‘Service Oriented Architecture’ (SOA). That these are the same becomes rather clear when you try to model it in ArchiMate.In ArchiMate, the active element is ultimately modeled separately from the behavior it performs. Yes, you can leave out the details, but if you don’t, you get this picture [Updated May 4 2017 to make it easier for non-ArchiMate users to understand System X is not a user but a provider of API/Service]:

System X’s API/Service is used by System Y. As the original picture without the using system led to misunderstanding, I’ve explicitly added the using system Y. For those unfamiliar with ArchiMate, the open arrow denotes ‘Serving’ (or previously ‘Used-By’ and runs from the (API/Service) provider to the (API/Service) user. This can be different from what you are used to in other modelling environments.

The ‘API Economy’ story focuses on the interface. The ‘SOA’ story focuses on the service. But a small ArchiMate diagram shows that — in ArchiMate at least — these are two sides of the same coin. Again: the (AP) Interface is the active element that performs the Service behaviour.

Don’t get me wrong: There is real value in a service-oriented architecture/API approach. But it is also true that SOA was once hailed as the solution for about everything and API has all signs of being marketed in the same way. In ArchiMate at least, we can show that they are the same. So, don’t get burned (again) by the hype, but realise the value without ignoring the limitations.