ArchiMate language customization in Archi - archimatetool/archi GitHub Wiki

ArchiMate defines several ways to extend the language. These are explained in the chapter "Language Customization Mechanisms".

Language customization is not possible in Archi, but there are some ways to achieve something similar.

For profiles, you can use a naming convention that prefixes the "profile name" to your properties name. For example if you want a profile named "Cost" that contains two properties "build cost" and "run cost", then you can use the following properties: "Cost:Build cost" and "Cost:Run cost". By doing so it will then be easier to add needed properties in one go using the "New multiple..." feature of the properties's panel (see manual on page 65) as they will be listed by alphabetical order. Note that using the "Manage" feature (same page in the manual) you'll be able to rename them if needed in one operation. Of course if you later decide to add another property in the profile, you'll have to add it manually on all elements where the other properties appear. This can be done automatically, but you can use the search feature (see page 14 of the manual) to quickly find elements that already have the "profile" applied (ie. elements that have one of its properties).

For stereotypes, a first step can be done by simply adding a property named "Stereotype" (the value being the name of the stereotype). This allows you to quickly find elements that have this stereotype applied. If you want to associate a profile to this stereotype, then you'll have to add manually the properties as explained previously.

Of course, doing so manually can be time consuming, but another trick can help: pattern based modelling. In this case, instead of created full patterns, you simply create preconfigured "stereotypes" with all properties set. with this trick you will be able to quicly add a new elements.

You can also combine those tricks with the use of Herve's great plugins: Form and Specialization (which name is a bit confuising though as this is not ArchiMate specialization). The form plugin allows you create forms to set properties value in a simple and very effective way. The specialization plugin allows you to change label and icon of an element added to view. So you can, for example, set the label to a concatenation of the elemet name and the value of the Specialization property to achieve something like "ElementName <>".