Thelonius,
I would have thought UML would be quite devoted to defining how complex systems can be structured to confom with class models.
My understanding that the paper actually proposes to model real system (or enterprise) and their parts (subsystem) as instances of classifiers - i.e as objects (instances of classes) in object diagram, and to do such modeling in parallel with building of domain model consisting of the classes of the objects.
Though such approach is one from obvious UML use cases, for some reason I have not come across descriptions of practical application of the method (apart from the paper referenced earlier and a few of other papers by the same authors written back in the end 90x and beginning of the millennium).
On the other hand, we observe efforts to achieve similar goals with profile based UML extensions like SysML and now with Archimate. The latter one is not mentioned as an extension of UML, but it is obvious that UML tool vendors utilize UML profile mechanism to get ArchiMate implemented.
In reading all the stuff I can about Archimate - I have not yet found a really cogent explanation that tells me "Well, you could use basic UML to achieve the same thing that you can model with Archimate - BUT HERE'S WHY USING ARCHIMATE IS BETTER."
This is actually the question I want to find answers to as well. what's wrong with UML that we need yet another modelling language? but I ask the same question in a wider context: not only why can't we use UML for EA modelling, but why can't we use UML for system modeling or business process modelling?
One from answers I am reading in Marc Lankhorst's at al. "Enterprise Architecture at Work" - the founding book on ArchiMate from language authors.
"The ArchiMate approach can be contrasted with he original approach in UML, which we describe in Chap. 2. In this approach, semantics was explicitly left out of the program. People who used the models could develop semantics for them, but a general semantics was not supplied. This approach stemmed from the origins of UML as a combination of three existing notations that did not have formal semantics. Hence, the focus of UML was and is on notation, i.e, syntax, and not on semantics. Although some of the diagrams of the more recent versions of UML have a formal semantics (see, e.g., the token-based Petrinet-like semantics of activity diagrams in UML 2.0), there is no overall semantics for the entire language.
We have taken a the opposite approach. We do not put the notation of the ArchiMate language central, but rather focus on the meaning of the language concepts and their relations. Of course, any modelling language needs a notation and we do supply a standard way of depicting the ArchiMate concepts, but this is subordinate to the architectural semantics of the language".
Because UML is largely semantic-less, the modeler is in charge for defining of semantic for the notation he uses in his models.. Returning to the UML vs Archimate question - nothing prevents an architect to use ArchiMate semantics with UML notation. Additionally, the notation can be extended with UML profile based extensions to be ArchiMate compatible (and I guess, this is what Sparx has actually done to implement ArchiMate in EA).
The same can be done DIY, but such a move, comes at a cost that an architect needs to spend a lot of time defining semantics (if no Arhimate used), mapping semantics to notation, communicating concepts to his audience.
As a conclusion:
(1) Major value of Archimate is in semantics it defines. Understanding and common understanding of semantic is the hardest part in any more or less substantial modelling effort, and ArchiMate seems well-suited to help solving of the issue in the field of EA.
(2) It provides cross domain mapping of concepts, which no other language had in scope so far;
(3) As ArchiMare is being standardized (OMG plans & actions) and eventually (at this stage 50/50, but I would bet it will happen) it will lead to adoption of the language on larger scale with all benefits of standardization to follow (focused attention of best brains in the field, availability of tools & skills, overall growth of importance of EA as a discipline).
(4) The alternative to ArchiMate is to use UML notation instead of ArchiMate with ArchiMate semantics, but this case involves getting some DIY job done to define the mapping b/w notation & ArchiMate semantics, which at least takes time.. and if UML & ArchiMate are available as a part of the same tool in my organization, I think it make very little sense not to use ArchiMate.
By advocating ArchiMate, seems I contradict to my yesterday's statement, but should note this because ArchiMate is not directly applicable to the kind of modelling I need to do right now, which is more software system bottom-up modelling in 1 domain or maybe 1.5 domains, rather than EA modelling in 3 domains (business, appl/data, technology).