An activity action is an activity node. In the browser an activity action is placed in an activity or an activity region, and may contain pins, parameter sets, and flows :
There are several kinds of action, Bouml doesn't propose all the kinds defined in UML but the main ones : opaque, accept event, read variable value, clear variable value, write variable value, add variable value, remove variable value, call behavior, call operation, send object, send signal, broadcast signal, unmarshall and value specification.
The pins are added automatically by Bouml depending on the kind of the action, for the call behavior and call operation and actions on a variable the pins are set when the behavior/operation/variable is set or changed. When something is changed all the current pins are removed then new ones may be added. Note that you may change or delete the default pins or add new ones, and the pins are not changed when the corresponding behavior/operation/variable is modified.
The parameter sets are defined on the actions and have sense only for call behavior action when the behavior is an activity (but this is not checked by Bouml), so a parameter set contains pins corresponding to parameters. To define parameter sets on action rather than activity allows you to use them as you want.
The activity action's and pin's properties are exposed below.
The activity action menu appearing with a right mouse click on its representation in the browser is something like these, supposing the action not read-only nor deleted (see also menu in a diagram) :
To add a pin or a parameter set.
edit allows to show/modify the action properties. In case the action is read-only, the fields of the dialog are also read-only.
The aspect of the dialog depend on the kind of action :
The tab Uml is a global tab :
The proposed stereotypes are the default one specified through the Default stereotypes dialog more the current one (empty here). It is possible to choose into the list or to give a new one, or to empty it.
It is possible to change the kind of the action, this modify the other editor tabs.
The editor button visible above and associated here to the description/constraint, allows to edit the description/constraint in an other window, or to call an external editor (for instance Xcoral) specified through the environment dialog. Note that this external editor have to create an own window, its parameter is the pathname of the file containing the description/constraint, its execution is done in parallel with BOUML which looks each second at the file contents to get the new definition until the dialog is closed (I do not like very much this polling but this works even QT isn't compiled with the thread support).
The Ocl tab allows to specify the activity action behavior and the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the activity action behavior and the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the activity action behavior and the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the trigger and the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
Unmarshall is the standard UML property, time event allows to indicate is the event is a timer to choose between the two representations.
This tab allows to specify the trigger and the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the trigger and the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the variable (class attribute or relation) and the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
The button variable shows a menu proposing :
if the current variable is set : to select this attribute or relation in the browser
if the action is not read-only and if a class attribute or relation is selected in the browser : to set the variable to be the selected element
if the class is not read-only : to create a new attribute and to choose it
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The dialog is equals to the read variable value action case
The Ocl tab allows to specify the behavior (a state or an activity) and the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
The button behavior shows a menu proposing :
if the current behavior is set : to select this class in the browser
if the action is not read-only and if a state or activity is selected in the browser : to set the behavior to be the selected element
if the view containing the activity is not read-only : to create an activity or a state machine and to choose it
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the operation and the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
The button operation shows a menu proposing :
if the current operation is set : to select this class in the browser
if the action is not read-only and if an operation selected in the browser : to set the operation to be the selected one
if the class is not read-only : to create an operation and to choose it
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The dialog is similar to the accept event action case
The Ocl tab allows to specify the created object classifier and pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify flags and pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The Ocl tab allows to specify the pre and post condition using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in C++, but in fact BOUML doesn't check the syntax, this is just a convention.
This tab allows to specify the pre and post condition in Java, but in fact BOUML doesn't check the syntax, this is just a convention.
The menu entry duplicate clone the activity action without its children
To know who reference the current activity action through a flow.
See mark
The menu entry delete is only present when the activity action is not read-only.
Delete the activity action and all its children, and all the representation of them in the opened diagrams. After that it is possible to undelete them (from the browser) until you close the project : obviously the deleted items are not saved !
The menu entry tool is only present in case at least a plug-out may be applied on a activity action. The selected tool is called and applied on the current activity action.
The pin menu appearing with a right mouse click on its representation in the browser is something like these, supposing the pin not read-only nor deleted (see also menu in a diagram) :
edit allows to show/modify the pin properties. In case the pin is read-only, the fields of the dialog are also read-only.
The tab Uml is a global tab :
The proposed stereotypes are the default one specified through the Default stereotypes dialog more the current one (empty here). It is possible to choose into the list or to give a new one, or to empty it.
The proposed types are the non class types defined in the first tab of the generation settings, more all the classes defined in the project (with their localization to distinguish synonymous classes). You are not limited to the proposed list, and any form (even invalid for the target language(s)) may be given. The button type: shows a menu proposing :
if the current type of the pin is a class : to select this class in the browser
if the pin is not read-only and if a class is selected in the browser : to set the type to be this class
if the view containing the activity is not read-only : to create a class and to choose it
The direction, multiplicity, ordering, effect, in state, default value, is control, unique, exception and stream are the standard UML properties. The flags exception and stream are exclusive, choose standard to be not exception nor stream.
The editor button visible above and associated here to the default value and description, allows to edit the default value or the description in an other window, or to call an external editor (for instance Xcoral) specified through the environment dialog. Note that this external editor have to create an own window, its parameter is the pathname of the file containing the description, its execution is done in parallel with BOUML which looks each second at the file contents to get the new definition until the dialog is closed (I do not like very much this polling but this works even QT isn't compiled with the thread support).
The Ocl tab allows to specify the selection using the Ocl language, but in fact BOUML doesn't check the syntax, this is just a convention.
The menu entry duplicate clone the pin without its children
To know who reference the current pin through a flow.
See mark
The menu entry delete is only present when the pin is not read-only.
Delete the pin and all its children, and all the representation of them in the opened diagrams. After that it is possible to undelete them (from the browser) until you close the project : obviously the deleted items are not saved !
The menu entry tool is only present in case at least a plug-out may be applied on a pin. The selected tool is called and applied on the current pin.
The parameter set menu appearing with a right mouse click on its representation in the browser is something like these, supposing the set not read-only nor deleted (see also menu in a diagram) :
edit allows to show/modify the parameter set properties. In case the set is read-only, the fields of the dialog are also read-only.
The tab Uml is a global tab :
The proposed stereotypes are the default one specified through the Default stereotypes dialog more the current one (empty here). It is possible to choose into the list or to give a new one, or to empty it.
The editor button visible above and associated here to the default value and description, allows to edit the default value or the description in an other window, or to call an external editor (for instance Xcoral) specified through the environment dialog. Note that this external editor have to create an own window, its parameter is the pathname of the file containing the description, its execution is done in parallel with BOUML which looks each second at the file contents to get the new definition until the dialog is closed (I do not like very much this polling but this works even QT isn't compiled with the thread support).
Allows to specify the pins part of the parameter set
The menu entry duplicate clone the pin without its children
See mark
The menu entry delete is only present when the pin is not read-only.
Delete the pin and all its children, and all the representation of them in the opened diagrams. After that it is possible to undelete them (from the browser) until you close the project : obviously the deleted items are not saved !
The menu entry tool is only present in case at least a plug-out may be applied on a parameter set. The selected tool is called and applied on the current set.
The dialog allowing to set the default stereotypes :
Depending on its stereotype a activity action is drawn in a diagram as a rectangle, a convex pentagon or a concave pentagon :
By default the name of an action is its kind, this one is written inside the action, except if the action is an opaque action and you ask to see the code.
If the action has pre and/or post condition these ones are show (except if you ask to not show the conditions) :
show stereotype properties : to indicate through a note the (non empty) value of the stereotype properties in case the package is stereotyped by a stereotype part of a profile. By default the stereotype properties are hidden.
A right mouse click on a activity action in a diagram calls the following menu (supposing the activity action editable) :
To add a pin
These drawing settings concerns only the picture for which the menu is called.
A settings valuing default indicates that the setting specified in the upper level (here the diagram) must be followed, obviously this one may also be default ... up to the project level. When you add a activity action in a diagram, all the settings are set to default.
To write an opaque action's name or its behavior
to show or not the conditions
Allows to specify the used language used to indicate opaque action behavior or the conditions
to indicate through a note the (non empty) value of the stereotype properties in case the action is stereotyped by a stereotype part of a profile. By default the stereotype properties are hidden.
To specify the fill color.
Appears only when the action is associated to a variable, behavior or an operation, to select this one the the browser
Appears only when the action is a call behavior and the behavior (an activity or a state) has an associated diagram, set this last to be the diagram associated to the action, this allows to goes to the diagram associated to the behavior on a double click on the action.
Appears only when at least one plug-out is associated to the activity actions. To apply a plug-out on the activity action.
A Pin is drawn as a small square, with the stream or exception indication :
A right mouse click on a pin in a diagram calls the following menu (supposing the pin editable) :
These drawing settings concerns only the picture for which the menu is called.
A settings valuing default indicates that the setting specified in the upper level (here the diagram) must be followed, obviously this one may also be default ... up to the project level. When you add a pin in a diagram, all the settings are set to default.
To specify the fill color.
Appears when the type of the pin is a class, to select it in the browser.
Appears only when at least one plug-out is associated to the pins. To apply a plug-out on the pin.
A parameter set is a rectangle drawn around the corresponding pins, it is highly recommended to place the pins on the same are to have a pretty result:
A right mouse click on a pin in a diagram calls the following menu (supposing the pin editable) :
These drawing settings concerns only the picture for which the menu is called.
A settings valuing default indicates that the setting specified in the upper level (here the diagram) must be followed, obviously this one may also be default ... up to the project level. When you add a set in a diagram, all the settings are set to default.
To specify the fill color.
Appears only when at least one plug-out is associated to the parameter sets. To apply a plug-out on the set.
Previous : activity region
Next : activity object