Re: When do statemachine changes become effective

Re: When do statemachine changes become effective

From: Bernd Westphal ^lt;Bernd.Westphal@Informatik.Uni-Oldenburg.DE>
Date: Wed 11 May 2005 - 20:00:27 BST
Message-ID: <20050511190027.GA6233@kalk.Informatik.Uni-Oldenburg.DE>

I can't point to the specs either but I would consider it to depend on 
what the abstract syntax of the ';' operator in

  x := y ; y := x

is.  IIRC, in the 'Abstract Action Semantics' there are operators for parallel
execution and for sequential execution of actions.  If the ';' denotes the
sequential execution of operations, then the case is clear, we will have
'x == y' as result.  If it denotes parallel execution, there are multiple
possible results.

The central question is what Action Language the original poster is using.
Prior to 1.5.AS there was no action language at all in UML (except for a small
number of actions, like object creation/destruction, event sending, etc., but
not, e.g., attribute assignment), i.e.  one wrote C++, or Java, or Ada or
whatever onto transitions in a modeling tool.  Then the modeling tool
"decided" (by code-generation) to adopt the semantics of C++, Java, or Ada.
Alternatively the persons writing and reading models could agree on an Action
Lanuage and a common interpretation.

If it's the UML Action Language, then it depends on the mapping from concrete
to abstract syntax (as said above).  AFAIK, UML does not provide any
concrete syntax, but only a meta-model to represent actions as found, e.g.,
as the annotation of a transition.

Schoen'n Gruss

Bernd Westphal                    <>
Abteilung Sicherheitskritische Eingebettete Systeme, Department für Informatik
Carl von Ossietzky Universität Oldenburg,           D-26111 Oldenburg, Germany       tel: +49 441 9722-506 (fax: -502)
Received on Wed May 11 20:00:35 2005