前页 后页

活动返回值模拟

一个Activity可能会产生一个返回值作为它所代表的过程的输出。您可以在三种情况下模拟返回值如何传递到流程的下一个阶段:

  • Activity只是产生一个返回值,该值直接传递给下一个Action
  • 该活动具有一个或多个活动参数-在图中由活动节点表示-接受输入值或保留该活动的子操作的输出值,并且输出活动参数收集并传递返回值
  • 该活动由CallBehavior操作实例化,该操作复制该活动的行为并向前传递返回值

活动返回值传递

(此方法是Enterprise Architect模拟所特有的,它模拟了活动参数的效果,而不必存在。)

活动有一个返回值,该返回值通过对象流连接器从活动元素转移到流程中下一个操作上的操作销。

Acitivity Return Value passed to Action Pin

您可以通过设置一个简单的JavaScript语句来设置Activity的子元素中的返回值(例如this.return = 12;)来进行模拟,然后运行模拟,在Locals窗口中查看传递给Action Pin的值。

活动参数传出

如果活动具有活动参数,则其值将传递到相应的活动节点,然后通过对象流连接器传递到流程中下一个动作的输入动作引脚,如下所示:

UML Activity Diagram example, demonstrating passing a parameter from a parameter node to an action pin, in Sparx Systems Enterprise Architect.

在“本地”窗口中,您可以观察参数的默认值传递到ActionPin,或者可以在Activity的子Action中使用JavaScript来模拟Activity中值的更新。例如:

this.ActivityParameter1 = 20;

呼叫行为动作

一个活动可能在流程中使用了很多次,在这种情况下,您可能希望每次都生成一个单独的活动实例。您可以使用CallBehavior Action来创建Activity对象并执行其行为。输入和输出活动参数绑定到CallBehavior操作上的相应输入和输出操作引脚(参数)。

UML Activity Diagram example, showing the use of a Call Behavior action, with In and Out parameters, in Sparx Systems Enterprise Architect.

当您模拟流程中包含活动的部分时,您将提供一个输入值(如动作1中一样),该值将传递到CallBehavior动作上的输入动作Pin中,从而创建活动的对象。 CallBehavior执行Activity的行为,使用输入Action引脚作为输入Activity参数,使用Output Action Pin接收返回作为输出Activity参数。然后,使用对象流连接器将“活动”返回值传递到下一个“动作”上的“动作引脚”。您可以在“活动的操作”中提供JavaScript语句,以对输入值进行操作并生成返回值,例如:

sim.buf = this.inParam;和

this.outParam = sim.buf + 11:

学到更多