FunctionType : public abstract <<atpType>> class
Created: |
2006-08-29 16:47:42 |
Modified: |
2010-06-17 17:23:40 |
|
Project: |
|
Author: |
|
Version: |
1.0 |
Phase: |
1.0 |
Status: |
Proposed |
Complexity: |
Easy |
Advanced: |
|
UUID: |
{49E3AA17-2E8F-4a27-B9F6-B22E8248B778} |
Appears In: |
FaultFailurePort_functionTarget, EnvironmentModelOrganization, ErrorModelPrototype_functionTarget, FunctionModeling, FunctionPort, EventFunctionFlowPort, ErrorModel, BehaviorContraintsMappingDependability, Events, ClampConnector, EventFunctionClientServerPort, FunctionBehavior, FunctionConnector |
<p>The abstract metaclass FunctionType abstracts the function component types that are used to model the functional structure, which is distinguished from the implementation of component types using AUTOSAR. The syntax of FunctionTypes is inspired from the concept of Block from SysML.<br/></p><p><br/></p><p>FunctionBehavior and FunctionTrigger in the Behavior package are associated to a FunctionType.<br/></p><p><br/></p><p><br/></p><p>Semantics:<br/></p><p>The FunctionType abstracts the function component types that are used to model the functional structure on AnalysisLevel and DesignLevel.<br/></p><p>Leaf functions of an EAST-ADL function hierarchy are called elementary Functions.<br/></p><p>Elementary Functions have synchronous execution semantics:<br/></p><p>1. Read inputs<br/></p><p>2. Execute (duration: Execution time)<br/></p><p>3. Write outputs<br/></p><p>Execution is defined by a behavior that acts as a transfer function.<br/></p><p>Subclasses of the abstract class FunctionType add their own semantics.<br/></p><p><br/></p><p>If a behavior is attached to the FunctionType, the execution semantic for a discrete elementary FunctionType complies with the run-to-completion semantic. This has the following implications:<br/></p><p><br/></p><p>1. Input that arrives at the input FunctionPorts after execution begins will be ignored until the next execution cycle.<br/></p><p><br/></p><p>2. If more than one input value arrives per FunctionPort before execution begins, the last value will override all previous ones in the public part of the input FunctionPort (single element buffers for input).<br/></p><p><br/></p><p>3. The local part of a FunctionPort does not change its value during execution of the behavior.<br/></p><p><br/></p><p>4. During an execution cycle, only one output value can be sent per FunctionPort. If consecutive output values are produced on the same FunctionPort during a single execution cycle, the last value will override all previous ones on the output FunctionPort (single element buffers for output).<br/></p><p><br/></p><p>5. Output will not be available at an output FunctionPort before execution ends.<br/></p><p><br/></p><p>6. Elementary FunctionTypes may not produce any side effects (i.e., all data passes the FunctionPorts).<br/></p><p><br/></p><p><br/></p><p>Constraints:<br/></p><p>[1] Elementary FunctionTypes shall not have parts.<br/></p><p><br/></p><p><br/></p><p>Notation:<br/></p><p>The FunctionType is shown as a solid-outline rectangle containing the name, with its FunctionPorts or PortGroups on the perimeter. Contained entities may be shown with their FunctionConnectors (White-box view).<br/></p><p><br/></p><p><br/></p><p>Extension: UML Class, specialization of SysML::Block<br/></p>
- Attributes
- Associations To
- Associations From
- Other Links
Attribute |
Details |
public Boolean isElementary |
Notes:
|
True, when this type must not have any parts.
|
|
Element |
Source Role |
Target Role |
Details |
PortGroup
Class
|
Name:
|
Name: portGroup
Grouping of ports owned by this element.
|
|
«atpStructureElement» FunctionConnector
Class
|
Name:
|
Name: connector
The connectors that connect ports of parts as assembly connectors or ports of this type and ports of parts as delegation connectors.
|
|
«atpPrototype» FunctionPort
Class
|
Name:
|
Name: port
Owned ports.
|
|
Element |
Source Role |
Target Role |
Details |
FunctionTrigger
Class
|
Name:
|
Name: function
The FunctionType that the FunctionTrigger refers to if any.
|
|
EventFunction
Class
|
Name:
|
Name: functionType
The event is valid for all occurences of this function.
|
|
Parameter
Class
|
Name:
|
Name: targetFunction
The system function having the parameter as its internal parameter.
|
|
FunctionBehavior
Class
|
Name:
|
Name: function
The FunctionType to which the behavior is assigned.
|
|
«atpType» ErrorModelType
Class
|
Name:
|
Name: target
The nominal FunctionType whose ErrorModel is defined by the ErrorModelType
|
|