Methods Data Flow

Overview

This page describes how the data flow for different usages of methods is defined using the method definition as described on the Method Definition page.

video

This video includes a description of Methods and data flows.

Introduction

Data Flow as defined by a Collaborative Model Template

A Collaborative Model Template can be used to define, for a particular case, how one model type is derived from another. (For more on templates, see Templates and Instances).

../../../_images/cookie_cutter_cmts.png

Using CMTs to define different ways to derived the same model

Representation using Business Object Model classes

The diagram below shows a CMT to create the BeamDeflection KeyValueType using simple deflection models and methods.

../../../_images/vse_ea_xls_defln_cmt.png

BeamDefn using simple models and methods

The second template create the same BeamDeflection KeyValueType, but this time using Finite element based model and methods.

../../../_images/vse_ea_fe_defln_cmt.png

BeamDefn using FE based models and methods

Note

There are classes between the instances and types rather than direct relationships. This is because the link between needs to be referenced when the data flows are identified, and it also needs to specify a name, therefore the link cannot be a simple relationship and must be a class.

When there is more than one applicable method for generating a ModelType, then the template can also be used to declare which is the preferred method to be used in the template.

In the Method Definition, the inputs for a method are ModelTypes that are associated to the method and optionally given a name for the association, which is the name by which the method recognises the input.

However when the method is used by an element in a template, the ModelTypes that the element is derived from are not necessarily the same as the ModelTypes defined as inputs to the method. This is because the method may have generic inputs, and the ModelTypes in the template may be more specialised, but inherit from the generic ModelTypes. Therefore there needs to be a relationship between the input association for the method, and the ModelType that the element is derived from.

SysML Documentation

For more information see SysML - Collaborative Model Template

Description using a Visual Basic programming analogy

As described in more detail in the Method Definition page, the following is a Visual Basic function definition declaring the inputs with names, and the output.:

    Function CreateLoftedSurface(profileCurve As CurveMT, _
                             guideCurve As CurveMT, _
                             As LoftedSurfaceMT
'internals of the function
End Function

To use this function it is then called by another piece of VB code such as is shown below.:

'preceding  code
'
Dim TubeProfileMT As CurveMT
Dim TubeCentreLineMT As CurveMT
'
'code to set the variables not shown
'
Dim 3DTubeMT As LoftedSurfaceMT
Set 3DTubeMT = CreateLoftedSurface(profileCurve:=TubeProfileMT, _
                                                                guideCurve:=TubeCentreLineMT,)
'
'following code

The code declares two new ModelTypes on lines 3,4. The code to create these is not shown. Then line 9 shows the CreateLoftedSurface function being called, and the arguments provided by their given names. This sets the value of 3DTubeMT to the returned value of the function.

Representation using Business Object Model classes

The diagram below shows the Collaborative Model Template for calculating the Beam Deflection using the simple formulaic method. The relationship classes are in the context of the CMT, and from this information the picture of the network for the CMT can be built up. (For more details on the background for this example see: Introduction to the Very Simple Example)

../../../_images/vse_ea_xls_defln_cmt.png

CMT to create the Deflection using the formulaic method

Just looking at the area of the network for the Defln_Workbook ModelType, the diagram below shows the ModelTypes from which it is derived, and has superimposed the method with its input assignments and the data flow elements that link to “derived relationship classes” and show which input ModelTypes relate to which input for the method. Most of the input types are the same as the derived from types, but in the example the method needs an input of MaterialProperties_csv, but the network has the input of BilletProperties_csv which inherits from MaterialProperties_csv.

../../../_images/vse_simple_defln_method_cmt_dataflow_and_derivedFrom.png

DataFlows connecting elements in the CMT

An alternative view is shown below, and shows how the data flows from the inputs, through the method to the outputs. This is similar to a workflow, or process view.

../../../_images/vse_simple_defln_method_cmt_dataflow.png

Showing just the elements that show the flow of data through the method

Data Flow as defined by an Associative Model Network

The data flow for an Associative Model Network is very similar to that for a Collaborative Model Template as described above. Collaborative Model Template used ModelTypeDataFlow objects to link the ModelType inputs in the CMT network to the input assignments for a method. The Associative Model Network has a similar object called ModelInstanceDataFlow that performs the same role, linking the ModelIntances in the AMN network to the same input assigments for the method. The data flow objects are located by using the “flows” relationship from the ModelInstanceIsDerivedFrom object to the data flow objects.

SysML Documentation

For more information see SysML - Associative Model Network

Representation using Business Object Model classes

The diagram below shows the Associative Model Network for calculating the Beam Deflection using the simple formulaic method. The ModelInstances belong to the AMN, and from this information the picture of the network for the AMN can be built up. The Beam Deflection is on the far right hand side of the diagram. (For more details on the background for this example see: Introduction to the Very Simple Example)

../../../_images/vse_ea_beam_geometry_amn.png

AMN to create the Deflection using the formulaic method

in the diagram below, the area of the AMN for the Beam Deflection has been isolated.

../../../_images/vse_ea_just_defln_from_amn1.png

Area of the AMN relating to the Beam Deflection

Just looking at the area of the network for the Defln_Workbook_v1 ModelInstance, the top section of the

diagram below shows the ModelInstances from which it is derived, and has added data flow elements. It also includes a “PlannedMethod” that affirms that the method is intended to be used in this case. The bottom section reproduces the definition of the method inputs, and the relationships from the data flow elements to the input assignment elements are shown crossing between the two sections. Most of the input types are the same as the derived from types, but in the example the method needs an input of MaterialProperties_csv, but the network has the input of BilletProperties_csv which inherits from MaterialProperties_csv.

../../../_images/vse_ea_amn_with_defn_method_dataflow.png

DataFlows connecting elements in the AMN to the method inputs

An alternative view is shown below, and shows how the data flows from the input instances, through the method to the output instance. This is similar to a workflow, or process view.

../../../_images/vse_ea_just_defln_workflow_from_amn1.png

Showing just the elements that show the flow of data through the method

Section author: Judith Crockford