# Towards Hierarchical Workflows in SysML to Support Virtual Validation of Technical Systems
## 4 Method
### The Framework of Virtual Validation Workflows Based on the Functional Architecture
#### 4.1.1 Structure of Virtual Validation Workflows Based on the System Hierarchy  
As the behavior of a super-function is a composition of the behavior of its sub-functions in the hierarchical functional architecture, the failure of any sub-function will result in the  
Figure 2: The classical virtual validation process of the development of a WT system and its components by the two design engineers. Adapted from [19].  
failure of the super-function. Therefore, a comprehensive virtual validation of functions at different levels is required. This means that engineers not only need to test whether the system function is fulfilled by the solution, but also that each of its sub-functions is fulfilled by the corresponding sub-solution. Therefore, a nested framework is introduced in this section to formally organize the virtual validation workflows corresponding to the hierarchical functional architecture.  
Figure 3 shows a framework diagram for the standardized virtual validation workflow. The virtual validation workflow framework corresponding to a function always includes four elementary actions that invoke the activities as follows:  
* \"Action 1\" involves the activity of checking if the function is fulfilled by the corresponding solution. The specific concept and content will be introduced in detail in the next section (see Section 4.1.2).
* The implemented virtual validation workflow framework should correspond to the hierarchical structure of the functional architecture. Therefore, the upper-level virtual validation workflow should also include sub-virtual validation workflows. The invoked activity can be further decomposed into other activities that perform various sub-tasks with activity hierarchies. Therefore, \"Action 2\" invokes the activity in which multiple \"Virtual Validation Workflow\" actions of its sub-functions are organized in parallel. Validation results of sub-functions are exported and passed through pins and object flows. The action called \"Check all validation results\" in \"Action 2\" performs logic gate calculations on all validation results of a sub-function. When the validation result of any of the sub-functions is \"False\", the overall validation result for its sub-function is considered to be \"False\". Otherwise, the overall validation result of its sub-function is considered to be passed.
* \"Action 3\" invokes the activity, which validates the function by checking if the function and its sub-functions are all fulfilled by the corresponding solutions. The checking process is realized by a logic gate calculation: when the function is fulfilled by the selected solution, and the overall validation result of its sub-function is passed, the validation result of the function is considered to be passed. Otherwise, it failed.
* \"Action 4\" invokes the activity to save the validation result in the system model architecture. As mentioned in \"Action 2\", this result is also used to support the virtual validation of its parent function.  
Figure 3: A virtual validation workflow framework.