Modelling effects in state transitions in a state machine

Hello Arcardia/Capella community,

I am currently working at System Analysis level and want to describe actions to be performed while transitioning from a state to another state.

In Arcadia, what is the definition of an effect in state transition and what are the possibilities to specify and model “effects”?

I was expecting to be able to associate functions to a transition as the documentation states (“Transitions can be textually described or be associated to concrete model elements: Functions, Functional Exchanges, Exchange Items, etc.”) but Capella is letting me selecting only “Service” elements and a Service is not an element that I could describe with a model. What is a Service btw? I couldn’t find a definition in the help

Thank you

1 Like

Service = class operation
You can describe in text but as well give parameters that are typed by detail data (Boolean/enumeration/numerical…)
Transition is caused by a trigger, which can refer to an
EI : transition is trigged when EI appears. This EI shall model a instant value of a signal (a signal always exist)
Change Event: if you don’t have the appropriate EI you can write the condition causing the trigger
Time Event: you set the timer value
Data items, Class, details and values of them.
I never referenced functions there (they always exist)
Then you have a Guard that refer to a constraint : the transition is blocked until the constraint is true.
Triggers are several and shall be seen as parallel, guard is unique, but the constraint may be reused.
In modes, you may set references to Entry Do and Exit. These are normally made for functions, but you can give services (I did in a state machine of a class having these operations.
About Service/Class Operation: these are class elements. The concerned classes are expected to type EIE (Exchange Item Element) of an operation EI. You cannot mix services and properties. (these classes with properties type EIE of other mechanisms EI.
Action to be made during transition: Some scenarios keep their contributors at same mode or state, but some other are describing how the transition is crossed. Then, if you set up a scenario, this is where the story is. Things to be done are described in executions, which are particular activity of a function at a time in scenario. The execution is ending a message from on function to another that carry some EIs which relate to triggers of transition or to its guard.

2 Likes

Thank you for your long reply.

My question was only on the Effect (i.e. action) on a transition and how it is implemented in Capella. The tool filters the element that you can select as Effects and so far for me, it is only Services elements and I don’t have modelling capabilities to describe them.

Maybe you could share some Capella screenshots on how you are modelling actions in state transitions?

That was lost in my long answer:
Service=Class Operation that you have in CDB pallet
These items are dedicated to be class elements for EI set as operations
image
image

I see. They are called “Class operations” in the Palette but “Services” in the Project Explorer.

Too bad and too limited that you cannot model these operations/services.

Interested to know from the Community how we could link Class Operations/Services with modelling elements to describe complex actions.