Templates allow importing predefined types called Item Templates. They are used to facilitate the creation of instances of objects having a specific icon and the metadata. This allows fast creation of common objects, like Web Applications or SQL Databases.
Threats Manager Studio (TMS) supports multiple types of Item Templates:
- External Interactor Templates
- Process Templates
- Data Store Templates
- Flow Templates
- Trust Boundary Templates
The first three are collectively identified as Entity Templates and have some common characteristics, including the possibility to have an assigned image.
There are two ways to create objects from a specific Template: by using the Item Templates palette, or by changing the assigned template on the fly. Most types of Item Templates support both approaches. The only exception is represented by the Flow Templates, which are not available from the Item Templates palette.
The Item Templates palette is available in the Diagram tool and allows listing all the available Item Templates. To use it, you simply have to choose the desired type of Item Template and click the Refresh button. Then, you have to drag and drop the Template to the Drawing Pane: this will create a new instance associated to the selected Item Template.
The second approach instead consists in selecting an object in the Diagram or in the specific List, opening the context menu by clicking on it with the right mouse button, and then selecting Change Template from the list.
This will open the Change Template dialog, which shows the available templates and allows to convert the selected object to one of them.
Item Templates can be created at any time from existing Entities, Trust Boundaries and Flows, by using action Derive Template from the context menu opened with the right mouse button over the object to be used as a reference for the new Item Template.
It is also possible to import Item Templates as part of some knowledgebases included in Templates.
The list of all Item Templates defined in the Threat Model is available within the Item Template List.