AutoFOCUS provides three different ways to model attributes of model elements. The propose of this section is to give a general overview on these attribute specification mechanisms, and to briefly introduce the corresponding graphical views. A detailed description of the individual attributes can be found in the respective help topics that describe the corresponding part of AutoFOCUS3 meta-model, and/or the tool features that process these attributes.
In the following, the different ways and the associated views will be described based on the simple component architecture shown below.
The example is restricted to the attributes contributed by the component architecture plugin, i.e. Eclipse plugin implementing the logical component architecture. It should be noted that other plugins will contribute further attributes for Components.
The following properties are always available (in the General tab) for any model element type (i.e., not restricted to Components:
Furthermore, the Internal tab provides access to internal data structures that are usually not relevant for the user.
Specific plugins can contribute further properties (either embedded into an existing tab, or in a dedicated tab). In the example, the component architecture plugin, contributes the following properties to any to any logical component:
Specifications are attributes that can optionally be added by the user to a model element that is compatible with the respective specification type. Hence, model element specifications are offered in the model elements library and can be attached to a model element using drag&drop.
The specifications of a model element are indicated in the Model Navigator. A double-click on these specifications opens an editor dedicated to the respective specification type.
In the example, Component1 has the following specifications:
In the Annotation View, each model element is represented as a row. The row for the model element that is currently selected in the associated model diagram editor is highlighted with a green background.
The view's columns represent the annotations that are associated with the respective model element. Here, the following three cases can be distinguished:
Like the Properties View, the Annotation View provides the following two annotations for any model element.
In fact, the Name and Comment annotations provide an alternative way to access the corresponding properties.
Again, different plugins may contribute annotations to different model element types. In the example, the component architecture plugin contributes the following two annotations to Components:
It can be seen that the memory annotations are not contributed to the Output port (grey cell).
At the bottom, the Annotation View provides a number of row and column filters.
Here, the following row filters can be used to restrict the set of model elements that is shown in the view:
The following column filters can be used to restrict the set of annotations that is shown in the view: