Features / Overview of the TRAK Metamodel
The TRAK Metamodel provides the tuples that are used to describe the things that appear in TRAK Views (each of which is specified by a TRAK Viewpoint - see the TRAK Viewpoints project site).
A tuple is formed from one or more triples, each consisting of either one or two node or block elements and a single connector or relationship element e.g.
triples:
- Threat (synonym Hazard) exploits Vulnerability
- Role requires Competence
- Requirement has part Requirement - to describe a requirement structure / hierarchy
More complex statements - architecture description tuples - assertions or sentences can be formed by chaining triples together:
- Role requires Competence to conduct Function
- Resource performs Function poses Threat exploits Vulnerability results in Risk with
- (a different) Resource exposed to (same) Risk - TRAK allows you to describe both the thing causing the Threat and the thing impacted by the vulnerability to that threat.
- Evidence supports Argument supports Claim about Architecture Description Element and possibly hence
- Evidence proves Claim about Architecture Description Element
Metamodel Characteristics
The TRAK Metamodel :-
- is agnostic of any software notation - it is solution-independent
- it defines what is required in terms of blocks, connectors, tuples and properties not how to implement them in a notation or architecture description language (ADL) such as the UML or the SysML etc.
- defines a set of assertions or statements (approximately 900 possible assertions)
- in english language
- that can be read without needing to understand technical notations
- that form paths or routes or indeed "sentences", that
- can be chained together e.g. Organisation makes Claim about Role requires Competence to conduct Function, Job plays Role extends to System
- can be used to derive meaning
- can be used to to check consistency of the view or architecture description content
- support queries to check or produce artefacts such as compliance matrices, interface definition etc.
- provides a rich structured language to describe systems (configured with people and technology) and their context in the" Residual World"
Parts of the TRAK Metamodel
The fundamental defining part of an metamodel is a triple - a combination of node - connector - node e.g. Claim about Standard.
A metamodel is different and distinct from an ontology or a taxonomy in this respect - more details.
The TRAK metamodel is neither an ontology nor a taxonomy but it does contain both an ontology and also a taxonomy.
The individual bits - each node element, each connector element, each property and each value are described as part of an ontology description using OWL and RDF. This is not a metamodel description - no ontology description describes the triples that define the metamodel.
Some short descriptions of parts of the TRAK metamodel are provided by way of an introduction:-