预订演示
前页 后页

带有链接事件的斐波那契数生成器

链接事件是连接进程A两个部分的机制。链接事件可用于:

  • 创建循环场景,作为“进程级别”中的通用 Go To 对象
  • 避免长序列流线;成对的链接事件可以用作跨多个页面打印进程的“页面”连接器
事件的使用仅限于单个进程级别(即不能链接父进程和子进程)。

可以有多个源链接事件,但只能有一个目标链接事件。

  • 目标链接事件标记未填充,从源链接中“捕获”
  • 源链接事件标记被填充以“扔”到目标链接
元素执行引擎在运行仿真时,源-目标链接事件是通过 ElementNAME 配对的,所以不能为空。

创建 BPMN模型

Example Business Process diagram for BPSIM simulation in Sparx Systems Enterprise Architect

  • 创建一个 StartEvent S1
  • 添加一个序列目标abstractTask活动元素next=first+second (打开“属性”对话框并将“类型”字段设置为“抽象任务”)
  • 将序列流添加到目标 abstractTask 活动元素first=second
  • 将序列流添加到目标 abstractTask活动元素second=next
  • 将序列流添加到目标 abstractTask活动元素n++
  • 将序列流添加到目标独占网关元素loopNode (在即时菜单上,选择“独占”)
  • 将一个序列流添加到这些目标元素中的每一个:
    - A Throwing Link 中间事件元素SetNext (打开“属性”对话框并设置
    '类型'字段到'投掷>链接') 和
    - 结束事件元素E1
  • 创建捕获链接中间事件元素SetNext (打开“属性”对话框并将“类型”字段设置为“捕获>链接”)
  • 添加一个序列到目标元素next=first+second

配置 BPSim

我们将使用属性参数来定义序列流如何形成一个循环,在该循环期间将生成一个斐波那契数。循环机制是通过一对事件实现的。

打开配置 BPSim窗口('仿真>过程分析>进程>打开BPSim 管理器')

任务

行动

元素:S1

在左侧的元素列表中,展开开始事件组并单击S1

单击“控件选项卡”和“新参数”下拉箭头;选择“触发器计数”。

在“值”字段中输入“ 1 ”。

单击“属性”选项卡

改写新属性文本以创建这些属性:

  • N -并在“值”字段中输入“10”作为要生成的斐波那契数的总数
  • 首先-在“值”字段中输入“ 1 ”
  • 第二-在“值”字段中输入“ 1 ”
  • n -并在“值”字段中输入“0”作为第n个新的斐波那契数

元素:next=first+second

在元素类型列表中,展开活动组并单击next=first+second

单击“属性”选项卡并用“下一步”覆盖新属性文本。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{first}+{second}”。

点击确定按钮。

元素:first=second

在元素类型列表中,在活动组中单击first=second

单击“属性”选项卡并用“第一个”改写新属性文本。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{second}”。

点击确定按钮。

元素: second=next

在元素类型列表中,在活动组中单击second=next

单击“属性”选项卡并用“第二个”覆盖新属性文本。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{next}”。

点击确定按钮。

元素:n++

在元素类型列表中,在活动组中单击n++

单击“属性”选项卡并用“n”改写新属性文本。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{n}+1”。

点击确定按钮。

网关条件

在元素列表中,展开 Gateway 组和 LoopNode元素,然后单击SetNext

单击“控件”选项卡和“新参数”下拉箭头,然后选择“条件”。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{n} <={ N }”。

点击确定按钮。

现在点击E1

单击“控件”选项卡和“新参数”下拉箭头,然后选择“条件”。

在“值”字段中,单击Browse.按钮,单击“表达式”选项卡并输入表达式“{n} > { N }”。

点击确定按钮。

运行仿真

  • 在“配置 BPSim ”对话框的工具栏中,单击“运行”图标; “仿真仿真控制器”对话框显示
  • 点击“运行”图标下拉箭头并选择“标准仿真”
  • 模拟完成后,点击工具完成; “BPSim PropertyParameter Values”对话框显示
  • 单击查询按钮和“按元素分组”选项卡,然后展开“下一步=第一+第二”;列出所有属性的快照值
  • 应用过滤器“下一步”(右键单击列表标题,选择“切换过滤器栏”并在“元素”标题下键入“下一步”);结果将类似于此图像:

再生成十个斐波那契数:

2,3,5,8,13,21,34,55,89,144