An AssignmentGroup is a concept that allows the clustering of arbitrary elements in ways that are orthogonal to hierarchical and semantic structure of the VEC. Specific use cases are represented as subclasses of the AssignmentGroup and enriched with additional information. Proprietary groupings can be created with the AssignmentGroup itself and additional information in custom properties.
The FunctionalAssignmentGroup can be used to assign elements to a function across the different layers of abstraction.
The DocumentRelatedAssignmentGroup can used to relate elements to a specific document or an element within the document (e.g. a requirement).
The assignment to a group originates from the ConfigurableElement itself. This is designed intentionally and has two reasons:
- In the use cases for this grouping concept it is intended, that the groups exist first (e.g. a function) and the assignment is created together with elements along the process. For example, a connection in a system schematic is assigned to a function. When a wire is derived from the connection, the wire inherits this assignment. Therefore, it wouldn't be practicable to be enforced to modify the DocumentVersion containing the AssignmentGroup for every added element.
- In today's processes the assignment of elements to such groups are done in the same documents where the elements themselves are defined.
This concept adds another layer of extensibility to the VEC. CustomProperties allow the addition of user-defined properties to a single object. The assignment groups allow the creation of custom grouping of objects. However, it is not permitted to use this concept to express relationships that have well defined concepts in the VEC (e.g. assignment of occurrences to composite parts or usage nodes).