7 years, 7 months ago

Show Me the Metamodel

I just need to know the metamodel.

That is a common request from users for the variety of metamodels deployed out of the box with System Architect. What is your DIV-1 and DIV-2 for DoDAF 2? What is your metamodel for TOGAF 9? What is your metamodel mapping for your SA-DOORS integration? Here’s one that I’ve had recently – what is the metamodel mapping of System Architect to Focal Point (to bring the architecture into that tool for decision analysis)? At its basic level, Focal Point has Workspaces, Modules, Attributes, Views, and Elements; System Architect has Encyclopedias, Workspaces, Diagrams, Definitions, and Symbols. How do the two relate?

Be Sure You’re Talking On the Same Metamodel Level

There are various levels of metamodels and its important to make sure you are speaking at the right level. For example, although System Architect’s tool metamodel can be thought of as Encyclopedias, Workspaces, Diagrams, Definitions, and Symbols, those are just vehicles to represent the metamodel of the framework you use to capture data – definitions and their properties (or attributes), and relationships between definitions. For example, in TOGAF, to model that a Business Process is performed by an Application that resides on a Server at a Location, you can take a look at that metamodel – specifically that a Process has a many-to-many relationship to an Application Component (of Physical type) that has a many-to-many relationship to a Technology Component (of Physical type) that has a many-to-many relationship to a Location. What’s more, the relationships have names, and there may be more than one relationship between two elements.

Metamodel Me This Batman

Architects speak in metamodel language. Ask an enterprise architect to customize the metamodel to capture information specific to an organization, the first thing they do is build a logical entity relation diagram. The most important feature of an architecture tool is customization of that metamodel, to the depth and breadth necessary to capture information about the organization when harvesting it from various sources of record, whether that be importing an Excel spreadsheet of IT assets or applications, using a tool like Tivoli to sniff the network, importing documents of requirements or strategic intent information, etc. Customization means not just addition of a few attributes to an existing definition, but ability to add new definition types, new hierarchies of information, new relationships, constraints on relationships, new diagram types even. This is where System Architect sings above all other products in the industry and why it has been so successful for enterprise architects. It addresses this most core need of architects better than any tool on the market.

 The Answer

The answer to the question you might have formed in your mind when reading the first paragraph, by the way, is that a DIV-1 is DoDAF 2’s abbreviation for Data Information Viewpoint number 1 – the conceptual data model, and DIV number 2 – the logical data model. With DoDAF 2 in System Architect, we support the DoDAF 2 metamodel directly in the tool; no mapping. So if you go to the DoDAF 2 journal  and view the DoDAF 2.01 metamodel, and then view ours, you’ll see essentially the same thing.

DoDAF 2.0 Metamodel for Activities as Implemented in System Architect

DoDAF 2.0 Metamodel for Activities as Implemented in System Architect

Our development team (kudos to Mark Gregory and Ian Hancock) used System Architect’s new GUI for building metamodels in the tool, to build out the DoDAF 2 metamodel in System Architect, and then generated the “SAPROPS” code for that metamodel. They used Explorer diagrams to visually represent that metamodel in a kind of Entity Relationship view, and we published that in our help. We’ve had several customers thank us for this. Because for years they’ve been telling us, “I just need to know the metamodel.” The encyclopedia is available for download and viewing here.

I will reveal to you the SA-Focal Point high-level metamodel mapping in an upcoming blog post. Stay tuned!