Over the years I have changed my opinion about what an Enterprise Architecture Meta model should contain.
Different organisations also have different names for their favourite concepts and different definitions which can often be confusing.
There is still some way to go but now that the Open Group has adopted ArchiMate and also published it's own meta model in TOGAF 9, the best practice meta model is getting a bit closer.
In anticipation of the future version 9.1 of TOGAF, which should fully integrate the ArchiMate meta model, I have been looking at the ArchiMate and TOGAF 9 meta models in detail.
Extended Archimate Meta Model
To me the ArchiMate meta model (shown with a simple view and a detail view on the top right) has a real clarity about it.
I especially like the distinction between the different kinds of Service:
- Business Services
- Organisation Services
- Application Services
- Infrastructure Services
These always make sense to my clients as well.
However I do often make some adjustments to the ArchiMate meta model (shown below).
Extended TOGAF9 Meta Model
It's great to finally see a meta model published with TOGAF 9.
However for me the centrality of Business Service concept seems a bit wrong somehow.
In some TOGAF 9 diagrams there is a confusion between Business Service and Application Service (see Figure: Core Entities and their Relationships).
It would be clearer to have a Service concept with various subtypes of Service like ArchiMate has.
There is also a confusion in TOGAF 9 with the concept Function.
Again ArchiMate is clearer and distinguishes between a Business Function and an Application Function.
In TOGAF 9 there is much discussion of Capability, but in the meta model this concept seems to hang on it's own somewhat.
For many users a Business Function and a Business Capability are much the same concept and cross cut with the concept of Business Process.
The Business Capability needs to be more central to the TOGAF 9 meta model, and be strongly related to the Organisation Unit concept.
Another area where the TOGAF 9 meta model is slightly confused is with the Actor and Role concepts.
To me the Actor is a Role. maybe it's a hang over from UML?
Or is an Actor another name for an Organisation Unit? It's just not clear enough.
Why not use the classic Party pattern instead and just distinguish between Party, Organisation Unit, Person and Role concepts.
A paper on the Party Pattern
In addition I am working on a meta model based on ArchiMate, that combines the concepts from the TOGAF9, SAE, FEA meta models etc.
This is currently a work in progress model being developed in Sparxsystems Enterprise Architect
Tool specific Meta Models
Other meta models