Information Technology Reference
In-Depth Information
4 Chosen UML Semantics
Since many UML constructs represent rather complex behavior, mapping to
OOAS means also implementing these constructs in OOAS. Because of the size
of UML, not only would full feature support be a major effort, but many elements
simply are not useful in the context of behavioral test models. Therefore, we limit
the transformation tool to a subset of UML.
In the following subsections, we describe the selected subset along with some
motivation and then four of the more interesting aspects of the transformation
are discussed, along with the taken decisions regarding semantic interpretation.
4.1 Used UML Subset
In the context of embedded and safety critical systems, modeling with state
machines is quite common and fits the needs of the domain. The UML subset
supported by the transformation therefore comprises class diagrams, state ma-
chines and a subset of OCL. The selection is mainly based on the needs of the
demonstrator applications within MOGENTES; some state-machine concepts
that were intentionally left out, like deferred triggers and history states, could
be added when needed. Table 2 summarizes all supported UML elements. In the
table, “Simple” Inheritance means that we do not support any polymorphism
or late-binding. It is set in brackets as our tool-support for inheritance is not
yet complete. Also, while the transformation in principle supports the float data
type, we do not use it currently. Method and effect opaque behavior bodies are
filled using a minimal custom language that can be used to express signal send-
ing/broadcasting, method calling and assignment. If needed, this small language
can easily be replaced by another one, e.g., the Object Action Language (OAL).
In the transformation, we strive for following UML v2.2 Standard. Nonetheless
we have made some design choices, aside from the selected elements: object
Table 2. Supported UML Elements
Class
Enums
Signal
Bool
Int
(Float)
Active/Passive
Associations
(“Simple” Inheritance)
Member Fields
Methods Def. + Body
Signal Reception
and, or, not, implies
=, < , > , < =, > =
union, intersect
select, collect
exists, forall, oclIsInState
Literals (Numbers, Bool)
Substate Machine
Orthogonal Regions
(Final-, Initial-, Pseudo-) State
Entry, Exit Action
Transitions with Effects
Trigger with Change/Signal/Call/Time Events
Constraints (OCL)
Junctions, Choice
 
Search WWH ::




Custom Search