Once you have created your initial model (see Define a new Architecture Model) you need to define your Layers, Sets and Dependencies - i.e. the actual structure (architecture) of the application you are targeting. This section explains the how to get started. See the Glossary for a description of Layers, Sets etc.
Create a Layer or Set
To create a new layer or set:
Right click in white space in the Main window (Model tab) and select the New layer or new set option as appropriate. A Properties dialog box will be displayed enabling you to enter a name for the layer/set. Ensure the Data set type drop down list is set correctly:
Click OK. The new layer or set will appear in the Main window (Model tab):
To begin configuring your layer, see Define Layer or Set Contents
Create a dependency
To create a dependency between two layers, click on a Layer in the Main window (Model tab). When the Layer is highlighted, you can then drag the mouse to the destination Layer and drop to create the dependency, as shown on the screenshot below:
Click to enlarge
Dependencies will be coloured as follows:
- GREEN - for dependencies between Layers or Sets when you have chosen an "authorized" Architecture Model type
- RED - for dependencies between Layers or Sets when you have chosen a "forbidden" Architecture Model type See Define a new Architecture Model for more information about the model type.
Once the dependency is created you can further configure it by defining the type of links between the two layers that are authorized/forbidden (depending on your model type - see Define a new Architecture Model). Right click the dependency (i.e. the red or green arrow) and select Properties. A dialog box will then be displayed enabling you to choose the link types that are relevant (you can choose more than one):
Click OK to complete the configuration. The link types will be displayed together with the dependency:
- Dependency direction is indicated by the arrow head.
- Layers can depend on each other, therefore you can define dependencies in both directions between two layers.
- You can delete Dependencies by right clicking the dependency and selecting Remove.
- The definition of a link type is useful if you specifically want to check that links between objects don't violate your model. For example if your model type is checking "Authorized" dependencies (see Define a new Architecture Model) and you define a dependency between two layers with a Read link type, this means that any other link types that exist between the two layers will be flagged as a violation when you use the Check model option.
- It is not mandatory to define a link type for a dependency. In this case any dependency between objects in the two layers will be considered.
- You can allow a layer to call any layer and be called by any layer - see Using the calls any or called by any layer option.