在BoUML中的ReadVariableAction活动动作允许选择一个类和它的属性,并通过创建输出引脚来返回属性(见下图和图示)。BoUML文档):
但这个动作的语义是什么?ReadVariableAction操作实际返回的是什么?
根据子句 16.9.3.1 可变行动 的 统一建模语言规范2.5版:
一个VariableAction在一个静态指定的变量上操作。变量必须是由包含VariableAction的Activity(见子条款15.2)或StructuredActivityNode(见子条款16.11)定义的。
下面第15.2.2条抽象语法说,Variable子集是指 所属会员因此,该变量应以 名称.
但是BoUML既不允许为一个活动创建变量,也不允许将一个变量的名称传递给ReadVariableAction。
似乎我可以使用ReadVariableAction,如下所示。
但从UML的角度来看,这是错误的模型。
BoUML中的readwriteclearaddremove变量动作的语义是......错误的!
很明显,当我在BoUML中添加活动时,我误解了这一部分,我没有很好地阅读规范来理解活动的变量或结构化的活动节点。所以错误的是,我允许选择的 "变量 "是一个类的属性。另一个后果是你不能为一个活动或结构化活动节点定义变量。
恕我直言