Book a Demo

Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Prev Next

Customizing the ArchiMate Language

Enterprise Architect provides a handy capability to customize language using its profile system, which is part of a sophisticated feature to create Model Driven Generation extensions to the tool. These extensions can be designed and built within the tool and the resulting technology can be imported into the tool making customizations available to Enterprise Architects and other repository users.

A typical usage scenario would be that a team might want to categorize their Application Portfolio based on a range of criteria and be able to analyze architectures based on the applications to answer questions like:

  • What are the set of technologies underpinning our mission critical systems
  • Which applications run on a Cloud platform
  • Which Business Capabilities would be compromised if Vendor A became insolvent

This would require the provision and maintenance of properties for each application. This can be done using the profile system where any number of properties can be added to an ArchiMate element or connector and the customized element can be added to custom Toolbox pages. The elements and connectors are then available to the architect for modeling and once the properties are populated with organization specific data, reports and visualizations can be created that use the properties.

In this diagram we see the customization of an ArchiMate Application Component as part of the creation of a profile. We see that the user-defined Application Component is a specialization of the standard ArchiMate element (indicated by the triangular arrow-headed relationship). We also see that the specialized element has a number of added properties such as Business Owner, Technical Owner and Deployment Type. These are user-defined properties and provide the mechanism for adding organization-specific information that will help in the analysis of an architecture to answer questions like those presented earlier.

Changing an Element's Shape

While the standard ArchiMate element shapes are important for communicating to audiences, there are situations where you might want to change the shape of an element that you have customized as part of a profile. For example, an organization is a vendor of 'Smart Phones' and wants to represent a product with an icon resembling the phone. Alternatively, an architect wants to represent a network using a Cloud as an alternative to a standard Technology element icon.

Changing Element Default Appearance

Enterprise Architect allows the appearance of elements in diagrams to be altered to suit the intended audience. When creating a profile and a customized element it is also possible to set its default appearance so when it is added to any diagram it will take on that appearance. For example you might want to use a different set of colors that has meaning in your architecture practice. This illustration shows the mechanism for setting the default color, font and other presentation options.

Changing Connector Default Appearance

Enterprise Architect allows the appearance of connectors in diagrams to be altered to suit the intended audience. When creating a profile and a customized connector it is also possible to set its default appearance so when it is added to any diagram it will take on that appearance. For example you might want to use a different set of colors that has meaning in your architecture practice. This illustration shows the mechanism for setting the default color, font and other presentation options.

Creating Proprietary Elements and Relationships

In addition to customizing existing ArchiMate elements as described earlier, it is possible to add completely new and proprietary elements and connectors, as long as they don't have any conflicting or obstructing meaning with respect to the corpus of ArchiMate elements and customizations. An example of this is in the Security Architecture Domain, where an architect might want to have an element that represents a Security Policy.